メインコンテンツまでスキップ

AIエンジンの技術仕様

Sentra v3は、厳格なアクセス制御と高精度を備えた独自の企業データを処理するように設計された、堅牢なマルチテナントAI処理パイプラインを導入しています。以下の仕様は、Sentra AIエコシステムを駆動するコアメカニズムを詳述しています。

動的RAGとナレッジの取り込み

Sentraは、エンタープライズ規模に合わせて調整された高度に構成可能なRetrieval-Augmented Generation (RAG: 検索拡張生成)アーキテクチャを利用しています。

1. ベクトル化されたナレッジベース

  • ストレージ: ナレッジの埋め込み(Embedding)は、client_id(テナント)によって厳密に分離されたGoogle Cloud Storage (GCS)バケットを利用して安全に保存されます。
  • クローリングと取り込み: 組み込みのクローラーが、非構造化Webデータ(特定のCSSセレクター(例:div.content#main)をターゲットにする)およびローカルファイルを処理します。
  • LLM前処理: 取り込み中に、「Flash LLM」を構成して、ベクトル化する前にカスタムプロンプトを使用して抽出されたテキストを前処理および正規化し、高品質なセマンティック埋め込みを確保できます。

2. マルチテナント API アーキテクチャ

  • 単一の FastAPI エンジン: 統合されたバックエンド (Sentra3/api) が、すべての受信LLMクエリを処理します。
  • テナントの分離: APIは、client_id(例:sentrabiggrit)に基づいてナレッジベースを厳密に分離します。各テナントには、AIコンテキストの相互汚染を確実にゼロにするために、独自の分離されたNeo4jデータベースプレフィックス(例:base_)とGCSバケットがあります。

アクセス制御されたナレッジ (RBAC)

SentraのAIは画一的な回答を返すことはありません。ユーザーの承認レベルをコンテキスト的に認識します。

  • OIDC同期: Sentra OIDCプロバイダーを介したユーザーの初回ログイン時に、その特定の暗号化ロール(ACL)がローカルのSentraデータベースに同期されます。
  • ロールベースの検索: クエリが送信されると(例:Slack統合を介して)、APIゲートウェイはまずユーザーのロールを検証します。その後、ベクトルデータベースは埋め込み検索を、そのロールに一致するドキュメントのみにフィルタリングします(例:一般ユーザーからsentra:adminのドキュメントを隠す)。

ヒューマンインザループ (Human-in-the-Loop) 検証

重要なビジネス環境におけるLLMのハルシネーション(幻覚)のリスクを軽減するために、Sentraはヒューマンインザループ(HITL)フォールバックメカニズムを組み込んでいます。

  1. 信頼度のしきい値: プライマリLLMがVectorDBから関連性の高いチャンクを取得できない場合、その応答にフラグを立てます。
  2. 専門家へのルーティング: 不明なクエリやフラグが立てられたクエリは、組織の管理パネル内の指定された人間の専門家に自動的にルーティングされます。
  3. 継続的な学習: 人間の専門家が正しい回答を提供すると、その検証された応答はVectorDBに永続的に注入されます。その後の同一のクエリは、AIによって絶対的な精度で自律的に処理されます。