広告枠を募集中 ご相談ください

企業ナレッジ管理者のためのCohere Coralデータコネクタ設定ガイド:社内文書に基づくグラウンディングと出典引用の実現

365Finds Editorial
Wiki 記事 11,430 本収録

あなたの AI で 365 Wiki を使う

下のプロンプトをコピーして、普段使っている AI に貼り付け、そのまま質問してください。

完全版 Skill をダウンロード

まずはプロンプトでお試しください。よく使う場合は完全版 365Wiki Skill をインストールすると、毎回貼り付ける必要がありません。普段使う AI がなければ、Gemini や Microsoft Copilot のウェブ版でも使えます。

社内向けに対話型AIアシスタントを導入するにあたり、ナレッジマネージャーやシステム管理者は2つの重大な障壁に直面します。一般的な大規模言語モデル(LLM)は企業独自の内部文書を把握しておらず、そのまま利用すると事実無根の「ハルシネーション(幻覚)」を引き起こすリスクがあるという点です。Cohere CoralおよびCohereのCommandモデル群は、専用の検索拡張生成(RAG)アーキテクチャとデータコネクタ(Data Connectors)により、この課題を根本から解決します。

Cohereデータコネクタは、Cohereの言語モデルと社内ドキュメントストアの間に位置するセキュアなHTTPブリッジとして機能します。企業データがElasticsearch、OpenSearch、Confluence、Notion、クラウドストレージ、あるいは独自のベクトルデータベースのどこに保管されていても、コネクタ経由で必要な箇所を動的に取得し、機械検証可能な出典情報(Citations)を付与した正確な回答を生成できます。


アーキテクチャの動作原理:Coralが社内文書を検索・引用する仕組み

信頼性の高いデータコネクタを構築・運用するためには、ユーザー、Cohere Coral、および社内データストア間のデータフローを正確に把握する必要があります。

  1. クエリ解析と検索クエリの自動生成: 従業員がCoralのチャット画面やChat API経由で質問を送信すると、Cohereは文脈を解析します。Commandモデルは生の質問文を直接データベースへ転送するのではなく、検索エンジンや検索インデックスに最適化された1つまたは複数の検索クエリ(search_queries)を生成します。
  2. コネクタの呼び出し: Cohereは登録済みのコネクタの/searchエンドポイントに対して認証付きHTTPリクエストを送信し、生成された検索クエリを渡します。
  3. 社内文書の検索: コネクタマイクロサービスがリクエストを受け取り、社内検索エンジン(BM25キーワード検索、ベクトル検索、またはハイブリッド検索)を実行して、適合した文書を標準JSON形式に整形してCohereに返却します。
  4. コンテキストの注入と再ランキング: Cohereは返却された文書からテキストスニペットを抽出し、モデルのコンテキストウィンドウに挿入します。フィールド除外設定(excludes)を活用することで、データベース内部IDなどの不要なメタデータをプロンプトから除外し、トークン消費を抑制します。
  5. 根拠付けられた回答生成と引用メタデータ: モデルは取得した文書のみを根拠として回答を構成します。レスポンスには、生成テキスト内の文字位置(startおよびend)と参照元の文書IDやURLを結びつける構造化されたcitations配列が含まれます。CoralのUI上では、これがクリック可能な出典リンクとして表示され、従業員はワンクリックで元の社内文書を確認できます。

ステップ1:コネクタ検索APIサービスの実装

Cohereデータコネクタは、検索エンドポイントを公開する独立したHTTPウェブサービスです。Python(FastAPIやFlaskなど)で開発するか、Dockerコンテナとしてプライベートクラウドに配備します。Cohereは公式オープンソースリポジトリquick-start-connectorsにおいて、Elasticsearch、Pinecone、Google Drive、GitHubなどに向けた参照実装を提供しています。

検索エンドポイントの仕様要件

コネクタサービスは検索リクエストを受信し、results配列を含むJSONオブジェクトを返却する必要があります。

{
  "results": [
    {
      "id": "kb-policy-4091",
      "title": "社内情報セキュリティおよびアクセス権限管理規定",
      "text": "全従業員は四半期ごとにアクセス権限の棚卸しを完了しなければなりません。クラウドアカウントの管理者権限にはハードウェアMFAトークンの利用とセキュリティ統括責任者の承認が必須です。",
      "url": "https://wiki.corp.internal/policies/infosec-access-control"
    },
    {
      "id": "kb-handbook-1024",
      "title": "リモートワークおよびデータ保護基本規程",
      "text": "社外秘コードや未公開文書を個人所有の記憶媒体に複製することは禁止されています。業務用端末の通信は必ず社内WireGuard VPNゲートウェイを経由してください。",
      "url": "https://wiki.corp.internal/handbook/data-protection"
    }
  ]
}

文書のチャンク分割と品質向上のポイント

Coralが生成する回答の精度は、返却されるテキストスニペットの品質に大きく左右されます。


ステップ2:認証方式とアクセス権限の分離

企業内文書には法務、財務、人事などの機密情報が含まれます。権限のない従業員に機密文書の内容を開示しないよう、Cohereデータコネクタは2つの認証方式に対応しています。

1. サービス間認証(service_auth)

社内ポータルや全社共通FAQ、一般就業規則など、Coralを利用する全社従業員が一律に閲覧可能なデータを対象とする場合に適しています。Cohereが/searchエンドポイントを呼び出す際、HTTPヘッダーに固定のBearerトークンを付与します。

2. ユーザーレベルのOAuth 2.0認証(oauth)

Google WorkspaceやConfluence、人事システムのように、ドキュメントごとに個別のアクセス制御リスト(ACL)が存在する場合は、OAuth 2.0を採用します。


ステップ3:Cohereプラットフォームへのコネクタ登録

検索サービスをプライベートネットワークまたはHTTPS経由で稼働させた後、https://api.cohere.com/v1/connectorsへPOSTリクエストを送信して登録を行います。

登録APIリクエスト例

curl https://api.cohere.com/v1/connectors \
  -H "Authorization: Bearer YOUR_COHERE_API_KEY" \
  -H "Content-Type: application/json" \
  -X POST \
  -d '{
    "name": "internal-knowledge-hub",
    "description": "社内技術仕様書、標準業務手順書(SOP)、および就業規則",
    "url": "https://connector.corp.internal/search",
    "active": true,
    "service_auth": {
      "type": "bearer",
      "token": "CORP_CONNECTOR_SECRET_TOKEN"
    },
    "excludes": [
      "raw_database_id",
      "internal_routing_hash"
    ]
  }'

設定パラメータの解説


ステップ4:引用精度とグラウンディング回答の検証

登録完了後は、Chat APIや管理画面のテスト環境で実際のレスポンスと引用構造を検証します。

Python SDKを使用した呼び出しテスト

import cohere

co = cohere.Client(api_key="YOUR_COHERE_API_KEY")

response = co.chat(
    model="command-r-plus",
    message="クラウド基盤におけるハードウェアMFAの利用要件について教えてください。",
    connectors=[{"id": "internal-knowledge-hub"}]
)

print("生成された回答:")
print(response.text)
print("\n引用データ:")
for citation in response.citations:
    print(f"[{citation.start}:{citation.end}] '{citation.text}' -> 参照ドキュメントID: {citation.document_ids}")

Citationsレスポンスの構造

返却されるJSONオブジェクトでは、回答テキストと裏付けデータが完全に紐付けられています。

{
  "text": "社内セキュリティ規定により、クラウド基盤の管理者権限にはハードウェアMFAトークンの利用とセキュリティ統括責任者の承認が義務付けられています。",
  "citations": [
    {
      "start": 0,
      "end": 74,
      "text": "社内セキュリティ規定により、クラウド基盤の管理者権限にはハードウェアMFAトークンの利用とセキュリティ統括責任者の承認が義務付けられています。",
      "document_ids": ["internal-knowledge-hub_kb-policy-4091"]
    }
  ],
  "documents": [
    {
      "id": "internal-knowledge-hub_kb-policy-4091",
      "title": "社内情報セキュリティおよびアクセス権限管理規定",
      "url": "https://wiki.corp.internal/policies/infosec-access-control",
      "snippet": "全従業員は四半期ごとにアクセス権限の棚卸しを完了しなければなりません。クラウドアカウントの管理者権限にはハードウェアMFAトークンの利用とセキュリティ統括責任者の承認が必須です。"
    }
  ]
}

UIはstartとendのインデックス情報を用いて該当箇所をハイライト表示し、ユーザーがクリックして原文を直ちに突き合わせられる環境を提供します。


ステップ5:本番運用のベストプラクティスと今後のアーキテクチャ展開

長期間にわたり安定してコネクタを運用するために、以下の設計指針を推奨します。

ハイブリッド検索とCohere Rerankの併用

社内文書には専門用語や略語、型番が頻出します。ベクトル検索単体では表記ゆれやピンポイントの記号照合に失敗することがあり、逆にキーワード検索だけでは抽象的な意図を拾えません。

根拠不十分な質問に対する安全な拒否応答

社内文書に該当情報が存在しない場合、無理に回答を推測させない仕組みが不可欠です。コネクタ側の検索スコアが基準値に達しない場合は空配列(results: [])を返します。Commandモデルは根拠がない場合に「該当する情報が見つかりませんでした」と明確に回答するよう調整されています。

マルチステップツール利用(Multi-Step Tool Use)とCohere Toolkit

システムの規模拡大に伴い、Cohereが提供するMulti-Step Tool UseやオープンソースのCohere Toolkitへの移行を検討できます。

データコネクタの標準化、権限統制、そして高精度な引用機能を組み合わせることで、社内に散在する文書資産を誰もが安全かつ正確に活用できるインテリジェントなナレッジ基盤へと昇華させることが可能です。

参考資料