PromptPalette
PromptPalette is a powerful and flexible Python package designed to streamline the process of creating optimized prompts for large language models. It combines strategy selection and prompt writing to generate tailored system prompts for various AI applications.
Features
- Automatic selection of appropriate prompting strategies based on given requirements and objectives
- Crafting of detailed, task-specific prompts using selected strategies
- Support for multiple AI providers (OpenAI, Anthropic)
- Asynchronous operation for improved performance
- Easy integration with existing AI workflows
Installation
You can install PromptPalette using pip:
pip install git+https://github.com/vatsalsaglani/promptpalette.git
Quick Start
Here's a simple example of how to use PromptPalette:
import asyncio
from promptpalette import Composer
api_key = "YOUR_API_KEY"
provider = "openai" # or "claude"
model_name = "gpt-4o" # or "claude-3-5-sonnet-20240620"
composer = Composer(api_key=api_key, provider=provider, model_name=model_name)
requirements_objectives = """Develop a chatbot that can provide personalized financial advice to users, including investment suggestions, budget planning, and explanations of complex financial concepts.
Key Requirements:
Personalized responses based on user's financial situation and goals
Ability to explain complex financial concepts in simple terms
Provide step-by-step guidance for creating budgets
Generate and explain investment portfolio recommendations
"""
async def main():
prompt = await composer(requirements_objectives)
print(prompt)
asyncio.run(main())
Advanced Usage
PromptPalette can handle a variety of tasks, from complex system designs to simple classification problems. Here's an example of using it for sentiment analysis:
async def main():
prompt = await composer("I want to classify if a given tweet is positive or negative. And then provide tags or categories under positive or negative classified")
print(prompt)
asyncio.run(main())
Configuration
PromptPalette supports different AI providers (openai and claude) and models. You can configure it by passing the appropriate parameters to the Composer class:
composer = Composer(api_key="YOUR_API_KEY", provider="openai", model_name="gpt-4o")
Metadata
Release files for promptpalette 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| promptpalette-0.4.0.tar.gz | 62.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| promptpalette-0.4.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 152.2 kB
Release files / promptpalette-0.4.0.tar.gz
| Download URL | promptpalette-0.4.0.tar.gz |
|---|---|
| Size | 62.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1024bf95cc44825a32304dc633a48c39d622e8324e4bc0722a56378739055b8e
|
|
BLAKE2b-256 checksum How to use checksums |
e50aa5307ea0b6f8fd895586b0cf714b6c765a9edaa1de948bd56a776311439f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.3 CPython/3.10.14 Linux/6.5.0-1025-azure
|
Release files / promptpalette-0.4.0-py3-none-any.whl
| Download URL | promptpalette-0.4.0-py3-none-any.whl |
|---|---|
| Size | 89.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
10d847ad14b36ec85b5deb75d0fdc6d27e426ed22ffa17c63348cda96a2a7b8c
|
|
BLAKE2b-256 checksum How to use checksums |
db89ec66163c91f287d405530e3bb75aadaaf52560b0ecc536ddaddf61430a39
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.3 CPython/3.10.14 Linux/6.5.0-1025-azure
|