Repolode
openai

openai/openai-go

OpenAI 官方 Go 客户端库,用于在 Go 应用中调用 OpenAI REST API。

Star
3,528
Fork
360
未关闭 Issue
87
最近提交
昨天

这是什么?

openai-go 是 OpenAI REST API 的官方 Go 客户端库。Go 应用可以通过带类型的请求和响应结构体调用 OpenAI 接口,无需手写 HTTP 请求。主要入口是 Responses API,提供文本生成、多轮对话、流式输出、工具调用和结构化输出等示例,同时也支持 Chat Completions API。

除文本生成外,该库还提供 Responses 的 WebSocket 连接、Realtime 和 Live 的类型化连接、列表接口的分页辅助方法、基于 io.Reader 的文件上传,以及带载荷解析的 Webhook 签名验证。请求通过函数式选项配置请求头、超时和重试,错误以 *openai.Error 返回,便于程序化处理。模块要求 Go 1.26 或更高版本。

核心功能

  • 01为 Responses 和 Chat Completions 接口提供带类型的 Go 结构体。
  • 02支持流式输出以及工具(函数)调用辅助功能。
  • 03可根据 Go 类型生成 JSON Schema,实现结构化输出。
  • 04提供 Responses 的 WebSocket 连接,以及带类型的 Realtime 和 Live 连接。
  • 05列表接口支持自动分页,并提供 Webhook 签名验证与载荷解析。

适用场景

  • 在 Go 后端服务中加入大模型文本生成或对话能力。
  • 利用响应 ID 构建保持上下文的多轮对话助手。
  • 借助 JSON Schema 将模型输出解析为类型化数据。
  • 在 Go 服务中接收并验证 OpenAI Webhook 事件。

快速上手

  1. 1

    安装指定版本的 SDK

    go get -u 'github.com/openai/openai-go/v3@v3.96.0'
  2. 2

    在环境变量 OPENAI_API_KEY 中设置你的 OpenAI API 密钥

  3. 3

    创建客户端,并使用 README 中的 Responses 示例代码调用 client.Responses.New

使用前须知

  • 需要 Go 1.26 或更高版本;较旧的工具链必须固定到更早的 SDK 版本。
  • 最新版本包含少量有限的破坏性变更,升级前请查看更新日志。
  • Responses WebSocket 功能在 js/wasm 构建中不可用。

收录于专题

标签

常见问题

openai-go 是什么?
OpenAI 官方 Go 客户端库,用于在 Go 应用中调用 OpenAI REST API。 openai-go 是 OpenAI REST API 的官方 Go 客户端库。Go 应用可以通过带类型的请求和响应结构体调用 OpenAI 接口,无需手写 HTTP 请求。主要入口是 Responses API,提供文本生成、多轮对话、流式输出、工具调用和结构化输出等示例,同时也支持 Chat Completions API。
openai-go 可以免费使用吗?用的什么许可证?
openai-go 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
openai-go 还在维护吗?
活跃维护中。openai-go 最近一次提交是在 2026年11月6日。
openai-go 适合用来做什么?
在 Go 后端服务中加入大模型文本生成或对话能力。 利用响应 ID 构建保持上下文的多轮对话助手。 借助 JSON Schema 将模型输出解析为类型化数据。 在 Go 服务中接收并验证 OpenAI Webhook 事件。
openai-go 怎么安装和运行?
安装指定版本的 SDK: go get -u 'github.com/openai/openai-go/v3@v3.96.0' 在环境变量 OPENAI_API_KEY 中设置你的 OpenAI API 密钥 创建客户端,并使用 README 中的 Responses 示例代码调用 client.Responses.New
在哪里获取 openai-go?
源代码和安装说明在 GitHub 上:https://github.com/openai/openai-go

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

相关项目