Google Maps-এর মাধ্যমে গ্রাউন্ডিং

Grounding with Google Maps, Gemini-র জেনারেটিভ ক্ষমতাকে Google Maps-এর সমৃদ্ধ, ফ্যাকচুয়াল এবং আপ-টু-ডেট ডেটার সাথে কানেক্ট করে। এই ফিচার ডেভেলপারদের তাদের অ্যাপ্লিকেশনে লোকেশন-অ্যাওয়ার কার্যকারিতা সহজেই অন্তর্ভুক্ত করতে দেয়। ব্যবহারকারীর কোয়েরিতে Maps ডেটা সম্পর্কিত কোনও প্রসঙ্গ থাকলে, Gemini মডেল Google Maps-এর সুবিধা নেয় যাতে ব্যবহারকারীর নির্দিষ্ট করা লোকেশন বা সাধারণ এলাকার সাথে প্রাসঙ্গিক ফ্যাকচুয়ালি সঠিক ও আপ-টু-ডেট উত্তর দেওয়া যায়।

  • সঠিক, লোকেশন-সচেতন উত্তর: ভৌগোলিকভাবে নির্দিষ্ট কোয়েরির জন্য Google Maps-এর বিস্তৃত এবং বর্তমান ডেটা ব্যবহার করুন।
  • আরও উন্নত পছন্দমতো অভিজ্ঞতা: ব্যবহারকারীর দেওয়া লোকেশনের উপর ভিত্তি করে সাজেশন ও তথ্য কাস্টমাইজ করা।

শুরু করুন

এই উদাহরণটি দেখায় যে কীভাবে আপনার অ্যাপ্লিকেশনে Grounding with Google Maps ইন্টিগ্রেট করতে হয়, যাতে ব্যবহারকারীর প্রশ্নের সঠিক এবং লোকেশন-প্রাসঙ্গিক উত্তর দেওয়া যায়। প্রম্পটে ঐচ্ছিক ব্যবহারকারীর লোকেশন সহ স্থানীয় সাজেশন চাওয়া হয়েছে, এর ফলে Gemini মডেল Google Maps ডেটা ব্যবহার করতে পারবে।

Python

from google import genai
from google.genai import types

client = genai.Client()

prompt = "What are the best Italian restaurants within a 15-minute walk from here?"

response = client.models.generate_content(
    model='gemini-3.8-flash',
    contents=prompt,
    config=types.GenerateContentConfig(
        # Turn on grounding with Google Maps
        tools=[types.Tool(google_maps=types.GoogleMaps())],
        # Optionally provide the relevant location context (this is in Los Angeles)
        tool_config=types.ToolConfig(retrieval_config=types.RetrievalConfig(
            lat_lng=types.LatLng(
                latitude=34.050481, longitude=-118.248526))),
    ),
)

print("Generated Response:")
print(response.text)

if grounding := response.candidates[0].grounding_metadata:
  if grounding.grounding_chunks:
    print('-' * 40)
    print("Sources:")
    for chunk in grounding.grounding_chunks:
      print(f'- [{chunk.maps.title}]({chunk.maps.uri})')

জাভাস্ক্রিপ্ট

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

const ai = new GoogleGenAI({});

async function generateContentWithMapsGrounding() {
  const response = await ai.models.generateContent({
    model: "gemini-3.8-flash",
    contents: "What are the best Italian restaurants within a 15-minute walk from here?",
    config: {
      // Turn on grounding with Google Maps
      tools: [{ googleMaps: {} }],
      toolConfig: {
        retrievalConfig: {
          // Optionally provide the relevant location context (this is in Los Angeles)
          latLng: {
            latitude: 34.050481,
            longitude: -118.248526,
          },
        },
      },
    },
  });

  console.log("Generated Response:");
  console.log(response.text);

  const grounding = response.candidates[0]?.groundingMetadata;
  if (grounding?.groundingChunks) {
    console.log("-".repeat(40));
    console.log("Sources:");
    for (const chunk of grounding.groundingChunks) {
      if (chunk.maps) {
        console.log(`- [${chunk.maps.title}](${chunk.maps.uri})`);
      }
    }
  }
}

generateContentWithMapsGrounding();

বিশ্রাম

curl -X POST 'https://generativelanguage.googleapis.com/v1beta/models/gemini-3.8-flash:generateContent' \
  -H 'Content-Type: application/json' \
  -H "x-goog-api-key: ${GEMINI_API_KEY}" \
  -d '{
  "contents": [{
    "role": "user",
    "parts": [{
      "text": "What are the best Italian restaurants within a 15-minute walk from here?"
    }]
  }],
  "tools": [{"googleMaps": {}}],
  "toolConfig": {
    "retrievalConfig": {
      "latLng": {"latitude": 34.050481, "longitude": -118.248526}
    }
  }
}'

Grounding with Google Maps কীভাবে কাজ করে

Google Maps-এর সাথে গ্রাউন্ডিং, গ্রাউন্ডিং সোর্স হিসেবে Maps API ব্যবহার করে Google Geo ইকোসিস্টেমের সাথে Gemini API ইন্টিগ্রেট করে। ব্যবহারকারীর কোয়েরিতে ভৌগোলিক প্রসঙ্গ থাকলে, Gemini মডেল Google Maps টুলের মাধ্যমে গ্রাউন্ডিং ইনভোক করতে পারে। মডেলটি তখন প্রদত্ত লোকেশনের সাথে প্রাসঙ্গিক Google Maps ডেটার উপর ভিত্তি করে উত্তর তৈরি করতে পারে।

এই প্রসেসে সাধারণত এগুলি অন্তর্ভুক্ত থাকে:

  1. ব্যবহারকারীর কোয়েরি: কোনও ব্যবহারকারী আপনার অ্যাপ্লিকেশনে কোয়েরি জমা দেন, এতে সম্ভাব্যভাবে ভৌগোলিক প্রসঙ্গ (যেমন, "আমার কাছাকাছি কফি শপ", "সান ফ্রান্সিসকোর মিউজিয়াম") অন্তর্ভুক্ত থাকে।
  2. টুল ইনভোকেশন: Gemini মডেল, ভৌগোলিক উদ্দেশ্য শনাক্ত করে, Grounding with Google Maps টুল ইনভোক করে। এই টুলটি ঐচ্ছিকভাবে ব্যবহারকারীর latitude ও longitude-এর সাথে প্রদান করা যেতে পারে। এই টুলটি একটি টেক্সচুয়াল সার্চ টুল এবং Maps-এ সার্চ করার মতোই কাজ করে, যেখানে স্থানীয় কোয়েরি ("আমার কাছাকাছি") কোঅর্ডিনেট ব্যবহার করবে, তবে নির্দিষ্ট বা স্থানীয় নয় এমন কোয়েরি নির্দিষ্ট লোকেশন দ্বারা প্রভাবিত হওয়ার সম্ভাবনা কম।
  3. ডেটা রিট্রিভ করা: Grounding with Google Maps পরিষেবা প্রাসঙ্গিক তথ্যের (যেমন, জায়গা, রিভিউ, ফটো, ঠিকানা, খোলা থাকার সময়) জন্য Google Maps-এ কোয়েরি করে।
  4. গ্রাউন্ডেড জেনারেশন: Gemini মডেলের উত্তর দেওয়ার সময় Maps থেকে পাওয়া ডেটা ব্যবহার করা হয়, এর ফলে উত্তরটি ফ্যাকচুয়ালি সঠিক ও প্রাসঙ্গিক হয়।
  5. উত্তর: মডেলটি একটি টেক্সট উত্তর প্রদান করে, যার মধ্যে Google Maps সোর্সের উদ্ধৃতি অন্তর্ভুক্ত থাকে।

Google Maps-এর সাথে গ্রাউন্ডিং কেন ও কখন ব্যবহার করতে হয়

Grounding with Google Maps সেইসব অ্যাপ্লিকেশনের জন্য আদর্শ যেগুলির জন্য সঠিক, আপ-টু-ডেট এবং লোকেশন-নির্দিষ্ট তথ্য প্রয়োজন। এটি ব্যবহারকারীর অভিজ্ঞতাকে আরও উন্নত করে কারণ এটি প্রাসঙ্গিক ও পছন্দমতো কন্টেন্ট প্রদান করে। এই কন্টেন্ট Google Maps-এর বিশ্বজুড়ে ২৫০ মিলিয়নেরও বেশি জায়গার বিশাল ডেটাবেস থেকে নেওয়া হয়।

আপনার অ্যাপ্লিকেশনের এগুলি প্রয়োজন হলে, আপনাকে Grounding with Google Maps ব্যবহার করতে হবে:

  • ভৌগোলিক অবস্থান-নির্দিষ্ট প্রশ্নের সম্পূর্ণ ও সঠিক উত্তর দাও।
  • কথোপকথনমূলক ট্রিপ প্ল্যানার এবং স্থানীয় গাইড তৈরি করুন।
  • লোকেশন এবং ব্যবহারকারীর পছন্দ, যেমন রেস্তোরাঁ বা দোকানের উপর ভিত্তি করে উল্লেখযোগ্য স্থানের সাজেশন দেওয়া।
  • সোশ্যাল, রিটেল বা খাবার ডেলিভারি পরিষেবার জন্য লোকেশন-সচেতন অভিজ্ঞতা তৈরি করুন।

Grounding with Google Maps সেইসব ক্ষেত্রে খুব ভালো কাজ করে যেখানে কাছাকাছি থাকা এবং বর্তমান ফ্যাকচুয়াল ডেটা খুবই গুরুত্বপূর্ণ, যেমন "আমার কাছাকাছি সেরা কফি শপ" খোঁজা বা দিকনির্দেশ পাওয়া।

API পদ্ধতি ও প্যারামিটার

Google Maps-এর মাধ্যমে গ্রাউন্ডিং, Gemini API-এর মাধ্যমে generateContent মেথডের মধ্যে একটি টুল হিসেবে এক্সপোজ করা হয়। আপনার অনুরোধের tools প্যারামিটারে একটি googleMaps অবজেক্ট যোগ করে আপনি Google Maps-এর মাধ্যমে গ্রাউন্ডিং চালু ও কনফিগার করেন।

JSON

{
  "contents": [{
    "parts": [
      {"text": "Restaurants near Times Square."}
    ]
  }],
  "tools":  { "googleMaps": {} }
}

এছাড়াও, টুলটি প্রাসঙ্গিক লোকেশন toolConfig হিসেবে পাস করার সুবিধা দেয়।

JSON

{
  "contents": [{
    "parts": [
      {"text": "Restaurants near here."}
    ]
  }],
  "tools":  { "googleMaps": {} },
  "toolConfig":  {
    "retrievalConfig": {
      "latLng": {
        "latitude": 40.758896,
        "longitude": -73.985130
      }
    }
  }
}

গ্রাউন্ডিং উত্তর সম্পর্কে বোঝা

Google Maps ডেটার সাথে কোনও উত্তর সফলভাবে গ্রাউন্ড করা হলে, উত্তরে groundingMetadata ফিল্ড অন্তর্ভুক্ত থাকে। এই স্ট্রাকচার্ড ডেটা দাবি যাচাই করা এবং আপনার অ্যাপ্লিকেশনে একটি সমৃদ্ধ উদ্ধৃতি অভিজ্ঞতা তৈরি করার পাশাপাশি পরিষেবার ব্যবহারের প্রয়োজনীয়তা পূরণ করার জন্য অপরিহার্য।

JSON

{
  "candidates": [
    {
      "content": {
        "parts": [
          {
            "text": "CanteenM is an American restaurant with..."
          }
        ],
        "role": "model"
      },
      "groundingMetadata": {
        "groundingChunks": [
          {
            "maps": {
              "uri": "https://maps.google.com/?cid=13100894621228039586",
              "title": "Heaven on 7th Marketplace",
              "placeId": "places/ChIJ0-zA1vBZwokRon0fGj-6z7U"
            },
            // repeated ...
          }
        ],
        "groundingSupports": [
          {
            "segment": {
              "startIndex": 0,
              "endIndex": 79,
              "text": "CanteenM is an American restaurant with a 4.6-star rating and is open 24 hours."
            },
            "groundingChunkIndices": [0]
          },
          // repeated ...
        ],
        "webSearchQueries": [
          "restaurants near me"
        ]
      }
    }
  ]
}

Gemini API নিম্নলিখিত তথ্য সহ groundingMetadata রিটার্ন করে:

  • groundingChunks: maps সোর্স (uri, placeId এবং title) সহ অবজেক্টের অ্যারে।
  • groundingSupports: groundingChunks-এ সোর্সের সাথে মডেলের উত্তর টেক্সট কানেক্ট করার জন্য চাঙ্কের অ্যারে। প্রতিটি চাঙ্ক একটি টেক্সট স্প্যানকে (startIndex এবং endIndex দ্বারা সংজ্ঞায়িত) এক বা একাধিক groundingChunkIndices-এর সাথে লিঙ্ক করে। ইনলাইন উদ্ধৃতি তৈরি করার মূল চাবিকাঠি হল এটি।

টেক্সটে কীভাবে ইনলাইন উদ্ধৃতি রেন্ডার করতে হয় তা দেখানোর জন্য কোড স্নিপেট পেতে, Google Search ডকুমেন্ট সহ গ্রাউন্ডিংয়ে উদাহরণ দেখুন।

যেসব ক্ষেত্রে ব্যবহার করা যাবে

Grounding with Google Maps বিভিন্ন ধরনের লোকেশন-সচেতন ব্যবহারের ক্ষেত্রে সহায়তা করে। নিম্নলিখিত উদাহরণগুলি দেখায় যে কীভাবে বিভিন্ন প্রম্পট এবং প্যারামিটার Grounding with Google Maps-এর সুবিধা নিতে পারে। Google Maps-এর গ্রাউন্ডেড ফলাফলে দেখানো তথ্য আসল পরিস্থিতির থেকে আলাদা হতে পারে।

জায়গা-নির্দিষ্ট প্রশ্নের উত্তর দেওয়া

Google ব্যবহারকারীর রিভিউ এবং অন্যান্য Maps ডেটার উপর ভিত্তি করে উত্তর পেতে কোনও নির্দিষ্ট জায়গা সম্পর্কে বিস্তারিত প্রশ্ন জিজ্ঞাসা করুন।

Python

from google import genai
from google.genai import types

client = genai.Client()

prompt = "Is there a cafe near the corner of 1st and Main that has outdoor seating?"

response = client.models.generate_content(
    model='gemini-3.8-flash',
    contents=prompt,
    config=types.GenerateContentConfig(
        # Turn on the Maps tool
        tools=[types.Tool(google_maps=types.GoogleMaps())],

        # Provide the relevant location context (this is in Los Angeles)
        tool_config=types.ToolConfig(retrieval_config=types.RetrievalConfig(
            lat_lng=types.LatLng(
                latitude=34.050481, longitude=-118.248526))),
    ),
)

print("Generated Response:")
print(response.text)

if grounding := response.candidates[0].grounding_metadata:
  if chunks := grounding.grounding_chunks:
    print('-' * 40)
    print("Sources:")
    for chunk in chunks:
      print(f'- [{chunk.maps.title}]({chunk.maps.uri})')
  ```

Javascript

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

const ai = new GoogleGenAI({});

async function run() {
  const prompt = "Is there a cafe near the corner of 1st and Main that has outdoor seating?";

  const response = await ai.models.generateContent({
    model: 'gemini-3.8-flash',
    contents: prompt,
    config: {
      // Turn on the Maps tool
      tools: [{googleMaps: {}}],
      // Provide the relevant location context (this is in Los Angeles)
      toolConfig: {
        retrievalConfig: {
          latLng: {
            latitude: 34.050481,
            longitude: -118.248526
          }
        }
      }
    },
  });

  console.log("Generated Response:");
  console.log(response.text);

  const chunks = response.candidates[0].groundingMetadata?.groundingChunks;
  if (chunks) {
    console.log('-'.repeat(40));
    console.log("Sources:");
    for (const chunk of chunks) {
      if (chunk.maps) {
        console.log(`- [${chunk.maps.title}](${chunk.maps.uri})`);
      }
    }
  }
}

run();

বিশ্রাম

curl -X POST 'https://generativelanguage.googleapis.com/v1beta/models/gemini-3.8-flash:generateContent' \
  -H 'Content-Type: application/json' \
  -H "x-goog-api-key: ${GEMINI_API_KEY}" \
  -d '{
  "contents": [{
    "role": "user",
    "parts": [{
      "text": "Is there a cafe near the corner of 1st and Main that has outdoor seating?"
    }]
  }],
  "tools": [{"googleMaps": {}}],
  "toolConfig": {
    "retrievalConfig": {
      "latLng": {"latitude": 34.050481, "longitude": -118.248526}
    }
  }
}'

লোকেশন-ভিত্তিক পছন্দমতো অভিজ্ঞতা প্রদান করা

ব্যবহারকারীর পছন্দ এবং নির্দিষ্ট ভৌগোলিক এলাকার উপর ভিত্তি করে সাজেশন পান।

Python

from google import genai
from google.genai import types

client = genai.Client()

prompt = "Which family-friendly restaurants near here have the best playground reviews?"

response = client.models.generate_content(
    model='gemini-3.8-flash',
    contents=prompt,
    config=types.GenerateContentConfig(
      tools=[types.Tool(google_maps=types.GoogleMaps())],
      tool_config=types.ToolConfig(retrieval_config=types.RetrievalConfig(
          # Provide the location as context; this is Austin, TX.
          lat_lng=types.LatLng(
              latitude=30.2672, longitude=-97.7431))),
    ),
)

print("Generated Response:")
print(response.text)

if grounding := response.candidates[0].grounding_metadata:
  if chunks := grounding.grounding_chunks:
    print('-' * 40)
    print("Sources:")
    for chunk in chunks:
      print(f'- [{chunk.maps.title}]({chunk.maps.uri})')

Javascript

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

const ai = new GoogleGenAI({});

async function run() {
  const prompt = "Which family-friendly restaurants near here have the best playground reviews?";

  const response = await ai.models.generateContent({
    model: 'gemini-3.8-flash',
    contents: prompt,
    config: {
      tools: [{googleMaps: {}}],
      toolConfig: {
        retrievalConfig: {
          // Provide the location as context; this is Austin, TX.
          latLng: {
            latitude: 30.2672,
            longitude: -97.7431
          }
        }
      }
    },
  });

  console.log("Generated Response:");
  console.log(response.text);

  const chunks = response.candidates[0].groundingMetadata?.groundingChunks;
  if (chunks) {
    console.log('-'.repeat(40));
    console.log("Sources:");
    for (const chunk of chunks) {
      if (chunk.maps) {
        console.log(`- [${chunk.maps.title}](${chunk.maps.uri})`);
      }
    }
  }
}

run();

REST

curl -X POST 'https://generativelanguage.googleapis.com/v1beta/models/gemini-3.8-flash:generateContent' \
  -H 'Content-Type: application/json' \
  -H "x-goog-api-key: ${GEMINI_API_KEY}" \
  -d '{
  "contents": [{
    "role": "user",
    "parts": [{
      "text": "Which family-friendly restaurants near here have the best playground reviews?"
    }],
  }],
  "tools": [{"googleMaps": {}}],
  "toolConfig": {
    "retrievalConfig": {
      "latLng": {"latitude": 30.2672, "longitude": -97.7431}
    }
  }
}'

ভ্রমণসূচী প্ল্যান করতে সাহায্য করা

বিভিন্ন লোকেশন সম্পর্কে দিকনির্দেশ ও তথ্য সহ একাধিক দিনের প্ল্যান তৈরি করুন, যা ট্রাভেল অ্যাপ্লিকেশনের জন্য উপযুক্ত।

Python

from google import genai
from google.genai import types

client = genai.Client()

prompt = "Plan a day in San Francisco for me. I want to see the Golden Gate Bridge, visit a museum, and have a nice dinner."

response = client.models.generate_content(
    model='gemini-3.8-flash',
    contents=prompt,
    config=types.GenerateContentConfig(
      tools=[types.Tool(google_maps=types.GoogleMaps())],
      tool_config=types.ToolConfig(retrieval_config=types.RetrievalConfig(
          # Provide the location as context, this is in San Francisco.
          lat_lng=types.LatLng(
              latitude=37.78193, longitude=-122.40476))),
    ),
)

print("Generated Response:")
print(response.text)

if grounding := response.candidates[0].grounding_metadata:
  if grounding.grounding_chunks:
    print('-' * 40)
    print("Sources:")
    for chunk in grounding.grounding_chunks:
      print(f'- [{chunk.maps.title}]({chunk.maps.uri})')

Javascript

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

const ai = new GoogleGenAI({});

async function run() {
  const prompt = "Plan a day in San Francisco for me. I want to see the Golden Gate Bridge, visit a museum, and have a nice dinner.";

  const response = await ai.models.generateContent({
    model: 'gemini-3.8-flash',
    contents: prompt,
    config: {
      tools: [{googleMaps: {}}],
      toolConfig: {
        retrievalConfig: {
          // Provide the location as context, this is in San Francisco.
          latLng: {
            latitude: 37.78193,
            longitude: -122.40476
          }
        }
      }
    },
  });

  console.log("Generated Response:");
  console.log(response.text);

  const groundingMetadata = response.candidates[0]?.groundingMetadata;
  if (groundingMetadata) {
    if (groundingMetadata.groundingChunks) {
      console.log('-'.repeat(40));
      console.log("Sources:");
      for (const chunk of groundingMetadata.groundingChunks) {
        if (chunk.maps) {
          console.log(`- [${chunk.maps.title}](${chunk.maps.uri})`);
        }
      }
    }
  }
}

run();

REST

curl -X POST 'https://generativelanguage.googleapis.com/v1beta/models/gemini-3.8-flash:generateContent' \
  -H 'Content-Type: application/json' \
  -H "x-goog-api-key: ${GEMINI_API_KEY}" \
  -d '{
  "contents": [{
    "role": "user",
    "parts": [{
      "text": "Plan a day in San Francisco for me. I want to see the Golden Gate Bridge, visit a museum, and have a nice dinner."
    }]
  }],
  "tools": [{"googleMaps": {}}],
  "toolConfig": {
    "retrievalConfig": {
    "latLng": {"latitude": 37.78193, "longitude": -122.40476}
  }
  }
}'

পরিষেবা ব্যবহারের প্রয়োজনীয়তা

এই বিভাগে Grounding with Google Maps-এর জন্য পরিষেবা ব্যবহারের প্রয়োজনীয়তা বর্ণনা করা হয়েছে।

Google Maps সোর্স ব্যবহার করার ব্যাপারে ব্যবহারকারীকে জানান

Google Maps-এর প্রতিটি গ্রাউন্ডেড ফলাফলের সাথে, আপনি প্রতিটি উত্তরের সমর্থনে groundingChunks সোর্স পাবেন। এছাড়াও নিম্নলিখিত মেটাডেটা ফেরত দেওয়া হয়:

  • সোর্স URI
  • শীর্ষক
  • আইডি

Grounding with Google Maps থেকে ফলাফল দেখানোর সময়, আপনাকে অবশ্যই সংশ্লিষ্ট Google Maps সোর্স উল্লেখ করতে হবে এবং আপনার ব্যবহারকারীদের নিম্নলিখিত বিষয়গুলি জানাতে হবে:

  • Google Maps-এর সোর্সগুলি অবশ্যই তৈরি করা কন্টেন্টের ঠিক পরেই থাকতে হবে যা সোর্সগুলি সমর্থন করে। এই জেনারেট করা কন্টেন্টকে Google Maps গ্রাউন্ডেড রেজাল্টও বলা হয়।
  • Google Maps সোর্স অবশ্যই একটি ব্যবহারকারী ইন্টারঅ্যাকশনের মধ্যে দেখার যোগ্য হতে হবে।

Google Maps লিঙ্ক সহ Google Maps সোর্স ডিসপ্লে করা

groundingChunks এবং grounding_chunks.maps.placeAnswerSources.reviewSnippets-এর প্রতিটি সোর্সের জন্য, এই প্রয়োজনীয়তাগুলি অনুসরণ করে একটি লিঙ্কের প্রিভিউ তৈরি করতে হবে:

  • Google Maps টেক্সট অ্যাট্রিবিউশন নির্দেশিকা মেনে Google Maps-এ প্রতিটি সোর্সকে অ্যাট্রিবিউট করুন।
  • উত্তরে দেওয়া সোর্সের নাম দেখান।
  • উত্তরের uri বা googleMapsUri ব্যবহার করে সোর্সে লিঙ্ক করুন।

এইসব ছবিতে সোর্স ও Google Maps লিঙ্ক দেখানোর জন্য ন্যূনতম প্রয়োজনীয়তা দেখানো হয়েছে।

উত্তরের সাথে সোর্স দেখানো প্রম্পট

আপনি সোর্সের ভিউ আড়াল করতে পারবেন।

উত্তর ও সোর্স সহ প্রম্পট আড়াল করা হয়েছে

ঐচ্ছিক: অতিরিক্ত কন্টেন্ট যোগ করে লিঙ্কের প্রিভিউ আরও উন্নত করুন, যেমন:

  • Google Maps টেক্সট অ্যাট্রিবিউশনের আগে একটি Google Maps ফেভিকন যোগ করা হয়।
  • সোর্স URL (og:image) থেকে নেওয়া একটি ফটো।

আমাদের Google Maps ডেটা প্রদানকারী ও তাদের লাইসেন্স শর্তাবলী সম্পর্কে আরও জানতে, Google Maps ও Google Earth-এর আইনি বিজ্ঞপ্তি দেখুন।

Google Maps টেক্সট অ্যাট্রিবিউশন নির্দেশিকা

টেক্সটে Google Maps-এ সোর্স অ্যাট্রিবিউট করার সময়, এইসব নির্দেশিকা অনুসরণ করুন:

  • Google Maps টেক্সট কোনওভাবেই পরিবর্তন করবেন না:
    • Google Maps-এর ক্যাপিটালাইজেশন পরিবর্তন করবেন না।
    • Google Maps একাধিক লাইনে র‍্যাপ করবেন না।
    • Google Maps অন্য ভাষায় লোকালাইজ করবেন না।
    • HTML attribute translate="no" ব্যবহার করে ব্রাউজারকে Google Maps অনুবাদ করা থেকে আটকান।
  • নিচের সারণিতে যেভাবে উল্লেখ করা আছে, Google Maps-এর টেক্সট সেইভাবে স্টাইল করুন:
প্রপার্টি স্টাইল
Font family Roboto. ফন্ট লোড করা ঐচ্ছিক।
Fallback font family আপনার প্রোডাক্টে আগে থেকেই ব্যবহার করা হয়েছে এমন যেকোনও Sans Serif বডি ফন্ট অথবা ডিফল্ট সিস্টেম ফন্ট ইনভোক করতে "Sans-Serif"
Font style সাধারণ
Font weight 400
Font color সাদা, কালো (#1F1F1F) বা ধূসর (#5E5E5E)। ব্যাকগ্রাউন্ডের সাথে অ্যাক্সেসযোগ্য (৪.৫:১) কনট্রাস্ট বজায় রাখুন।
Font size
Spacing সাধারণ

উদাহরণ CSS

নিচের CSS, সাদা বা হালকা ব্যাকগ্রাউন্ডে উপযুক্ত টাইপোগ্রাফিক স্টাইল ও কালার সহ Google Maps রেন্ডার করে।

CSS

@import url('https://fonts.googleapis.com/css2?family=Roboto&display=swap');

.GMP-attribution {

font-family: Roboto, Sans-Serif;
font-style: normal;
font-weight: 400;
font-size: 1rem;
letter-spacing: normal;
white-space: nowrap;
color: #5e5e5e;
}

প্লেস আইডি ও রিভিউ আইডি

Google Maps ডেটার মধ্যে প্লেস আইডি ও রিভিউ আইডি অন্তর্ভুক্ত। আপনি হয়ত নিচের উত্তর সংক্রান্ত ডেটা ক্যাশে, স্টোর ও এক্সপোর্ট করতে পারেন:

  • placeId
  • reviewId

Grounding with Google Maps-এর শর্তাবলীতে ক্যাশিং সংক্রান্ত বিধিনিষেধ প্রযোজ্য নয়।

নিষিদ্ধ অ্যাক্টিভিটি ও অঞ্চল

একটি নিরাপদ এবং নির্ভরযোগ্য প্ল্যাটফর্ম বজায় রাখার জন্য নির্দিষ্ট কন্টেন্ট এবং অ্যাক্টিভিটির জন্য Grounding with Google Maps-এর অতিরিক্ত বিধিনিষেধ রয়েছে। শর্তাবলীতে উল্লেখ করা ব্যবহারের বিধিনিষেধ ছাড়াও:

  • আপনি জরুরি প্রতিক্রিয়া পরিষেবা সহ উচ্চ ঝুঁকিপূর্ণ কার্যকলাপের জন্য Grounding with Google Maps ব্যবহার করবেন না।
  • আপনি নিষিদ্ধ অঞ্চলে Grounding with Google Maps অফার করে এমন অ্যাপ্লিকেশন ডিস্ট্রিবিউট বা মার্কেটিং করবেন না। আরও তথ্যের জন্য, Google Maps Platform-এর নিষিদ্ধ অঞ্চল দেখুন। নিষিদ্ধ অঞ্চলের তালিকা মাঝে মাঝে আপডেট করা হতে পারে।

পেশাদার পদ্ধতি

  • ব্যবহারকারীর লোকেশন প্রদান করুন: সবচেয়ে প্রাসঙ্গিক ও পছন্দমতো উত্তর পেতে, ব্যবহারকারীর লোকেশন জানা থাকলে, সবসময় আপনার googleMapsGrounding কনফিগারেশনে user_location (অক্ষাংশ ও দ্রাঘিমাংশ) অন্তর্ভুক্ত করুন।
  • শেষ ব্যবহারকারীদের জানান: শেষ ব্যবহারকারীদের স্পষ্টভাবে জানান যে তাদের কোয়েরির উত্তর দেওয়ার জন্য Google Maps ডেটা ব্যবহার করা হচ্ছে, বিশেষ করে টুলটি চালু করা থাকলে।
  • লেটেন্সি মনিটর করা: কথোপকথনমূলক অ্যাপ্লিকেশনের ক্ষেত্রে, ব্যবহারকারীর মসৃণ অভিজ্ঞতা বজায় রাখতে, গ্রাউন্ডেড উত্তরের জন্য P95 লেটেন্সি গ্রহণযোগ্য থ্রেশহোল্ডের মধ্যে রয়েছে কিনা তা নিশ্চিত করুন।
  • প্রয়োজন না হলে টগল করে বন্ধ করুন: Google Maps-এর সাথে গ্রাউন্ডিং ডিফল্ট হিসেবে বন্ধ থাকে। পারফর্ম্যান্স ও খরচ অপ্টিমাইজ করতে, কোনও কোয়েরিতে স্পষ্ট ভৌগোলিক প্রসঙ্গ থাকলে তবেই এটি চালু করুন ("tools": [{"googleMaps": {}}])।

সীমাবদ্ধতা

  • ভৌগোলিক পরিধি: Grounding with Google Maps বিশ্বব্যাপী উপলভ্য
  • মডেল সাপোর্ট: যেসব মডেলে কাজ করে বিভাগটি দেখুন।
  • মাল্টিমোডাল ইনপুট/আউটপুট: Google Maps-এর সাথে গ্রাউন্ডিং বর্তমানে টেক্সট ছাড়া অন্য কোনও মাল্টিমোডাল ইনপুট বা আউটপুট কাজ করে না।
  • ডিফল্ট স্ট্যাটাস: Grounding with Google Maps টুল ডিফল্ট হিসেবে বন্ধ থাকে। আপনার API অনুরোধে আপনাকে এটি স্পষ্টভাবে চালু করতে হবে।

দাম ও রেটের সীমা

মডেল জেনারেশনের উপর নির্ভর করে Google Maps-এর সাথে গ্রাউন্ডিংয়ের দাম আলাদা হয়:

  • Gemini 3 এবং আরও নতুন মডেল: মডেলটি যে প্রতিটি সার্চ কোয়েরি রান করার সিদ্ধান্ত নেয়, তার জন্য আপনার প্রোজেক্টে বিল করা হয়। এর সাথে,সমস্ত Gemini 3 এবং আরও নতুন মডেল জুড়ে প্রতি মাসে ৫, ০০০টি ফ্রি অনুরোধ শেয়ার করা হয় এবং তারপরে প্রতি ১,০০০টি সার্চ কোয়েরির জন্য$১৪। একটি সার্চ প্রম্পট (মডেলের কাছে আপনার API অনুরোধ) প্রয়োজনীয় তথ্য খুঁজে পেতে মডেলকে একাধিক সার্চ কোয়েরি চালাতে বাধ্য করতে পারে। এইসব কোয়েরির প্রতিটি টুলের বিলযোগ্য ব্যবহার হিসেবে গণনা করা হয়।
  • Gemini 2.5 ও তার আগের মডেল: আপনার প্রোজেক্টে প্রতিটি সার্চ প্রম্পট পিছু বিল করা হয় (১,০০০টি গ্রাউন্ডেড প্রম্পট পিছু $২৫)। প্রম্পটটি সফলভাবে অন্তত একটি Google Maps গ্রাউন্ডেড ফলাফল প্রদান করলে তবেই একটি অনুরোধের জন্য বিল করা হয়, সেই ফলাফল পেতে মডেলটি অভ্যন্তরীণভাবে কতগুলি পৃথক সার্চ কোয়েরি করেছে তা নির্বিশেষে।

Grounding with Google Maps-এর কোটা সাধারণত অন্তর্নিহিত Gemini মডেলের রেট সীমার সাথে সামঞ্জস্যপূর্ণ হয়। দাম সংক্রান্ত বিস্তারিত তথ্যের জন্য, Gemini API দাম সংক্রান্ত পৃষ্ঠা দেখুন।

যেসব মডেলে কাজ করে

নিম্নলিখিত মডেলগুলি Google Maps-এর মাধ্যমে গ্রাউন্ডিংয়ের সুবিধা দেয়:

মডেল Grounding with Google Maps
Gemini 4 Argon ✔️
Gemini 3.8 Flash ✔️
Gemini 3.6 Flash ✔️
Gemini 3.5 Flash-Lite ✔️
Gemini 3.1 Pro প্রিভিউ ✔️
Gemini 3.1 Flash-Lite ✔️
Gemini 3 Flash প্রিভিউ ✔️
Gemini 2.5 Pro ✔️
Gemini 2.5 Flash ✔️
Gemini 2.5 Flash-Lite ✔️

কাজ করে এমন টুলের কম্বিনেশন

আরও জটিল ব্যবহারের ক্ষেত্রে, আপনি Google Maps-এর সাথে বিল্ট-ইন টুল যেমন Google Search-এর সাথে গ্রাউন্ডিং (এগুলি Gemini 3.5 Flash-Lite ও এর পরের যেকোনও মডেলে কাজ করে) ব্যবহার করতে পারেন। এছাড়াও, Gemini 3 মডেল কাস্টম টুলের (ফাংশন কলিং) সাথে এইসব বিল্ট-ইন টুল একত্রিত করার সুবিধা প্রদান করে। টুলের কম্বিনেশন পৃষ্ঠা থেকে আরও জানুন।

এর পরে কী করতে হবে