Fructose
by Community
Fructose is a python package to create a dependable, strongly-typed interface around an LLM call. ![GitHub Repo stars](https://img.shields.io/github/stars/bananaml/fructose?style=s
OSS
Fructose
Added 1 June 2026
Overview
Fructose is a Python package that uses decorators and type hints to create a strongly-typed interface for LLM calls. It wraps any function with a typed signature, converting it into a structured LLM invocation that returns predictable outputs.
Best for
Best for
Python developers who want reliable, typed interfaces for LLM calls in their applications
Use cases
- Defining typed LLM functions for data extraction and classification
- Integrating LLM calls into existing Python codebases with type safety
- Building reliable LLM pipelines that produce structured outputs
Notes
Fructose is a Python package that uses decorators and type hints to create a strongly-typed interface for LLM calls. It wraps any function with a typed signature, converting it into a structured LLM invocation that returns predictable outputs.
750 stars on GitHub. Last updated 2024-04-17. Licensed Apache-2.0.
Use cases
- Defining typed LLM functions for data extraction and classification
- Integrating LLM calls into existing Python codebases with type safety
- Building reliable LLM pipelines that produce structured outputs
Pros
- Strong typing ensures predictable and verifiable outputs
- Simple decorator-based API minimizes boilerplate
- Works seamlessly with Python type checkers for early error detection
Cons
- Limited to Python; no direct support for other languages
- May restrict flexibility for complex or dynamic prompting patterns
- Depends on the LLM’s ability to correctly follow structured output instructions
Indexed from awesome-langchain and enriched against its public facts.
Pros
- Strong typing ensures predictable and verifiable outputs
- Simple decorator-based API minimizes boilerplate
- Works seamlessly with Python type checkers for early error detection
Cons
- Limited to Python; no direct support for other languages
- May restrict flexibility for complex or dynamic prompting patterns
- Depends on the LLM's ability to correctly follow structured output instructions
Pairs with
Other entries in the index that connect to this one. Click through to see the chain.