モデルに話しかけ、モデルに話させる
TsgcAIChat が統一クライアントです。Provider を設定し、ChatOptions.ApiKey と ChatOptions.Model を指定して Chat を呼び出します。トークンのストリーミングは Cancel フラグ付きの OnChatStream に届き、ChatAsync は Delphi 2010 以降で future を返すため UI スレッドがブロックされることはありません。TsgcAIDocumentExtractor は、PDF や画像をスキーマで検証済みの JSON に変換し、フィールドごとに信頼度を提供します。TsgcAIVoiceAgentは、聞き取り、話し返し、ユーザーの割り込みを許し、ツールを呼び出す、OpenAI RealtimeまたはGemini Liveによるリアルタイム音声エージェントです。TsgcAIVoiceTranslator は、OpenAI gpt-realtime-translate を使って音声をリアルタイムに翻訳し、両方の言語のライブ文字起こしを提供します。残りの 3 つは、音声を含む会話ループ全体をまとめています。TsgcAIAgent は、自分のツールと MCP サーバーのツールを使ってツールループを代わりに実行し、データを変更するツールには承認を求め、回答、MaxSteps、トークン上限、Cancel のいずれかで停止します。TsgcAIGuardrails は、リクエストの前に個人データをマスキングし、ツールを名前で許可または拒否し、構造化された回答を JSON スキーマで検証します。TsgcAIUsageMeter は、すべてのリクエストの料金を計算し、ユーザーとセッションごとの合計を保持し、日次または月次の予算を適用して、CSV、TDataSet、OpenTelemetry にエクスポートします。TsgcAIChat では、ツール呼び出しが 7 つのプロバイダーすべてで動作し、モデルエイリアスでモデルを役割で呼び分け、Fallbacks がプロバイダーの失敗時にリクエストを次のプロバイダーへ移します。