OCI OpenAI互換エンドポイント
OCI Generative AI OpenAI互換エンドポイントを使用して、エンタープライズAIモデルをコールし、使い慣れたOpenAIスタイルのAPIを通じてエンタープライズAIエージェントを構築します。これらのエンドポイントをコールして、OCI内で認証、実行およびリソース管理を維持しながら、サポートされているOpenAIリクエスト・パターンに到達します。
- エンタープライズAIモデル
- レスポンスまたはチャット完了APIを使用して、サポートされているホスト・モデルまたはインポートされたモデルをコールします。
- エンタープライズAIエージェント
-
エージェント・ワークロードのプライマリOpenAI互換APIとしてレスポンスAPIを使用します。サポートされているエージェント・ツール、エージェント・メモリー機能およびファイル、ベクトル・ストア、コンテナなどの低レベルの基礎エージェント・ビルディング・ブロックとともに使用できます。
OCI Generative AIは、OpenAI互換のエンドポイントに加えて、チャット、埋込み、再ランク・タスク用の個別のエンドポイントを通じてOCIネイティブ推論APIも提供します。
OCI OpenAI互換エンドポイントの理解
OpenAI互換のベース・エンドポイントは次のとおりです。
https://inference.generativeai.${region}.oci.oraclecloud.com/openai/v1
OCIでサポートされているOpenAIスタイルのパスでベース・エンドポイントを使用できます。
パスの例:
/responses/conversations/containers/files
主な利点
API形式はOpenAIと互換性がありますが、実装はOCIと完全に統合されています。
- 認証では、OpenAI資格証明ではなく、OCI生成AI APIキーまたはOCI IAMベースの認証を使用します。
- リクエストは、サポートされているOCIリージョンのOCI生成AI推論エンドポイントにルーティングされます。
- ファイルやコンテナなどのリソースは、OCIで作成および管理されます。
- データ処理はOCIインフラストラクチャ内に残ります。
- OpenAI API用に構築された既存のアプリケーションは、通常、ベースURL、認証方法およびモデル名を更新することで、最小限のコード変更で適応できます。
たとえば、/openai/v1/containersへのリクエストは、OCI生成AIでコンテナ・リソースを作成および管理します。
認証
OCI OpenAI互換エンドポイントには、次の2つの方法でアクセスできます。
テストおよび早期開発にAPIキーを使用します。本番ワークロードおよびOCI管理環境には、IAMベースの認証を使用します。
サポートされているエンドポイント
モデル推論およびエージェント・ワークフローの場合
OCI OpenAI互換APIを使用して、サポートされているホスト・モデルおよびインポートされたモデルにモデル推論およびエージェント・ワークフローでアクセスするには、次のエンドポイントを使用します。
ベースURL: https://inference.generativeai.${region}.oci.oraclecloud.com/openai/v1
| API | エンドポイント・パス | 推奨される使用方法 |
|---|---|---|
| レスポンスAPI | /responses |
このプライマリ・インタフェースを使用して、モデルをコールし、応答を生成します。オプションで、コンテキストでサポートされているツールおよび会話IDを含めます。 |
| 会話API | /conversations |
この永続的でステートフルなインタフェースを使用して、マルチターンの会話履歴を管理します。会話IDをレスポンスAPIに含めます。これは、モデル・レスポンスを生成するためのプライマリ・エンドポイントのままです。 |
| チャット完了API | /chat/completions |
チャット完了APIを中心にアプリケーション・コードがすでに構築されている場合、またはより単純なチャット専用インタフェースが必要な場合は、このステートレスなチャット形式のインタフェースおよび先行処理をステートフル会話APIに使用します。それ以外の場合は、会話APIをレスポンスAPIとともに使用します。 |
エージェント構築コンポーネント
エージェント・ワークロードの場合、OCI OpenAI互換APIには次のビルディング・ブロックが含まれます。
| API | エンドポイント・パス | 推奨される使用方法 |
|---|---|---|
| ファイルAPI | /files |
ファイルのアップロードおよび管理用 |
| ベクトル・ストア・ファイルAPI | /vector_stores/{id}/files |
ベクトル・ストアにアタッチされたファイルの管理用。 |
| ベクトル・ストア・ファイル・バッチAPI | /vector_stores/{id}/file_batches |
ベクトル・ストア・ファイルのバッチを同時に追加および管理する場合。 |
| ベクトル・ストア検索API | /vector_stores/{id}/search |
ベクトル・ストアに対して直接検索を実行する場合。 |
| コンテナAPI | /containers |
エージェント・ワークフローで使用するサンドボックス・コンテナを作成および管理する場合。 |
| コンテナ・ファイルAPI | /containers/{id}/files |
サンドボックス・コンテナ内のファイルを管理する場合。 |
サポートされているモデルおよびリージョン
OpenAI互換APIの生成AIモデルおよびリージョンを参照してください。
推奨事項
ほとんどの新しいエージェント・ワークロードでは、プライマリ・エントリ・ポイントとしてレスポンスAPIを使用します。
多くの場合、サポートされているモデルを選択し、オプションで会話コンテキストを含めたり、リクエストでサポートされているツールを宣言したり、レスポンスAPIを介してリクエストを送信したりできます。その後、OCI Generative AIは、そのワークフローの一部としてモデルの実行とツールの使用を処理します。
必要に応じて、レスポンスAPIを、ファイル、ベクトル・ストア、コンテナなどの下位レベルの基本APIと組み合せることもできます。
このアプローチは、次の場合に役立ちます。
- サポートされているモデルを単一のAPIで使用します。
- リクエストでツールを直接宣言します。
- OCI管理の実行でエージェント・ワークフローを構築します。
- 会話APIを使用して会話コンテキストを追加します。
- 必要に応じて、モデル・リクエストをファイル、ベクトル・ストアまたはコンテナと組み合せます。
例: ツールの使用
たとえば、MCPコールを使用するには、モデルを指定し、Responses APIリクエストでMCPツールを宣言します。個別のMCP固有のAPIは必要ありません。
response = client.responses.create(
model="openai.gpt-oss-120b",
tools=[
{
"type": "mcp",
"server_url": "https://example.com/mcp",
}
],
input="What events are scheduled for 2026-04-02?"
)例: 会話履歴の使用
会話コンテキストの場合は、最初に会話を作成します。
conversation = client.conversations.create()次に、複数ターン会話のレスポンスAPIリクエストで会話IDを送信します。
response = client.responses.create(
model="openai.gpt-oss-120b",
input=[
{
"role": "user",
"content": "Recommend a restaurant based on the food that I like."
}
],
conversation=conversation.id,
)