Componente OpenAI ChatBot — sgcAI | eSeGeCe

OpenAI ChatBot

TsgcAIOpenAIChatBot reúne todo el ciclo de voz en un solo componente. Graba el micrófono, transcribe el audio con Whisper, envía la transcripción a Chat Completions, opcionalmente la enriquece con contexto de un almacén vectorial y pronuncia la respuesta.

TsgcAIOpenAIChatBot

Una interfaz por voz sobre OpenAI Whisper y Chat Completions. Enlaza un grabador de audio, un componente de texto a voz y, si quieres respuestas enriquecidas con recuperación de información, un componente de embeddings, y luego llama a Start.

Clase del componente

TsgcAIOpenAIChatBot

Propósito

Chatbot de voz, de principio a fin

Familia

Chat y agentes

Plataformas

Win32 y Win64

sgcAI es autónomo. Este componente se incluye dentro de sgcAI junto con el runtime sgcWebSockets Core sobre el que está construido, así que no hay ninguna licencia base que comprar.

Un asistente que habla en un solo formulario

Coloca un grabador, un componente de texto a voz y el chatbot en un formulario, indica la clave de API y llama a Start.

uses
  sgcAI, sgcAI_OpenAI_Audio_ChatBot,
  sgcAI_AudioRecorder_MCI, sgcAI_TextToSpeech_System;

var
  oBot: TsgcAIOpenAIChatBot;
begin
  oBot := TsgcAIOpenAIChatBot.Create(nil);
  oBot.OpenAIOptions.ApiKey := 'sk-...';
  oBot.AudioRecorder := sgcAudioRecorderMCI1;
  oBot.TextToSpeech  := sgcTextToSpeechSystem1;

  oBot.ChatBotOptions.Transcription.Model    := 'whisper-1';
  oBot.ChatBotOptions.Transcription.Language := 'en';
  oBot.ChatBotOptions.ChatCompletion.Model   := 'gpt-4o';

  oBot.OnTranscription  := BotTranscription;
  oBot.OnChatCompletion := BotChatCompletion;

  oBot.Start;   // Stop ends the session

  // A turn can also be pushed from code, no microphone involved.
  oBot.ChatAsUser('Summarise the last order in one line.');
end;

procedure TForm1.BotTranscription(Sender: TObject;
  var Text: string; var Accept: Boolean);
begin
  // Inspect or rewrite what Whisper heard, or drop the turn.
  Accept := Trim(Text) <> '';
end;
// includes: sgcAI.hpp, sgcAI_OpenAI_Audio_ChatBot.hpp

TsgcAIOpenAIChatBot *oBot = new TsgcAIOpenAIChatBot(NULL);
oBot->OpenAIOptions->ApiKey = "sk-...";
oBot->AudioRecorder = sgcAudioRecorderMCI1;
oBot->TextToSpeech  = sgcTextToSpeechSystem1;

oBot->ChatBotOptions->ChatCompletion->Model = "gpt-4o";
oBot->OnChatCompletion = BotChatCompletion;

oBot->Start();

// Push a turn without speaking.
oBot->ChatAsUser("Summarise the last order in one line.");

Propiedades y métodos principales

Los miembros que usarás más a menudo.

Enlaces con otros componentes

AudioRecorder aporta la entrada de micrófono, TextToSpeech pronuncia la respuesta y Embeddings aporta opcionalmente el contexto recuperado de un almacén vectorial antes de llamar al modelo.

ChatBotOptions

Transcription.Model y Transcription.Language configuran la llamada a Whisper. ChatCompletion.Enabled y ChatCompletion.Model configuran el modelo que responde.

OpenAIOptions

Clave de API, endpoint, ajustes de HTTP, de reintentos y de registro para todas las llamadas que hace el componente, incluida la variante Azure OpenAI.

Sesión

Start inicia la captura y Stop la termina. Con el grabador en modo automático, el componente reanuda la captura en cuanto acaba de reproducirse la respuesta, así que la conversación sigue sin usar las manos.

Turnos por código

ChatAsUser inyecta un mensaje de usuario, ChatAsSystem inyecta un mensaje de sistema y opcionalmente puede pronunciarlo, y GetEmbedding busca contexto para un prompt cualquiera.

Eventos

OnTranscription te permite editar o rechazar lo que ha oído Whisper antes de que llegue al modelo. OnChatCompletion informa del rol y del contenido de la respuesta. OnAudioStart y OnAudioStop siguen la captura.

Especificaciones y referencias

Fuentes oficiales de los servicios y protocolos que utiliza este componente.

Sigue explorando

Ayuda en líneaReferencia completa de la API y guía de uso de los componentes sgcAI.
Todos los componentes sgcAIConsulta la matriz completa de características de los 15 componentes.
Descargar prueba gratuitaConstruye un asistente que habla usando tu propia clave de OpenAI.
PreciosLicencias Single, Team y Site, código fuente completo, sin producto base necesario.
La mejor opción: All-AccessTodos los productos de eSeGeCe, con Premium Support incluido, desde €1,059 al año.
Ver precios de All-Access

¿Listo para empezar?

Descarga la prueba gratuita y mantén una conversación con tu aplicación.