API OpenAI Realtime

Parle avec le modèle OpenAI Realtime en quelques millisecondes — audio et texte bidirectionnels sur une seule session WebSocket, pilotés depuis Delphi/C++Builder.

TsgcWSAPI_OpenAI

Client WebSocket pour l'API OpenAI Realtime — cycle de vie complet de session, outils de fonction, diffusion de trames audio et événements de transcription.

Classe du composant

TsgcWSAPI_OpenAI

Plateformes

Windows, macOS, Linux, iOS, Android

Édition

Standard / Professional / Enterprise

Pose le composant, configure la clé API, parle

Associe à TsgcWebSocketClient, configure OpenAI.ApiKey et OpenAI.Model, puis envoie de l'audio ou du texte et écoute les événements de réponse.

uses
  sgcWebSocket, sgcWebSocket_API_OpenAI;

var
  WSClient: TsgcWebSocketClient;
  OpenAI: TsgcWSAPI_OpenAI;
begin
  WSClient := TsgcWebSocketClient.Create(nil);

  OpenAI := TsgcWSAPI_OpenAI.Create(nil);
  OpenAI.Client := WSClient;
  OpenAI.OpenAI.ApiKey := 'sk-...';
  OpenAI.OpenAI.Model  := 'gpt-realtime';

  WSClient.Active := True;

  // send a text turn
  OpenAI.ConversationCreateMessageText('Hello', 'user');
  OpenAI.ResponseCreate;
end;
// uses: sgcWebSocket, sgcWebSocket_API_OpenAI
TsgcWebSocketClient *WSClient = new TsgcWebSocketClient(this);
TsgcWSAPI_OpenAI *OpenAI = new TsgcWSAPI_OpenAI(this);
OpenAI->Client = WSClient;
OpenAI->OpenAI->ApiKey = "sk-...";
OpenAI->OpenAI->Model  = "gpt-realtime";

WSClient->Active = true;
OpenAI->ConversationCreateMessageText("Hello", "user");
OpenAI->ResponseCreate();

Ce qu'il contient

Encapsule la passerelle WebSocket OpenAI Realtime dans un composant Delphi typé avec des helpers de session, de conversation et d'audio.

Cycle de vie de session

SessionUpdate applique les modalités, la voix, les instructions, input_audio_format, output_audio_format et les paramètres turn_detection à la session Realtime active.

Éléments de conversation

ConversationCreateMessageText et ConversationCreateMessageAudio envoient le contenu utilisateur/système ; ConversationItemDelete et ConversationItemTruncate remodèlent l'historique en cours.

Diffusion audio

InputAudioBufferAppend envoie des trames PCM (encodées en base64), InputAudioBufferCommit termine un tour utilisateur. L'audio de sortie arrive sous forme d'événements response.audio.delta.

Appel de fonctions

Déclare les outils dans SessionUpdate ; les arguments arrivent sous forme d'événements response.function_call_arguments.delta, les résultats reviennent via ConversationCreateFunctionCallOutput.

Détection d'activité vocale

La VAD côté serveur (turn_detection: {type: server_vad}) détecte automatiquement la fin de parole — le composant livre chaque phase comme son propre événement.

En-têtes d'authentification

Le composant injecte les en-têtes Authorization et OpenAI-Beta: realtime=v1 lors du handshake WebSocket. Associe à TsgcWebSocketClient_WinHTTP sur Windows pour un TLS géré par l'OS.

Spécifications et références

Sources de référence pour les APIs que ce composant implémente.

Documentation et démos

Accès direct à la référence du composant, récupère le projet de démo prêt à l'emploi et télécharge l'essai.

Aide en ligne — API_OpenAI Référence complète des propriétés, méthodes et événements de ce composant.
Essai gratuit — sgcWebSockets Télécharge le paquet d'essai et commence à diffuser de l'audio et du texte Realtime dans tes applications Delphi.
Document technique (PDF) Fonctionnalités, démarrage rapide, exemples de code pour Delphi et C++ Builder et références aux sources primaires — ce composant uniquement.
Manuel utilisateur (PDF) Manuel complet couvrant tous les composants de la bibliothèque.

Prêt à diffuser avec OpenAI Realtime ?

Télécharge l'essai gratuit et ajoute de l'audio et du texte IA en direct à tes applications Delphi.