API de conversations OCI
Utilisez l'API des conversations OCI pour gérer la mémoire de session. Avec l'API Conversations, vous créez d'abord une conversation, puis vous incluez l'ID conversation dans la demande d'API Réponses. Cela crée un objet de conversation dédié que vous pouvez réutiliser à chaque tour.
L'API des conversations OCI utilise le même format que l'API des conversations OpenAI avec le point d'extrémité compatible OCI OpenAI. Pour plus de détails sur la syntaxe et les demandes, consultez la documentation relative à l'API OpenAI Conversations. Pour les propriétés non prises en charge, voir la section Limites OCI pour chaque opération de cette page.
Point d'extrémité d'API pris en charge
| URL de base | Chemin du point d'extrémité | Authentification |
|---|---|---|
https://inference.generativeai.${region}.oci.oraclecloud.com/openai/v1 |
/conversations |
Clé d'API ou session IAM |
Remplacez ${region} par une région OCI prise en charge telle que us-chicago-1.
Bien que le format de la demande soit compatible avec OpenAI, l'authentification utilise les données d'identification OCI, les demandes sont acheminées au moyen des points d'extrémité d'inférence du service d'intelligence artificielle générative pour OCI et les ressources et l'exécution restent dans OCI.
Authentification
Vous pouvez accéder aux points d'extrémité compatibles avec OCI OpenAI de deux façons :
- Clés d'API du service d'intelligence artificielle générative pour OCI
- Authentification basée sur OCI IAM
Utilisez des clés d'API pour les tests et le développement anticipé. Utiliser l'authentification basée sur IAM pour les charges de travail de production et les environnements OCI gérés.
Création d'une conversation
POST /conversations
- Référence
-
Exemple Python :
# create a conversation conversation = client.conversations.create( ... ) print(conversation.id) - Limites OCI
- Aucun
Extraction d'une conversation
GET /conversations/{conversation_id}
- Référence
-
Exemple Python :
# retrieve a conversation conversation = client.conversations.retrieve( "conversation_id", ) print(conversation.id) - Limites OCI
- Aucun
Mise à jour d'une conversation
POST /conversations/{conversation_id}
- Référence
-
Exemple Python :
# update a conversation updated_conversation = client.conversations.update( ... ) print(updated_conversation) - Limites OCI
- Aucun
Suppression d'une conversation
DELETE /conversations/{conversation_id}
- Référence
-
Exemple Python :
# delete a conversation client.conversations.delete( "conversation_id" ) - Limites OCI
- Aucun
Créer votre première conversation
L'exemple suivant utilise la trousse SDK OpenAI avec le point d'extrémité compatible OCI OpenAI, une clé d'API OCI Generative AI et un OCID de projet :
from openai import OpenAI
client = OpenAI(
base_url="https://inference.generativeai.us-chicago-1.oci.oraclecloud.com/openai/v1",
api_key="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
project="ocid1.generativeaiproject.oc1.us-chicago-1.xxxxxxxx",
)
# create a conversation
conversation = client.conversations.create(
metadata={"topic": "offsite"}
)
print("Conversation ID:", conversation.id)
# first question
response1 = client.responses.create(
model="openai.gpt-oss-120b",
input="Give me three ideas for a team offsite.",
conversation=conversation.id,
)
print("Response 1:", response1.output_text)
# second question
response2 = client.responses.create(
model="openai.gpt-oss-120b",
input="Make the second idea more budget friendly.",
conversation=conversation.id,
)
print("Response 2:", response2.output_text)
Dans cet exemple :
base_urlpointe vers le point d'extrémité compatible OCI OpenAI.client.responses.create(...)appelle l'API de réponses OCI.projectidentifie un projet OCI Generative AI déjà créé pour la demande.