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 schema,以確保輸出內容的型別與格式正確。該函式庫也允許使用者將自然語言需求附加到呼叫中,系統隨後會驗證這些需求,若未達成則會自動重試。

Who it’s for

對於需要保證輸出 schema、可驗證的需求以及從 LLM 獲得可預測結果的 AI 管線與代理程式開發者而言,這是一個理想的工具。

Highlights

  • Structured Output: 使用 Pydantic schema 在生成時強制執行資料型別。
  • Automatic Repair: 根據自然語言需求驗證輸出,並執行自動重試。
  • Sampling Strategies: 支援多種提高可靠性的方法,例如多數決投票(majority voting)與拒絕採樣(rejection sampling)。
  • Broad Backend Support: 相容於 OpenAI, Ollama, HuggingFace, WatsonX, LiteLLM, 以及 Bedrock。
  • MCP Compatibility: 允許將生成式程式暴露為 Model Context Protocol (MCP) 工具。