複数のプロバイダーのLLMから、Pydanticで検証済みの構造化データを取得し、検証失敗時には自動で再試行するPythonライブラリです。
openai/openai-java
OpenAI REST API向けの公式Java・Kotlin SDK。同期・非同期クライアント、ストリーミング、型付きリクエスト/レスポンスクラスを提供します。
- スター
- 1,554
- フォーク
- 272
- 未解決の Issue
- 66
- 最終コミット
- 7 時間前
これは何?
openai-javaは、JavaアプリケーションからOpenAI APIを呼び出すための公式Javaライブラリです。RESTエンドポイントを型付きのビルダーやレスポンスクラスでラップするため、開発者はJSONを手書きせずにJavaオブジェクトを使って処理できます。主なエントリーポイントはResponses APIで、Chat Completions APIにも対応しています。
クライアントには同期版と非同期版があり、ストリーミングメソッドはデータの到着に合わせて処理できるチャンクストリームを返します。ヘルパークラスを使うと、ストリーミングされたチャット補完やレスポンスを完全なオブジェクトにまとめられます。プレーンなJavaクラスから構造化出力を自動生成でき、必要に応じてJacksonやSwaggerのアノテーションを使って生成されるJSON schemaを調整できます。
SDKには、システムプロパティや環境変数による設定、Kubernetes・Azure・GCP向けのワークロードID認証機能もあります。また、Amazon Bedrock上のOpenAI互換APIを呼び出すためのオプションのartifactも用意されています。
主な機能
- 01Responses APIとChat Completions API向けの、型付きJavaビルダーとレスポンスクラス。
- 02CompletableFutureを返す非同期メソッドを備えた、同期・非同期クライアント。
- 03SSEによるストリーミングと、チャンクを完全なレスポンスにまとめるヘルパー。
- 04Javaクラスから構造化出力を生成し、ローカルでJSON schemaを検証。
- 05Kubernetes・Azure・GCP向けのワークロードID認証。
ユースケース
- 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・Kotlin SDK。同期・非同期クライアント、ストリーミング、型付きリクエスト/レスポンスクラスを提供します。 openai-javaは、JavaアプリケーションからOpenAI APIを呼び出すための公式Javaライブラリです。RESTエンドポイントを型付きのビルダーやレスポンスクラスでラップするため、開発者はJSONを手書きせずにJavaオブジェクトを使って処理できます。主なエントリーポイントは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
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
サーバーサイドのJavaScript/TypeScriptアプリケーションからAnthropicのClaude APIを呼び出すための公式TypeScript SDK。
Python、.NET、JavaでAIエージェントやマルチエージェントシステムを構築するためのSDK。モデル、プラグイン、ベクトルデータベースと連携できます。
同期・非同期クライアントと型付きのリクエスト/レスポンスモデルを備えた、OpenAI REST API公式Pythonライブラリ。
IDE拡張、ターミナルCLI、デスクトップアプリ、SDKとして動作するオープンソースの自律型コーディングエージェント。
AIエージェントに1,000以上の認証済みアプリツールキット、ユーザーごとのセッション、アクション実行用サンドボックスを提供するTypeScript・Python SDK。