Delphi, C++ Builder & .NET Parte di sgcUI

sgcChat, i controlli per assistente AI e chat di team per Delphi, C++ Builder & .NET

Metti una chat dentro la tua applicazione. sgcChat mostra le risposte di un assistente AI mentre arrivano, con Markdown, blocchi di codice e chiamate agli strumenti, e mette in contatto i tuoi utenti con presenza, digitazione, conferme di lettura e reazioni. Gli stessi controlli funzionano su VCL, FireMonkey, WinForms, WPF e Avalonia, e il visualizzatore Markdown si usa anche da solo.

Assistente AI con risposte in streamingChat di team tramite WebSocketVCL, FMX, WinForms, WPF e AvaloniaIncluso in sgcUI Enterprise
Result.AI := TsgcChatAI.Create(Result);
Result.AI.Conversation := Result.Conversation;
Result.AI.AssistantUserId := 'bot';
Result.AI.SystemPrompt := 'You are a helpful assistant.';
Result.AI.Provider := Result.Provider;
// the panel sends, stops, regenerates and edits through the binding
Result.Panel.AI := Result.AI;

Tutto ciò che serve a una chat

Le funzionalità principali sono qui sotto. La matrice delle funzionalità le elenca tutte.

Assistente AI

Una chat con qualsiasi modello linguistico, con i controlli che gli utenti conoscono dalle applicazioni di chat AI.

Assistente AI

Risposte in streaming, stop e rigenerazione

Una risposta AI arriva a piccoli pezzi e gli utenti si aspettano di leggerla mentre viene scritta. TsgcChatAI collega una conversazione a un provider, invia la cronologia e il prompt di sistema, e mostra ogni pezzo come Markdown formattato appena arriva. Il provider gira su un thread di lavoro, quindi la finestra resta reattiva, e il chat panel offre stop, rigenerazione, modifica e rinvio per ogni risposta.

  • Markdown in streaming con un cursore mentre la risposta viene scritta
  • Stop, rigenerazione, modifica e rinvio dalle azioni del messaggio
  • Schede delle chiamate agli strumenti con il nome dello strumento, gli argomenti, il risultato e uno stato di esecuzione, completato o errore
  • La cronologia della conversazione salvata in JSON e caricata da JSON

Assistente AI

Qualsiasi provider

sgcChat non ti lega a un solo fornitore AI. TsgcChatAIProvider_AIChat si connette a TsgcAIChat di sgcWebSockets, che dialoga con OpenAI, Anthropic, Gemini, DeepSeek, Ollama, Grok e Mistral. TsgcChatAIProvider_UICore usa il livello di provider AI condiviso da ogni prodotto sgcUI, e TsgcChatAIEventProvider ti permette di fare streaming dal tuo backend in un evento.

  • I provider AI di sgcWebSockets tramite TsgcChatAIProvider_AIChat
  • Il livello di provider AI di sgcUI tramite TsgcChatAIProvider_UICore
  • Il tuo backend tramite l'evento OnStream

Chat di team

Una chat tra gli utenti della tua applicazione, sul tuo server.

Chat di team

Presenza, digitazione, conferme e reazioni

Helpdesk, team sul campo e strumenti interni hanno bisogno di una chat che i loro utenti sappiano già usare. La chat view raggruppa i messaggi di ogni autore con un avatar e un nome, mostra chi è online, assente o occupato, mostra chi sta scrivendo e segna ogni messaggio come inviato, consegnato o letto. Gli utenti rispondono a un messaggio, reagiscono, modificano o eliminano i propri messaggi e inviano allegati.

  • Avatar con iniziali o un'immagine, e un indicatore di presenza
  • Indicatore di digitazione e conferme di lettura, anche per le conversazioni di gruppo
  • Reazioni, risposte, messaggi modificati ed eliminati
  • Allegati con anteprime delle immagini e chip dei file

Chat di team

Un transport per qualsiasi backend e un bridge WebSocket

La chat non dipende da un solo server. TsgcChatEventTransport consegna al tuo codice ogni messaggio, cambio di digitazione, conferma e reazione come un frame JSON documentato. Con sgcWebSockets, TsgcChatTransport_WebSocket connette un client e TsgcChatServer_WebSocket inoltra i messaggi tra i client di un canale, mantiene la presenza di ogni utente e invia gli ultimi messaggi agli utenti che si uniscono dopo.

  • Event transport con un formato JSON per il tuo backend
  • Client WebSocket e server di inoltro basati su sgcWebSockets
  • Messaggi consegnati sul thread principale, con conferma e nuovo tentativo

Visualizzatore Markdown

Il motore dietro i fumetti della chat, disponibile anche come controllo a sé.

Visualizzatore Markdown

Markdown con blocchi di codice e un pulsante di copia

Note di rilascio, testi di aiuto e risposte AI sono spesso scritti in Markdown. TsgcVCLMarkdownViewer e TsgcFMXMarkdownViewer mostrano titoli, enfasi, citazioni, elenchi, elenchi di attività, tabelle, link e immagini, ed evidenziano i blocchi di codice di Pascal, C#, C++, JavaScript, Python, JSON, SQL e altri linguaggi. AppendMarkdown aggiunge il testo mentre arriva, e gli utenti selezionano e copiano il testo o un intero blocco di codice.

  • Blocchi di codice con evidenziazione della sintassi e un pulsante di copia
  • Elenchi di attività, tabelle, citazioni e immagini
  • Streaming con AppendMarkdown e Flush
  • Selezione, Ctrl+C e un evento OnLinkClick

Aspetto e diffusione

Temi, lingue, tecnologie assistive e output senza finestra.

Aspetto e diffusione

Temi, da destra a sinistra e 12 lingue

La chat segue i temi chiaro, scuro e Fluent di sgcUI, quindi si adatta al resto della tua applicazione. Una conversazione in arabo o in ebraico viene specchiata, con i messaggi propri a sinistra. I testi dei controlli sono tradotti in inglese, spagnolo, tedesco, francese, italiano, portoghese (Brasile), olandese, polacco, turco, giapponese, coreano e cinese.

  • Temi chiaro, scuro e Fluent
  • Conversazioni da destra a sinistra
  • I testi dei controlli in 12 lingue

Aspetto e diffusione

Accessibilità e output headless

Su Windows la chat view è un elenco di messaggi per i lettori di schermo, con l'autore e l'ora di ogni messaggio, e il visualizzatore Markdown espone il proprio testo. Il modello della conversazione, il documento Markdown e la view non dipendono da VCL o FireMonkey, quindi un servizio può rendere una conversazione o un documento Markdown in SVG o PNG senza una finestra, anche su Linux64.

  • UI Automation per la chat view, il visualizzatore Markdown e l'input
  • Output SVG e PNG di una conversazione o di un documento Markdown
  • Unit indipendenti dal framework su Windows e su Linux64 da Delphi 10.2

Chi costruisce con sgcChat

Un assistente AI dentro un'applicazione gestionale

Le applicazioni ERP, CRM e di ingegneria aggiungono un assistente che risponde a domande sui dati che si vedono a schermo. L'assistente mostra la risposta in streaming con codice e tabelle, chiama gli strumenti della tua applicazione e mostra ogni chiamata come una scheda, e l'utente ferma o rigenera una risposta in qualsiasi momento.

  • Markdown in streaming
  • Schede delle chiamate agli strumenti
  • Qualsiasi provider AI
Esegui la demo AIAssistant

Chat di team sul tuo server

Helpdesk, centrali operative e applicazioni di assistenza sul campo permettono ai loro utenti di parlarsi senza un servizio di terze parti. Il server di inoltro WebSocket gira nel tuo servizio e i client mostrano presenza, digitazione, conferme di lettura e reazioni.

  • Server di inoltro WebSocket
  • Presenza e conferme
  • Allegati
Esegui la demo TeamChat

Contenuti Markdown nell'applicazione desktop

Note di rilascio, pagine di aiuto e messaggi scritti in Markdown vengono mostrati con lo stesso aspetto del resto dell'applicazione, con codice evidenziato che gli utenti copiano con un clic.

  • Visualizzatore Markdown
  • Evidenziazione del codice
  • Temi
Esegui la demo MarkdownViewer

Collega la chat a un provider AI

Rispondi con OpenAI tramite sgcWebSockets, oppure avvia il tuo server di chat di team.

TsgcChatAIProvider_AIChat collega un binding TsgcChatAI a TsgcAIChat di sgcWebSockets. Cambia Provider per usare Anthropic, Gemini, DeepSeek, Ollama, Grok o Mistral.

uses
  SysUtils, Classes,
  // sgcWebSockets
  sgcAI, sgcAI_Chat,
  // sgc
  sgcChat_AI, sgcChatWS_AI;

procedure UseOpenAI(aAI: TsgcChatAI; const aApiKey: string);
var
  oChat: TsgcAIChat;
  oProvider: TsgcChatAIProvider_AIChat;
begin
  oChat := TsgcAIChat.Create(aAI.Owner);
  oChat.Provider := aicpOpenAI;
  oChat.ChatOptions.ApiKey := aApiKey;
  oChat.ChatOptions.Model := 'gpt-4o-mini';

  oProvider := TsgcChatAIProvider_AIChat.Create(aAI.Owner);
  oProvider.Chat := oChat;

  aAI.Model := oChat.ChatOptions.Model;
  aAI.Provider := oProvider;
end;

Il server di inoltro gira in un servizio o in un programma console. Ogni client si connette a un canale con TsgcChatTransport_WebSocket.

// the relay, in a service or a console program
function CreateRelay(aOwner: TComponent; aPort: Integer)
  : TsgcChatServer_WebSocket;
var
  oServer: TsgcWebSocketServer;
begin
  oServer := TsgcWebSocketServer.Create(aOwner);
  oServer.Port := aPort;
  // the relay needs no main thread
  oServer.NotifyEvents := neNoSync;

  Result := TsgcChatServer_WebSocket.Create(aOwner);
  Result.Server := oServer;
  // the last 100 messages of every channel go to late joiners
  Result.HistoryCount := 100;

  oServer.Active := True;
end;

I controlli .NET usano gli stessi nomi. Questa form ospita un TsgcWinFormsChatPanel; i pannelli WPF e Avalonia funzionano allo stesso modo.

FConversation = new TsgcChatConversation();
FConversation.Users.Add("me", "You");
FConversation.Users.Add("bot", "Assistant");
FConversation.CurrentUserId = "me";

FPanel = new TsgcWinFormsChatPanel();
FPanel.Dock = DockStyle.Fill;
FPanel.Conversation = FConversation;
FPanel.Title = "Assistant";
FPanel.HeaderUserId = "bot";
Controls.Add(FPanel);

FProvider = new TsgcChatAIEventProvider();
FProvider.OnStream += DoStream;

FAI = new TsgcChatAI();
FAI.Conversation = FConversation;
FAI.AssistantUserId = "bot";
FAI.SystemPrompt = "You are a helpful assistant.";
FAI.Provider = FProvider;
// the panel sends, stops, regenerates and edits through the binding
FPanel.AI = FAI;

Esegui le demo di sgcChat

I progetti demo si installano con il trial di sgcUI per Delphi e C++ Builder. Le demo .NET sono incluse nel download .NET Registered. Le immagini qui sotto sono create dall'output headless di sgcChat.

Una conversazione con un assistente AI con una scheda di chiamata a uno strumento e un blocco di codice Pascal evidenziato

AIAssistant

Un chat panel collegato a un provider AI: risposte in streaming, stop, rigenerazione, modifica e rinvio, e schede delle chiamate agli strumenti. VCL e FireMonkey, più una versione C++ Builder.

La stessa conversazione con l'assistente AI nel tema Fluent scuro

Tema scuro

La stessa conversazione nel tema Fluent scuro. La chat segue i temi chiaro, scuro e Fluent di sgcUI.

Una chat di team con avatar, presenza, una reazione, conferme di lettura e un indicatore di digitazione

TeamChat e TeamChatServer

Un client VCL e un server di inoltro console su sgcWebSockets: presenza, digitazione, conferme di lettura, reazioni, risposte e allegati.

Il visualizzatore Markdown con titoli, un elenco, una citazione, una tabella e un blocco di codice

MarkdownViewer

Il visualizzatore Markdown da solo, con una risposta in streaming simulata. VCL e FireMonkey, più una versione C++ Builder.

Il visualizzatore Markdown nel tema Fluent scuro

Demo .NET

MarkdownViewer, AIAssistant e TeamChat per WinForms, WPF e Avalonia, più il server di inoltro TeamChatServer.

Dove è incluso sgcChat

sgcChat è incluso in sgcUI Enterprise e nel bundle All-Access. Richiede sgcUICore e sgcRichEdit, che sono inclusi, e l'installer aggiunge con esso sgcRichEdit e sgcPDF. Non esiste un'edizione Community gratuita.

sgcUI Enterprise

Ogni prodotto sgcUI, sgcChat, sgcRichEdit e sgcPDF inclusi, da €699.

Vedi Enterprise →

All-Access

Ogni prodotto eSeGeCe, sgcUI Enterprise e sgcWebSockets inclusi, così il provider AI e il bridge WebSocket di sgcChat funzionano subito.

Vedi All-Access →

Framework e piattaforme supportati

Componenti in sgcChat

VCL

TsgcVCLChatPanel, TsgcVCLChatView, TsgcVCLChatInput e TsgcVCLMarkdownViewer.

FireMonkey

TsgcFMXChatPanel, TsgcFMXChatView, TsgcFMXChatInput e TsgcFMXMarkdownViewer.

.NET

Gli stessi controlli per WinForms, WPF e Avalonia, come TsgcWinFormsChatPanel, TsgcWpfChatPanel e TsgcAvaloniaChatPanel.

AI e transport

TsgcChatAI con i suoi provider, TsgcChatEventTransport e il bridge sgcWebSockets con TsgcChatTransport_WebSocket e TsgcChatServer_WebSocket.

TargetComponenteVersioni e piattaforme
Da Delphi 7 a 13Controlli VCL, modello e unit di AI e transportWin32, e Win64 da Delphi XE2
Da C++ Builder 2007 a 13Le stesse classiHeader .hpp generati e librerie statiche
FireMonkeyTsgcFMXChatPanel e gli altri controlli FireMonkeyDelphi XE6 e successivi
Linux64Modello, documento Markdown, view, core di AI e transport, output SVG e PNGDelphi 10.2 e successivi, headless
Libreria core .NETesegece.sgcChat.NET Standard 2.0, .NET Framework 4.7.2, .NET 6, 8, 9 e 10
WinForms e WPFTsgcWinFormsChatPanel, TsgcWpfChatPanel.NET Framework 4.7.2, .NET 8, 9 e 10 su Windows
AvaloniaTsgcAvaloniaChatPanel.NET 8, 9 e 10

Domande frequenti

Con sgcWebSockets, TsgcChatAIProvider_AIChat usa TsgcAIChat, che supporta OpenAI, Anthropic, Gemini, DeepSeek, Ollama, Grok e Mistral. Senza di esso, usa il livello di provider AI di sgcUI tramite TsgcChatAIProvider_UICore, oppure fai streaming da qualsiasi backend nell'evento OnStream di TsgcChatAIEventProvider.

Solo per il bridge. Il transport WebSocket e il server di inoltro richiedono sgcWebSockets, e TsgcChatAIProvider_AIChat richiede i suoi componenti AI (edizione Enterprise o pacchetto AI). Il visualizzatore Markdown, i controlli della chat, il binding AI e l'event transport funzionano senza.

No. sgcChat fa parte di sgcUI Enterprise e di All-Access. I pacchetti .NET sono solo Registered e non sono pubblicati su nuget.org. Valutalo con il trial di sgcUI.

Sì. TsgcVCLMarkdownViewer e TsgcFMXMarkdownViewer sono controlli a sé. Imposta Markdown per mostrare un testo, oppure chiama AppendMarkdown per aggiungere testo mentre arriva.

Le unit indipendenti dal framework si compilano per Linux64 da Delphi 10.2: il modello della conversazione, il documento Markdown, la view, i core di AI e transport, con output SVG e PNG. Non ci sono controlli per Linux.

Sì. Ogni licenza sgcUI Enterprise include il codice sorgente completo e 1 anno di aggiornamenti. Vedi la pagina dei prezzi di sgcUI.

Guida di sgcChat

Guida online

La guida di sgcUI per Delphi, C++ Builder e .NET.

Manuali PDF

Delphi, C++ Builder e .NET, che coprono ogni prodotto sgcUI.

3,000+Sviluppatori
20+Anni
761+Componenti
30+Integrazioni API
5Piattaforme
Garanzia soddisfatti o rimborsati di 30 giorniNon sei soddisfatto? Richiedi un rimborso completo entro 30 giorni dall'acquisto. Vedi la politica di rimborso

Prova sgcChat oggi

Il trial di sgcUI include sgcChat, sgcRichEdit e ogni altro prodotto sgcUI.