検索のサマリーを取得する

このページでは、API を使用して検索結果の検索サマリーを取得する方法について説明します。また、検索サマリーで利用可能なオプションについても説明します。非構造化データとウェブサイトデータにのみ使用できます。

検索結果の取得については、検索結果を取得するをご覧ください。answer メソッドを使用して検索サマリーを取得する方法については、回答とフォローアップを取得するをご覧ください。

医療データのクエリに対する生成 AI の回答を取得する方法については、生成 AI の回答を含む自然言語クエリを使用した検索をご覧ください。

始める前に

アプリの種類に応じて、次の要件を完了します。

検索サマリーを取得する

検索サマリーは、検索レスポンスで返された上位の検索結果の簡単な要約です。サマリー自体は、レスポンスで返された抽出回答から取得されます。そのため、サマリーを取得するには、検索結果とともに抽出回答も取得する必要があります。詳細については、抽出回答を取得する(プレビュー)をご覧ください。

次の図は、summaryResultCount5 に設定された状態でデータストア内の PDF をクエリした場合のサマリーを示しています。サマリーの内容は、アプリの設定によって異なる場合があります。

クエリは「Define operating expenses」です。[検索サマリー] セクションには、上位の結果から抽出されたサマリーが表示されます。
図 1. 検索サマリーを含むウィジェットの例。

検索サマリーには、マークダウン形式のテキストを含めることができます。そのため、アプリケーションでマークダウン パーサーを使用してマークダウン テキストをレンダリングすることを検討してください。

検索サマリーを取得する手順は次のとおりです。

  1. contentSearchSpec.summarySpec を含む検索リクエストを送信し、summaryResultCountmaxExtractiveAnswerCount の値を指定します。検索リクエストの送信の詳細については、検索結果を取得するをご覧ください。

    次の例の summarySpec は、検索サマリーを取得し、上位 3 件の検索結果からサマリーを生成することを示します。

    "contentSearchSpec":
     {
       "summarySpec":
       {
         "summaryResultCount": 3
       },
       "extractiveContentSpec": { "maxExtractiveAnswerCount" : 1}
     }
    
    • summaryResultCount: 検索サマリーを生成する上位結果の数。返された結果の数が summaryResultCount 未満の場合は、すべての結果からサマリーが生成されます。

    • maxExtractiveAnswerCount: 検索結果ごとに返す抽出回答の数。デフォルト値は 100、最大値は 500 です。

  2. 検索レスポンスからサマリーを取得します。各レスポンスで 1 つの summary プロパティが返されます。

    検索レスポンスの最後に返されるサマリーの例を次に示します。

    "summary":
    {
      "summaryText": "BigQuery is Google Cloud's fully managed and completely
      serverless enterprise data warehouse. BigQuery supports all data types,
      works across clouds, and has built-in machine learning and business
      intelligence, all within a unified platform."
    }
    

セマンティック チャンクからサマリーを生成する

use_semantic_chunks をオンにすると、最も関連性の高いドキュメント チャンクからサマリーを生成できます。サマリーの生成にセマンティック チャンクを使用すると、抽出回答を使用するデフォルトの動作と比較して、再現率と検索率が向上します。

サマリーのセマンティック チャンキングが有効になっている場合、レスポンスにはサマリーと、サマリーで使用された各チャンクのコンテンツが返されます。

サマリーの生成にセマンティック チャンクを使用する手順は次のとおりです。

  1. contentSearchSpec.summarySpec を含む検索リクエストを送信し、"use_semantic_chunks": true を指定します。検索リクエストの送信の詳細については、検索結果を取得するをご覧ください。

    次の summarySpec の例は、セマンティック チャンクを使用する検索サマリー、表示する結果の数、引用を含めるかどうかを示しています。

    "contentSearchSpec":
     {
       "summarySpec":
       {
         "useSemanticChunks": SEMANTIC_CHUNK_BOOLEAN,
         "summaryResultCount": SUMMARY_RESULT_COUNT,
         "includeCitations": CITATIONS_BOOLEAN,
       }
     }
    
    • SEMANTIC_CHUNK_BOOLEAN: 検索サマリーを生成するためにセマンティック チャンクを使用するかどうかを指定するブール値。true に設定すると、セマンティック チャンクが使用されます。
    • SUMMARY_RESULT_COUNT: 検索サマリーを生成する上位結果の数。最大値は 10 です。
    • CITATIONS_BOOLEAN: 引用を返すかどうかを指定するブール値。データストアの作成時にチャンクモードをオンにした場合、引用はチャンクを参照します。それ以外の場合、引用はソース ドキュメントを参照します。チャンクモードの詳細については、ドキュメントの解析とチャンク化をご覧ください。
  2. 検索レスポンスからサマリーを取得します。

    以下に、チャンクから生成されたサマリーと引用を含む検索レスポンスの例を示します。レスポンスの references 部分には、サマリーが生成されたチャンクのコンテンツが含まれます。

    レスポンス

    {
      "results": [
        {
          "id": "123xyz",
          "document": {
            "name": "projects/exampleproject/locations/global/collections/default_collection/dataStores/exampledatastore/branches/0/documents/123xyz",
            "id": "123xyz",
            "derivedStructData": {
              "link": "gs://examplebucket/alphabet-investor-pdfs/2004_google_annual_report.pdf"
            }
          }
        }
      ],
      "totalSize": 8375,
      "attributionToken": "abcdefg",
      "nextPageToken": "hijklmnop",
      "guidedSearchResult": {},
      "summary": {
        "summaryText": "Google's search technology uses a combination of techniques to determine the importance of a web page independent of a particular search query and to determine the relevance of that page to a particular search query. [1]",
        "summaryWithMetadata": {
          "summary": "Google's search technology uses a combination of techniques to determine the importance of a web page independent of a particular search query and to determine the relevance of that page to a particular search query.",
          "citationMetadata": {
            "citations": [
              {
                "endIndex": "216",
                "sources": [
                  {}
                ]
              }
            ]
          },
          "references": [
            {
              "document": "projects/exampleproject/locations/global/collections/default_collection/dataStores/exampledatastore/branches/0/documents/123xyz",
              "chunkContents": [
                {
                  "content": "Groups contains more than 1 billion messages from Usenet Internet discussion groups dating back to 1981.The\ndiscussions in these groups cover a broad range of discourse and provide a comprehensive look at evolving\nviewpoints, debate and advice on many subjects.The new Google Groups adds in the ability to create your own\ngroups for you and your friends and an improved user interface.Google Mobile.Google Mobile offers people the ability to search and view both the "mobile web,"\nconsisting of pages created specifically for wireless devices, and the entire Google index of more than 8 billion\nweb pages.Google Mobile works on devices that support WAP, WAP 2.0, i-mode or j-sky mobile Internet\nprotocols.In addition, users can access a variety of information using Google SMS by typing a query to the\nGoogle shortcode.Google Mobile is available through many wireless and mobile phone services worldwide.",
                  "pageIdentifier": "17"
                },
                {
                  "content": "Google Labs is our playground for our engineers and for adventurous Google users.On Google\nLabs, we post product prototypes and solicit feedback on how the technology could be used or improved.Current Google Labs examples include:Google Personalized Search—provides customized search results based on an individual user's interests.Froogle Wireless—gives people the ability to search for product information from their mobile phones\nand other wireless devices.Google Maps—enables users to see maps, get directions, and find local businesses and services quickly\nand easily.Google Maps has several unique features, including draggable maps, integrated local search\nfrom Google Local, and keyboard shortcuts.Google Scholar—enables users to search specifically for scholarly literature, including peer-reviewed\npapers, theses, books, preprints, abstracts and technical reports from all broad areas of research.Google\nScholar can be used to find articles from a wide variety of academic publishers, professional societies,\npreprint repositories and universities, as well as scholarly articles available across the web.Google Suggest—guesses what you're typing and offers suggestions in real time.This is similar to\nGoogle's "Did you mean?"feature that offers alternative spellings for your query after you search, except\nthat it works in real time.",
                  "pageIdentifier": "17"
                },
                {
                  "content": "Groups contains more than 1 billion messages from Usenet Internet discussion groups dating back to 1981.The\ndiscussions in these groups cover a broad range of discourse and provide a comprehensive look at evolving\nviewpoints, debate and advice on many subjects.The new Google Groups adds in the ability to create your own\ngroups for you and your friends and an improved user interface.Google Mobile.Google Mobile offers people the ability to search and view both the "mobile web,"\nconsisting of pages created specifically for wireless devices, and the entire Google index of more than 8 billion\nweb pages.Google Mobile works on devices that support WAP, WAP 2.0, i-mode or j-sky mobile Internet\nprotocols.In addition, users can access a variety of information using Google SMS by typing a query to the\nGoogle shortcode.Google Mobile is available through many wireless and mobile phone services worldwide.\n\nGoogle Local.Google Local enables users to find relevant local businesses near a city, postal code, or specific\naddress.This service combines Yellow Page listings with information found on web pages, and plots their\nlocations on interactive maps.Google Print.Google Print brings information online that had previously not been available to web\nsearchers.Under this program, we enable a number of publishers to host their content and show their\npublications at the top of our search results.",
                  "pageIdentifier": "17"
                },
                {
                  "content": "Votes cast by important web pages with high PageRank weigh more heavily and are\nmore influential in deciding the PageRank of pages on the web.Text-Matching Techniques.Our technology employs text-matching techniques that compare search queries\nwith the content of web pages to help determine relevance.Our text-based scoring techniques do far more than\ncount the number of times a search term appears on a web page.For example, our technology determines the\nproximity of individual search terms to each other on a given web page, and prioritizes results that have the\nsearch terms near each other.Many other aspects of a page's content are factored into the equation, as is the\ncontent of pages that link to the page in question.By combining query independent measures such as PageRank\nwith our text-matching techniques, we are able to deliver search results that are relevant to what people are\ntrying to find.\n\nAdvertising Technology\nOur advertising program serves millions of relevant, targeted ads each day based on search terms people\n\nenter or content they view on the web.The key elements of our advertising technology include:\n\nGoogle AdWords Auction System.We use the Google AdWords auction system to enable advertisers to\nautomatically deliver relevant, targeted advertising.",
                  "pageIdentifier": "21"
                },
                {
                  "content": "Votes cast by important web pages with high PageRank weigh more heavily and are\nmore influential in deciding the PageRank of pages on the web.Text-Matching Techniques.Our technology employs text-matching techniques that compare search queries\nwith the content of web pages to help determine relevance.Our text-based scoring techniques do far more than\ncount the number of times a search term appears on a web page.For example, our technology determines the\nproximity of individual search terms to each other on a given web page, and prioritizes results that have the\nsearch terms near each other.Many other aspects of a page's content are factored into the equation, as is the\ncontent of pages that link to the page in question.By combining query independent measures such as PageRank\nwith our text-matching techniques, we are able to deliver search results that are relevant to what people are\ntrying to find.\n\nAdvertising Technology\nOur advertising program serves millions of relevant, targeted ads each day based on search terms people\n\nenter or content they view on the web.The key elements of our advertising technology include:",
                  "pageIdentifier": "21"
                },
                {
                  "content": "Google Maps—enables users to see maps, get directions, and find local businesses and services quickly\nand easily.Google Maps has several unique features, including draggable maps, integrated local search\nfrom Google Local, and keyboard shortcuts.Google Scholar—enables users to search specifically for scholarly literature, including peer-reviewed\npapers, theses, books, preprints, abstracts and technical reports from all broad areas of research.Google\nScholar can be used to find articles from a wide variety of academic publishers, professional societies,\npreprint repositories and universities, as well as scholarly articles available across the web.Google Suggest—guesses what you're typing and offers suggestions in real time.This is similar to\nGoogle's "Did you mean?"feature that offers alternative spellings for your query after you search, except\nthat it works in real time.Google Video—includes thousands of programs that play on our TVs every day.Google Video enables\nyou to search a growing archive of televised content—everything from sports to dinosaur\ndocumentaries to news shows.\n\n6",
                  "pageIdentifier": "17"
                },
                {
                  "content": "Every search query we process involves the automated\nexecution of an auction, resulting in our advertising system often processing hundreds of millions of auctions per\nday.To determine whether an ad is relevant to a particular query, this system weighs an advertiser's willingness\nto pay for prominence in the ad listings (the CPC) and interest from users in the ad as measured by the click\nthrough rate and other factors.If an ad does not attract user clicks, it moves to a less prominent position on the\npage, even if the advertiser offers to pay a high amount.This prevents advertisers with irrelevant ads from\n"squatting" in top positions to gain exposure.Conversely, more relevant, well-targeted ads that are clicked on\nfrequently move up in ranking, with no need for advertisers to increase their bids.Because we are paid only\nwhen users click on ads, the AdWords ranking system aligns our interests equally with those of our advertisers\nand our users.The more relevant and useful the ad, the better for our users, for our advertisers and for us.\n\nThe AdWords auction system also incorporates our AdWords discounter, which automatically lowers the\namount advertisers actually pay to the minimum needed to maintain their ad position.",
                  "pageIdentifier": "21"
                },
                {
                  "content": "Web Search Technology\nOur web search technology uses a combination of techniques to determine the importance of a web page\nindependent of a particular search query and to determine the relevance of that page to a particular search\nquery.We do not explain how we do ranking in great detail because some people try to manipulate our search\nresults for their own gain, rather than in an attempt to provide high-quality information to users.\n\nRanking Technology.One element of our technology for ranking web pages is called PageRank.While we\ndeveloped much of our ranking technology after Google was formed, PageRank was developed at Stanford\nUniversity with the involvement of our founders, and was therefore published as research.Most of our current\nranking technology is protected as trade-secret.PageRank is a query-independent technique for determining the\nimportance of web pages by looking at the link structure of the web.PageRank treats a link from web page A to\nweb page B as a "vote" by page A in favor of page B.The PageRank of a page is the sum of the PageRank of the\npages that link to it.The PageRank of a web page also depends on the importance (or PageRank) of the other\nweb pages casting the votes.",
                  "pageIdentifier": "21"
                },
                {
                  "content": "The Company recognizes as revenue the fees charged advertisers each time a user clicks on one of the text\nbased ads that are displayed next to the search results on Google web sites.Effective January 1, 2004, the\nCompany offered a single pricing structure to all of its advertisers based on the AdWords cost per click model.\n\nGoogle AdSense is the program through which the Company distributes its advertisers' text-based ads for\ndisplay on the web sites of the Google Network members.In accordance with Emerging Issues Task Force\n("EITF") Issue No. 99 19, Reporting Revenue Gross as a Principal Versus Net as an Agent, the Company recognizes\nas revenues the fees it receives from its advertisers.This revenue is reported gross primarily because the\nCompany is the primary obligor to its advertisers.\n\nThe Company generates fees from search services through a variety of contractual arrangements, which\ninclude per-query search fees and search service hosting fees.Revenues from set up and support fees and search\nservice hosting fees are recognized on a straight-line basis over the term of the contract, which is the expected\nperiod during which these services will be provided.The Company's policy is to recognize revenues from per\nquery search fees in the period queries are made and results are delivered.\n\nThe Company provides search services pursuant to certain AdSense agreements.",
                  "pageIdentifier": "85"
                },
                {
                  "content": "On Google Print pages, we provide links to book sellers that may\noffer the full versions of these publications for sale, and we show content-targeted ads that are served through\nthe Google AdSense program.Google Desktop Search.Google Desktop Search enables our users to perform a full text search on the\ncontents of their own computer, including email, files, instant messenger chats and web browser history.Users\ncan use this service to view web pages they have visited even when they are not online.Google Alerts.Google Alerts are email updates of the latest relevant Google results (web, news, etc.) based\non the user's choice of query or topic.Typical uses include monitoring a developing news story, keeping current\non a competitor or industry, getting the latest on a celebrity or event, or keeping tabs on a favorite sports team.Google Labs.Google Labs is our playground for our engineers and for adventurous Google users.On Google\nLabs, we post product prototypes and solicit feedback on how the technology could be used or improved.Current Google Labs examples include:Google Personalized Search—provides customized search results based on an individual user's interests.Froogle Wireless—gives people the ability to search for product information from their mobile phones\nand other wireless devices.",
                  "pageIdentifier": "17"
                }
              ]
            }
          ]
        }
      }
    }

引用を取得する

引用は、指定されている場合、検索サマリーにインラインで配置される番号です。これらの番号は、サマリー内の特定の文がどの検索結果から取得されたかを示します。

引用を取得する手順は次のとおりです。

  1. contentSearchSpec.summarySpec を含む検索リクエストを送信し、"includeCitations": true を指定します。検索リクエストの送信の詳細については、検索結果を取得するをご覧ください。

    次の例の summarySpec は、検索サマリーを取得し、上位 3 件の検索結果からサマリーを生成し、サマリーに引用を含めるように指定しています。

    "contentSearchSpec":
     {
       "summarySpec":
       {
         "summaryResultCount": 3,
         "includeCitations": true
       },
       "extractiveContentSpec": { "maxExtractiveAnswerCount" : 1}
     }
    
    • summaryResultCount: 検索サマリーを生成する上位結果の数。返された結果の数が summaryResultCount 未満の場合は、すべての結果からサマリーが生成されます。 最大値は 5 です。
    • includeCitations: 引用を返すかどうかを指定するブール値。
    • maxExtractiveAnswerCount: 検索結果ごとに返す抽出回答の数。デフォルト値は 100、最大値は 500 です。
  2. 検索レスポンスから、引用付きのサマリーを取得します。各レスポンスで 1 つの summary プロパティが返されます。

    以下は、検索レスポンスの最後に返される、引用と引用メタデータを含むサマリーの例です。

    "summary": {
     "summaryText": "BigQuery is Google Cloud's fully managed and completely
      serverless enterprise data warehouse [1]. BigQuery supports all data types,
      works across clouds, and has built-in machine learning and business
      intelligence, all within a unified platform [2, 3].",
     "summaryWithMetadata": {
       "summary": "BigQuery is Google Cloud's fully managed and completely
       serverless enterprise data warehouse. BigQuery supports all data types,
       works across clouds, and has built-in machine learning and business
       intelligence, all within a unified platform.",
       "citationMetadata": {
         "citations": [
           {
             "startIndex": "0",
             "endIndex": "101",
             "sources": [
               {
                 "uri": "gs://example-dataset/html/6344007140738632642.html",
                 "title": "About BigQuery",
                 "id": "b6344007140738632642",
                 "referenceIndex": "0"
               },
               {
                 "uri": "gs://example-dataset/html/1365490014946172719.html",
                 "title": "Google Cloud article",
                 "id": "b1365490014946172719",
                 "referenceIndex": "1"
               },
               {
                 "uri": "gs://example-dataset/html/2687910668117268120.html",
                 "title": "BigQuery document",
                 "id": "a2687910668117268120",
                 "referenceIndex": "2"
               }
             ]
           },
           {
             "startIndex": "103",
             "endIndex": "230",
             "sources": [
               {
                 "referenceIndex": "0"
                },
               {
                 "referenceIndex": "1"
               },
               {
                 "referenceIndex": "2",
               }
             ]
           }
         ]
       },
       "references": [
       {
         "title": "Sports in the United States",
         "docName": "projects/123/locations/global/collections/default_collection/dataStores/ds-123/branches/0/documents/b6344007140738632642",
         "uri": "https://example.com/bigqueryA"
       },
       {
         "title": "Sports in the United States",
         "docName": "projects/123/locations/global/collections/default_collection/dataStores/ds-123/branches/0/documents/b1365490014946172719",
         "uri": "https://example.com/bigqueryB"
       },
       {
         "title": "Sports in the United States",
         "docName": "projects/123/locations/global/collections/default_collection/dataStores/ds-123/branches/0/documents/a268791066811726812",
         "uri": "https://example.com/bigqueryC"
       }
     ]
    }
    }
    
    • summaryText: 引用番号を含む検索サマリー。引用番号は、返された検索結果を指し、1 からインデックス付けされます。たとえば、[1] は、その文が最初の検索結果に関連付けられていることを意味します。[2, 3] は、その文が 2 番目と 3 番目の検索結果の両方に関連付けられていることを意味します。
    • citations: 引用を含むサマリーの各文について、その引用のメタデータを一覧表示します。
    • startIndex: 文の開始を示す(Unicode バイト単位で測定)。
    • endIndex: 文の終わりを示す(Unicode バイト単位で測定)。
    • sources: 文の引用に含まれた各ソースの referenceIndex を一覧表示します。referenceIndex は、ソースに割り当てられたインデックス番号です。最初のソースの referenceIndex がレスポンスで明示的に返されるとは限りません。referenceIndex は 0 からインデックス付けされるため、最初のソースの referenceIndex は常に 0 になります。
    • references: サマリーで引用された各参照のメタデータを一覧表示します。メタデータには titledocNameuri が含まれます。

敵対的クエリを無視する

敵対的クエリには否定的なコメントが含まれるか、安全でないポリシー違反の出力を生成するように設計されています。敵対的クエリに対して検索サマリーを返さないように指定できます。敵対的クエリが無視されると、summaryText プロパティには、検索サマリーが返されないことを示すボイラープレート テキストが含まれます。検索ドキュメントは、検索サマリーに対しては返されませんが、敵対的クエリに対して返されます。

敵対的クエリに対して検索サマリーを返さないように指定する手順は次のとおりです。

  1. contentSearchSpec.summarySpec を含む検索リクエストを送信し、"ignoreAdversarialQuery": true を指定します。検索リクエストの送信の詳細については、検索結果を取得するをご覧ください。

    次の例の summarySpec は、検索サマリーを取得し、上位 3 件の検索結果からサマリーを生成し、敵対的クエリに対してサマリーを返さないように指定しています。

    "contentSearchSpec":
     {
       "summarySpec":
       {
         "summaryResultCount": 3,
         "ignoreAdversarialQuery": true
       },
       "extractiveContentSpec": { "maxExtractiveAnswerCount" : 1}
     }
    
    • summaryResultCount: 検索サマリーを生成する上位結果の数。返された結果の数が summaryResultCount 未満の場合は、すべての結果からサマリーが生成されます。 最大値は 5 です。
    • ignoreAdversarialQuery: 敵対的クエリに対して検索サマリーを返さないことを指定するブール値。
    • maxExtractiveAnswerCount: 検索結果ごとに返す抽出回答の数。デフォルト値は 100、最大値は 500 です。
  2. 敵対的検索リクエストに対して返される summary プロパティを確認します。

    以下に例を示します。

    "summary":
    {
      "summaryText": "We do not have a summary for your query. Here are some
      search results.",
      "summarySkippedReasons": [
       "ADVERSARIAL_QUERY_IGNORED"
     ]
    }
    
    • summaryText: 検索サマリーが返されなかったことを示すボイラープレート テキスト。
    • summarySkippedReasons: サマリーのスキップ理由の値を含む列挙型。

サマリーを求めていないクエリを無視する

サマリーを求めていないクエリは、要約に適さない結果を返します。たとえば、「空はなぜ青いのか」や「世界一のサッカー選手は誰ですか?」はサマリーを求めるクエリですが、「SFO 空港」や「2026 年ワールドカップ」はそうではありません。このようなクエリは、ナビゲーション クエリである可能性が高いです。サマリーを求めていないクエリに対して検索サマリーを返さないように指定できます。検索ドキュメントは、検索サマリーに対しては返されませんが、サマリーを求めていないクエリに対して返されます。

サマリーを求めていないクエリに対して検索サマリーを返さないように指定する手順は次のとおりです。

  1. contentSearchSpec.summarySpec を含む検索リクエストを送信し、"ignoreNonSummarySeekingQuery": true を指定します。検索リクエストの送信の詳細については、検索結果を取得するをご覧ください。

    次の例の summarySpec は、検索サマリーを取得し、上位 3 件の検索結果からサマリーを生成し、サマリーを求めていないクエリに対してサマリーを返さないように指定しています。

    "contentSearchSpec":
     {
       "summarySpec":
       {
         "summaryResultCount": 3,
         "ignoreNonSummarySeekingQuery": true
       },
       "extractiveContentSpec": { "maxExtractiveAnswerCount" : 1}
     }
    
    • summaryResultCount: 検索サマリーを生成する上位結果の数。返された結果の数が summaryResultCount 未満の場合は、すべての結果からサマリーが生成されます。 最大値は 5 です。
    • ignoreNonSummarySeekingQuery: サマリーを求めていないクエリに対して検索サマリーを返さないことを指定するブール値。
    • maxExtractiveAnswerCount: 検索結果ごとに返す抽出回答の数。デフォルト値は 100、最大値は 500 です。
  2. サマリーを求めていない検索リクエストで返される summary プロパティをご覧ください。

    以下に例を示します。

    "summary":
    {
      "summaryText": "We do not have a summary for your query. Here are some
      search results.",
      "summarySkippedReasons": [
        "NON_SUMMARY_SEEKING_QUERY_IGNORED"
     ]
    }
    
    • summaryText: 検索サマリーが返されなかったことを示すボイラープレート テキスト。
    • summarySkippedReasons: サマリーのスキップ理由の値を含む列挙型。

カスタマイズされたサマリーを取得する

自然言語で指示することで、カスタマイズされたサマリーを取得できます。この機能は、検索ウィジェットの場合はコンソールを使用して、API の場合は modelPromptSpec.preamble フィールドに指示を入力することで使用できます。

長さ、詳細レベル、出力のスタイル(「シンプル」など)、出力の言語、回答の焦点、形式(表、箇条書き、XML など)などのカスタマイズをリクエストできます。

たとえば、クエリ What are the benefits of bigquery? の場合は、次の例のようにカスタマイズ指示を入力できます。

  • 指示の例: please show the answer format in an ordered list

    回答例:

    The benefits of BigQuery are:
    
    1. Increased business productivity
    2. IT staff productivity
    3. Reduced infrastructure costs
    4. Loading and exporting data are free
    
  • 指示の例: give a very detailed answer

    回答例:

    BigQuery is a serverless, highly scalable, and cost-effective cloud data warehouse that enables businesses to analyze all their data very quickly. It is a fully managed service that takes care of provisioning, scaling, and managing the underlying infrastructure, so you can focus on analyzing your data. BigQuery is also integrated with other Google Cloud services, such as Google Kubernetes Engine, Cloud Data Fusion, and Cloud Dataproc, making it easy to build and deploy data pipelines.
    
    Here are some of the benefits of using BigQuery:
    
    * **Fast and scalable:** BigQuery can process petabytes of data very quickly, and it can scale to handle even the most demanding workloads. * **Cost-effective:** BigQuery is a very cost-effective way to store and analyze data. You only pay for the data that you use, and there are no upfront costs or commitments. * **Secure:** BigQuery is a secure platform that meets the needs of even the most security-conscious organizations. * **Easy to use:** BigQuery is easy to use, even for non-technical users. It has a simple and intuitive user interface, and it supports a variety of data sources. * **Integrated with other Google Cloud services:** BigQuery is integrated with other Google Cloud services, making it easy to build and deploy data pipelines.
    
    If you are looking for a fast, scalable, and cost-effective way to analyze your data, then BigQuery is a great option.
    

カスタマイズされたサマリーに関するベスト プラクティス

この機能を利用する場合は、次の手順を行います。

  • 一度にリクエストできるカスタマイズは 1 つのみです。カスタマイズを組み合わせないでください(フランス語の HTML テーブルをリクエストするなど)。
  • エンドユーザーがリクエストできるカスタマイズに制限を設定することをおすすめします。たとえば、事前定義された一連のカスタマイズのセレクタを提供する方法があります。

サマリーをカスタマイズする

検索ウィジェットのみのカスタマイズされたサマリーを取得するには、コンソールを使用します。すべての検索リクエストのサマリーを取得するには、API を使用します。

カスタマイズされたサマリーを取得する手順は次のとおりです。

コンソール

  1. Google Cloud コンソールで、[Agent Builder] ページに移動します。

    Agent Builder

  2. 編集するアプリの名前をクリックします。

  3. [設定] > [UI] に移動します。

  4. 検索ウィジェットの [検索タイプ] が [回答付き検索] または [フォローアップ付き検索] に設定されていることを確認します。[検索] が選択されている場合、この機能は使用できません。

  5. [サマリーのカスタマイズを有効にする] をオンにします。

  6. サマリー指示を入力するには、次のいずれかを行います。

    • 自由形式の手順を入力する: [プリアンブル] フィールドに、独自の自然言語の指示を入力します。
    • テンプレートの手順を使用する: [テンプレートで置き換える] をクリックし、事前定義されたテンプレートの指示のいずれかを選択します。事前定義されたテンプレートを選択すると、[プリアンブル] フィールドに表示されます。
  7. [プレビュー] ペインで検索して、アプリのカスタマイズされたサマリーの生成をテストします。

  8. 最後に保存した指示セットにリセットするには、[プリアンブルをリセット] をクリックします。

  9. 設定をウィジェットに保存するには、[保存して公開] をクリックします。

REST

  1. contentSearchSpec.summarySpec を含む検索リクエストを送信し、modelPromptSpec.preamble でカスタマイズ指示を指定します。検索リクエストの送信の詳細については、検索結果を取得するをご覧ください。

    次の例の summarySpec は、検索サマリーを取得し、上位 3 件の検索結果からサマリーを生成し、10 歳の子供に説明するようにサマリーをカスタマイズするように指定しています。

    "contentSearchSpec":
      {
        "summarySpec":
        {
          "summaryResultCount": 3,
          "modelPromptSpec":
          {
            "preamble": "explain like you would to a ten year old"
          }
        }
      }
    
    • summaryResultCount: 検索サマリーを生成する上位結果の数。返された結果の数が summaryResultCount 未満の場合は、すべての結果からサマリーが生成されます。 最大値は 5 です。
    • preamble: カスタマイズの指示。
  2. 検索レスポンスからカスタマイズされたサマリーを取得します。

    返されるカスタマイズされたサマリーの例を次に示します。

    "summary":
    {
      "summaryText": "BigQuery is a serverless data warehouse that helps you
      analyze all your data very quickly. It's very easy to use and you don't
      need to worry about managing servers or infrastructure. BigQuery is also
      very scalable, so you can analyze large datasets without any problems."
    }
    
    • summaryText: カスタマイズされた検索サマリー。

要約モデルを指定する

サマリーの生成に使用するモデルを指定できます。

stablepreview、または特定のモデル バージョンの名前を指定できます。使用可能なモデル バージョンについては、回答生成モデルのバージョンとライフサイクルをご覧ください。

モデル バージョンを変更するには:

  1. ContentSearchSpec.SummarySpec.ModelSpec を含む検索リクエストを送信して、モデル バージョンを指定します。

    "contentSearchSpec": {
      "summarySpec": {
        "modelSpec": {
          "version": "MODEL_VERSION"
         }
       }
     }
    
    • MODEL_VERSION: サマリーの生成に使用するモデルを指定します。サポートされている値は次のとおりです。

      • stable: 文字列値が指定されていない場合のデフォルト仕様。 stable は、回答の生成用にファインチューニングされた GA モデル バージョンを参照します。stable が参照するモデルは、新しい一般提供モデル バージョンがリリースされ、以前のモデル バージョンが廃止されると変更されます。stable が参照する最新バージョンについては、回答生成モデルのバージョンとライフサイクルをご覧ください。
      • preview: 文字列preview は、質問と回答用の最新の Gemini モデルを参照します。Gemini の詳細については、マルチモーダル モデルの概要をご覧ください。
      • 特定のモデル バージョンを指定する場合は、バージョン名(text-bison@002/answer_gen/v1 など)を入力します。サポートされているバージョンについては、回答生成モデルのバージョンとライフサイクルをご覧ください。

たとえば、次の検索リクエストでは、モデル バージョンとして preview を指定します。

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://discoveryengine.googleapis.com/v1/projects/exampleproject/locations/global/collections/default_collection/dataStores/exampledatastore/servingConfigs/default_search:search" \
-d '{
  "query": "what is bigquery",
  "contentSearchSpec": {
    "summarySpec": {
      "modelSpec": {
        "version": "preview"
      }
    }
  }
}'

検索サマリーの制限事項

検索サマリーを使用すると、次のような制限が発生することがあります。

  • LLM は検索サマリーと引用の生成に使用されるため、LLM の制限は Vertex AI Search のサマリーにも適用されます。

    これらの LLM の制限事項の一般的な情報については、Vertex AI ドキュメントの PaLM API の制限事項をご覧ください。

  • 複雑な論理的推論や分析的推論、世界に関する理解を必要とする検索クエリでは、誤った情報(ハルシネーション)や、非構造化データやウェブサイトのデータに存在しない情報が含まれる検索サマリーが生成される可能性があります。

  • 検索サマリーのステートメントの一部には、引用が含まれていない場合があります。

    • ステートメントに根拠が不要であるとシステムが判断した場合、引用は含まれません。「こちらが見つかった内容です」、「さまざまな方法があります」などの文には引用がありません。

    • 引用がない場合、有効な参照が見つからなかったことも考えられます。 引用のない事実情報は信頼できない可能性があります。

  • まれに、引用が誤ってステートメントに関連付けられることがあります。

  • 複雑なドキュメントは、LLM によって誤って解析される可能性があります。この場合、サマリーが不完全または正しくない可能性があります。

  • カスタマイズ指示は自然言語で記述されているため、すべてのリクエストで指示に従うことを保証することはできません。