brainlid/langchain

Elixir implementation of a LangChain style framework that lets Elixir projects integrate with and leverage LLMs.

解决的问题

Elixir LangChain 为 Elixir 应用提供了一个框架,用于集成大型语言模型(LLMs),并将其与外部数据源和应用逻辑连接。它简化了将不同服务、库和函数串联起来的过程,以创建具备数据感知和代理能力的应用程序。

工作原理

该库使用模块化组件和预构建的「链」系统来管理与 LLM 的交互。核心模块 LLMChain 负责协调消息流和工具执行。它支持广泛的提供商,包括 OpenAI、Anthropic、Google Gemini、xAI Grok,以及通过 Ollama 或 Bumblebee 运行的本地模型。一个关键特性是 LangChain.Function,它允许开发者将特定的 Elixir 函数暴露为工具,使 LLM 能够调用这些函数来与应用程序的内部数据交互或执行操作。

适用人群

希望利用云托管和自托管语言模型构建 AI 驱动的应用程序、代理或工具的 Elixir 编程语言开发者。

主要亮点

  • 广泛的提供商支持:与 AWS Bedrock Mantle、Cloudflare Workers AI、DeepSeek 和 Mistral 等众多服务集成。
  • 代理能力:使 LLM 能够通过自定义 Elixir 函数与环境交互。
  • 多模态支持:可处理包含文本、图像、文件和「思考」块的消息。
  • 轨迹追踪:包含 LangChain.Trajectory,用于捕获和评估工具调用序列,便于调试和性能优化。
  • 提示词缓存:支持 ChatGPT、Claude 和 DeepSeek 等提供商的前缀式提示词缓存,以降低使用成本和延迟。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目