
req_llm
Elixir 里统一调用各家大模型,管道式组合
req_llm 是一个用 Elixir 编写的可组合 LLM 交互库,构建在 Req 和 Finch 之上。它解决的是 Elixir 生态中调用大模型 API 时缺乏统一、轻量抽象的问题:开发者不必为每家厂商手写 HTTP 请求、重试和流式解析逻辑。核心能力包括:统一的 provider 接口,可切换 OpenAI、Anthropic、Google 等主流服务;基于 Req 的中间件机制,方便插入日志、鉴权、重试等自定义行为;支持流式输出与工具调用;与 Elixir 的管道和函数式风格自然融合,便于组合出多步对话、RAG 或 agent 流程。它不绑定特定框架,可作为 Phoenix 应用或后台任务中的底层 LLM 客户端,适合追求简洁、可测试、可扩展的 Elixir 团队。
项目数据
使用教程
核心亮点
- 基于 Req/Finch,复用成熟 HTTP 栈,重试、连接池、流式开箱可用
- provider 抽象统一,切换 OpenAI/Anthropic 等只需改配置,业务代码不动
- 函数式管道风格,天然可组合,便于拼装多步对话与工具调用流程
不足之处
- 生态较新,provider 覆盖和边缘特性可能不如 Python/JS 同类库全面
- 文档与示例相对有限,复杂场景需读源码
适用场景
- Phoenix 后端集成聊天或摘要接口
- 后台任务批量调用 LLM 做数据处理
- 构建多步 agent 或 RAG 流程的底层客户端
替代项目
langchain、llm-elixir
项目介绍
上一篇:grace
同类项目推荐
ComfyUI_Custom_Nodes_AlekPet
开源
给 ComfyUI 装上语音翻译和姿态检测,工作流更全能
Custom nodes that extend the capabilities of Comfyui
langchain
开源
组装 AI 应用的乐高积木,从想法到上线不换工具
The agent engineering platform.
transformers
开源
全球最大的模型仓库全家桶,想用的模型一把抓
Transformers: the model-definition framework for state-of-the-art machine learning m···
bruno
开源
把 API 测试当代码管理,用 Git 搞定协作与版本追踪
Opensource IDE For Exploring and Testing API's (lightweight alternative to Postman/I···