brainlid/langchain
Elixir implementation of a LangChain style framework that lets Elixir projects integrate with and leverage LLMs.
解決的問題
當大型語言模型 (LLM) 與外部數據或計算結合時,其功能最強大。本函式庫透過提供一種將模型連接到其他服務、數據源和應用邏輯的結構化方式,解決了將 LLM 集成到 Elixir 應用程式中的難題。
工作原理
本函式庫使用模組化組件和預建的鏈來管理與 LLM 的交互。它支援廣泛的提供商——包括 OpenAI、Anthropic、Google Gemini 以及透過 Ollama 或 Bumblebee 運行的本地模型——並允許開發者將自定義的 Elixir 函數作為 LLM 可使用的工具進行暴露。它還包含一個軌跡系統,用於捕獲和評估代理執行的工具調用序列。
適用對象
尋求構建複雜的 AI 驅動型應用程式(例如需要與各種第三方 API 或本地機器學習模型集成的數據感知型聊天機器人或自主代理)的 Elixir 開發者。
亮點
- 廣泛的模型支援: 與 OpenAI、Anthropic、Google 和 xAI 等主要提供商集成,還支援透過 Bumblebee 進行本地託管。
- 代理能力: 透過專門的
Function橋接使 LLM 能夠與應用程式程式碼進行交互。 - 模組化設計: 提供用於自定義邏輯的低階組件和用於快速開發的高階開箱即用鏈。
- 代理評估: 包含
LangChain.Trajectory,用於捕獲、匹配和測試代理的推理路徑和工具調用序列。