মিডিয়ার রেজোলিউশন

media_resolution প্যারামিটারটি নির্ধারণ করে যে Gemini API কীভাবে ছবি, ভিডিও, অডিও এবং PDF ডকুমেন্টের মতো মিডিয়া ইনপুট প্রসেস করে। এটি মিডিয়া ইনপুটের জন্য বরাদ্দ করা সর্বাধিক টোকেনের সংখ্যা নির্ধারণ করে, যার ফলে আপনি লেটেন্সি ও খরচের সাথে উত্তরের কোয়ালিটি ব্যালেন্স করতে পারেন। ভিজ্যুয়াল ও ডকুমেন্ট ইনপুট রেজোলিউশন সেটিংসের উপর ভিত্তি করে টোকেন বরাদ্দ করে, অডিও ইনপুট সব রেজোলিউশন লেভেল জুড়ে প্রতি সেকেন্ডে একটি নির্দিষ্ট হারে টোকেনাইজ করা হয়। আলাদা সেটিংস, ডিফল্ট ভ্যালু এবং কীভাবে সেগুলি টোকেনের সাথে সম্পর্কিত, তা টোকেন সংখ্যা বিভাগে দেখুন।

আপনি দুটি উপায়ে মিডিয়া রেজোলিউশন কনফিগার করতে পারবেন:

প্রতিটি পার্টের জন্য মিডিয়া রেজোলিউশন (Gemini 4 ও Gemini 3)

Gemini 4 এবং Gemini 3 আপনাকে আপনার অনুরোধের মধ্যে পৃথক মিডিয়া অবজেক্টের জন্য মিডিয়া রেজোলিউশন সেট করতে দেয়, যা টোকেন ব্যবহারের সূক্ষ্ম-দানাযুক্ত অপ্টিমাইজেশন অফার করে। আপনি একটি অনুরোধে রেজোলিউশন লেভেল মিশিয়ে নিতে পারেন। যেমন, জটিল ডায়াগ্রামের জন্য হাই রেজোলিউশন এবং প্রাসঙ্গিক ছবির জন্য লো রেজোলিউশন ব্যবহার করা। এই সেটিং কোনও নির্দিষ্ট অংশের জন্য গ্লোবাল কনফিগারেশন ওভাররাইড করে। ডিফল্ট সেটিংসের জন্য, টোকেন সংখ্যা বিভাগ দেখুন।

Python

from google import genai
from google.genai import types

# The media_resolution parameter for parts is available in the v1beta API version.
client = genai.Client(
  http_options={
      'api_version': 'v1beta',
  }
)

# Replace with your image data
with open('path/to/image1.jpg', 'rb') as f:
    image_bytes_1 = f.read()

# Create parts with different resolutions
image_part_high = types.Part.from_bytes(
    data=image_bytes_1,
    mime_type='image/jpeg',
    media_resolution=types.MediaResolution.MEDIA_RESOLUTION_HIGH
)

model_name = 'gemini-4-argon'

response = client.models.generate_content(
    model=model_name,
    contents=["Describe these images:", image_part_high]
)
print(response.text)

Javascript

// Example: Setting per-part media resolution in JavaScript
import { GoogleGenAI, MediaResolution, Part } from '@google/genai';
import * as fs from 'fs';
import { Buffer } from 'buffer'; // Node.js

const ai = new GoogleGenAI({ httpOptions: { apiVersion: 'v1beta' } });

// Helper function to convert local file to a Part object
function fileToGenerativePart(path, mimeType, mediaResolution) {
    return {
        inlineData: { data: Buffer.from(fs.readFileSync(path)).toString('base64'), mimeType },
        mediaResolution: { 'level': mediaResolution }
    };
}

async function run() {
    // Create parts with different resolutions
    const imagePartHigh = fileToGenerativePart('img.png', 'image/png', Part.MediaResolutionLevel.MEDIA_RESOLUTION_HIGH);
    const model_name = 'gemini-4-argon';
    const response = await ai.models.generateContent({
        model: model_name,
        contents: ['Describe these images:', imagePartHigh]
        // Global config can still be set, but per-part settings will override
        // config: {
        //   mediaResolution: MediaResolution.MEDIA_RESOLUTION_MEDIUM
        // }
    });
    console.log(response.text);
}
run();

বিশ্রাম

# Replace with paths to your images
IMAGE_PATH="path/to/image.jpg"

# Base64 encode the images
BASE64_IMAGE1=$(base64 -w 0 "$IMAGE_PATH")

MODEL_ID="gemini-4-argon"

echo '{
    "contents": [{
      "parts": [
        {"text": "Describe these images:"},
        {
          "inline_data": {
            "mime_type": "image/jpeg",
            "data": "'"$BASE64_IMAGE1"'",
          },
          "media_resolution": {"level": "MEDIA_RESOLUTION_HIGH"}
        }
      ]
    }]
  }' > request.json

curl -s -X POST \
  "https://generativelanguage.googleapis.com/v1beta/models/${MODEL_ID}:generateContent" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d @request.json

গ্লোবাল মিডিয়া রেজোলিউশন

আপনি GenerationConfig ব্যবহার করে অনুরোধে সব মিডিয়া পার্টের জন্য ডিফল্ট রেজোলিউশন সেট করতে পারবেন। এটি সব মাল্টিমোডাল মডেলে কাজ করে। কোনও অনুরোধে গ্লোবাল ও প্রতি-পার্ট সেটিংস দুটিই থাকলে, প্রতি-পার্ট সেটিংস সেই নির্দিষ্ট আইটেমের ক্ষেত্রে অগ্রাধিকার পায়।

Python

from google import genai
from google.genai import types

client = genai.Client()

# Prepare standard image part
with open('image.jpg', 'rb') as f:
    image_bytes = f.read()
image_part = types.Part.from_bytes(data=image_bytes, mime_type='image/jpeg')

# Set global configuration
config = types.GenerateContentConfig(
    media_resolution=types.MediaResolution.MEDIA_RESOLUTION_HIGH
)

response = client.models.generate_content(
    model='gemini-3.8-flash',
    contents=["Describe this image:", image_part],
    config=config
)
print(response.text)

Javascript

import { GoogleGenAI, MediaResolution } from '@google/genai';
import * as fs from 'fs';

const ai = new GoogleGenAI({ });

async function run() {
   // ... (Image loading logic) ...

   const response = await ai.models.generateContent({
      model: 'gemini-3.8-flash',
      contents: ["Describe this image:", imagePart],
      config: {
         mediaResolution: MediaResolution.MEDIA_RESOLUTION_HIGH
      }
   });
   console.log(response.text);
}
run();

বিশ্রাম

# ... (Base64 encoding logic) ...

curl -s -X POST \
  "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.8-flash:generateContent" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [...],
    "generation_config": {
      "media_resolution": "MEDIA_RESOLUTION_HIGH"
    }
  }'

উপলভ্য রেজোলিউশন ভ্যালু

Gemini API মিডিয়া রেজোলিউশনের জন্য নিম্নলিখিত লেভেলগুলি নির্ধারণ করে:

  • MEDIA_RESOLUTION_UNSPECIFIED: ডিফল্ট সেটিং। Gemini 3 এবং আগের Gemini মডেলের মধ্যে এই লেভেলের টোকেন সংখ্যায় উল্লেখযোগ্য পার্থক্য রয়েছে।
  • MEDIA_RESOLUTION_LOW: টোকেনের সংখ্যা কম, ফলে প্রসেসিং দ্রুত হয় এবং খরচ কম হয়, তবে কম বিবরণ থাকে।
  • MEDIA_RESOLUTION_MEDIUM: বিবরণ, খরচ ও লেটেন্সির মধ্যে ব্যালেন্স।
  • MEDIA_RESOLUTION_HIGH: বেশি টোকেন কাউন্ট, মডেলের কাজ করার জন্য আরও বিস্তারিত তথ্য প্রদান করে, যার ফলে লেটেন্সি ও খরচ বৃদ্ধি পায়।
  • MEDIA_RESOLUTION_ULTRA_HIGH (শুধুমাত্র পার্ট পিছু): কম্পিউটার ব্যবহারের মতো নির্দিষ্ট ব্যবহারের ক্ষেত্রে প্রয়োজনীয় টোকেনের সর্বোচ্চ সংখ্যা।

মনে রাখবেন যে বেশিরভাগ ব্যবহারের ক্ষেত্রে MEDIA_RESOLUTION_HIGH সবচেয়ে ভালো পারফর্ম্যান্স প্রদান করে।

এই প্রতিটি লেভেলের জন্য তৈরি করা টোকেনের সঠিক সংখ্যা মিডিয়ার ধরন (ছবি, ভিডিও, অডিও, PDF) এবং মডেল ভার্সন, উভয়ের উপর নির্ভর করে।

টোকেন কাউন্ট

নিচের সারণীতে প্রতিটি media_resolution ভ্যালু এবং মডেল ফ্যামিলি পিছু মিডিয়ার ধরনের জন্য আনুমানিক টোকেন সংখ্যার সংক্ষিপ্তসার দেওয়া হল।

Gemini 3 মডেল

MediaResolution ছবি ভিডিও অডিও PDF
MEDIA_RESOLUTION_UNSPECIFIED (ডিফল্ট) 1120 70 ২৫ (প্রতি সেকেন্ডে) 560
MEDIA_RESOLUTION_LOW 280 70 ২৫ (প্রতি সেকেন্ডে) ২৮০ + নেটিভ টেক্সট
MEDIA_RESOLUTION_MEDIUM 560 70 ২৫ (প্রতি সেকেন্ডে) ৫৬০ + নেটিভ টেক্সট
MEDIA_RESOLUTION_HIGH 1120 280 ২৫ (প্রতি সেকেন্ডে) 1120 + Native Text
MEDIA_RESOLUTION_ULTRA_HIGH 2240 প্রযোজ্য নয় প্রযোজ্য নয় প্রযোজ্য নয়

Gemini 2.5 মডেল

MediaResolution ছবি ভিডিও অডিও PDF (স্ক্যান করা) PDF (নেটিভ)
MEDIA_RESOLUTION_UNSPECIFIED (ডিফল্ট) ২৫৬ + প্যান ও স্ক্যান (~২০৪৮) 256 ৩২ (প্রতি সেকেন্ডে) ২৫৬ + OCR ২৫৬ + নেটিভ টেক্সট
MEDIA_RESOLUTION_LOW ৬৪ ৬৪ ৩২ (প্রতি সেকেন্ডে) ৬৪ + OCR ৬৪ + নেটিভ টেক্সট
MEDIA_RESOLUTION_MEDIUM 256 256 ৩২ (প্রতি সেকেন্ডে) ২৫৬ + OCR ২৫৬ + নেটিভ টেক্সট
MEDIA_RESOLUTION_HIGH ২৫৬ + প্যান ও স্ক্যান 256 ৩২ (প্রতি সেকেন্ডে) ২৫৬ + OCR ২৫৬ + নেটিভ টেক্সট

সঠিক রেজোলিউশন বেছে নেওয়া

  • ডিফল্ট (UNSPECIFIED): ডিফল্ট দিয়ে শুরু করুন। এটি বেশিরভাগ সাধারণ ব্যবহারের ক্ষেত্রে কোয়ালিটি, লেটেন্সি ও খরচের মধ্যে ভালো ব্যালেন্স বজায় রাখার জন্য টিউন করা হয়েছে।
  • LOW: এমন পরিস্থিতির জন্য ব্যবহার করুন যেখানে খরচ ও লেটেন্সি সবচেয়ে গুরুত্বপূর্ণ এবং সূক্ষ্ম বিবরণ কম গুরুত্বপূর্ণ।
  • MEDIUM / HIGH: টাস্কের জন্য মিডিয়ার মধ্যে জটিল বিবরণ বোঝার প্রয়োজন হলে রেজোলিউশন বাড়ান। জটিল ভিজ্যুয়াল বিশ্লেষণ, চার্ট রিডিং বা ঘন ডকুমেন্ট কম্প্রিহেনশনের জন্য এটি প্রায়ই প্রয়োজন হয়।
  • ULTRA HIGH - শুধুমাত্র পার্ট পিছু সেটিংয়ের জন্য উপলভ্য। কম্পিউটার ব্যবহার বা যেখানে টেস্টিং HIGH-এর থেকে স্পষ্ট উন্নতি দেখায়, এমন নির্দিষ্ট ব্যবহারের ক্ষেত্রে সাজেস্ট করা হয়।
  • পার্ট-পিছু কন্ট্রোল (Gemini 4 ও Gemini 3): টোকেন ব্যবহার অপ্টিমাইজ করে। যেমন, একাধিক ছবি সহ প্রম্পটে, জটিল ডায়াগ্রামের জন্য HIGH এবং সহজ প্রাসঙ্গিক ছবির জন্য LOW বা MEDIUM ব্যবহার করুন।

সাজেস্ট করা সেটিংস

নিচে প্রতিটি কাজ করে এমন মিডিয়ার ধরনের জন্য সাজেস্ট করা মিডিয়া রেজোলিউশন সেটিংসের তালিকা দেওয়া হল।

মিডিয়ার ধরন সাজেস্ট করা সেটিং সর্বাধিক টোকেন ব্যবহার সংক্রান্ত নির্দেশিকা
ছবি MEDIA_RESOLUTION_HIGH 1120 সর্বাধিক কোয়ালিটি নিশ্চিত করতে, বেশিরভাগ ছবি বিশ্লেষণ সংক্রান্ত টাস্কের জন্য সাজেস্ট করা হয়।
পিডিএফ MEDIA_RESOLUTION_MEDIUM 560 ডকুমেন্ট বোঝার জন্য সবচেয়ে উপযুক্ত; কোয়ালিটি সাধারণত medium-এ স্যাচুরেট করে। high বাড়ালে, সাধারণ ডকুমেন্টের ক্ষেত্রে OCR ফলাফল খুব কমই উন্নত হয়।
ভিডিও (সাধারণ) MEDIA_RESOLUTION_LOW (বা MEDIA_RESOLUTION_MEDIUM) ৭০ (প্রতি ফ্রেম) মনে রাখবেন: ভিডিওর ক্ষেত্রে, কনটেক্সটের ব্যবহার অপ্টিমাইজ করতে low এবং medium সেটিংসকে একই রকম (৭০ টোকেন) হিসেবে বিবেচনা করা হয়। বেশিরভাগ অ্যাকশন শনাক্তকরণ ও বিবরণ সংক্রান্ত টাস্কের জন্য এটি যথেষ্ট।
ভিডিও (টেক্সট-বহুল) MEDIA_RESOLUTION_HIGH ২৮০ (প্রতি ফ্রেম) শুধুমাত্র তখনই প্রয়োজন যখন ব্যবহারের ক্ষেত্রে ভিডিও ফ্রেমের মধ্যে ঘন টেক্সট (OCR) বা ছোট বিবরণ পড়ার প্রয়োজন হয়।
অডিও MEDIA_RESOLUTION_UNSPECIFIED (ডিফল্ট) Gemini 3-এর জন্য ২৫ (প্রতি সেকেন্ডে); Gemini 2.5-এর জন্য ৩২ (প্রতি সেকেন্ডে) সব কাজ করে এমন রেজোলিউশন সেটিংস (unspecified, low, medium এবং high) জুড়ে অডিও প্রতি সেকেন্ডে একটি নির্দিষ্ট রেটে টোকেনাইজ করা হয়।

কোয়ালিটি, লেটেন্সি ও খরচের মধ্যে সবচেয়ে ভালো ব্যালেন্স খুঁজে পেতে, আপনার নির্দিষ্ট অ্যাপ্লিকেশনে বিভিন্ন রেজোলিউশন সেটিংসের প্রভাব সবসময় পরীক্ষা ও মূল্যায়ন করুন।

ভিডিও প্রসেসিং মোডের সাথে সম্পর্ক

media_resolution এবং প্রসেসিং প্যারামিটার ভিডিও ইনপুটের বিভিন্ন দিক কন্ট্রোল করে:

  • media_resolution প্রতিটি ফ্রেমের রেজোলিউশন (ফ্রেম প্রতি টোকেনের সংখ্যা) নিয়ন্ত্রণ করে।
  • processing / media_processing কন্ট্রোল ভিডিওর কোন কন্টেন্ট প্রসঙ্গে লোড করা হবে তা নির্ধারণ করে।

আপনি একই ভিডিও ইনপুটে দুটিই সেট করতে পারবেন। যেমন, একটি দীর্ঘ ভিডিওর জন্য মোট টোকেন ব্যবহার কমানোর জন্য আপনি কম মিডিয়া রেজোলিউশন সহ এজেন্টিক প্রসেসিং ব্যবহার করতে পারেন।

ভিডিও প্রসেসিং মোড সম্পর্কে বিস্তারিত জানতে, এজেন্টিক ভিডিও বোঝা গাইড দেখুন।

ভার্সন কম্প্যাটিবিলিটি সংক্রান্ত সারসংক্ষেপ

  • মিডিয়া ইনপুট সাপোর্ট করে এমন সব মডেলের জন্য MediaResolution enum উপলভ্য।
  • Gemini 4 / Gemini 3 মডেল এবং আগের Gemini ভার্সনের মধ্যে প্রতিটি এনুম লেভেলের সাথে যুক্ত টোকেন সংখ্যা আলাদা হয়।
  • Part অবজেক্টের জন্য media_resolution সেটিং Gemini 4 ও Gemini 3 মডেলে কাজ করে।

পরবর্তী ধাপ