Capability · Framework — orchestration
ell
ell (ell.so) rethinks prompt engineering as software engineering. Prompts are Python functions decorated with @ell.simple or @ell.complex; every call is versioned, diffed, and logged to a local SQLite store. A Studio UI lets you browse the history, compare versions, and rerun past prompts.
Framework facts
- Category
- orchestration
- Language
- Python
- License
- MIT
- Repository
- https://github.com/MadcowD/ell
Install
pip install -U ell-ai Quickstart
import ell
ell.init(store='./ell_store', autocommit=True)
@ell.simple(model='claude-opus-4-7')
def elevator_pitch(topic: str) -> str:
'''You are a concise marketing copywriter.'''
return f'Write a 2-sentence elevator pitch about {topic}.'
print(elevator_pitch('VSET — a Delhi engineering school')) Alternatives
- DSPy — programmatic prompt optimisation
- Mirascope — Pythonic prompt classes
- Instructor — structured outputs
- Promptflow — Microsoft flow authoring
Frequently asked questions
Why would I use ell over plain API calls?
Because ell automatically versions prompts and logs every invocation, giving you Git-like history over prompt iterations without any extra wiring.
Is ell production-ready?
It's maturing fast and used in real products. For enterprise-grade tracing most teams pair ell with Langfuse or LangSmith on top of the built-in store.
Sources
- ell — GitHub — accessed 2026-04-20
- ell — docs — accessed 2026-04-20