Library to systematically track and evaluate LLM based applications.
Project description
trulens-apps-gepa
TruLens adapter for GEPA (Genetic/Evolutionary Prompt Adaptation).
GEPA optimizes prompts using evolutionary algorithms. This package provides
TruGEPA, a thin adapter that wraps any TruLens feedback callable as a
GEPA-compatible fitness function and automatically logs every evaluation as a
TruVirtual record for dashboard visibility, plus a simple run_evolution
helper that implements the evolutionary loop.
Installation
pip install trulens-apps-gepa
Quick start
from trulens.apps.gepa import TruGEPA, run_evolution
def my_relevance(prompt: str) -> float:
return len(prompt) / 200 # replace with a real TruLens provider method
# Without logging:
fitness = TruGEPA(my_relevance, optimize_key="prompt")
# With logging — supply both app_name and app_version (omit both to disable;
# supplying only one raises a ValueError immediately):
from trulens.core import TruSession
session = TruSession()
fitness = TruGEPA(
my_relevance,
optimize_key="prompt",
app_name="my_optimizer",
app_version="v1",
)
# Works with any feedback signature — e.g. context_relevance(question, context):
# fitness = TruGEPA(
# provider.context_relevance,
# optimize_key="question",
# feedback_args={"context": REFERENCE_CONTEXT},
# )
best_prompt, best_score, history = run_evolution(
base_prompt="Summarize the document.",
fitness_fn=fitness,
mutate_fn=lambda p: p + " Be concise.",
n_generations=5,
population_size=4,
)
print(f"Best prompt ({best_score:.3f}): {best_prompt}")
When both app_name and app_version are provided, a TruVirtual recorder
is created automatically and every evaluation is logged. Omit both to run
without any logging.
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 trulens_apps_gepa-2.8.1.tar.gz.
File metadata
- Download URL: trulens_apps_gepa-2.8.1.tar.gz
- Upload date:
- Size: 4.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1af95270f458b934d1d5a6bc51a60a21e18cea09844fa53ad5e2df5b8b750216
|
|
| MD5 |
411940ae82c4f27c60c321a7c075f125
|
|
| BLAKE2b-256 |
a1930565392706cb543ed40e1303fe90ff1f3ccd7f0c80eaab1272a23c43f04e
|
File details
Details for the file trulens_apps_gepa-2.8.1-py3-none-any.whl.
File metadata
- Download URL: trulens_apps_gepa-2.8.1-py3-none-any.whl
- Upload date:
- Size: 5.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
62a2a9fcefb8470076573fdfabd13ec7adffbc6fdb6d0d9700df779ca89f5b0c
|
|
| MD5 |
322859d19eadecd3ef17f964a06538fc
|
|
| BLAKE2b-256 |
10599c4ee8941395aee1afb30bc178ab4d3fc525bc29c106b2989a270b2aa536
|