Bạn có thể sử dụng tính năng Tìm kiếm thông tin cơ bản trên Google trong Gemini API và AI Studio để cải thiện độ chính xác và mức độ mới của câu trả lời từ mô hình. Ngoài các câu trả lời thực tế hơn, khi bạn bật tính năng Nền tảng bằng Google Tìm kiếm, API Gemini sẽ trả về các nguồn nền tảng (đường liên kết hỗ trợ nội tuyến) và Đề xuất của Google Tìm kiếm cùng với nội dung phản hồi. Nội dung đề xuất tìm kiếm sẽ hướng người dùng đến kết quả tìm kiếm tương ứng với câu trả lời dựa trên dữ liệu thực tế.
Tính năng Làm dịu bằng Google Tìm kiếm chỉ hỗ trợ câu lệnh dạng văn bản. API này không hỗ trợ lời nhắc đa phương thức (văn bản và hình ảnh, văn bản và âm thanh, v.v.). Tính năng Tìm thông tin cơ bản bằng Google Tìm kiếm hỗ trợ tất cả ngôn ngữ có sẵn cho các mẫu Gemini.
Hướng dẫn này sẽ giúp bạn bắt đầu làm quen với Google Tìm kiếm bằng một trong các SDK Gemini API hoặc API REST.
Định cấu hình mô hình để sử dụng Google Tìm kiếm
Vì sao tính năng Nối đất bằng Google Tìm kiếm lại hữu ích?
Trong AI tạo sinh, định hướng (grounding) đề cập đến quá trình kết nối mô hình với các nguồn thông tin có thể xác minh. Các nguồn này có thể cung cấp thông tin về nơi làm việc trong thế giới thực hoặc ngữ cảnh cụ thể khác. Quá trình tiếp đất giúp cải thiện độ chính xác, độ tin cậy và tính hữu ích của dữ liệu đầu ra do AI tạo.
Việc liên kết với thực tế đặc biệt quan trọng đối với các câu lệnh yêu cầu thông tin mới nhất trên web. Khi sử dụng tính năng liên kết, mô hình có thể truy cập thông tin sau ngày cắt bớt kiến thức, lấy nguồn thông tin và trả lời các câu hỏi mà nếu không có tính năng này thì mô hình không thể trả lời chính xác.
Khi sử dụng Google AI Studio hoặc Gemini API, bạn có thể đưa đầu ra của mô hình vào Google Tìm kiếm. Việc nối tiếp với Google Tìm kiếm mang lại những lợi ích sau:
- Cho phép các câu trả lời của mô hình được liên kết với nội dung cụ thể.
- Giảm tình trạng ảo tưởng về mô hình, trong đó mô hình tạo ra nội dung không có thật.
- Neo lập mô hình câu trả lời cho các nguồn mà người dùng có thể nhấp vào và mở.
- Tăng cường độ tin cậy và khả năng áp dụng của nội dung được tạo.
Khi sử dụng cơ sở hạ tầng với Google Tìm kiếm, bạn đang kết nối mô hình này với các kết quả tìm kiếm đáng tin cậy trên Internet một cách hiệu quả. Vì các câu trả lời của mô hình không dựa trên thực tế dựa trên các mẫu đã học, nên bạn có thể không nhận được câu trả lời thực tế cho các câu lệnh về các sự kiện hiện tại (ví dụ: yêu cầu thông tin dự báo thời tiết hoặc tỷ số cuối cùng của một trận đấu bóng đá gần đây). Vì Internet cung cấp quyền truy cập vào thông tin mới, nên câu lệnh dựa trên thực tế có thể tạo ra các câu trả lời mới nhất, kèm theo nguồn được trích dẫn.
Dưới đây là ví dụ so sánh phản hồi không được nối đất và phản hồi được nối đất được tạo bằng API. (Câu trả lời được tạo vào tháng 10 năm 2024.)
Gemini không có nền tảng vững chắc | Tiếp nối với Google Tìm kiếm |
---|---|
Câu lệnh: Đội nào đã giành chiến thắng trong giải Super Bowl năm nay? Phản hồi: Đội Kansas City Chiefs đã giành chiến thắng trong Super Bowl LVII năm nay (2023). |
Câu lệnh: Đội nào đã giành chiến thắng trong giải Super Bowl năm nay? Phản hồi: Đội Kansas City Chiefs đã giành chiến thắng trong Super Bowl LVIII năm nay, đánh bại San Francisco 49ers trong hiệp phụ với tỷ số 25-22. |
Trong câu trả lời không có cơ sở, mô hình đề cập đến chiến thắng của Kansas City Chiefs trong Super Bowl 2023. Trong câu trả lời dựa trên thực tế, mô hình tham chiếu chính xác đến chiến thắng gần đây hơn của họ vào năm 2024.
Hình ảnh sau đây cho thấy giao diện của một câu trả lời dựa trên dữ liệu thực tế trong AI Studio.
Đề xuất của Google Tìm kiếm
Để sử dụng tính năng Nối đất với Google Tìm kiếm, bạn phải hiển thị Đề xuất của Google Tìm kiếm. Đây là các cụm từ tìm kiếm đề xuất có trong siêu dữ liệu của phản hồi dựa trên cơ sở. Để tìm hiểu thêm về các yêu cầu về hiển thị, hãy xem bài viết Sử dụng tính năng Cụm từ tìm kiếm được đề xuất của Google.
Truy xuất động
Một số cụm từ tìm kiếm có thể hưởng lợi nhiều hơn từ tính năng Làm quen với Google Tìm kiếm so với các cụm từ tìm kiếm khác. Tính năng truy xuất động giúp bạn có thêm quyền kiểm soát đối với thời điểm sử dụng tính năng Làm quen với Google Tìm kiếm.
Nếu không chỉ định chế độ truy xuất động, thì tính năng Nối đất bằng Google Tìm kiếm sẽ luôn được kích hoạt. Nếu chế độ được đặt thành động, mô hình sẽ quyết định thời điểm sử dụng tính năng nối đất dựa trên ngưỡng mà bạn có thể định cấu hình. Ngưỡng là một giá trị dấu phẩy động trong khoảng [0,1] và mặc định là 0,3. Nếu giá trị ngưỡng là 0, thì phản hồi luôn dựa trên Google Tìm kiếm; nếu là 1 thì không bao giờ được phản hồi.
Cách hoạt động của tính năng truy xuất động
Bạn có thể sử dụng tính năng truy xuất động trong yêu cầu để chọn thời điểm bật tính năng Làm quen với Google Tìm kiếm. Điều này rất hữu ích khi câu lệnh không yêu cầu câu trả lời dựa trên Google Tìm kiếm và mô hình có thể cung cấp câu trả lời dựa trên kiến thức riêng mà không cần căn cứ. Điều này giúp bạn quản lý độ trễ, chất lượng và chi phí hiệu quả hơn.
Trước khi gọi cấu hình truy xuất động trong yêu cầu, hãy hiểu các thuật ngữ sau:
Điểm dự đoán: Khi bạn yêu cầu câu trả lời dựa trên thực tế, Gemini sẽ chỉ định một điểm dự đoán cho câu lệnh. Điểm dự đoán là một giá trị dấu phẩy động trong phạm vi [0,1]. Giá trị của thông tin này phụ thuộc vào việc liệu câu lệnh có thể hưởng lợi từ việc dựa vào câu trả lời bằng thông tin mới nhất từ Google Tìm kiếm hay không. Do đó, nếu một câu lệnh yêu cầu câu trả lời dựa trên các dữ kiện mới nhất trên web, thì câu lệnh đó sẽ có điểm dự đoán cao hơn. Câu lệnh mà câu trả lời do mô hình tạo ra là đủ sẽ có điểm dự đoán thấp hơn.
Dưới đây là ví dụ về một số câu lệnh và điểm dự đoán của các câu lệnh đó.
Câu lệnh Điểm dự đoán Bình luận "Viết bài thơ về hoa mẫu đơn" 0,13 Mô hình này có thể dựa vào kiến thức của mình và câu trả lời không cần căn cứ. "Đề xuất đồ chơi cho trẻ 2 tuổi" 0,36 Mô hình có thể dựa vào kiến thức của nó và câu trả lời không cần có cơ sở. "Bạn có thể cho tôi biết công thức làm món guacamole theo phong cách châu Á không?" 0,55 Google Tìm kiếm có thể đưa ra câu trả lời có căn cứ, nhưng không nhất thiết phải có căn cứ; kiến thức về mô hình có thể là đủ. "Trình tạo tác nhân là gì? Việc nối đất được lập hoá đơn như thế nào trong Agent Builder?" 0,72 Yêu cầu Google Tìm kiếm tạo câu trả lời có cơ sở. "Đội nào vô địch giải đua Công thức 1 gần đây nhất?" 0,97 Yêu cầu Google Tìm kiếm tạo câu trả lời có cơ sở. Ngưỡng: Trong yêu cầu API, bạn có thể chỉ định cấu hình truy xuất động bằng một ngưỡng. Ngưỡng là một giá trị dấu phẩy động trong phạm vi [0,1] và mặc định là 0,7. Nếu giá trị ngưỡng bằng 0, thì phản hồi sẽ luôn dựa trên Google Tìm kiếm. Đối với tất cả các giá trị ngưỡng khác, bạn có thể áp dụng các giá trị sau:
- Nếu điểm dự đoán lớn hơn hoặc bằng ngưỡng, thì câu trả lời sẽ được lấy từ Google Tìm kiếm. Ngưỡng thấp hơn có nghĩa là có nhiều câu lệnh có câu trả lời được tạo bằng cơ chế Nối đất của Google Tìm kiếm.
- Nếu điểm dự đoán thấp hơn ngưỡng, mô hình vẫn có thể tạo câu trả lời nhưng không dựa trên Google Tìm kiếm.
Để tìm hiểu cách đặt ngưỡng truy xuất động bằng cách sử dụng SDK hoặc API REST, hãy xem ví dụ về mã thích hợp.
Nếu đang sử dụng AI Studio, bạn có thể đặt ngưỡng truy xuất động bằng cách nhấp vào Chỉnh sửa cơ sở.
Để tìm ngưỡng phù hợp với nhu cầu kinh doanh của mình, bạn có thể tạo một nhóm truy vấn đại diện mà bạn dự kiến sẽ gặp phải. Sau đó, bạn có thể sắp xếp các truy vấn theo điểm số dự đoán trong phản hồi và chọn một ngưỡng phù hợp cho trường hợp sử dụng của mình.
Một câu trả lời có căn cứ
Nếu câu lệnh của bạn liên kết thành công với Google Tìm kiếm, thì câu trả lời sẽ bao gồm groundingMetadata
. Một phản hồi dựa trên dữ liệu thực tế có thể có dạng như sau (để ngắn gọn, chúng tôi đã bỏ qua một số phần của phản hồi):
{
"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"
]
}
}
],
...
}
Nếu phản hồi không bao gồm groundingMetadata
, thì tức là phản hồi không được kết nối đất thành công. Có một số lý do có thể dẫn đến việc này, bao gồm cả mức độ liên quan của nguồn thấp hoặc thông tin không đầy đủ trong phản hồi của mô hình.
Khi một kết quả có căn cứ được tạo, siêu dữ liệu sẽ chứa các URI chuyển hướng đến nhà xuất bản của nội dung được dùng để tạo kết quả có căn cứ.
Các URI này chứa miền con vertexaisearch
, như trong ví dụ bị cắt ngắn sau:
https://vertexaisearch.cloud.google.com/grounding-api-redirect/...
. Ngoài ra, siêu dữ liệu cũng chứa các miền của nhà xuất bản. Bạn vẫn có thể truy cập vào các URI được cung cấp trong 30 ngày sau khi kết quả được tạo.
Trường renderedContent
trong searchEntryPoint
là mã được cung cấp để triển khai Đề xuất tìm kiếm của Google. Hãy xem bài viết Sử dụng tính năng đề xuất của Google Tìm kiếm để tìm hiểu thêm.