API | OpenAI

L'API Realtime OpenAI permet des interactions multimodales à faible latence, notamment des expériences conversationnelles de voix à voix et la transcription en temps réel.

 

Le composant TsgcWSAPI_OpenAI implémente l'API RealTime OpenAI.

 

Configuration

Utilisez la propriété method pour sélectionner Conversation ou Transcription, actuellement seul le mode Transcription est pris en charge.

 

La propriété InputAudio vous permet de personnaliser les données suivantes :

 

 

OpenAI

 

L'API OpenAI utilise des clés API pour l'authentification. Consultez votre page Clés API pour récupérer la clé API que vous utiliserez dans vos requêtes.

N'oubliez pas que votre clé API est un secret ! Ne la partagez pas avec d'autres personnes et ne l'exposez pas dans du code côté client (navigateurs, applications). Les requêtes en production doivent être acheminées via votre propre serveur backend où votre clé API peut être chargée de manière sécurisée depuis une variable d'environnement ou un service de gestion des clés.

 

Cette clé API doit être configurée dans la propriété OpenAIOptions.ApiKey du composant. Optionnellement, pour les utilisateurs appartenant à plusieurs organisations, vous pouvez définir votre organisation dans la propriété OpenAIOptions.Organization si votre compte appartient à une organisation.

 

Une fois la clé API configurée, vous trouverez ci-dessous une liste des fonctions disponibles pour interagir avec l'API OpenAI.

 

Azure

 

Le client prend en charge les services Azure OpenAI de Microsoft, vous pouvez donc utiliser votre compte Azure pour interagir avec l'API Azure OpenAI. Pour configurer le client afin qu'il fonctionne avec Azure, suivez les étapes suivantes :

 

  1. Configurer la propriété OpenAIOptions.Provider = oapvAzure
  2. Définissez les valeurs de ResourceName et DeploymentId (ces valeurs se trouvent dans votre compte Azure)
    1. OpenAIOptions.AzureOptions.ResourceName = <votre nom de ressource>.
    2. OpenAIOptions.AzureOptions.DeploymentId = <votre identifiant de déploiement>.
  3. Définissez la clé API de votre compte Azure
    1. OpenAIOptions.ApiKey = <clé api azure>.

 

Exemple de transcription

Voici ci-dessous un exemple de transcription en temps réel utilisant l'API openAI

 


WSClient := TsgcWebSocketClient.Create(nil);
oAudio := TsgcAudioRecorderWave.Create(nil);
OpenAI := TsgcWSAPI_OpenAI.Create(nil);

OpenAI.Client := WSClient;
OpenAI.AudioRecorder := oAudio;
OpenAI.OpenAIOptions.APIKey := 'your-api-key-here';
OpenAI.OpenAIOptions.method := sgcoaimTranscription;
OpenAI.OpenAIOptions.provider := sgcoaipOpenAI;
OpenAI.InputAudio.Language := 'en';
OpenAI.InputAudio.Model := 'whisper-1';

procedure OnOpenAIAudioTranscriptionCompleted(Sender: TObject; const aItem: TsgcWSOpenAIConversation_Item_Completed);
begin
  Log('#transcription_completed: ' + aItem.Transcript);
end;