A flexible system for managing and processing prompt templates
Project description
Prompt Manager
Prompt Manager is a flexible system for managing and processing prompt templates for use with language models. It simplifies the process of loading, managing, and formatting prompts, allowing you to focus on developing your AI applications.
Features
- Load prompts from text files or direct text input
- Insert variables into prompts using double braces
{{variable}} - Handle various file types and encoding issues with a universal file opener
- Flexible API for ease of use
Installation
Install the package using pip:
pip install prompt_manager
Usage
Basic Usage
To load and process a template named example_template with no dependencies:
from prompt_manager import PromptManager
# Initialize the PromptManager with the path to the prompts folder
pm = PromptManager("path/to/prompts/folder")
# Load a prompt template and insert variables
prompt = pm.get_prompt("example_template.txt", name="John Doe", age=30)
print(prompt)
Using Direct Text Prompts
To use a direct text prompt and replace placeholders with direct values:
from prompt_manager import PromptManager
pm = PromptManager()
# Use a direct text prompt
prompt = pm.get_prompt("Hello, {{name}}!", name="Alice")
print(prompt)
Loading File Content as Variables
To load and process a template and replace placeholders with the content of other files:
from prompt_manager import PromptManager
pm = PromptManager("path/to/prompts/folder")
# Load a prompt template and insert file content as variables
prompt = pm.get_prompt("example_template.txt", variable1=pm.load_file("sub_template1.txt"), variable2=pm.load_file("sub_template2.txt"))
print(prompt)
Exception Handling
- Raises
FileNotFoundErrorif the template file does not exist. - Raises
ValueErrorif required placeholders are not provided or if there are issues with file dependencies.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Contributing
If you have suggestions for improvements, feel free to submit a pull request or open an issue.
Contact
Author: Bryan Anye
Email: bryan.anye.5@gmail.com
GitHub: BryanNsoh
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file llm_prompt_manager-0.1.2.tar.gz.
File metadata
- Download URL: llm_prompt_manager-0.1.2.tar.gz
- Upload date:
- Size: 3.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8e97aaf6622a166b15cf279e12cb75b79f4d5401b4e446ebe951aee2a1fdc710
|
|
| MD5 |
d10b211014634ecdbffa68ccd31bc23b
|
|
| BLAKE2b-256 |
c6030592e8f8113d5653891058ff4408c1bd723703c7cba72477d3dd2d534158
|
File details
Details for the file llm_prompt_manager-0.1.2-py3-none-any.whl.
File metadata
- Download URL: llm_prompt_manager-0.1.2-py3-none-any.whl
- Upload date:
- Size: 3.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c0ed3d70d4c2383c1ba226b91be9b7a8e26ab4f67624f67f16b40b1e43c6fba4
|
|
| MD5 |
d1084a23cf82730def5389e4b094df2e
|
|
| BLAKE2b-256 |
95d836e102f084d8c19392a48999f609cfc0f02899d99beb794ce24b05b0b220
|