AI Agent

TsgcAIAgent maakt je Delphi 7 tot 13 toepassing klaar voor agents. Geef het een TsgcAIChat en je tools, roep Run aan, en het stuurt de prompt met de tools mee, voert elke toolaanroep uit die het model vraagt, stuurt de resultaten terug en levert het uiteindelijke antwoord.

TsgcAIAgent

De toolloop van een AI-model, voor je geregeld. Lokale tools, methoden van je eigen objecten en de tools van je MCP-servers worden aan het model aangeboden, elke aanroep wordt gecontroleerd, indien nodig goedgekeurd en uitgevoerd, en de loop stopt bij het antwoord, een stappenlimiet, de tokenlimiet, een annulering of een fout.

Componentklasse

TsgcAIAgent

Doel

Agent met tool calling voor elke LLM-provider

Familie

Chat & agents

Platforms

Windows, macOS, Linux, iOS en Android

Edities. TsgcAIAgent zit in sgcAI, in sgcWebSockets Enterprise en in All-Access, dezelfde edities als TsgcAIChat. Nieuw in 2026.11.0. sgcAI is zelfstandig: het bevat de sgcWebSockets Core runtime waarop het component is gebouwd. Beschikbaar voor Delphi 7 tot Delphi 13 en C++ Builder.

Laat het model je tools gebruiken

Koppel de chat, voeg een tool toe met zijn parameters en handler, roep Run aan. Tools die gegevens wijzigen vragen eerst om goedkeuring.

uses
  sgcAI, sgcAI_Chat, sgcAI_Agent;

procedure TForm1.AskAgent;
var
  oTool: TsgcAIAgentTool;
  vAnswer: string;
begin
  sgcAIChat1.Provider := aicpAnthropic;
  sgcAIChat1.ChatOptions.ApiKey := 'sk-ant-...';
  sgcAIChat1.ChatOptions.Model := 'claude-opus-5-5';

  sgcAIAgent1.Chat := sgcAIChat1;
  // optional: the tools of an MCP server are offered too
  sgcAIAgent1.MCPClients.Add(sgcWSAPIClient_MCP1);
  oTool := sgcAIAgent1.Tools.Add('get_weather', 'Current weather of a city');
  oTool.AddParam('city', aatpString, 'City name');
  oTool.ReadOnly := True;
  oTool.OnExecute := DoGetWeather;
  sgcAIAgent1.Options.MaxSteps := 8;
  sgcAIAgent1.OnToolApproval := DoToolApproval;

  vAnswer := sgcAIAgent1.Run('Do I need an umbrella in Paris today?');
  Memo1.Lines.Add(vAnswer);
end;

procedure TForm1.DoGetWeather(Sender: TObject; const aArguments: string;
  var aResult: string);
begin
  // aArguments is a JSON object, for example {"city":"Paris"}
  aResult := '{"city":"Paris","celsius":18,"sky":"rain"}';
end;

procedure TForm1.DoToolApproval(Sender: TObject; const aToolName,
  aArguments: string; var aApproved: Boolean);
begin
  // tools that are not ReadOnly ask before they run
  aApproved := MessageDlg('Run ' + aToolName + ' ' + aArguments + '?',
    mtConfirmation, [mbYes, mbNo], 0) = mrYes;
end;

Belangrijkste eigenschappen & methoden

De leden die je het vaakst gebruikt.

Run en Cancel

Run(aPrompt) stuurt de prompt met de tools mee, voert de aanroepen van elke stap uit en geeft het uiteindelijke antwoord terug. Cancel stopt een run vóór het volgende modelverzoek of de volgende tool. Running, StepCount en StopReason geven aan hoe het afliep: aasrCompleted, aasrMaxSteps, aasrCancelled, aasrError of aasrMaxTokens. aasrMaxTokens betekent dat een antwoord door de tokenlimiet is afgekapt, en de toolaanroepen van een afgekapt antwoord worden niet uitgevoerd omdat hun argumenten onvolledig kunnen zijn.

Tools

Tools.Add(Name, Description) geeft een tool terug. Beschrijf de argumenten met AddParam (string, integer, number, boolean, array of object) of met een ruw JSON Schema in InputSchema, en beantwoord de tool in OnExecute. Tools.AddMethod maakt van een publieke methode van een object een tool op Delphi 2010 en later. Een tool zonder handler komt terecht in OnToolCall.

MCP-tools

Voeg TsgcWSAPIClient_MCP-clients toe aan MCPClients. Met Options.ImportMCPTools initialiseert de agent elke client, toont de tools pagina voor pagina en roept ze aan via CallTool. Een tool die door MCP tool pinning is geblokkeerd, wordt nooit aangeboden, en een lokale tool met dezelfde naam gaat voor.

Goedkeuring

Een tool met ReadOnly wordt direct uitgevoerd. Elke andere tool vraagt eerst OnToolApproval. Een geweigerde of onbekende tool gaat als foutmelding terug naar het model, zodat de gespreksgeschiedenis altijd geldig blijft. Koppel een TsgcAIGuardrails aan de chat om tools op naam toe te staan, te weigeren of goedkeuring te eisen.

Opties

Options.MaxSteps (standaard 10) begrenst de modelverzoeken van één run. De tools van het laatste toegestane verzoek worden nog wel uitgevoerd en hun resultaten worden bewaard, zodat een latere Run verdergaat met echte resultaten. Options.ImportMCPTools zet de MCP-import aan of uit.

Gebeurtenissen

OnStep meldt elke stap: modeltekst, toolaanroep, toolresultaat, geweigerde tool en uiteindelijk antwoord. OnUsage meldt de tokens van elk modelverzoek van de run. Koppel een TsgcAIUsageMeter aan de chat om ze te prijzen.

Elke provider

De agent werkt met elke provider van TsgcAIChat: OpenAI, Anthropic, Gemini, DeepSeek, Ollama, Grok en Mistral, elk in zijn eigen tool calling-formaat. Met de fallbacks van de chat gaat een run verder bij de volgende provider als er een uitvalt.

Specificaties & referenties

Gezaghebbende bronnen voor de diensten en protocollen die dit component gebruikt.

Blijf ontdekken

Online helpVolledige API-referentie en gebruiksgids voor de sgcAI-componenten.
Alle sgcAI-componentenBekijk de functiematrix van elk sgcAI-component.
Download de gratis proefversieProbeer het met je eigen API-sleutels.
PrijzenSingle-, Team- en Site-licenties, volledige broncode.
De beste deal: All-AccessElk eSeGeCe-product, inclusief Premium-ondersteuning, vanaf €1,059 per jaar.
Bekijk de All-Access-prijzen

Klaar om aan de slag te gaan?

Download de gratis proefversie en laat een taalmodel de functies van je Delphi-toepassing aanroepen.