Hamilton
Express data and LLM pipelines as a directed acyclic graph of Python functions so transformations are testable, modular, and have automatic lineage and execution observability.
Description
Hamilton (Apache incubating) is a lightweight Python library that turns ordinary Python functions into nodes of a DAG: each function declares its dependencies via parameter names, and Hamilton wires them into an executable graph. It is explicitly NOT an agent framework — the maintainers (DAGWorks) ship a sister library, Burr, for loops, conditional logic, and LLM agents. Hamilton's relevance to agentic systems is structural: it organises the deterministic data/RAG pipeline that an agent calls into, and provides lineage, caching, and a UI that surface execution traces. Hamilton has been in production use since 2019 and was donated to the Apache Software Foundation.
Solution
No agent loop. Hamilton executes a DAG of Python functions: each function is a node, parameter names declare upstream dependencies, and the driver resolves and runs the graph end-to-end. Loops, branching, and agentic decisions are explicitly out of scope and delegated to the sister library Burr.
Primary use cases
- feature engineering and ML pipelines
- LLM/RAG pipelines as DAGs of Python functions
- data lineage and execution observability
- structuring the deterministic backbone an agent (typically a Burr state machine) calls into
Open the full interactive page →
Diagram, neighbourhood map, code examples, related patterns and full provenance.