面向 OpenAI API 及多家大模型服务商的异步 Scala 客户端,覆盖聊天、Responses、流式输出、批处理等接口。
dongri/openai-api-rs
一个非官方的 Rust 客户端库,用于调用 OpenAI API,也可对接 OpenRouter。
- Star
- 485
- Fork
- 93
- 未关闭 Issue
- 7
- 最近提交
- 上个月
这是什么?
openai-api-rs 是一个非官方的 Rust 客户端库,用于访问 OpenAI API。它把各个 REST 接口封装为带类型的 Rust 结构体和方法,Rust 应用无需手动拼接 HTTP 请求。客户端通过 builder 创建,API 密钥一般从 OPENAI_API_KEY 环境变量读取。
该库覆盖了较多 OpenAI 接口,包括 Chat Completions、Embeddings、图像、音频、文件、微调、内容审核、函数调用、Assistants、Batch、Realtime 和 Responses。通过设置自定义 endpoint,同一个客户端也可以对接 OpenRouter,基础地址还可通过 OPENAI_API_BASE 覆盖。
该 crate 以 MIT 协议发布在 crates.io 上,并提供 docs.rs 完整 API 文档和仓库中的示例代码。
核心功能
- 01为 OpenAI REST 接口提供带类型的 Rust 结构体和方法
- 02通过 builder 创建客户端,支持从环境变量读取 API 密钥
- 03支持自定义 endpoint,可对接 OpenRouter
- 04提供基于 tokio 的异步 Chat Completion 示例
- 05覆盖 Chat、Embeddings、图像、音频、文件、微调等多类接口
适用场景
- 在 Rust 后端服务中接入 OpenAI 的对话或向量嵌入功能
- 通过同一套客户端接口从 Rust 调用 OpenRouter 托管的模型
- 在 Rust 命令行工具中快速验证大模型相关功能
快速上手
- 1
在 Cargo.toml 中添加依赖
cargo add openai-api-rs - 2
将 OpenAI 或 OpenRouter 的 API 密钥设置为环境变量
export OPENAI_API_KEY=sk-xxxxxxx
使用前须知
- 这是非官方客户端库,并非由 OpenAI 维护。
- 需要 OpenAI 或 OpenRouter 的 API 密钥才能发送请求。
标签
常见问题
- openai-api-rs 是什么?
- 一个非官方的 Rust 客户端库,用于调用 OpenAI API,也可对接 OpenRouter。 openai-api-rs 是一个非官方的 Rust 客户端库,用于访问 OpenAI API。它把各个 REST 接口封装为带类型的 Rust 结构体和方法,Rust 应用无需手动拼接 HTTP 请求。客户端通过 builder 创建,API 密钥一般从 OPENAI_API_KEY 环境变量读取。
- openai-api-rs 可以免费使用吗?用的什么许可证?
- openai-api-rs 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- openai-api-rs 还在维护吗?
- 半年内有更新。openai-api-rs 最近一次提交是在 2026年10月3日。
- openai-api-rs 适合用来做什么?
- 在 Rust 后端服务中接入 OpenAI 的对话或向量嵌入功能 通过同一套客户端接口从 Rust 调用 OpenRouter 托管的模型 在 Rust 命令行工具中快速验证大模型相关功能
- openai-api-rs 怎么安装和运行?
- 在 Cargo.toml 中添加依赖: cargo add openai-api-rs 将 OpenAI 或 OpenRouter 的 API 密钥设置为环境变量: export OPENAI_API_KEY=sk-xxxxxxx
- 在哪里获取 openai-api-rs?
- 源代码和安装说明在 GitHub 上:https://github.com/dongri/openai-api-rs
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
企业级大模型 API 集成管理系统,统一对接 OpenAI、Claude、Gemini、DeepSeek 等多家模型。
一个 Rust 库,用统一的 API 调用多家 AI 服务商,并尽量使用各家原生协议。
为 Vim 和 Neovim 提供 AI 能力的插件,可在编辑器内生成代码、编辑文本并与模型对话。
一个用于构建和运行基于大模型的自主智能体与多智能体工作流的开源平台,附带无代码图形编辑器。
Generative Manim 借助 GPT-4o、Claude 等大语言模型,把文字描述生成 Manim 动画代码并渲染成视频。