| OpenAI | TsgcAIChat | Provider := aicpOpenAI. Modèles GPT via l'API Chat Completions. |
| Anthropic | TsgcAIChat | Provider := aicpAnthropic. Modèles Claude via l'API Messages. |
| Google Gemini | TsgcAIChat | Provider := aicpGemini. |
| DeepSeek | TsgcAIChat | Provider := aicpDeepSeek. deepseek-flash et deepseek-v4-pro. |
| Ollama (modèles locaux) | TsgcAIChat | Provider := aicpOllama. ChatOptions.BaseUrl pointe vers ton propre hôte, rien ne quitte la machine. |
| xAI Grok | TsgcAIChat | Provider := aicpGrok. |
| Mistral | TsgcAIChat | Provider := aicpMistral. |
| Appel bloquant | TsgcAIChat | Chat(aMessage) renvoie le texte de l'assistant. |
| Streaming | TsgcAIChat | ChatStream avec OnChatStream, qui porte un indicateur Cancel pour interrompre une génération en cours. |
| Asynchrone | TsgcAIChat | ChatAsync renvoie un future sur Delphi 2010 et versions ultérieures. |
| Prompt système | TsgcAIChat | SystemMessage pour chaque tour, ou ChatWithSystem pour un seul tour. |
| Historique borné | TsgcAIChat | MaxHistoryMessages limite le contexte rejoué. ClearHistory et GetHistory gèrent la transcription. |
| Contrôles d'échantillonnage | TsgcAIChat | MaxTokens, Temperature et TopP. Laisse les deux derniers non définis et la valeur par défaut du fournisseur s'applique. |
| Documents et pièces jointes | TsgcAIChat | ChatWithDocument, ChatWithDocumentBase64, ChatWithAttachments et ChatJSONWithAttachments envoient des PDF et des images avec le message, un ou plusieurs conservés dans une liste TsgcAIChatAttachments. |
| Tool calling | TsgcAIChat | ChatWithTools et AddToolResult avec les sept fournisseurs, chacun dans son propre format : outils au style OpenAI, tool use d'Anthropic et déclarations de fonctions Gemini. |
| Agent IA | TsgcAIAgent | Run propose tes outils, des méthodes de tes objets (AddMethod, Delphi 2010 et versions ultérieures) et les outils de MCPClients, exécute les appels, interroge OnToolApproval pour les outils qui ne sont pas ReadOnly et s'arrête sur la réponse, Options.MaxSteps, la limite de tokens (aasrMaxTokens), Cancel ou une erreur. OnStep et OnUsage signalent l'exécution. |
| Alias de modèle | TsgcAIChat | ModelAliases associe des noms comme fast ou smart à un modèle ou à provider:model, chargés depuis un fichier, du JSON ou une URL. ProviderApiKeys contient la clé de chaque fournisseur. |
| Fallback entre fournisseurs | TsgcAIChat | Fallbacks bascule une requête vers le fournisseur et le modèle suivants en cas d'erreur de connexion, de HTTP 5xx, de HTTP 429 ou de modèle inconnu, y compris avec les outils et le streaming. OnFallback signale chaque bascule. |
| Usage des tokens | TsgcAIChat | LastUsage et OnChatUsage : fournisseur, modèle et tokens d'entrée, de sortie et en cache de chaque requête, avec UserId et SessionId. LastFinishReason : pourquoi la dernière réponse s'est terminée, par exemple stop ou length. |
| Coûts et budgets | TsgcAIUsageMeter | Prix par million de tokens, totaux par utilisateur et par session, budgets globaux, quotidiens ou mensuels qui peuvent refuser une requête, SaveToCSV, ExportToDataSet et spans OpenTelemetry suivant les conventions GenAI. |
| Guardrails | TsgcAIGuardrails | Masque e-mails, téléphones, cartes, IBAN, adresses IP et motifs personnalisés avant la requête et les rétablit dans la réponse, AllowedTools et DeniedTools avec jokers, ToolApproval, et validation JSON Schema des réponses structurées. |
| Extraction de documents | TsgcAIDocumentExtractor | En entrée, un PDF ou une image plus un schéma JSON ; en sortie, du JSON validé. Préréglages dpInvoice, dpReceipt et dpIDCard, une confiance par champ avec OnLowConfidence en dessous de MinConfidence, et une nouvelle tentative automatique lorsque la réponse n'est pas valide. Associe TsgcAIOCRTesseract ou TsgcAIOCRWindows, l'OCR intégré à Windows 10 et versions ultérieures, pour reconnaître le texte localement, si bien qu'un modèle texte seul sur Ollama peut lui aussi extraire. |
| Agent vocal en temps réel | TsgcAIVoiceAgent | Écoute, détecte les tours de parole, répond et appelle des outils via OpenAI Realtime ou Gemini Live, en WebSocket ou, avec OpenAI, en WebRTC, sous Windows, Android et iOS. VAD serveur, VAD sémantique, VAD client ou tours manuels, barge-in qui arrête l'agent et tronque sa réponse, transcriptions en direct de l'utilisateur et de l'agent sur OnTranscript, des outils depuis OnToolCall et depuis un MCPClient assigné, et G.711 mu-law ou A-law à 8 kHz pour la téléphonie. |
| Traducteur vocal en temps réel | TsgcAIVoiceTranslator | Envoie le micro à OpenAI gpt-realtime-translate et joue la voix traduite à mesure qu'elle arrive, avec des transcriptions en direct de la source et de la traduction sur OnInputTranscript et OnOutputTranscript. Change Language pendant que la session tourne, ou désactive les périphériques et envoie ton propre audio PCM16 avec SendAudio. Audio Windows, ou ton propre audio sous Linux et macOS. |
| Transcription vocale | TsgcAIOpenAIChatBot, TsgcAIOpenAITranslator | Transcription gpt-transcribe, et traduction vers n'importe quelle langue via un modèle de chat, avec un événement pour relire le texte avant de l'utiliser. |
| Réponses enrichies par recherche | TsgcAIOpenAIChatBot | Relie un composant Embeddings et le contexte récupéré est ajouté avant l'appel au modèle. |
| Assistants, threads et exécutions | TsgcAIOpenAIAssistant | CreateAssistant, CreateThread, CreateMessageText, CreateRun, CreateRunAndWait. |
| File Search et Code Interpreter | TsgcAIOpenAIAssistant | AssistantOptions.Tools, avec UploadVectorStoreFile pour ajouter tes propres documents. |
| Appel de fonctions | TsgcAIOpenAIAssistant | Tools.Functions et l'événement OnFunctionCall. |