AI Database(AIDB)7.6.0

日本語訳|AIDB 7.6.0

※GoogleのAutoML Translationを使用して翻訳しております。

英語原文|AIDB 7.6.0

概要

1. AIDBとは?
AIDB は、EnterpriseDB(EDB)が保守・提供するPostgreSQL拡張機能であり、AIデータワークフローをPostgreSQLデータベース内に直接統合します。

SQLネイティブな宣言的インターフェースを提供し、以下の機能を実現します。

  • データベース内でのデータのパース、チャンク分割、OCR、要約、および埋め込み(Embedding)の生成。
  • 検索拡張生成(RAG)アプリケーションや、セマンティック検索/ハイブリッド検索ワークフローの構築。
  • ツール呼び出し(Tool-calling)機能を備えたデータベース内AIエージェントの作成と実行。
  • リレーショナルテーブルや外部ストレージ(PGFS経由のS3、ローカルファイルシステムなど)からの非構造化データの取り込みおよび自動同期。

2. AIDBの仕組み
AIDBは、以下の4つの主要なビルディングブロック(構成要素)を使い、PostgreSQL内部でSQLを通じて完全に動作します。

  • AIパイプライン (aidb.create_pipeline):
    • データソース(PostgresテーブルまたはPGFS経由の外部ストレージボリューム)からデータを読み取り、順次変換(例: ParsePdf $\rightarrow$ ChunkText $\rightarrow$ PerformOcr $\rightarrow$ SummarizeText $\rightarrow$ KnowledgeBase)を行って結果を保存するマルチステップワークフローです。
    • トリガーによる即時処理(Live)、バックグラウンドワーカーによる定期非同期処理(Background)、手動実行(Disabled)の自動処理モードをサポートします。
  • ナレッジベース(ベクトルおよびセマンティック):
    • ベクトルナレッジベース: ベクトル埋め込みを pgvector インデックス付きテーブル(HNSW、IVFFlatなど)に保存し、セマンティック検索やハイブリッド検索(aidb.retrieve_text、aidb.retrieve_key)を提供します。複数のパイプラインから1つの共有ナレッジベースに書き込むことも可能です。
    • セマンティックナレッジベース (aidb.create_semantic_kb): データベースのスキーマ構造(テーブル、ビュー、カラム、および COMMENT ON メタデータ)とセマンティックエイリアスをインデックス化し、自然言語によるスキーマ探索やText-to-SQL(テキストからSQLへの変換)を実現します。
  • エージェント (aidb.create_agent, aidb.agent_converse):
    • 指示(プロンプト)、モデル、許可されたツール群で構成され、ReActスタイルの推論ループ(思考 $\rightarrow$ ツール呼び出し $\rightarrow$ 結果の観察 $\rightarrow$ 繰り返し)を実行して、正確なデータベース情報に基づいた回答を生成します。
    • 会話履歴の保持、呼び出しごとのリソースバジェット管理、リードレプリカ向けの読み取り専用モード、エージェント委譲(最大10階層)をサポートします。
  • ツール (aidb.tools):
    • ネイティブツール(スキーマ探索、検索、SQL実行などのAIDB組み込み機能)、カスタムSQLツール(パラメータ化された独自クエリ)、MCPツール(外部のModel Context Protocolサーバーからインポートしたツール)を統合・管理するカタログです。

3. AIDBのメリット

  • データがPostgresの外部に出ない: データの外部送信に伴うセキュリティリスクを排除し、データベースの境界内で安全に処理を完結できます(特にローカル推論ランタイム使用時)。
  • SQLを共通インターフェースとして利用可能: DBA、データアナリスト、開発者が、使い慣れたSQL構文を使ってAIやRAGアプリケーションを構築でき、別途Pythonスクリプトやノートブックを用意する必要がありません。
  • 外部インフラの削減: AirflowのDAG、SQSキュー、Kubernetesジョブなどの外部ETL・オーケストレーション基盤を不要にします。
  • リアルタイムなデータベース内自動同期: Postgresネイティブのトリガーやバックグラウンドワーカーにより、元データの変更に合わせてベクトル埋め込みを自動的に最新の状態に保ちます。
  • モデルランタイムの柔軟性: データベース内でのCPUローカル実行(Candle、およびGGUFモデル向けの llama.cpp)と、外部クラウドAPI(OpenAI、Anthropic Messages API、NVIDIA NIM、Google Gemini、OpenRouter)の両方に対応しています。
  • エンタープライズレベルのセキュリティとコンプライアンス: PostgresのRBAC(ロールベースアクセス制御)、行単位セキュリティ(RLS)、環境変数によるシークレット管理(credentials_env)、外部通信の送信先許可リスト(Egress allowlist)に対応しています。

4. Release 7.6.0 の新機能

  • SQLネイティブなエージェント&ツールフレームワークの追加:
    • aidb.create_agent() および aidb.agent_converse() による自律型エージェント推論ループを導入。
    • ネイティブツール、カスタムSQLツール(aidb.create_sql_tool)、外部MCPサーバー連携(aidb.import_mcp_tools)を統合したツールハブ(aidb.tools)を新設。
    • 呼び出しごとのバジェット制御(トークン上限、推論反復回数、タイムアウト)やエージェント間の委譲機能をサポート。
  • ネイティブツール呼び出し対応のモデルアダプター:
    • OpenAI Responses API(openai_responses, openai_responses_azure)およびAnthropic Messages API(anthropic_messages, anthropic_messages_azure, anthropic_messages_bedrock)にネイティブ対応し、プロンプト注入ではなく正規の tools / tool_choice プロトコルによるツール呼び出しを実現。
  • llama.cpp によるローカルリランキングとローカルOCR:
    • クロスエンコーダー(bge-reranker-v2-m3 など)やデコーダーオンリー型(Qwen3-Reranker など)をサポートする llamacpp_reranking プロバイダーを追加。
    • 画像からのテキスト抽出を行う llamacpp_ocr プロバイダーを追加(デフォルトモデル: lightonocr-2-1b-Q8_0)。
  • 環境変数による認証情報(クレデンシャル)の取得:
    • aidb.create_model() の credentials_env 引数および aidb.import_mcp_tools() の headers_env を追加し、サーバー側の環境変数から安全にシークレットを読み込めるように改善(接頭辞 aidb.env_var_allowed_prefix による検証付き)。
  • セマンティックナレッジベース(Semantic KB)の強化:
    • aidb.semantic_kb_search() を新設し、相互順位融合(RRF)を用いてスキーマメタデータとセマンティックエイリアスの検索結果を統合。
    • セマンティックKBが1つのみ存在する場合に kb_name の指定を省略可能に簡素化。
    • セマンティックエイリアスがスキーマを共有する複数のKBに同時に所属可能に。
  • セキュリティおよび信頼性の向上:
    • 漏洩クレデンシャルの検知: aidb.create_model() で設定内に api_key や basic_auth が直書きされている場合に拒否するよう変更。過去の設定を検査する aidb.audit_leaked_credentials() を追加。
    • 不正な文字(改行など)を含む認証ヘッダーによるバックエンドクラッシュを防止するバリデーションを追加。
    • 関数名の変更: decode_text/decode_text_batch を非推奨とし、aidb.generate_text() / aidb.generate_text_batch() に改名。
    • aidb.get_pipeline_metrics() およびパイプラインビューに最終実行完了時刻(last_run_completed)を追加。

HA

前の記事

EDB Postgres Distributed(PGD)6.5.0