Guardrails

TsgcAIGuardrails działa między twoją aplikacją a modelem językowym. Dane osobowe są zastępowane znacznikami zastępczymi, zanim żądanie opuści aplikację, i przywracane w odpowiedzi, narzędzia są dopuszczane, blokowane lub kierowane do zatwierdzenia według nazwy, a ustrukturyzowane odpowiedzi są walidowane względem schematu JSON.

TsgcAIGuardrails

Jeden komponent dla reguł, których funkcja AI potrzebuje przed wdrożeniem produkcyjnym. Przypisz go do TsgcAIChat.Guardrails, a każde żądanie czatu i każdy przebieg agenta na tym czacie będą przestrzegać tych samych reguł, niezależnie od tego, który dostawca odpowiada.

Klasa komponentu

TsgcAIGuardrails

Przeznaczenie

Maskowanie PII, reguły narzędzi i walidacja odpowiedzi

Rodzina

Czat i agenci

Platformy

Windows, macOS, Linux, iOS i Android

Edycje. TsgcAIGuardrails jest dostarczany w sgcAI, w sgcWebSockets Enterprise i w All-Access, w tych samych edycjach co TsgcAIChat. Nowość w 2026.11.0. sgcAI jest samowystarczalny: zawiera środowisko uruchomieniowe sgcWebSockets Core, na którym komponent jest zbudowany. Dostępny dla Delphi 7 do Delphi 13 i C++ Builder.

Miej pod kontrolą dane osobowe i ryzykowne narzędzia

Włącz maskowanie, wypisz dozwolone i zablokowane narzędzia, ustaw schemat, przypisz guardrails do czatu.

uses
  sgcAI, sgcAI_Chat, sgcAI_Guardrails;

procedure TForm1.ProtectChat;
var
  vText, vError: string;
begin
  // personal data never leaves the application
  sgcAIGuardrails1.PII.Enabled := True;
  sgcAIGuardrails1.PII.CustomPatterns.Add('EmployeeId=EMP-####');
  // read and search tools are allowed, deleting never is
  sgcAIGuardrails1.AllowedTools.Add('read_*');
  sgcAIGuardrails1.AllowedTools.Add('search_*');
  sgcAIGuardrails1.DeniedTools.Add('*delete*');
  sgcAIGuardrails1.ToolApproval := aigaNotReadOnly;
  // structured answers must match the schema
  sgcAIGuardrails1.Schema.Enabled := True;
  sgcAIGuardrails1.Schema.JSONSchema := '{"type":"object","properties":' +
    '{"price":{"type":"number","minimum":0}},"required":["price"]}';

  sgcAIChat1.Guardrails := sgcAIGuardrails1;
  sgcAIAgent1.Chat := sgcAIChat1; // the agent follows the same tool rules

  vText := sgcAIGuardrails1.Redact('Mail bob@example.com, call +34 600 111 222');
  Memo1.Lines.Add(vText); // Mail [EMAIL_1], call [PHONE_1]
  Memo1.Lines.Add(sgcAIGuardrails1.Restore(vText)); // the original text
  if not sgcAIGuardrails1.ValidateJSON('{"price":"cheap"}',
    sgcAIGuardrails1.Schema.JSONSchema, vError) then
    Memo1.Lines.Add(vError); // $.price: expected number
end;

Kluczowe właściwości i metody

Składowe, po które sięgasz najczęściej.

Maskowanie PII

Przy PII.Enabled adresy e-mail, numery telefonów, numery kart (sprawdzane algorytmem Luhna), numery IBAN (sprawdzane mod 97) oraz adresy IPv4 i IPv6 są zastępowane znacznikami zastępczymi, takimi jak [EMAIL_1], przed wysłaniem żądania i przywracane w odpowiedzi, dopóki PII.RestoreInAnswers jest włączone. PII.Kinds wybiera rodzaje danych.

Własne wzorce

PII.CustomPatterns dodaje twoje własne identyfikatory jako Name=Pattern, gdzie # oznacza cyfrę, @ literę, ? dowolny znak, a * resztę słowa, na przykład EmployeeId=EMP-#### daje [EMPLOYEEID_1].

Reguły narzędzi

AllowedTools i DeniedTools przyjmują nazwy narzędzi z symbolami wieloznacznymi *, porównywane bez rozróżniania wielkości liter, a zablokowana nazwa zawsze wygrywa. Odrzucone narzędzie nie jest oferowane modelowi i jest odrzucane ponownie, jeśli model mimo to je wywoła. OnToolBlocked raportuje każde odrzucenie wraz z powodem.

Zatwierdzanie

ToolApproval decyduje, które narzędzia pytają TsgcAIAgent.OnToolApproval przed uruchomieniem: aigaNone, aigaNotReadOnly (domyślnie) lub aigaAll.

Walidacja schematu

Przy Schema.Enabled ustrukturyzowane odpowiedzi są walidowane względem Schema.JSONSchema: type, required, properties, additionalProperties, enum, const, minimum, maximum, długości i liczby elementów. Naruszenie wyzwala OnSchemaViolation ze ścieżką taką jak $.price: expected number, a czat zgłasza błąd zamiast zapisać odpowiedź.

Metody

Redact, Restore, ValidateJSON i IsToolAllowed działają także samodzielnie, bez czatu. ClearRedactions zapomina odwzorowanie znaczników zastępczych.

Specyfikacje i materiały źródłowe

Miarodajne źródła dla usług i protokołów, z których korzysta ten komponent.

Poznawaj dalej

Pomoc onlinePełna dokumentacja API i przewodnik użytkowania komponentów sgcAI.
Wszystkie komponenty sgcAIPrzejrzyj matrycę funkcji każdego komponentu sgcAI.
Pobierz bezpłatną wersję próbnąWypróbuj z własnymi kluczami API.
CennikLicencje Single, Team i Site, pełny kod źródłowy.
Najkorzystniejsza oferta: All-AccessWszystkie produkty eSeGeCe, ze wsparciem Premium w cenie, już od €1,059 rocznie.
Zobacz cennik All-Access

Gotowy, aby zacząć?

Pobierz bezpłatną wersję próbną i otocz model językowy regułami, zanim dotrze do twoich użytkowników.