Farsight LLM optimizer
Project description
Revolutionize your prompt engineering with Farsight's OPRO SDK
Stop wasting time with prompt engineering, tailored to your unique inputs and targets, our sdk effortlessly identifies the optimal system prompt for you.
Features
- Python Compatibility: Seamlessly integrates with Python environments.
- Efficient Prompt Optimization: Streamlines the prompt optimization process in a single step.
- Automated Testing: Robust testing features for reliability and accuracy.
- User-Friendly Design: Intuitive and straightforward to use, regardless of your expertise level.
Installation
Install the Farsight OPRO SDK with ease:
pip install farsight-opro
Usage
Dive into the world of optimized prompt engineering with Farsight's OPRO SDK, an implementation inspired by the innovative OPRO paper. Whether you're working on a small project or a large-scale application, our SDK adapts to your needs.
Begin optimizing promptly with this simple setup. For comprehensive guidance, visit our detailed documentation.
from opro import FarsightOPRO
# Define your datasets
train_set, examples, test_set = # ...
# Initialize with your OpenAI key
farsight = FarsightOPRO(openai_key=OPEN_AI_KEY)
# Get optimized prompts
prompts_and_scores = farsight.get_prompts(train_set, examples, test_set)
Full Example:
from opro import FarsightOPRO
import json
from sklearn.model_selection import train_test_split
# Set your OpenAI credentials
farsight = FarsightOPRO(openai_key="<openai_key>")
# Load your dataset
dataset_path = "/opro/src/bbh/movie_recommendation.json"
with open(dataset_path, "r") as file:
data = json.load(file)
# Split the dataset
examples = data["examples"][:3] # Choose 3 examples for the prompt
train_set, test_set = train_test_split(data["examples"], train_size=0.20)
# Train and get prompts with scores
prompts_and_scores = farsight.train(train_set, examples, test_set)
# Output example
# [{
# "prompt": "Select a movie matching the genres, popularity, critical acclaim, and quality of provided examples for accurate recommendations.",
# "train_score": 0.94,
# "test_score": 0.88
# }, ...]
Contributing
Bug Reports & Feature Requests
Encounter an issue or have an idea? Share your feedback on our issue tracker.
Development Contributions
Your contributions are welcome! Join us in refining and enhancing our prompt optimization library.
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
File details
Details for the file farsight-opro-0.2.13.tar.gz
.
File metadata
- Download URL: farsight-opro-0.2.13.tar.gz
- Upload date:
- Size: 6.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e176b1952a1abb4e98125ad8afa815593b767e290cef43c75dd92944878de5f0 |
|
MD5 | 3c16e5aaa2a160d349fc9e8a9c35849b |
|
BLAKE2b-256 | d0435adf2e88028abb91b1aaf27b0baf29307de74ff64596e6c31bbc6d511247 |
File details
Details for the file farsight_opro-0.2.13-py3-none-any.whl
.
File metadata
- Download URL: farsight_opro-0.2.13-py3-none-any.whl
- Upload date:
- Size: 6.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c59098612218ab84bcff79e5ca4481142e58a027460489ea063ed5cd46dc97e3 |
|
MD5 | 6e4b2579c30fc9198c32d2cb9dacfda1 |
|
BLAKE2b-256 | f83a9fd22616a1197a48b458ddf4573656b6ee60f81b9ff2bc7614b3af79f5c3 |