Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/BBischof/yapping
Verbosity control for AI agents
https://github.com/BBischof/yapping
Last synced: 14 days ago
JSON representation
Verbosity control for AI agents
- Host: GitHub
- URL: https://github.com/BBischof/yapping
- Owner: BBischof
- License: mit
- Created: 2024-05-23T05:34:17.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-05-23T05:55:53.000Z (6 months ago)
- Last Synced: 2024-08-01T16:51:26.781Z (3 months ago)
- Language: Python
- Size: 6.84 KB
- Stars: 54
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
~~Absolutely! Here's the updated README:~~
---
# YAPPING - Yet Another Prompted Phrasing and INteraction Guidance tool
YAPPING (Yet Another Prompted Phrasing and INteraction Guidance) is a tool designed to control and enhance the verbosity of language model responses. By providing detailed guidance and interaction management, YAPPING ensures that the outputs from language models are either delightfully verbose or succinctly brief as needed.
## Features
- **Prompted Phrasing**: Customize the verbosity of responses to match specific requirements.
- **Speculative Shushing**: A proprietary technique to predictively reduce verbosity before it happens.
- **Exuberant Elaboration**: Ensures responses are enriched with additional, often unnecessary, details.## Installation
To install YAPPING, use pip:
```bash
pip install yapping
```## Getting Started
Here's a quick example to get you started with YAPPING:
### Making Responses Verbose
```python
from yapping import Yapping, make_verboseyapping = Yapping(verbosity_level="high")
# Use Yapping decorator to make a response verbose
@make_verbose(yapping)
def get_response():
return "This is the raw response from the language model."verbose_response = get_response()
print(verbose_response)
```### Making Responses Brief
```python
from yapping import Yapping, make_brief# Initialize Yapping with a detailed and extensive configuration for brevity
config = {
"verbosity_level_configuration_parameters": {
"desired_verbosity_level": "low",
"verbosity_control_strategy": "aggressive_reduction",
"additional_reduction_parameters": {
"max_length": 50,
"minimize_redundancy": True,
"enforce_conciseness": True
},
"speculative_shushing_mode": True,
"anti-verbosity_neural_shrinkage": "enabled"
}
}
yapping = Yapping(config)# Use Yapping decorator to make a response brief
@make_brief(yapping)
def get_response():
return "This is the raw response from the language model."brief_response = get_response()
print(brief_response)
```## Configuration
YAPPING uses configuration files to define verbosity control rules. Here are examples of what these files might look like:
### verbose_rules.json
```json
{
"rules_list": [
{
"pattern": ".*",
"replacement": "To truly enhance and enrich the explanation of the topic at hand, it is imperative to incorporate a substantial amount of additional details and a plethora of diverse and illustrative examples. By delving deeply into the intricacies and nuances of the subject matter, we can ensure that the reader attains a comprehensive and multifaceted understanding. This extensive elaboration should encompass a broad spectrum of information, touching upon various dimensions and perspectives to provide a well-rounded and exhaustive exploration."
}
]
}
```### brief_rules.json
```json
{
"rules_list": [
{
"pattern": ".*",
"replacement": "No yapping."
}
]
}
```## Contributing
Contributions are welcome! Please read our [CONTRIBUTING.md](CONTRIBUTING.md) file for guidelines on how to contribute to this project. Currently looking for typescript, rust, and CUDA contributions.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## Acknowledgements
Special thanks to all the contributors and the open-source community for their support and collaboration.