Skip to main content

PromptPalette

Open In Colab

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)

Source distribution for promptpalette 0.4.0
File Size Uploaded
promptpalette-0.4.0.tar.gz 62.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for promptpalette 0.4.0
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page