Repolode
ksylvest

ksylvest/omniai

统一的 Ruby API,用同一套接口调用 OpenAI、Anthropic、Google、Mistral、DeepSeek 等多家 AI 服务。

Star
254
Fork
15
未关闭 Issue
1
最近提交
8天前

这是什么?

OmniAI 是一个 Ruby 库,为多家 AI 服务提供统一的调用接口,支持 Anthropic、DeepSeek、Google、Mistral 和 OpenAI。每家服务商以独立 gem 发布,按需安装即可,切换服务商时只需更换客户端,业务调用代码基本不变。

它覆盖聊天(支持流式输出、多模态输入、工具调用,并可通过 schema 获取结构化输出)、文字转语音、语音转文字和向量嵌入。项目还提供用于快速测试的命令行工具,以及基于 stdio 运行的 MCP 服务器实现。

对于兼容 OpenAI 接口的服务(如 LocalAI、Ollama),可通过自定义 host 接入;同时支持日志与超时配置,并在服务商支持时提供扩展推理和 prompt 缓存选项。

核心功能

  • 01用统一接口调用 OpenAI、Anthropic、Google、Mistral、DeepSeek 等服务商
  • 02支持流式输出、系统与用户消息以及图片输入的聊天
  • 03通过 Ruby 工具类实现工具调用,并可用 schema 获取结构化结果
  • 04支持文字转语音、语音转文字和向量嵌入
  • 05提供命令行工具以及基于 stdio 的 MCP 服务器

适用场景

  • 在 Ruby 或 Rails 应用中调用大模型,同时避免绑定单一厂商
  • 用相同代码对比不同服务商的回复
  • 为 Ruby 服务添加语音转写或语音合成功能
  • 将 Ruby 应用接入本地兼容 OpenAI 接口的模型服务

快速上手

  1. 1

    安装主 omniai gem

    gem install omniai
  2. 2

    安装提供商 gem,例如 OpenAI

    gem install omniai-openai
  3. 3

    创建客户端并发送聊天请求

使用前须知

  • 需要各个 AI 提供商的 API 密钥才能发起请求。
  • 每个提供商都需要单独安装对应的 gem。

收录于专题

标签

常见问题

omniai 是什么?
统一的 Ruby API,用同一套接口调用 OpenAI、Anthropic、Google、Mistral、DeepSeek 等多家 AI 服务。 OmniAI 是一个 Ruby 库,为多家 AI 服务提供统一的调用接口,支持 Anthropic、DeepSeek、Google、Mistral 和 OpenAI。每家服务商以独立 gem 发布,按需安装即可,切换服务商时只需更换客户端,业务调用代码基本不变。
omniai 可以免费使用吗?用的什么许可证?
omniai 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
omniai 还在维护吗?
活跃维护中。omniai 最近一次提交是在 2026年10月30日。
omniai 适合用来做什么?
在 Ruby 或 Rails 应用中调用大模型,同时避免绑定单一厂商 用相同代码对比不同服务商的回复 为 Ruby 服务添加语音转写或语音合成功能 将 Ruby 应用接入本地兼容 OpenAI 接口的模型服务
omniai 怎么安装和运行?
安装主 omniai gem: gem install omniai 安装提供商 gem,例如 OpenAI: gem install omniai-openai 创建客户端并发送聊天请求
在哪里获取 omniai?
源代码和安装说明在 GitHub 上:https://github.com/ksylvest/omniai

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目