langchain

用 Elixir 快速接入 LLM,构建 AI 应用

langchain 是 Elixir 语言实现的 LangChain 风格框架,让 Elixir 项目能够集成和利用大型语言模型(LLM)。它解决了 Elixir 生态中缺乏原生 LLM 编排工具的问题,提供与 OpenAI、Anthropic 等主流 LLM 提供商的接口,并支持本地模型(如 Bumblebee)。核心能力包括链式调用、提示词管理、工具调用等,帮助开发者构建复杂的 AI 应用,如对话助手、内容生成等。

开源 free 对话助手
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 1201
维护状态 活跃
是否开源 是
定价模式 free

项目数据

分类对话助手
开发团队brainlid
所属国家
定价模式free
价格说明开源框架,完全免费,无付费版本。
访问状态
是否开源是
开源协议NOASSERTION
主要语言Elixir
技术栈/模型ai,anthropic,bumblebee,chatgpt,claude-ai,elixir,langchain,llm
GitHub 星标★ 1201
30天Star增速
HF 下载量
上线时间2023-07-12 00:00:00
最近更新2026-09-17 00:00:00
维护状态活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数7

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 7 步

环境要求

  • Elixir 1.17 或更高版本
  • 项目使用 Mix 构建(在 mix.exs 中管理依赖)
  • 至少一个 LLM 提供商的 API Key(如 OpenAI 的 OPENAI_API_KEY)
  • 网络可访问所用提供商的 API(Bumblebee 本地模型除外)

安装与启动步骤

  1. 1确认 Elixir 版本

    README 要求 Elixir 1.17 或更高版本,先检查本机版本是否满足,低于 1.17 需先升级。

    elixir --version
  2. 2添加 langchain 依赖

    在项目根目录的 mix.exs 的 deps 列表中加入 langchain,版本用 README 给出的 ~> 0.9.0。

    {:langchain, "~> 0.9.0"}
  3. 3拉取依赖

    在项目根目录执行,Mix 会按 mix.exs 下载并编译 langchain 及其依赖(含 Req)。

    mix deps.get
  4. 4配置 API Key

    在 config/runtime.exs 中读取环境变量并写入 openai_key、openai_org_id,README 给的是 System.fetch_env! 写法。

    config :langchain, openai_key: System.fetch_env!("OPENAI_API_KEY")
    config :langchain, openai_org_id: System.fetch_env!("OPENAI_ORG_ID")
  5. 5设置环境变量

    把真实密钥导出到环境变量,供上一步的 fetch_env! 读取;换成你自己的 sk- 开头密钥。

    export OPENAI_API_KEY=sk-xxxxxxxx
    export OPENAI_ORG_ID=org-xxxxxxxx
  6. 6编写并运行链

    用 LLMChain.new! 组装链,add_message 加用户消息后 run;README 也给出 ChatGrok 的用法示例。

    {:ok, grok} = ChatGrok.new(%{model: "grok-4", temperature: 0.7})
    
    {:ok, chain} =
      LLMChain.new!(%{llm: grok})
      |> LLMChain.add_message(Message.new_user!("Explain quantum computing"))
      |> LLMChain.run()
  7. 7查看 Token 用量

    运行后可从链的 token_usage 字段读取输入输出 token 统计,README 示例返回 %TokenUsage{}。

    trajectory.token_usage

关键配置

配置项必填说明示例
openai_key是OpenAI API 密钥,库通过 Req 调用接口时使用System.fetch_env!("OPENAI_API_KEY")
openai_org_id否OpenAI 组织 ID,README 示例中与密钥一起配置System.fetch_env!("OPENAI_ORG_ID")

如何确认成功

运行 LLMChain.run() 返回 {:ok, chain} 且无报错,必要时用 chain.token_usage 查看 token 统计。

常见问题

Q:支持哪些模型提供商?

A:README 列出 Anthropic Claude、OpenAI ChatGPT/Responses API、AWS Bedrock Mantle、Cloudflare Workers AI、xAI Grok、Google Gemini/Vertex AI、DeepSeek、Ollama、Mistral、Perplexity、orq.ai、Bumblebee、ReqLLM 等。

Q:可以用本地模型吗?

A:可以,README 提到通过 Bumblebee(基于 Nx)自托管 Llama、Mistral、Zephyr 等模型,也可用 Ollama 运行本地开源模型。

Q:使用 Grok 需要配 openai_key 吗?

A:示例中 ChatGrok.new 用于 Grok-4,README 只给出 openai_key/openai_org_id 的配置片段,其他提供商的密钥配置请以官方文档为准。

Q:怎么知道消耗了多少 token?

A:运行链之后访问 token_usage,README 示例返回 %TokenUsage{input: 150, output: 45}。

注意事项

  • 库内部使用 Req 库发起 API 调用,需保证 Req 依赖正常可用。
  • README 只演示了 OpenAI 的 openai_key/openai_org_id 配置写法,其它提供商的配置项未在节选中给出。
  • 除 OpenAI 外,本库也兼容 OpenAI 兼容接口的第三方服务。

核心亮点

  • 原生 Elixir 实现,与 Phoenix 等框架无缝集成
  • 支持多种 LLM 提供商(OpenAI、Anthropic)及本地模型
  • 提供链式抽象,简化复杂 AI 流程编排

不足之处

  • 生态和文档相比 Python 版 LangChain 不够成熟
  • 社区规模较小,示例和教程较少

适用场景

  • 在 Elixir 项目中快速集成 ChatGPT 等对话能力
  • 构建基于 Phoenix 的 AI 聊天机器人
  • 利用本地模型(Bumblebee)实现离线 AI 功能

替代项目

LangChain (Python)、LangChain.js (JavaScript)、LlamaIndex (Python)

项目介绍

langchain 是开发框架领域的开源项目,由 brainlid 开发,2023 年首次发布。

在全站 13,090 个收录项目中,它的 GitHub 星标数(1,201)位列前 30%,在开发框架分类中处于中上游。

项目目前处于活跃维护状态,最近一次代码更新于 2026-09-17。完全免费,无付费版本。

它主要面向的使用场景是:在Elixir项目中快速集成ChatGPT等对话能力。同类可对比的替代方案包括 LangChain (Python)、LangChain.js (JavaScript)、LlamaIndex (Python)。

上一篇:ai4j

下一篇:generative_ai_with_langchain

同类项目推荐

langchain 开源

组装 AI 应用的乐高积木,从想法到上线不换工具

The agent engineering platform.

★ 146874 2026-08-09
transformers 开源

全球最大的模型仓库全家桶,想用的模型一把抓

Transformers: the model-definition framework for state-of-the-art machine learning m···

★ 166529 2026-08-09
pi 开源

一套 TypeScript 工具包,快速搭出能写代码的 AI agent

AI agent toolkit: unified LLM API, agent loop, TUI, coding agent CLI

★ 108504 2026-09-12