generative-computing/mellea

Mellea is a library for writing generative programs.

What it solves

它解决了 AI 流水线中 LLM 调用不可预测且脆弱的问题,在这些场景中,静默失败和无法测试的输出往往使工作流变得脆弱。Mellea 通过结构化、可测试的生成式编程方法,取代了猜测和手动提示工程。

How it works

Mellea 使用 @generative 装饰器将标准 Python 函数转换为结构化 LLM 调用。它利用 Python 类型提示(type hints)和 Pydantic schemas 来确保输出内容的类型和格式正确。该库还允许用户将自然语言需求附加到调用中,系统随后会验证这些需求,如果未满足,则会自动重试。

Who it’s for

对于需要保证输出 schemas、可可验证的需求以及从 LLM 获得可预测结果的 AI 流水线和智能体开发者而言,这是一个理想的工具。

Highlights

  • Structured Output: 使用 Pydantic schemas 在生成时强制执行数据类型。

  • Automatic Repair: 验证输出是否符合自然语言需求,并执行自动重试。

  • Sampling Strategies: 支持多种提高可靠性的方法, such as majority voting 和 rejection sampling。

  • Brown Backend Support: 兼容 OpenAI, Ollama, HuggingFace, WatsonX, LiteLLM, 和 Bedrock。

  • MCP Compatibility: 允许将生成式程序暴露为 Model Context Protocol (MCP) 工具。