AI 検索のトラブルシューティングとデバッグ方法<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } <!-- .SOKMKBArticle div.margin { padding: 10px 40px 40px 30px; color: #283d40; font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; font-size: 10pt; } .SOKMKBArticle div.fed{ background-color: #f5f8fa; border: 1px solid; border-color: #bfbfbf; padding: 10px; } .SOKMKBArticle .FedRestricted{ background-color: #c00000; color: #ffffff; padding: 10px; margin-top: 10px; text-align: center; font-size: 14pt; font-weight: bold; } .SOKMKBArticle .CustRestricted{ background-color: #ff0000; color: #ffffff; padding: 10px; margin-top: 10px; text-align: center; font-size: 14pt; font-weight: bold; } .SOKMKBArticle .SNRestricted{ background-color: #ea700d; color: #ffffff; padding: 10px; margin-top: 10px; text-align: center; font-size: 14pt; font-weight: bold; } .SOKMKBArticle .SNConfidential{ background-color: #ffc000; color: #ffffff; padding: 10px; margin-top: 10px; text-align: center; font-size: 14pt; font-weight: bold; } .SOKMKBArticle .Public{ background-color: #00b050; color: #ffffff; padding: 10px; margin-top: 10px; text-align: center; font-size: 14pt; font-weight: bold; } .SOKMKBArticle table.tocTable { border: 1px solid; border-color: #f2f2f2; background-color: #f2f2f2; padding-top: .6em; padding-bottom: .6em; padding-left: .9em; padding-right: .6em; } .SOKMKBArticle table.noteTable { align: left; border: none; border-color: #81b5a1; background-color: #f2f2f2; width: 100%; border-spacing: 2; font-size: 11px; } .SOKMKBArticle table.internalTable { border-top: 1px solid; border-left: 1px solid; border-color: #81b5a1; width: 100%; border-spacing: 1px; } .SOKMKBArticle .sp td { border-bottom: 1px solid; border-right: 1px solid; border-color: #81b5a1; background-color: #ffffff; height: 20px; padding-top: .5em; padding-bottom: .5em; padding-left: .5em; padding-right: .5em; } .SOKMKBArticle .sphr td { border-right: 1px solid; border-bottom: 1px solid; border-color: #81b5a1; background-color: rgb(245, 245, 245); padding-top: .5em; padding-bottom: .5em; padding-left: .5em; padding-right: .5em; height: 20px; } .SOKMKBArticle .sh td { border-bottom: 1px solid; border-right: 1px solid; border-color: #81b5a1; background-color: #81b5a1; color: #ffffff; height: 20px; padding-top: .5em; padding-bottom: .5em; padding-left: .5em; padding-right: .5em; } .SOKMKBArticle th { padding-top: .5em; padding-bottom: .5em; padding-left: .5em; padding-right: .5em; border-bottom: 1px solid; border-right: 1px solid; border-color: #81b5a1; background-color: #283d40; font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; font-size: 10pt; color: #ffffff; height: 20px; } .SOKMKBArticle td { border-color: #81b5a1; margin: 5px 5px 5px 5px; font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; font-size: 10pt; color: #283d40; } .SOKMKBArticle p { color: #283d40; font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; } .SOKMKBArticle li { color: #283d40; font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; font-size: 10pt; line-height: 1.5; } .SOKMKBArticle pre { font-family: Courier New; } .SOKMKBArticle div { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; } .SOKMKBArticle hr { border-top-width: 1px; border-top-style: solid; border-top-color: #81b5a1; } .SOKMKBArticle a { color: #81b5a1; } .SOKMKBArticle a.two:link { padding: 15px 45px 15px 45px; margin-top: 20px; color: #ffffff; text-align: center; background-color: #1F8476; border: 1px solid; border-color: #1F8476; } .SOKMKBArticle a.two:visited { padding: 15px 45px 15px 45px; margin-top: 20px; color: #ffffff; text-align: center; background-color: #1F8476; border: 1px solid; border-color: #1F8476; } .SOKMKBArticle a.two:hover { color: #ffffff; background-color: #259b8a; } .SOKMKBArticle .button { padding: 15px 45px 15px 45px; margin-top: 20px; color: #ffffff; text-align: center; background-color: #1F8476; border: 1px solid; border-color: #1F8476; } .SOKMKBArticle .title { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #81b5a1; font-size: 30pt; } .SOKMKBArticle .hd1 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-size: 20pt; border-bottom: 1px solid; border-bottom-color: #81b5a1; text-decoration: none; } .SOKMKBArticle h1 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-size: 20pt; font-weight: normal; border-bottom: 1px solid; border-bottom-color: #81b5a1; text-decoration: none; } .SOKMKBArticle .hd2 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #68a1af; font-weight: bold; font-size: 16pt; text-decoration: none; } .SOKMKBArticle h2 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #68a1af; font-weight: bold; font-size: 16pt; font-weight: normal; text-decoration: none; } .SOKMKBArticle .hd3 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: normal; font-size: 14pt; text-decoration: none; } .SOKMKBArticle h3 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: normal; font-size: 14pt; text-decoration: none; } .SOKMKBArticle .hd4 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: normal; font-size: 12pt; text-decoration: none; } .SOKMKBArticle h4 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: normal; font-size: 12pt; text-decoration: none; } .SOKMKBArticle .hd5 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: bold; font-size: 10pt; text-decoration: bold; } .SOKMKBArticle h5 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: bold; font-size: 10pt; text-decoration: bold; } .SOKMKBArticle .hd6 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: normal; font-size: 10pt; text-decoration: underline; } .SOKMKBArticle h6 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: normal; font-size: 10pt; text-decoration: underline; } .SOKMKBArticle details { font-size: 10pt; } .SOKMKBArticle details[open] summary ~ * { animation: sweep .5s; margin-top: 0; padding-top: 10px; } @keyframes sweep { 0% {opacity: 0; margin-top: -10px} 100% {opacity: 1; margin-top: 0px} } .SOKMKBArticle summary { cursor: pointer; outline: none; margin-bottom: 3px; } .SOKMKBArticle .summary { background-color: #81b5a1; font-size: 10px; color: white; cursor: pointer; padding: 5px; width: 100%; border: none; text-align: left; outline: none; vertical-align: top; } --> AI 検索の問題をトラブルシューティングおよびデバッグします。この記事では、デバッグログの有効化、検索プレビュー UI の使用、テストスクリプトの実行、AI 検索の一般的な問題の解決手順について説明します。 デバッグログを有効にする AI 検索のデバッグログを有効にするには、次の手順を実行します。 [システム診断] > [AI 検索のデバッグ] に移動します。デバッグメッセージがシステムログに表示されます。 AI 検索ログを表示する [AI 検索] > [すべて] または [AI 検索] > [取り込みの警告とエラー] に移動します。 詳細については、「AI 検索のログ記録とデバッグ」を参照してください。 検索プレビュー UI を使用する 高度な AI 検索管理ツールアプリケーションをインストールします。[AI 検索] > [プレビュー] > [検索プレビュー] に移動します。ドロップダウンから検索プロファイルを選択します。検索用語を入力し、[検索] を選択します。 localhost ログを確認する 追加のデバッグ情報について localhost ログを確認します。 NLU モデルの検索クエリをテストする NLU モデルの検索クエリをテストするには、[システム定義] > [スクリプト - バックグラウンド] で次のスクリプトを実行します。 //Enter the solution name you are testing in the line #1 like ml_x_snc_sn_km_mr_global_ais_gra_b8bc699a67621010b3d782f45685efa5var geniusSearchSolutionName = 'enter the solution name'; var searchQuery = new sn_ml.GeniusSearchQuery("abraham lincoln");var searchContext = new sn_ml.GeniusSearchContext({"session" : ""});var geniusSearchSolution = sn_ml.GeniusSearchSolutionStore.get(geniusSearchSolutionName)geniusSearchSolution = sn_ml.GeniusSearchSolutionStore.get(geniusSearchSolutionName);var result = geniusSearchSolution.search(searchQuery, searchContext, {});gs.print(JSON.stringify(JSON.parse(result), false, 4)); enter the solution name をご自身のソリューション名に置き換えてください。 (例:ml_x_snc_sn_km_mr_global_ais_gra_b8bc699a67621010b3d782f45685efa5) 検索プロファイルで検索結果をデバッグする 次のスクリプトを使用して、検索結果のデバッグや検索の問題の絞り込みを行うことができます。 重要: AISASearchUtil API はサポートされていないため、デバッグ目的でのみ使用してください。 [システム定義] > [スクリプト - バックグラウンド] で次のスクリプトを実行します。 //Make changes to the searchParams based on your requirements.//Just need to change searchContextConfigId and searchTerm to get started.searchParams = { searchContextConfigId: '00731b9d5b231010d9a5ce1a8581c7dd', //sys_id of the Search Application configuration[sys_search_context_config] record that you want to use for searching. searchTerm: '***', // The search term *** returns all records that have been indexed. paginationToken: '', // Leaving paginationToken empty returns the data for the first page. To get the paginationToken for 2nd page, click the next page button on the portal after doing the search and check the URL for paginationToken. disableSpellCheck: false, facetFilters: [], searchFilters: [], requestedFields: {}, rpSysId: 'test' // Just a dummy value that is needed for the script to work.};var aiSearchUtil = new AISASearchUtil();var result = aiSearchUtil.search(searchParams);var searchResult = result.data.search.searchResults;gs.info(searchResult.length);for (var i=0; i<searchResult.length; i++){gs.info(searchResult[i].title + " | " + searchResult[i].text);}gs.info(JSON.stringify(result));//Note: Ensure that search sources have been indexed before trying to search.注意:検索を試みる前に、検索ソースがインデックス化されていることを確認してください。 AI 検索で検索結果が表示されない場合 AI 検索で検索結果が表示されない場合は、以下を確認してください。 AI 検索が有効であることを確認する glide.ais.enabled プロパティが true に設定されていることを確認します。[AI 検索] > [接続] に移動し、[テスト接続] を選択します。接続に問題がある場合は、テクニカルサポートにお問い合わせください。 Genius 結果の構成を確認する Genius 結果が返されない場合は、次の点を確認してください。 glide.ais.genius_result.enabled プロパティが true に設定されていることを確認します。ファセット選択時に Genius 結果が表示されない場合は、glide.ais.genius_result.enabled_with_facet_filter を false に設定します。Genius 結果は英語でのみサポートされています。英語以外の言語のサポートについては、「AI 検索のインターナショナリゼーションサポート」を参照してください。Genius 結果タイプの EVAM 構成が存在することを確認します。たとえば、Peoplefind Genius 結果を使用するには、sys_ux_composite_data_template_predicate_bundle テーブルに手動でエントリを追加する必要があります。「EVAM 構成」を参照してください。 検索プロファイルの構成を確認する 期待する結果が表示されない場合は、次の点を確認してください。 正しい検索プロファイルがリンクされていることを確認します。検索プロファイルが公開されていることを確認します。公開されていない場合は、公開してから再テストします。 検索ソースの構成を確認する 期待する結果が存在しない場合は、検索ソースのフィルター条件を確認してください。フィルターで除外されたレコードは結果に表示されません。 レコードを除外する可能性のあるその他の要因: ACL ルールドメインセパレーションユーザー基準クエリ前ビジネスルール 検索結果の上限を確認する 期待する数の結果が表示されない場合は、検索アプリケーション構成 [sys_search_context_config] レコードの検索結果の上限を確認してください。 AI 検索に関するその他の問題 エッジ暗号化はサポートされていません エッジ暗号化および暗号化のサポートは、AI 検索ではサポートされていません。 イベントキューの問題 イベント関連の問題については、イベントキューで「ais_index」で始まるイベントを確認してください。 パフォーマンスの問題 検索結果に適用されているコンテンツセキュリティ機能を特定してください。 評価対象のユーザー基準が多数ありますか?検索対象のテーブルに多数の ACL がありますか? 重要: すべてのインスタンスからの検索クエリトラフィックは、同じ専用 AI 検索ノードによって処理されます。非本番インスタンスでの検索クエリは、本番インスタンスでの検索クエリのパフォーマンスに影響を与える可能性があります。 クローン後に AI 検索モジュールが見つからない場合 クローン後に AI 検索モジュールが見つからない場合は、テクニカルサポートにお問い合わせください。 特定のサービスポータルで AI 検索を使用できない場合 AI 検索はカスタムポータルで有効にできます。デフォルトポータルおよびストアポータルでは、AI 検索が利用可能な場合はデフォルトで有効になっています。利用できない場合は、有効にすることはできません。 インデックスを作成できないテーブル zing ブロックリスト内のテーブルは、sc_cat_item と kb_knowledge を除き、インデックスを作成できません。タスク、CMDB、およびその他のブロック対象テーブルはインデックスを作成できません。 ※親テーブルにインデックスを作成した場合、すべての子テーブルも手動で追加して個別にインデックスを作成する必要があります。 Reference (参照) AI 検索AI 検索リファレンス AI 検索のログ記録とデバッグ 検索プレビュー UI高度な AI 検索管理ツール