API OCI Conversations

Utilisez l'API OCI Conversations pour gérer la mémoire de session. Avec l'API Conversations, vous créez d'abord une conversation, puis vous incluez l'ID de conversation dans la demande d'API Réponses. Cela crée un objet de conversation dédié que vous pouvez réutiliser sur plusieurs tours.

Remarque

L'API de conversations OCI utilise le même format que l'API de conversations OpenAI avec l'adresse compatible OCI OpenAI. Pour plus d'informations sur la syntaxe et les demandes, reportez-vous à la documentation de l'API des conversations OpenAI. Pour connaître les propriétés non prises en charge, reportez-vous à la section Limites OCI pour chaque opération sur cette page.

Adresse d'API prise en charge

URL de base Chemin de l'adresse 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 demande soit compatible avec OpenAI, l'authentification utilise les informations d'identification OCI, les demandes sont acheminées via les adresses d'inférence OCI Generative AI et les ressources et l'exécution restent dans OCI.

Conseil

Pour connaître les étapes de configuration avant d'utiliser cette API, reportez-vous à QuickStart.

Authentification

Vous pouvez accéder aux adresses compatibles avec OCI OpenAI de deux manières :

Utiliser des clés d'API pour les tests et le développement anticipé. Utilisez l'authentification basée sur IAM pour les workloads de production et les environnements gérés par OCI.

Création d'une conversation

POST /conversations

Référence

Créer une discussion

Exemple Python :

# create a conversation
conversation = client.conversations.create(
   ...
)
print(conversation.id)
Limites OCI
Aucun

Récupération d'une conversation

GET /conversations/{conversation_id}

Référence

Récupérer la conversation

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

Mettre à jour une conversation

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

Supprimer une conversation

Exemple Python :

# delete a conversation
client.conversations.delete(
    "conversation_id"
)
Limites OCI
Aucun

Créez votre première conversation

L'exemple suivant utilise le kit SDK OpenAI avec l'adresse 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_url pointe vers l'adresse compatible avec OCI OpenAI.
  • client.responses.create(...) appelle l'API OCI Responses.
  • project identifie un projet OCI Generative AI déjà créé pour la demande.