[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-08-19。"],[],[],null,["# Get search results for media apps\n\nThis page shows how to preview search results for media apps using the\nGoogle Cloud console and how to get search results using the API.\n\nTo implement the search app, you can create a [search widget](/generative-ai-app-builder/docs/add-widget) to add\nto your web page or you can make API calls and integrate those calls into your\nwebpage or application.\n\nAbout search modes\n------------------\n\nThere are several modes of search query for media apps:\n\n- **Full queries**: When end users intend for their whole search term or\n phrase to be searched for. For example, in a music streaming app, users type\n the whole title of the song and search for it in one go. This is a preferred\n way of searching when using an input interface that lets users search in one\n go, such as audio input or keyboard input.\n\n In full queries, if the entry includes a spelling mistake, users expect that\n mistake to be corrected.\n\n This is the same behavior as search for non-media (custom)\n apps. See [Get search results for an app with structured or unstructured\n data](/generative-ai-app-builder/docs/preview-search-results#structured-unstructured).\n- **Partial (or search-as-you-type) queries**: When end users dynamically\n receive a new set of search results as they type each letter. For example,\n in a music streaming app, users start entering the name of the song they're\n searching for and with each letter they type, the search results dynamically\n update and narrow down.\n\n- **Auto mode**: Auto mode is a mix of full and partial modes. With auto\n mode, you let media search decide whether to return query results as partial\n or full.\n\n To determine the end users' probable intent, media search analyzes and\n weights various signals, such as the number of letters entered, the speed of\n entry, and whether the entry is a recognized entity---for example, the name of\n an actor or movie.\n\nWhich mode to use\n-----------------\n\nThe default mode for media search queries is the auto mode. However, there are\nscenarios where you might choose to override the default mode and specify the\nfull or partial query mode. Here are some use-case examples:\n\nGet search results for a media app\n----------------------------------\n\n| **Note:** Depending on the amount of data, it can take hours after data ingestion to generate a preview.\n\nYou can preview search results from the Google Cloud console or get search results\nusing the API. To get search results for a media app: \n\n### Console\n\nTo use the Google Cloud console to preview media search and to configure a widget:\n\n1. In the Google Cloud console, go to the **AI Applications** page.\n\n [AI Applications](https://console.cloud.google.com/gen-app-builder/start)\n2. Click the name of the media search app.\n\n3. Click **Configurations**.\n\n4. Click the **UI** tab.\n\n5. On the **UI** tab, set the **General configurations** and **Data display**\n options.\n\n6. In the **Preview** pane, start typing a query.\n\n \u003cbr /\u003e\n\n7. To save the configurations and to make them available in the **Integration**\n tab, click **Save and publish**.\n\n### REST\n\nUse the [`engines.servingConfigs.search`](/generative-ai-app-builder/docs/reference/rest/v1/projects.locations.collections.engines.servingConfigs/search) method to\nget search results for a media app:\n\n1. Find your app ID. If you already have your app ID, skip to the next step.\n\n 1. In the Google Cloud console, go to the **AI Applications** page.\n\n [Go to Apps](https://console.cloud.google.com/gen-app-builder/engines)\n 2. On the **Apps** page, find the name of your app and get the app's ID from\n the **ID** column.\n\n2. Run the following curl command to get search-as-you-type results.\n\n All the fields except for `contentSearchSpec` can be used in conjunction with\n the `searchAsYouTypeSpec` field. For clarity, the optional fields have been\n omitted from the curl command. For the optional fields, see [Get search\n results for an app with structured or unstructured\n data](/generative-ai-app-builder/docs/preview-search-results#structured-unstructured). \n\n curl -X POST -H \"Authorization: Bearer $(gcloud auth print-access-token)\" \\\n -H \"Content-Type: application/json\" \\\n \"https://discoveryengine.googleapis.com/v1/projects/\u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e/locations/global/collections/default_collection/engines/\u003cvar translate=\"no\"\u003eAPP_ID\u003c/var\u003e/servingConfigs/default_search:search\" \\\n -d '{\n \"query\": \"\u003cvar translate=\"no\"\u003eQUERY\u003c/var\u003e\",\n \"searchAsYouTypeSpec\": {\"condition\": \"\u003cvar translate=\"no\"\u003eSPEC_CONDITION\u003c/var\u003e\"}\n }'\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e: the ID of your Google Cloud project.\n - \u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e: the ID of your Google Cloud project.\n - \u003cvar translate=\"no\"\u003eAPP_ID\u003c/var\u003e: the ID of the Vertex AI Search app that you want to query.\n - \u003cvar translate=\"no\"\u003eQUERY\u003c/var\u003e: the query text to search.\n - \u003cvar translate=\"no\"\u003eSPEC_CONDITION\u003c/var\u003e: the search as you type spec can\n have one of the following values:\n\n - `ENABLED`: for partial queries\n - `DISABLED`: for full queries\n - `AUTO`: for partial or full as deemed appropriate. If you leave the `SPEC_CONDITION` field empty or don't specify it, the default search mode is `AUTO`.\n\n #### Example command and partial result\n\n ```bash\n curl -X POST -H \"Authorization: Bearer $(gcloud auth print-access-token)\" \\\n -H \"Content-Type: application/json\" \\\n \"https://discoveryengine.googleapis.com/v1/projects/my-project-123/locations/global/collections/default_collection/engines/my-app/servingConfigs/default_search:search\" \\\n -d '{\n \"query\": \"Mission Impossible\",\n \"searchAsYouTypeSpec\": {\"condition\": \"DISABLED\"}\n }'\n\n {\n \"results\": [\n {\n \"id\": \"189333\",\n \"document\": {\n \"name\": \"projects/123456/locations/global/collections/default_collection/dataStores/my-data-store/branches/0/documents/189333\",\n \"id\": \"189333\",\n \"structData\": {\n \"uri\": \"http://mytestdomain.movie/content/189333\",\n \"title\": \"Mission: Impossible - Fallout (2018)\",\n \"categories\": [\n \"Action\",\n \"Adventure\",\n \"Thriller\"\n ],\n \"available_time\": \"2023-01-01T00:00:00Z\",\n \"media_type\": \"movie\",\n \"expire_time\": \"2033-01-01T00:00:00Z\"\n }\n }\n },\n {\n \"id\": \"111781\",\n \"document\": {\n \"name\": \"projects/123456/locations/global/collections/default_collection/dataStores/my-data-store/branches/0/documents/111781\",\n \"id\": \"111781\",\n \"structData\": {\n \"media_type\": \"movie\",\n \"available_time\": \"2023-01-01T00:00:00Z\",\n \"uri\": \"http://mytestdomain.movie/content/111781\",\n \"title\": \"Mission: Impossible - Rogue Nation (2015)\",\n \"categories\": [\n \"Action\",\n \"Adventure\",\n \"Thriller\"\n ],\n \"expire_time\": \"2033-01-01T00:00:00Z\"\n }\n }\n },\n ...\n {\n \"id\": \"116507\",\n \"document\": {\n \"name\": \"projects/123456/locations/global/collections/default_collection/dataStores/my-data-store/branches/0/documents/116507\",\n \"id\": \"116507\",\n \"structData\": {\n \"uri\": \"http://mytestdomain.movie/content/116507\",\n \"categories\": [\n \"Comedy\"\n ],\n \"media_type\": \"movie\",\n \"available_time\": \"2023-01-01T00:00:00Z\",\n \"title\": \"Mission London (2010)\",\n \"expire_time\": \"2033-01-01T00:00:00Z\"\n }\n }\n }\n ],\n \"totalSize\": 5628,\n \"attributionToken\": \"vgL0PQEKDAiZxMbCBhD2koiqAxIkNjg1MWM3OTUtMDAwMC0yOWVmLThhNzUtZDQzYTJjYzdiYmNmIgVNRURJQSpUtreMLa_WoTGs1qExwvCeFaOAlyKrtZwxxcvzF-7r6TGotZwxkPeyMI6RyTDPv-Iw1L_iMJvWty2Ovp0V1LKdFfHr6THs4K8tkvGsMJXxrDCY1rctMAFKEjB4OTYzYjdjNGE0ZGYwN2FhZlKUAXByb2plY3RzLzc1NjIwNjYwODQ3OS9sb2NhdGlvbnMvZ2xvYmFsL2NvbGxlY3Rpb25zL2RlZmF1bHRfY29sbGVjdGlvbi9lbmdpbmVzL3F1aWNrc3RhcnQtbWVkaWEtcmVjb21tZW5kXzE3NDUwMjUyMjYwNDMvc2VydmluZ0NvbmZpZ3MvZGVmYXVsdF9zZWFyY2g\",\n \"nextPageToken\": \"Y2YiJ2NjNmMhNDNk1SN3EGOtYWZ5ITLwADMw0CN5czYxUDO2QiGDI9kgzIEGIs1tmJCMIBM1IgC\",\n \"summary\": {},\n \"queryExpansionInfo\": {}\n }\n ```\n\n\u003cbr /\u003e\n\nNext steps\n----------\n\n- [Add the search widget to a web page](/generative-ai-app-builder/docs/add-widget)"]]