Dựa trên kết quả của Google Tìm kiếm

Tính năng Dựa trên kết quả của Google Tìm kiếm kết nối mô hình Gemini với nội dung trên web theo thời gian thực và hoạt động với tất cả các ngôn ngữ hiện có. Điều này cho phép Gemini đưa ra câu trả lời chính xác hơn và trích dẫn các nguồn có thể xác minh ngoài điểm cắt kiến thức.

Tính năng liên kết thực tế giúp bạn xây dựng các ứng dụng có thể:

  • Tăng độ chính xác về thông tin thực tế: Giảm tình trạng ảo tưởng của mô hình bằng cách dựa vào thông tin thực tế để đưa ra câu trả lời.
  • Truy cập thông tin theo thời gian thực: Trả lời các câu hỏi về những sự kiện và chủ đề gần đây.
  • Cung cấp thông tin trích dẫn: Xây dựng niềm tin của người dùng bằng cách cho thấy nguồn của các tuyên bố của mô hình.

Python

from google import genai

client = genai.Client()

interaction = client.interactions.create(
    model="gemini-3-flash-preview",
    input="Who won the euro 2024?",
    tools=[{"type": "google_search"}]
)

# Print the model's text response
for step in interaction.steps:
    if step.type == "model_output":
        for content_block in step.content:
            if content_block.type == "text":
                print(content_block.text)

JavaScript

import { GoogleGenAI } from "@google/genai";

const client = new GoogleGenAI({});

const interaction = await client.interactions.create({
    model: "gemini-3-flash-preview",
    input: "Who won the euro 2024?",
    tools: [{ type: "google_search" }]
});

const modelStep = interaction.steps.find(s => s.type === 'model_output');
if (modelStep) {
  for (const contentBlock of modelStep.content) {
    if (contentBlock.type === 'text') console.log(contentBlock.text);
  }
}

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-3-flash-preview",
    "input": "Who won the euro 2024?",
    "tools": [{"type": "google_search"}]
  }'

Cách hoạt động của tính năng Dựa trên kết quả của Google Tìm kiếm

Khi bạn bật công cụ google_search, mô hình sẽ tự động xử lý toàn bộ quy trình tìm kiếm, xử lý và trích dẫn thông tin.

grounding-overview

  1. Câu lệnh của người dùng: Ứng dụng của bạn gửi câu lệnh của người dùng đến Gemini API khi bật công cụ google_search.
  2. Phân tích câu lệnh: Mô hình phân tích câu lệnh và xác định xem Google Tìm kiếm có thể cải thiện câu trả lời hay không.
  3. Google Tìm kiếm: Nếu cần, mô hình sẽ tự động tạo một hoặc nhiều cụm từ tìm kiếm và thực hiện các cụm từ đó.
  4. Xử lý kết quả tìm kiếm: Mô hình xử lý kết quả tìm kiếm, tổng hợp thông tin và đưa ra câu trả lời.
  5. Câu trả lời có căn cứ: API trả về một câu trả lời cuối cùng, thân thiện với người dùng và dựa trên kết quả tìm kiếm. Phản hồi này bao gồm câu trả lời bằng văn bản của mô hình có annotations cùng dòng chứa các trích dẫn, cũng như các bước google_search_callgoogle_search_result với cụm từ tìm kiếm và cụm từ tìm kiếm được đề xuất.

Tìm hiểu về phản hồi liên kết thực tế

Khi một câu trả lời được liên kết thực tế thành công, đầu ra văn bản của mô hình sẽ bao gồm annotations cùng dòng ngay trên khối nội dung văn bản. Những chú thích này cung cấp thông tin trích dẫn, liên kết các phần của câu trả lời với nguồn của chúng.

{
  "steps": [
    {
      "type": "thought",
      "summary": [
        {
          "type": "text",
          "text": "The user is asking for the winner of Euro 2024. I need to search for the result of the Euro 2024 final."
        }
      ],
      "signature": "CoMDAXLI2nynRYojJIy6B1Jh9os2crpWLfB0..."
    },
    {
      "type": "google_search_call",
      "arguments": {
        "queries": ["UEFA Euro 2024 winner"]
      }
    },
    {
      "type": "google_search_result",
      "call_id": "search_001",
      "result": [
        {
          "search_suggestions": "<!-- HTML and CSS for the search widget -->"
        }
      ]
    },
    {
      "type": "model_output",
      "content": [
        {
          "type": "text",
          "text": "Spain won Euro 2024, defeating England 2-1 in the final. This victory marks Spain's record fourth European Championship title.",
          "annotations": [
            {
              "type": "url_citation",
              "url": "https://www.aljazeera.com/sports/euro-2024-final",
              "title": "aljazeera.com",
              "start_index": 0,
              "end_index": 56
            },
            {
              "type": "url_citation",
              "url": "https://www.uefa.com/euro2024/news/spain-wins-euro-2024",
              "title": "uefa.com",
              "start_index": 57,
              "end_index": 124
            }
          ]
        }
      ]
    }
  ]
}

Các trường khoá trong phản hồi:

  • google_search_call : Chứa cụm từ tìm kiếm queries mà mô hình đã thực thi.
  • google_search_result : Chứa search_suggestions, một đoạn mã HTML để hiển thị các đề xuất tìm kiếm trong giao diện người dùng của bạn. Các yêu cầu đầy đủ về việc sử dụng được nêu chi tiết trong Điều khoản dịch vụ.
  • text với annotations : Câu trả lời do mô hình tổng hợp có trích dẫn nội dòng. Mỗi chú thích url_citation liên kết một đoạn văn bản (do start_indexend_index xác định) với một URL nguồn. Đây là chìa khoá để tạo lời trích dẫn cùng dòng.

Bạn cũng có thể sử dụng tính năng Dựa trên kết quả của Google Tìm kiếm kết hợp với công cụ ngữ cảnh URL để liên kết thực tế các câu trả lời bằng cả dữ liệu trên web công khai và các URL cụ thể mà bạn cung cấp.

Ghi nguồn bằng trích dẫn cùng dòng

API này trả về chú thích url_citation nội tuyến trên khối nội dung văn bản, giúp bạn hoàn toàn kiểm soát cách hiển thị nguồn trong giao diện người dùng. Mỗi chú thích đều có start_indexend_index để xác định phần văn bản mà chú thích đó trích dẫn. Sau đây là cách trích xuất và hiển thị các giá trị này.

Python

for step in interaction.steps:
    if step.type == "model_output":
        for content_block in step.content:
            if content_block.type == "text":
                print(content_block.text)
                if content_block.annotations:
                    print("\nCitations:")
                    for annotation in content_block.annotations:
                        if annotation.type == "url_citation":
                            cited_text = content_block.text[annotation.start_index:annotation.end_index]
                            print(f"  [{annotation.title}]({annotation.url})")
                            print(f"    Cited text: \"{cited_text}\"")

JavaScript

for (const step of interaction.steps) {
  if (step.type === 'model_output') {
    for (const contentBlock of step.content) {
      if (contentBlock.type === 'text') {
        console.log(contentBlock.text);
        if (contentBlock.annotations) {
          console.log("\nCitations:");
          for (const annotation of contentBlock.annotations) {
            if (annotation.type === 'url_citation') {
              const citedText = contentBlock.text.slice(annotation.startIndex, annotation.endIndex);
              console.log(`  [${annotation.title}](${annotation.url})`);
              console.log(`    Cited text: "${citedText}"`);
            }
          }
        }
      }
    }
  }
}

Đầu ra sẽ hiển thị văn bản kèm theo lời trích dẫn:

Spain won Euro 2024, defeating England 2-1 in the final. This victory marks Spain's record fourth European Championship title.

Citations:
  [aljazeera.com](https://www.aljazeera.com/sports/euro-2024-final)
    Cited text: "Spain won Euro 2024, defeating England 2-1 in the final."
  [uefa.com](https://www.uefa.com/euro2024/news/spain-wins-euro-2024)
    Cited text: "This victory marks Spain's record fourth European Championship title."

Giá

Khi bạn sử dụng tính năng Dựa trên kết quả của Google Tìm kiếm với Gemini 3, dự án của bạn sẽ bị tính phí cho mỗi cụm từ tìm kiếm mà mô hình quyết định thực hiện. Nếu mô hình quyết định thực hiện nhiều cụm từ tìm kiếm để trả lời một câu lệnh duy nhất (ví dụ: tìm kiếm "UEFA Euro 2024 winner""Spain vs England Euro 2024 final score" trong cùng một lệnh gọi API), thì điều này được tính là hai lần sử dụng công cụ có tính phí cho yêu cầu đó. Để tính phí, chúng tôi bỏ qua các cụm từ tìm kiếm trống trên web khi tính số lượng cụm từ tìm kiếm riêng biệt. Mô hình tính phí này chỉ áp dụng cho các mô hình Gemini 3; khi bạn sử dụng tính năng liên kết thực tế với kết quả tìm kiếm với Gemini 2.5 hoặc các mô hình cũ hơn, dự án của bạn sẽ được tính phí theo từng câu lệnh.

Để biết thông tin chi tiết về giá, hãy xem trang định giá Gemini API.

Mô hình được hỗ trợ

Bạn có thể xem toàn bộ các chức năng trên trang tổng quan về mô hình.

Mô hình Dựa trên kết quả của Google Tìm kiếm
Bản xem trước hình ảnh Gemini 3.1 Flash ✔️
Bản xem trước Gemini 3.1 Pro ✔️
Bản xem trước hình ảnh của Gemini 3 Pro ✔️
Bản xem trước Gemini 3 Flash ✔️
Gemini 2.5 Pro ✔️
Gemini 2.5 Flash ✔️
Gemini 2.5 Flash-Lite ✔️
Gemini 2.0 Flash ✔️

Các tổ hợp công cụ được hỗ trợ

Bạn có thể sử dụng tính năng Dựa trên kết quả của Google Tìm kiếm cùng với các công cụ khác như thực thi mãbối cảnh URL để hỗ trợ các trường hợp sử dụng phức tạp hơn.

Các mô hình Gemini 3 hỗ trợ kết hợp các công cụ tích hợp sẵn (như tính năng Nền tảng kiến thức với Google Tìm kiếm) với các công cụ tuỳ chỉnh (lệnh gọi hàm). Tìm hiểu thêm trên trang các tổ hợp công cụ.

Bước tiếp theo

  • Tìm hiểu về các công cụ khác hiện có, chẳng hạn như Gọi hàm.
  • Tìm hiểu cách tăng cường câu lệnh bằng các URL cụ thể bằng công cụ bối cảnh URL.