OlympiaAI/raix
一个 Ruby 库,用于在 Ruby 应用中加入离散的大模型组件,支持对话补全、工具调用和结构化输出。
- Star
- 329
- Fork
- 30
- 未关闭 Issue
- 11
- 最近提交
- 2个月前
这是什么?
Raix 是一个 Ruby gem,可以把大语言模型能力加入普通的 Ruby 类中。通过混入 ChatCompletion 等模块,类即可获得 transcript 和 chat_completion 方法,并借助 OpenRouter 调用 OpenAI、Anthropic、Google Gemini 等多家模型服务。底层基于 RubyLLM 处理服务商连接,只要引入 ActiveSupport,非 Rails 项目也能使用。
除基础对话外,Raix 支持自动工具(函数)调用:通过声明式 DSL 定义函数,模型调用后结果会回传给模型,直到其返回文本回复。它还提供 PromptDeclarations 模块用于按顺序执行提示链,Predicate 模块用于是/否/也许类问题,实验性的 MCP 客户端支持,以及用于 JSON Schema 输出的 ResponseFormat。before_completion 钩子可在请求发出前修改参数,例如按租户选择模型或脱敏个人信息。
该项目代码提取自虚拟 AI 团队平台 Olympia,作者还撰写了一本关于 AI 应用开发模式的书籍,阐述了相关设计思路。
核心功能
- 01对话补全,transcript 支持简写或 OpenAI 标准消息格式。
- 02通过声明式 DSL 实现自动工具函数调用,并可设置调用次数上限。
- 03PromptDeclarations 支持按顺序执行提示链,包含条件、回调和循环。
- 04JSON 模式与 JSON Schema 响应格式,便于获取结构化输出。
- 05支持 Anthropic 风格的提示缓存,并提供 before_completion 钩子修改请求。
适用场景
- 在 Rails 模型或服务对象中加入 AI 摘要、分类等步骤。
- 搭建多步骤流水线,每次模型调用结果作为下一个提示的输入。
- 让模型调用应用中的 Ruby 方法来获取数据或触发业务流程。
- 将 Ruby 应用连接到远程 MCP 工具服务器进行实验。
快速上手
- 1
将 gem 添加到 Gemfile
bundle add raix - 2
在 Ruby 类中包含 Raix::ChatCompletion 并调用 chat_completion
使用前须知
- Raix 3.0 依赖 RubyLLM 和 OpenRouter,因此需要 OpenAI 或 Anthropic 等提供商的 API 密钥。
- 非 Rails 应用必须将 ActiveSupport 作为依赖引入。
收录于专题
标签
常见问题
- raix 是什么?
- 一个 Ruby 库,用于在 Ruby 应用中加入离散的大模型组件,支持对话补全、工具调用和结构化输出。 Raix 是一个 Ruby gem,可以把大语言模型能力加入普通的 Ruby 类中。通过混入 ChatCompletion 等模块,类即可获得 transcript 和 chat_completion 方法,并借助 OpenRouter 调用 OpenAI、Anthropic、Google Gemini 等多家模型服务。底层基于 RubyLLM 处理服务商连接,只要引入 ActiveSupport,非 Rails 项目也能使用。
- raix 可以免费使用吗?用的什么许可证?
- raix 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- raix 还在维护吗?
- 半年内有更新。raix 最近一次提交是在 2026年9月22日。
- raix 适合用来做什么?
- 在 Rails 模型或服务对象中加入 AI 摘要、分类等步骤。 搭建多步骤流水线,每次模型调用结果作为下一个提示的输入。 让模型调用应用中的 Ruby 方法来获取数据或触发业务流程。 将 Ruby 应用连接到远程 MCP 工具服务器进行实验。
- raix 怎么安装和运行?
- 将 gem 添加到 Gemfile: bundle add raix 在 Ruby 类中包含 Raix::ChatCompletion 并调用 chat_completion
- 在哪里获取 raix?
- 源代码和安装说明在 GitHub 上:https://github.com/OlympiaAI/raix
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
类型安全、与模型供应商解耦的 TypeScript AI SDK,支持流式对话、工具调用、智能体和多模态应用。
面向 Elixir 应用的 LLM 集成库,支持 Claude、OpenAI、Gemini、Ollama 及自托管模型。
可视化 AI 智能体与提示词链编排 IDE,并提供 TypeScript 库嵌入自有应用。
PromptLayer 的 Python SDK,用于记录、版本化、追踪和评估提示词与 OpenAI、Anthropic 等模型调用。