Repolode
openai

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. 1

    添加 Gradle 依赖

    implementation("com.openai:openai-java:4.90.0")
  2. 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 数据每日更新。

相关项目