Composant Chat IA — sgcAI | eSeGeCe

Chat IA

TsgcAIChat est un client de chat unique pour sept fournisseurs de grands modèles de langage. Définis Provider, une clé API et un modèle, puis appelle Chat. Changer de fournisseur tient en une affectation, le reste de ton code ne bouge pas.

TsgcAIChat

Un composant de chat indépendant du fournisseur. Il conserve l'historique de conversation, construit le corps JSON propre à chaque fournisseur, pilote le client d'API HTTP correspondant et te rend le texte de l'assistant, soit en un seul appel, soit token par token.

Classe du composant

TsgcAIChat

Rôle

Chat LLM indépendant du fournisseur

Famille

Chat et agents

Plateformes

Win32 et Win64

sgcAI est autonome. Ce composant est livré dans sgcAI avec le runtime sgcWebSockets Core sur lequel il repose, il n'y a donc aucune licence de base à acheter.

Poser une question à un modèle

Choisis le fournisseur, règle la clé et le modèle, appelle Chat. Les variantes streaming et asynchrone utilisent la même configuration.

uses
  sgcAI, sgcAI_Chat;

var
  oChat: TsgcAIChat;
  vAnswer: string;
begin
  oChat := TsgcAIChat.Create(nil);
  oChat.Provider := aicpAnthropic;
  oChat.ChatOptions.ApiKey    := 'sk-ant-...';
  oChat.ChatOptions.Model     := 'claude-sonnet-4-5';
  oChat.ChatOptions.MaxTokens := 4096;
  oChat.SystemMessage := 'You are a Delphi expert.';
  oChat.MaxHistoryMessages := 20;

  // Blocking call, returns the assistant text.
  vAnswer := oChat.Chat('How do I keep a WebSocket connection alive?');

  // Token by token, delivered on OnChatStream.
  oChat.OnChatStream := OnChatStreamHandler;
  oChat.ChatStream('Now explain it to a beginner.');
end;

procedure TForm1.OnChatStreamHandler(Sender: TObject;
  const aChunk: string; var Cancel: Boolean);
begin
  Memo1.Text := Memo1.Text + aChunk;
  Cancel := StopRequested;   // abort a long generation
end;
// includes: sgcAI.hpp, sgcAI_Chat.hpp

TsgcAIChat *oChat = new TsgcAIChat(NULL);
oChat->Provider = aicpOpenAI;
oChat->ChatOptions->ApiKey = "sk-...";
oChat->ChatOptions->Model  = "gpt-4o";
oChat->SystemMessage = "You are a Delphi expert.";

String vAnswer = oChat->Chat("How do I keep a WebSocket connection alive?");

// Local models: same code, no data leaves the machine.
oChat->Provider = aicpOllama;
oChat->ChatOptions->BaseUrl = "http://127.0.0.1:11434";
oChat->ChatOptions->Model   = "llama3";
vAnswer = oChat->Chat("Same question, local model.");

Propriétés et méthodes clés

Les membres que tu utilises le plus souvent.

Provider

Provider sélectionne le fournisseur : aicpOpenAI, aicpAnthropic, aicpGemini, aicpDeepSeek, aicpOllama, aicpGrok ou aicpMistral. Le changer libère le client mis en cache pour le fournisseur précédent.

ChatOptions

ApiKey, Model, MaxTokens, Temperature, TopP et BaseUrl. Laisse Temperature et TopP à leur valeur par défaut et ils sont omis de la requête, c'est donc la valeur par défaut du fournisseur qui s'applique.

Conversation

SystemMessage fixe la persona à chaque tour. MaxHistoryMessages limite le nombre de messages passés rejoués, ce qui borne le coût en tokens. ClearHistory et GetHistory réinitialisent et lisent la transcription.

Appels

Chat bloque et renvoie la réponse. ChatStream diffuse via SSE. ChatWithSystem remplace le prompt système pour un seul tour. ChatAsync renvoie un future sur Delphi 2010 et versions ultérieures.

Événements

OnChatMessage signale chaque message terminé avec son rôle. OnChatStream livre chaque fragment et porte un indicateur Cancel. OnChatError fait remonter les erreurs de fournisseur et de transport.

Modèles locaux

Avec Provider réglé sur aicpOllama, ChatOptions.BaseUrl dirige le composant vers ton propre hôte Ollama, si bien que les prompts et les réponses ne quittent jamais la machine.

Spécifications et références

Les sources faisant autorité pour les services et protocoles utilisés par ce composant.

Pour aller plus loin

Aide en ligneRéférence complète de l'API et guide d'utilisation des composants sgcAI.
Tous les composants sgcAIParcours la matrice complète des fonctionnalités des 15 composants.
Télécharger l'essai gratuitEssaie les sept fournisseurs avec tes propres clés API.
TarifsLicences Single, Team et Site, code source complet, aucun produit de base requis.
Meilleur rapport qualité-prix : All-AccessTous les produits eSeGeCe, Support Premium inclus, à partir de €1,059/an.
Voir les tarifs All-Access

Prêt à te lancer ?

Télécharge l'essai gratuit et place un modèle de langage derrière une fiche Delphi en quelques minutes.