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

Grounding with Google Maps কখন এবং কেন ব্যবহার করবেন

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

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

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

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

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

Grounding with Google Maps, Gemini API-এর মাধ্যমে generateContent মেথডের মধ্যে একটি টুল হিসেবে প্রকাশ করা হয়। আপনার অনুরোধের tools প্যারামিটারে googleMaps অবজেক্ট যোগ করে Grounding with 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 বিভিন্ন ধরনের লোকেশন-সচেতন ব্যবহারের ক্ষেত্রে সহায়তা করে। নিচে দেওয়া উদাহরণগুলি থেকে বোঝা যায় যে কীভাবে বিভিন্ন প্রম্পট ও প্যারামিটার 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();

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": "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();

বিশ্রাম

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();

বিশ্রাম

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 Grounded ফলাফলের সাথে, আপনি groundingChunks-এ সোর্স পাবেন যা প্রতিটি উত্তরকে সমর্থন করে। এছাড়াও, নিম্নলিখিত মেটাডেটা ফেরানো হয়:

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

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 অ্যাট্রিবিউট 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-এর অতিরিক্ত বিধিনিষেধ রয়েছে। শর্তাবলীতে উল্লেখ করা ব্যবহারের বিধিনিষেধ ছাড়াও:

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

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

  • ব্যবহারকারীর লোকেশন প্রদান করুন: সবচেয়ে প্রাসঙ্গিক ও পছন্দমতো উত্তর পেতে, ব্যবহারকারীর লোকেশন জানা থাকলে, সবসময় আপনার googleMapsGrounding কনফিগারেশনে user_location (অক্ষাংশ ও দ্রাঘিমাংশ) অন্তর্ভুক্ত করুন।
  • গ্রাহকদের জানান: আপনার গ্রাহকদের স্পষ্টভাবে জানান যে তাদের প্রশ্নের উত্তর দিতে Google Maps ডেটা ব্যবহার করা হচ্ছে, বিশেষ করে যখন টুলটি চালু থাকে।
  • লেটেন্সি মনিটর করা: কথোপকথনমূলক অ্যাপ্লিকেশনের ক্ষেত্রে, ব্যবহারকারীর মসৃণ অভিজ্ঞতা বজায় রাখতে, গ্রাউন্ডেড উত্তরের জন্য P95 লেটেন্সি গ্রহণযোগ্য থ্রেশহোল্ডের মধ্যে রয়েছে কিনা তা নিশ্চিত করুন।
  • প্রয়োজন না থাকলে টগল বন্ধ করুন: Grounding with 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 দাম সংক্রান্ত পৃষ্ঠা দেখুন।

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

নিম্নলিখিত মডেলগুলি Grounding with 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 ✔️

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

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

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