langchainrb

用 Ruby 快速构建 LLM 应用,像搭积木一样组合 AI 能力

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 智能体 🍴 复刻 270 🐛 待处理 88 👀 关注 33
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 2008
维护状态 较活跃
是否开源 开源
定价模式 🏷️完全免费 开源项目,MIT许可证,可免费使用和部署。

项目预览

langchainrb 项目界面预览图
图片来源:项目官网

项目数据

分类智能体
开发团队patterns-ai-core
定价模式🏷️完全免费
价格说明开源项目,MIT许可证,可免费使用和部署。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议MIT
主要语言Ruby
技术栈/模型agents,ai-agents,artificial-intelligence,machine-learning,ml,rubyml,vector-search
GitHub 星标★ 2008
上线时间2023-04-18 00:00:00
代码更新2026-10-21
仓库体积3.2 MB
本站数据更新2026-11-09
维护状态较活跃
收录时间2026-08-09
浏览次数3

项目介绍

langchainrb 是 Ruby 生态中构建 LLM 驱动应用的框架,将 LangChain 的核心概念移植到 Ruby,解决 Ruby 开发者无法便捷集成大语言模型的问题。它提供统一的接口来对接多种 LLM(如 OpenAI、Anthropic),支持链式调用、提示词管理、工具调用和智能体(Agent)编排,内置向量搜索与检索增强生成(RAG)能力,可对接多种向量数据库。核心能力包括:多模型适配、可组合的链(Chain)、智能体循环、文档加载与分割、记忆管理等,让 Ruby 开发者能快速搭建聊天机器人、问答系统等 AI 应用。项目活跃成长,API 设计贴近 Ruby 习惯,但生态和文档相比 Python 版仍有差距。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 2008

使用教程

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

环境要求

  • 已安装 Ruby 环境(可运行 ruby 与 gem 命令)
  • 使用 Bundler 管理依赖(推荐)或已安装 RubyGems
  • OpenAI 等 LLM 供应商的 API Key
  • 如使用工具类(如 NewsRetriever),需对应的第三方 API Key(如 NEWS_API_KEY)

安装与启动步骤

  1. 1用 Bundler 安装 gem

    在项目目录下执行,会自动把 langchainrb 写入 Gemfile 并安装。适合已有 Rails/Ruby 项目。

    bundle add langchainrb
  2. 2或直接安装 gem

    不使用 Bundler 管理依赖时,直接用 gem 命令全局安装。二选一即可。

    gem install langchainrb
  3. 3按需补充额外 gem

    README 说明部分功能依赖的额外 gem 不默认包含,请只添加自己需要的那部分。

  4. 4在代码中引入

    在 Ruby 文件顶部引入 langchain,之后才能使用 LLM、Assistant 等类。

    require "langchain"
  5. 5初始化 LLM 实例

    所有 LLM 类继承自 Langchain::LLM::Base,接口一致,切换后端无需改业务代码。key 从环境变量读取。

    llm = Langchain::LLM::OpenAI.new(api_key: ENV["OPENAI_API_KEY"])
  6. 6创建并运行 Assistant

    传入 llm、instructions 和 tools 创建助手,添加用户消息并运行,可开启自动工具执行。

    assistant = Langchain::Assistant.new(
      llm: llm,
      instructions: "You're a helpful AI assistant",
      tools: [Langchain::Tool::NewsRetriever.new(api_key: ENV["NEWS_API_KEY"])]
    )
    assistant.add_message_and_run!(content: "What's the latest news about AI?")
    assistant.run(auto_tool_execution: true)

关键配置

配置项必填说明示例
llm是Assistant 使用的 LLM 实例,必填Langchain::LLM::OpenAI.new(api_key: ENV["OPENAI_API_KEY"])
tools否工具实例数组,供助手调用外部能力[Langchain::Tool::NewsRetriever.new(api_key: ENV["NEWS_API_K
instructions否助手系统提示词,定义角色与行为"You're a helpful AI assistant"
tool_choice否工具选择策略,默认 auto,也可指定函数名强制调用"auto"
parallel_tool_calls否是否并行发起多个工具调用,默认 truetrue
tool_execution_callback否工具执行前触发的回调,用于日志或监控-> (tool_call_id, tool_name, method_name, tool_arguments) {

如何确认成功

运行 Ruby 脚本后能正常输出助手回复(如返回 AI 相关最新新闻),说明 gem 安装与 LLM 配置成功。

常见问题

Q:报错提示缺少依赖 gem 怎么办?

A:README 说明附加 gem 不默认包含,需要哪个功能就在 Gemfile 中自行添加对应 gem,不要一次性全装。

Q:如何从 OpenAI 切换到其他 LLM?

A:Langchain::LLM 提供统一接口,各 LLM 类都继承 Langchain::LLM::Base,替换实例化的类即可,业务代码基本不用改。

Q:Rails 项目怎么深度集成?

A:README 指向单独的 langchainrb_rails gem,需要 Rails 深度集成时改用该 gem。

Q:API Key 应该写在哪里?

A:示例统一从环境变量读取(ENV["OPENAI_API_KEY"]、ENV["NEWS_API_KEY"]),建议用环境变量而非硬编码在代码里。

注意事项

  • 额外依赖 gem 默认不安装,只添加实际用到的,避免体积膨胀。
  • 工具类通常需要自己的 API Key,如 NewsRetriever 需要 NEWS_API_KEY。
  • 完整 API 文档见官网 rubydoc.info/gems/langchainrb。

核心亮点

  • 原生 Ruby 实现,无缝融入 Rails 等现有 Ruby 项目,无需跨语言调用
  • 支持多种 LLM 和向量数据库,抽象统一,切换成本低
  • 提供链、智能体、RAG 等高层抽象,简化复杂 AI 流程开发

不足之处

  • 文档和示例相对较少,学习曲线较陡
  • 社区生态和第三方集成不如 Python 版丰富

适用场景

  • 在 Ruby on Rails 应用中快速添加 AI 聊天或问答功能
  • 构建基于私有知识库的检索增强生成(RAG)系统
  • 开发需要多步骤推理和工具调用的智能体应用

替代项目

langchain(Python)、langchain4j(Java)、boxcars(Ruby)

上一篇:software-periodic-table

下一篇:ToolRegistry

同类项目推荐

GPT-Vis 开源

让大模型输出配置,前端直接渲染出规范图表

GPT Vision, Visualization for AI Friendly! AntV's entry for AI.

★ 798 2026-09-16
LLMstudio 开源

让 LLM 应用从原型到生产,少踩坑、快落地

Framework to bring LLM applications to production

★ 390 2026-08-09
node-diffusion 开源

像搭积木一样可视化 Stable Diffusion 的生成过程

Organize latent space

★ 52 2026-08-09
towhee 开源

拖拽式搭建AI数据处理管道,快速实现多模态向量化

Towhee is a framework that is dedicated to making neural data processing pipelines s···

★ 3452 2026-08-09
Legion 开源

用 Python 快速搭建多智能体协作应用,简化 LLM 编排。

A Python-based framework for building multi-agent systems with LLMs. Currently in pr···

★ 118 2026-08-09
syncode 开源

让大模型输出严格符合语法,告别格式错误

Efficient and general syntactical decoding for Large Language Models

★ 341 2026-08-09
webjs 开源

让 AI 直接读懂全栈代码,无需训练即可辅助开发。

WebJs is an AI-first full-stack JavaScript web components framework. You get product···

★ 28 2026-08-09
open-mercato 开源

让 AI 编码助手直接产出生产级架构,不用反复改代码

The AI-Engineering Foundation Framework for business apps: open-source TypeScript, w···

★ 1911 2026-08-09