基于 Pydantic 的 Python 库,让 LLM 输出结构化、经过校验的数据,并在校验失败时自动重试。
openai/openai-java
OpenAI REST API 的官方 Java SDK,提供同步与异步客户端、流式输出和类型化的请求响应类。
- Star
- 1,554
- Fork
- 272
- 未关闭 Issue
- 66
- 最近提交
- 6小时前
这是什么?
openai-java 是 OpenAI 官方提供的 Java 库,用于在 Java 应用中调用 OpenAI API。它把 REST 接口封装为类型化的构建器和响应类,开发者可以直接操作 Java 对象,而无需手写 JSON。主要入口是 Responses API,同时也支持 Chat Completions API。
客户端分为同步和异步两种形式,流式方法返回可逐块处理的数据流。辅助类可以把流式返回的聊天补全和响应重新累积为完整对象。结构化输出可以直接从普通 Java 类自动生成 JSON Schema,并可借助 Jackson 和 Swagger 注解调整生成结果。
此外,SDK 支持通过系统属性或环境变量进行配置,提供适用于 Kubernetes、Azure 和 GCP 的 workload identity 认证,并有一个可选组件用于在 Amazon Bedrock 上调用兼容 OpenAI 的 API。
核心功能
- 01为 Responses 和 Chat Completions API 提供类型化的 Java 构建器与响应类。
- 02同时提供同步和异步客户端,异步方法返回 CompletableFuture。
- 03支持 SSE 流式输出,并提供辅助类将分块数据合并为完整响应。
- 04可从 Java 类生成结构化输出的 JSON Schema,并在本地进行校验。
- 05支持 Kubernetes、Azure 和 GCP 的 workload identity 认证。
适用场景
- 在 Java 或 Kotlin 后端服务中接入基于 OpenAI 的文本生成能力。
- 将模型输出以流式方式推送到 Web 或桌面客户端。
- 把模型响应中的结构化数据解析为 Java 领域对象。
- 在 Java 应用中通过 Amazon Bedrock 调用兼容 OpenAI 的模型。
快速上手
- 1
添加 Gradle 依赖
implementation("com.openai:openai-java:4.90.0") - 2
从环境变量创建客户端
OpenAIClient client = OpenAIOkHttpClient.fromEnv();
使用前须知
- README 中的示例依赖 OPENAI_API_KEY 环境变量,因此需要 OpenAI API 密钥才能发起请求。
标签
常见问题
- openai-java 是什么?
- OpenAI REST API 的官方 Java SDK,提供同步与异步客户端、流式输出和类型化的请求响应类。 openai-java 是 OpenAI 官方提供的 Java 库,用于在 Java 应用中调用 OpenAI API。它把 REST 接口封装为类型化的构建器和响应类,开发者可以直接操作 Java 对象,而无需手写 JSON。主要入口是 Responses API,同时也支持 Chat Completions API。
- openai-java 可以免费使用吗?用的什么许可证?
- openai-java 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- openai-java 还在维护吗?
- 活跃维护中。openai-java 最近一次提交是在 2026年10月22日。
- openai-java 适合用来做什么?
- 在 Java 或 Kotlin 后端服务中接入基于 OpenAI 的文本生成能力。 将模型输出以流式方式推送到 Web 或桌面客户端。 把模型响应中的结构化数据解析为 Java 领域对象。 在 Java 应用中通过 Amazon Bedrock 调用兼容 OpenAI 的模型。
- openai-java 怎么安装和运行?
- 添加 Gradle 依赖: implementation("com.openai:openai-java:4.90.0") 从环境变量创建客户端: OpenAIClient client = OpenAIOkHttpClient.fromEnv();
- 在哪里获取 openai-java?
- 源代码和安装说明在 GitHub 上:https://github.com/openai/openai-java
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
Anthropic 官方的 TypeScript SDK,用于在服务端 JavaScript/TypeScript 应用中调用 Claude API。
用于在 Python、.NET 和 Java 中构建 AI 智能体与多智能体系统的开源 SDK。
OpenAI 官方 Python SDK,提供同步与异步客户端,并带有完整类型定义。
开源的自主编程智能体,可作为 IDE 插件、终端 CLI、桌面应用或 SDK 使用。
为 AI 智能体提供 1000 多个预认证应用工具包、按用户划分的会话与沙箱的 TypeScript/Python SDK。