情報を強化する人工知能機能が組み込まれた Azure の検索サービスで、関連するコンテンツの特定と探索を大規模に支援します。
こんにちは yamasaki,
Azure AI Services(マルチサービス)リソースを作成したことで、最初のスキルセットエラーが解消されたとのこと、良いニュースですね。正しい方向に進んでいます。
デバッグセッションの内容から判断すると、現在は新たに 2 つの別々の問題が発生しているようです。それぞれ順番に解決していきましょう。
問題 1:インデクサーの警告(主な問題)
インデクサーの警告が最も重要な手がかりです:
Could not map output field 'ocr_text' to search index. ... Missing or empty value '/document/ocr_text'
このエラーは、スキルセットが正常に動作し、ocr_text の出力を生成していることを意味します。 しかし、インデクサーがそのテキストを検索インデックスに格納しようとした際に、格納先の ocr_text フィールドが見つからない状態になっています。
outputFieldMappings でソース(/document/ocr_text)からターゲット(ocr_text)へのマッピングを正しく設定していますが、ターゲット側のフィールド ocr_text が検索インデックスのスキーマに存在していません。
解決方法: インデクサーやスキルセットではなく、検索インデックスの定義を編集し、ocr_text フィールドを fields コレクションに追加してください。
検索インデックスの fields 配列に、次の JSON を追加します:
{
"name": "ocr_text",
"type": "Edm.String",
"searchable": true,
"filterable": true,
"sortable": false,
"facetable": false,
"analyzer": "ja.lucene"
}
注意: スキルセットが日本語テキストを抽出するように設定されている("defaultLanguageCode": "ja")ため、ja.lucene アナライザーの使用をおすすめします。これにより、より精度の高い検索結果が得られます。
このフィールドを検索インデックスに追加した後、インデクサーをリセットして再実行してください。警告は消え、ocr_text フィールドにデータが正しく入力されるはずです。
問題 2:デバッグセッションエラー
こちらは「デバッグセッション」ツール自体の設定に関する別の問題です。 エラー「Debug session must have a valid 'StorageConnectionString'」は、デバッグセッションツールがテスト用ドキュメントを取得するための Blob Storage への接続情報を認識できていないことを意味します。
この設定はデータソース定義から取得されます。 エラーの原因は、データソースに保存されている接続文字列が 無効、不完全、または期限切れ(SAS トークンの場合) であることを示しています。
次の手順をお試しください:
- Azure AI Search サービスで [Data Sources](データソース) タブを開きます。
- インデクサーで使用しているデータソースをクリックします。
- Azure Blob Storage アカウントの 接続文字列(Connection String) を再入力します。 完全で有効な接続文字列(例:
DefaultEndpointsProtocol=https;AccountName=...;AccountKey=...)であることを確認してください。 - データソースを保存します。
有効な接続文字列でデータソースを更新すると、デバッグセッションツールが正しく接続して実行できるようになります。また、先に問題1を修正することをおすすめします。 検索インデックスに ocr_text フィールドを追加することで、OCR データが表示されない主な問題は解消される可能性が高いです。
問題が引き続き発生する場合は、お知らせください。
英語から日本語への翻訳にあたり、誤りがありましたらお詫び申し上げます。