Google 검색으로 그라운딩


Gemini API 및 AI Studio의 Google 검색을 통한 그라운딩 기능을 사용하면 모델의 응답 정확성과 최신성을 개선할 수 있습니다. Google 검색을 사용한 그라운딩이 사용 설정된 경우 더 많은 사실 기반 응답 외에도 Gemini API는 응답 콘텐츠와 함께 그라운딩 소스 (인라인 지원 링크) 및 Google 검색 추천을 반환합니다. 추천 검색어는 사용자에게 그라운딩된 응답에 해당하는 검색 결과를 안내합니다.

Google 검색을 통한 그라운딩은 텍스트 프롬프트만 지원합니다. 멀티모달 (텍스트 및 이미지, 텍스트 및 오디오 등) 프롬프트는 지원하지 않습니다. Google 검색을 통한 그라운딩은 Gemini 모델에서 지원되는 모든 언어를 지원합니다.

이 가이드에서는 Gemini API SDK 또는 REST API 중 하나를 사용하여 Google 검색 그라운딩을 시작하는 방법을 설명합니다.

Google 검색을 사용하도록 모델 구성

Google 검색을 사용한 그라운딩이 유용한 이유는 무엇인가요?

생성형 AI에서 그라운딩은 모델을 검증 가능한 정보 소스에 연결하는 프로세스를 의미합니다. 이러한 소스는 실제 직장 정보 또는 기타 특정 맥락을 제공할 수 있습니다. 그라운딩은 AI 출력의 정확성, 안정성, 유용성을 개선하는 데 도움이 됩니다.

그라운딩은 웹의 최신 정보가 필요한 프롬프트에 특히 중요합니다. 모델은 그라운딩을 사용하여 지식 마감일 이후의 정보에 액세스하고, 정보의 출처를 얻고, 그렇지 않으면 정확하게 답변할 수 없었던 질문에 답변할 수 있습니다.

Google AI Studio 또는 Gemini API를 사용하여 모델 출력을 Google 검색에 그라운딩할 수 있습니다. Google 검색을 통한 그라운딩의 이점은 다음과 같습니다.

  • 특정 콘텐츠에 테더링된 모델 응답을 허용합니다.
  • 모델이 사실과 다른 콘텐츠를 생성하는 경우를 의미하는 모델 할루시네이션을 줄입니다.
  • 앵커는 사용자가 클릭하여 열 수 있는 소스에 대한 모델 응답입니다.
  • 생성된 콘텐츠의 신뢰성과 적용 가능성을 향상시킵니다.

Google 검색을 사용한 그라운딩을 사용하면 모델을 인터넷의 신뢰할 수 있는 검색 결과에 효과적으로 연결할 수 있습니다. 그라운딩되지 않은 모델 응답은 학습된 패턴을 기반으로 하므로 일기 예보나 최근 축구 경기의 최종 점수와 같은 시사 관련 프롬프트에 사실에 기반한 응답이 제공되지 않을 수 있습니다. 인터넷에서 새 정보에 액세스할 수 있으므로 그라운딩된 프롬프트는 인용된 소스가 포함된 최신 응답을 생성할 수 있습니다.

다음은 그라운딩되지 않은 응답과 API를 사용하여 생성된 그라운딩된 응답을 비교하는 예입니다. (답변은 2024년 10월에 생성되었습니다.)

그라운딩되지 않은 Gemini Google 검색으로 그라운딩
프롬프트: 올해 슈퍼볼에서 누가 이겼나요?
답변: 올해 (2023년) 슈퍼볼 LVII에서 캔자스시티 치프스가 우승했습니다.
프롬프트: 올해 슈퍼볼 우승팀은 누구인가요?
응답: 캔자스시티 치프스는 올해 슈퍼볼 LVIII에서 샌프란시스코 포티나이너스를 연장전 끝에 25 대 22점으로 이겨 승리했습니다.

근거가 없는 응답에서 모델은 캔자스시티 치프스의 2023년 슈퍼볼 우승을 언급합니다. 기반이 있는 대답에서 모델은 더 최근의 2024년 우승을 올바르게 언급합니다.

다음 이미지는 AI 스튜디오에서 그라운딩된 대답이 표시되는 방식을 보여줍니다.

AI 스튜디오의 기반 프롬프트 및 응답

Google 추천 검색어

Google 검색과 함께 그라운딩을 사용하려면 그라운딩된 응답의 메타데이터에 포함된 추천 검색어인 Google 검색 추천어를 표시해야 합니다. 디스플레이 요구사항에 관한 자세한 내용은 Google 검색 추천 사용을 참고하세요.

동적 검색

일부 검색어는 다른 검색어보다 Google 검색의 그라운딩에서 더 많은 이점을 얻을 수 있습니다. 동적 검색 기능을 사용하면 Google 검색으로 그라운딩을 사용할 시기를 추가로 관리할 수 있습니다.

동적 검색 모드가 지정되지 않으면 Google 검색을 통한 그라운딩이 항상 트리거됩니다. 모드가 동적으로 설정된 경우 모델은 구성할 수 있는 임곗값을 기반으로 접지 사용 시점을 결정합니다. 임곗값은 [0,1] 범위의 부동 소수점 값이며 기본값은 0.3입니다. 기준점 값이 0이면 응답이 항상 Google 검색에서 그라운딩됩니다. 1이면 그라운딩되지 않습니다.

동적 검색의 작동 방식

요청에서 동적 검색을 사용하여 Google 검색 시 그라운딩을 사용 설정할 경우를 선택할 수 있습니다. 이는 프롬프트에 Google 검색을 토대로 한 답변이 필요하지 않고 모델이 근거 없이 자체 지식에 기반하여 답변을 제공할 수 있는 경우에 유용합니다. 이렇게 하면 지연 시간, 품질, 비용을 더 효과적으로 관리할 수 있습니다.

요청에서 동적 검색 구성을 호출하기 전에 다음 용어를 숙지하세요.

  • 예측 점수: 근거 있는 답변을 요청하면 Gemini가 프롬프트에 예측 점수를 할당합니다. 예측 점수는 [0,1] 범위의 부동 소수점 값입니다. 값은 프롬프트가 Google 검색의 최신 정보로 답변을 그라운딩함으로써 이득을 얻을 수 있는지 여부에 따라 달라집니다. 따라서 웹의 최신 사실 데이터로 그라운딩된 답변이 필요한 프롬프트는 예측 점수가 더 높습니다. 모델에서 생성된 답변으로 충분한 프롬프트는 예측 점수가 더 낮습니다.

    다음은 몇 가지 프롬프트와 해당 예측 점수에 대한 예시입니다.

    프롬프트 예측 점수 의견
    "피오니에 대한 시를 만들어주세요" 0.13 모델이 알고 있는 지식에 의존할 수 있으며 답은 근거가 필요하지 않습니다.
    "2세 아이를 위한 장난감을 추천해주세요" 0.36 모델이 기본 지식에 의존할 수 있고 답변에 그라운딩이 필요하지 않습니다.
    "아시아식 과카몰리 레시피를 알려줄 수 있을까요?" 0.55 Google 검색은 근거에 기반한 답변을 제공할 수 있지만, 그라운딩이 반드시 필요한 것은 아닙니다. 모델 지식만으로도 충분할 수 있습니다.
    "Agent Builder란 무엇인가요? Agent Builder에서 그라운딩 비용은 어떻게 청구되나요?" 0.72 Google 검색으로 잘 그라운딩된 답변을 생성해야 합니다.
    "최근 F1 그랑프리 우승자는 누구인가요?" 0.97 Google 검색으로 잘 그라운딩된 답변을 생성해야 합니다.
  • 기준점: API 요청에서 기준점과 함께 동적 검색 구성을 지정할 수 있습니다. 기준점은 [0,1] 범위의 부동 소수점 값이며 기본값은 0.7입니다. 기준점 값이 0이면 응답이 항상 Google 검색에서 그라운딩됩니다. 다른 모든 임곗값의 경우 다음을 적용할 수 있습니다.

    • 예측 점수가 기준점보다 크거나 같으면 답변이 Google 검색에서 그라운딩됩니다. 임곗값이 낮을수록 Google 검색을 통한 그라운딩을 사용하여 생성된 응답이 더 많은 프롬프트에 있다는 의미입니다.
    • 예측 점수가 기준점보다 낮으면 모델이 여전히 답변을 생성할 수 있지만 Google 검색으로 그라운딩되지 않습니다.

SDK 또는 REST API를 사용하여 동적 검색 기준점을 설정하는 방법을 알아보려면 적절한 코드 예를 참고하세요.

AI 스튜디오를 사용하는 경우 대지 수정을 클릭하여 동적 검색 기준점을 설정할 수 있습니다.

AI Studio에서 그라운딩 임곗값 선택

비즈니스 요구에 적합한 올바른 기준점을 찾으려면 발생할 것으로 예상되는 쿼리 대표 집합을 만들 수 있습니다. 그런 다음 응답의 예측 점수에 따라 쿼리를 정렬하고 사용 사례에 적합한 기준점을 선택할 수 있습니다.

그라운딩된 응답

프롬프트가 Google 검색에 성공적으로 그라운딩되면 응답에 groundingMetadata가 포함됩니다. 근거 있는 응답은 다음과 같이 표시될 수 있습니다(간결성을 위해 응답의 일부가 생략됨).

{
  "candidates": [
    {
      "content": {
        "parts": [
          {
            "text": "Carlos Alcaraz won the Gentlemen's Singles title at the 2024 Wimbledon Championships. He defeated Novak Djokovic in the final, winning his second consecutive Wimbledon title and fourth Grand Slam title overall. \n"
          }
        ],
        "role": "model"
      },
      ...
      "groundingMetadata": {
        "searchEntryPoint": {
          "renderedContent": "\u003cstyle\u003e\n.container {\n  align-items: center;\n  border-radius: 8px;\n  display: flex;\n  font-family: Google Sans, Roboto, sans-serif;\n  font-size: 14px;\n  line-height: 20px;\n  padding: 8px 12px;\n}\n.chip {\n  display: inline-block;\n  border: solid 1px;\n  border-radius: 16px;\n  min-width: 14px;\n  padding: 5px 16px;\n  text-align: center;\n  user-select: none;\n  margin: 0 8px;\n  -webkit-tap-highlight-color: transparent;\n}\n.carousel {\n  overflow: auto;\n  scrollbar-width: none;\n  white-space: nowrap;\n  margin-right: -12px;\n}\n.headline {\n  display: flex;\n  margin-right: 4px;\n}\n.gradient-container {\n  position: relative;\n}\n.gradient {\n  position: absolute;\n  transform: translate(3px, -9px);\n  height: 36px;\n  width: 9px;\n}\n@media (prefers-color-scheme: light) {\n  .container {\n    background-color: #fafafa;\n    box-shadow: 0 0 0 1px #0000000f;\n  }\n  .headline-label {\n    color: #1f1f1f;\n  }\n  .chip {\n    background-color: #ffffff;\n    border-color: #d2d2d2;\n    color: #5e5e5e;\n    text-decoration: none;\n  }\n  .chip:hover {\n    background-color: #f2f2f2;\n  }\n  .chip:focus {\n    background-color: #f2f2f2;\n  }\n  .chip:active {\n    background-color: #d8d8d8;\n    border-color: #b6b6b6;\n  }\n  .logo-dark {\n    display: none;\n  }\n  .gradient {\n    background: linear-gradient(90deg, #fafafa 15%, #fafafa00 100%);\n  }\n}\n@media (prefers-color-scheme: dark) {\n  .container {\n    background-color: #1f1f1f;\n    box-shadow: 0 0 0 1px #ffffff26;\n  }\n  .headline-label {\n    color: #fff;\n  }\n  .chip {\n    background-color: #2c2c2c;\n    border-color: #3c4043;\n    color: #fff;\n    text-decoration: none;\n  }\n  .chip:hover {\n    background-color: #353536;\n  }\n  .chip:focus {\n    background-color: #353536;\n  }\n  .chip:active {\n    background-color: #464849;\n    border-color: #53575b;\n  }\n  .logo-light {\n    display: none;\n  }\n  .gradient {\n    background: linear-gradient(90deg, #1f1f1f 15%, #1f1f1f00 100%);\n  }\n}\n\u003c/style\u003e\n\u003cdiv class=\"container\"\u003e\n  \u003cdiv class=\"headline\"\u003e\n    \u003csvg class=\"logo-light\" width=\"18\" height=\"18\" viewBox=\"9 9 35 35\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\n      \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M42.8622 27.0064C42.8622 25.7839 42.7525 24.6084 42.5487 23.4799H26.3109V30.1568H35.5897C35.1821 32.3041 33.9596 34.1222 32.1258 35.3448V39.6864H37.7213C40.9814 36.677 42.8622 32.2571 42.8622 27.0064V27.0064Z\" fill=\"#4285F4\"/\u003e\n      \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.3109 43.8555C30.9659 43.8555 34.8687 42.3195 37.7213 39.6863L32.1258 35.3447C30.5898 36.3792 28.6306 37.0061 26.3109 37.0061C21.8282 37.0061 18.0195 33.9811 16.6559 29.906H10.9194V34.3573C13.7563 39.9841 19.5712 43.8555 26.3109 43.8555V43.8555Z\" fill=\"#34A853\"/\u003e\n      \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M16.6559 29.8904C16.3111 28.8559 16.1074 27.7588 16.1074 26.6146C16.1074 25.4704 16.3111 24.3733 16.6559 23.3388V18.8875H10.9194C9.74388 21.2072 9.06992 23.8247 9.06992 26.6146C9.06992 29.4045 9.74388 32.022 10.9194 34.3417L15.3864 30.8621L16.6559 29.8904V29.8904Z\" fill=\"#FBBC05\"/\u003e\n      \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.3109 16.2386C28.85 16.2386 31.107 17.1164 32.9095 18.8091L37.8466 13.8719C34.853 11.082 30.9659 9.3736 26.3109 9.3736C19.5712 9.3736 13.7563 13.245 10.9194 18.8875L16.6559 23.3388C18.0195 19.2636 21.8282 16.2386 26.3109 16.2386V16.2386Z\" fill=\"#EA4335\"/\u003e\n    \u003c/svg\u003e\n    \u003csvg class=\"logo-dark\" width=\"18\" height=\"18\" viewBox=\"0 0 48 48\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\n      \u003ccircle cx=\"24\" cy=\"23\" fill=\"#FFF\" r=\"22\"/\u003e\n      \u003cpath d=\"M33.76 34.26c2.75-2.56 4.49-6.37 4.49-11.26 0-.89-.08-1.84-.29-3H24.01v5.99h8.03c-.4 2.02-1.5 3.56-3.07 4.56v.75l3.91 2.97h.88z\" fill=\"#4285F4\"/\u003e\n      \u003cpath d=\"M15.58 25.77A8.845 8.845 0 0 0 24 31.86c1.92 0 3.62-.46 4.97-1.31l4.79 3.71C31.14 36.7 27.65 38 24 38c-5.93 0-11.01-3.4-13.45-8.36l.17-1.01 4.06-2.85h.8z\" fill=\"#34A853\"/\u003e\n      \u003cpath d=\"M15.59 20.21a8.864 8.864 0 0 0 0 5.58l-5.03 3.86c-.98-2-1.53-4.25-1.53-6.64 0-2.39.55-4.64 1.53-6.64l1-.22 3.81 2.98.22 1.08z\" fill=\"#FBBC05\"/\u003e\n      \u003cpath d=\"M24 14.14c2.11 0 4.02.75 5.52 1.98l4.36-4.36C31.22 9.43 27.81 8 24 8c-5.93 0-11.01 3.4-13.45 8.36l5.03 3.85A8.86 8.86 0 0 1 24 14.14z\" fill=\"#EA4335\"/\u003e\n    \u003c/svg\u003e\n    \u003cdiv class=\"gradient-container\"\u003e\u003cdiv class=\"gradient\"\u003e\u003c/div\u003e\u003c/div\u003e\n  \u003c/div\u003e\n  \u003cdiv class=\"carousel\"\u003e\n    \u003ca class=\"chip\" href=\"https://vertexaisearch.cloud.google.com/grounding-api-redirect/AWhgh4x8Epe-gzpwRBvp7o3RZh2m1ygq1EHktn0OWCtvTXjad4bb1zSuqfJd6OEuZZ9_SXZ_P2SvCpJM7NaFfQfiZs6064MeqXego0vSbV9LlAZoxTdbxWK1hFeqTG6kA13YJf7Fbu1SqBYM0cFM4zo0G_sD9NKYWcOCQMvDLDEJFhjrC9DM_QobBIAMq-gWN95G5tvt6_z6EuPN8QY=\"\u003ewho won wimbledon 2024\u003c/a\u003e\n  \u003c/div\u003e\n\u003c/div\u003e\n"
        },
        "groundingChunks": [
          {
            "web": {
              "uri": "https://vertexaisearch.cloud.google.com/grounding-api-redirect/AWhgh4whET1ta3sDETZvcicd8FeNe4z0VuduVsxrT677KQRp2rYghXI0VpfYbIMVI3THcTuMwggRCbFXS_wVvW0UmGzMe9h2fyrkvsnQPJyikJasNIbjJLPX0StM4Bd694-ZVle56MmRA4YiUvwSqad1w6O2opmWnw==",
              "title": "wikipedia.org"
            }
          },
          {
            "web": {
              "uri": "https://vertexaisearch.cloud.google.com/grounding-api-redirect/AWhgh4wR1M-9-yMPUr_KdHlnoAmQ8ZX90DtQ_vDYTjtP2oR5RH4tRP04uqKPLmesvo64BBkPeYLC2EpVDxv9ngO3S1fs2xh-e78fY4m0GAtgNlahUkm_tBm_sih5kFPc7ill9u2uwesNGUkwrQlmP2mfWNU5lMMr23HGktr6t0sV0QYlzQq7odVoBxYWlQ_sqWFH",
              "title": "wikipedia.org"
            }
          },
          {
            "web": {
              "uri": "https://vertexaisearch.cloud.google.com/grounding-api-redirect/AWhgh4wsDmROzbP-tmt8GdwCW_pqISTZ4IRbBuoaMyaHfcQg8WW-yKRQQvMDTPAuLxJh-8_U8_iw_6JKFbQ8M9oVYtaFdWFK4gOtL4RrC9Jyqc5BNpuxp6uLEKgL5-9TggtNvO97PyCfziDFXPsxylwI1HcfQdrz3Jy7ZdOL4XM-S5rC0lF2S3VWW0IEAEtS7WX861meBYVjIuuF_mIr3spYPqWLhbAY2Spj-4_ba8DjRvmevIFUhRuESTKvBfmpxNSM",
              "title": "cbssports.com"
            }
          },
          {
            "web": {
              "uri": "https://vertexaisearch.cloud.google.com/grounding-api-redirect/AWhgh4yzjLkorHiUKjhOPkWaZ9b4cO-cLG-02vlEl6xTBjMUjyhK04qSIclAa7heR41JQ6AAVXmNdS3WDrLOV4Wli-iezyzW8QPQ4vgnmO_egdsuxhcGk3-Fp8-yfqNLvgXFwY5mPo6QRhvplOFv0_x9mAcka18QuAXtj0SPvJfZhUEgYLCtCrucDS5XFc5HmRBcG1tqFdKSE1ihnp8KLdaWMhrUQI21hHS9",
              "title": "jagranjosh.com"
            }
          },
          {
            "web": {
              "uri": "https://vertexaisearch.cloud.google.com/grounding-api-redirect/AWhgh4y9L4oeNGWCatFz63b9PpP3ys-Wi_zwnkUT5ji9lY7gPUJQcsmmE87q88GSdZqzcx5nZG9usot5FYk2yK-FAGvCRE6JsUQJB_W11_kJU2HVV1BTPiZ4SAgm8XDFIxpCZXnXmEx5HUfRqQm_zav7CvS2qjA2x3__qLME6Jy7R5oza1C5_aqjQu422le9CaigThS5bvJoMo-ZGcXdBUCj2CqoXNVjMA==",
              "title": "apnews.com"
            }
          }
        ],
        "groundingSupports": [
          {
            "segment": {
              "endIndex": 85,
              "text": "Carlos Alcaraz won the Gentlemen's Singles title at the 2024 Wimbledon Championships."
            },
            "groundingChunkIndices": [
              0,
              1,
              2,
              3
            ],
            "confidenceScores": [
              0.97380733,
              0.97380733,
              0.97380733,
              0.97380733
            ]
          },
          {
            "segment": {
              "startIndex": 86,
              "endIndex": 210,
              "text": "He defeated Novak Djokovic in the final, winning his second consecutive Wimbledon title and fourth Grand Slam title overall."
            },
            "groundingChunkIndices": [
              1,
              0,
              4
            ],
            "confidenceScores": [
              0.96145374,
              0.96145374,
              0.96145374
            ]
          }
        ],
        "webSearchQueries": [
          "who won wimbledon 2024"
        ]
      }
    }
  ],
  ...
}

응답에 groundingMetadata가 포함되어 있지 않으면 응답이 성공적으로 그라운딩되지 않은 것입니다. 이러한 상황은 소스 관련성이 낮거나 모델 응답 내의 정보가 불완전한 경우 등 여러 가지 이유로 발생할 수 있습니다.

그라운딩된 결과가 생성되면 메타데이터에는 근거 결과를 생성하는 데 사용된 콘텐츠의 게시자로 리디렉션하는 URI가 포함됩니다. 이러한 URI에는 vertexaisearch 하위 도메인이 포함됩니다(예: https://vertexaisearch.cloud.google.com/grounding-api-redirect/...). 메타데이터에는 게시자의 도메인도 포함됩니다. 제공된 URI는 그라운딩된 결과가 생성된 후 30일 동안 액세스 가능한 상태로 유지됩니다.

searchEntryPoint 내의 renderedContent 필드는 Google 검색 추천을 구현하기 위해 제공된 코드입니다. 자세한 내용은 Google 검색 추천 사용을 참고하세요.