জেমিনি API দিয়ে জেমা চালান

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

সমর্থিত মডেল

জেমিনি এপিআই নিম্নলিখিত জেমা ৪ মডেলগুলোকে সমর্থন করে:

  • gemma-4-31b-it
  • gemma-4-26b-a4b-it

নিম্নলিখিত উদাহরণটি দেখায় কিভাবে জেমিনি এপিআই-এর সাথে জেমা ব্যবহার করতে হয়:

পাইথন

from google import genai

client = genai.Client(api_key="YOUR_API_KEY")

response = client.models.generate_content(
    model="gemma-4-31b-it",
    contents="Roses are red...",
)

print(response.text)

নোড.জেএস

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

const ai = new GoogleGenAI({ apiKey: "YOUR_API_KEY"});

const response = await ai.models.generateContent({
  model: "gemma-4-31b-it",
  contents: "Roses are red...",
});
console.log(response.text);

বিশ্রাম

curl "https://generativelanguage.googleapis.com/v1beta/models/gemma-4-31b-it:generateContent?key=YOUR_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
  "contents": [{
    "parts":[{"text": "Roses are red..."}]
    }]
   }'

এপিআই কী পান

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

চিন্তা

জেমা ৪ একটি অভ্যন্তরীণ 'চিন্তন প্রক্রিয়া' ব্যবহার করে যা এর বহু-ধাপের যুক্তিপদ্ধতিকে উন্নত করে, এবং অ্যালগরিদমিক কোডিং ও উন্নত গাণিতিক প্রমাণের মতো যৌক্তিকভাবে চাহিদাপূর্ণ ক্ষেত্রগুলিতে শ্রেষ্ঠতর কর্মক্ষমতা প্রদান করে।

যদিও জেমা ৪-এ এই ফিচারটি শুধুমাত্র চালু বা বন্ধ করা যায়, এপিআই-তে থিংকিং লেভেল "high" তে সেট করে এটি সক্রিয় করতে হয়।

নিম্নলিখিত উদাহরণটি দেখায় কিভাবে চিন্তন প্রক্রিয়া সক্রিয় করতে হয়:

পাইথন

from google import genai

client = genai.Client(api_key="YOUR_API_KEY")

response = client.models.generate_content(
    model="gemma-4-31b-it",
    contents="What is the water formula?",
    config=types.GenerateContentConfig(
        thinking_config=types.ThinkingConfig(thinking_level="high")
    ),
)

print(response.text)

নোড.জেএস

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

const ai = new GoogleGenAI({ apiKey: "YOUR_API_KEY"});

const response = await ai.models.generateContent({
  model: "gemma-4-31b-it",
  contents: "What is the water formula?",
  config: {
    thinkingConfig: {
      thinkingLevel: ThinkingLevel.HIGH,
    },
  },
});
console.log(response.text);

বিশ্রাম

curl "https://generativelanguage.googleapis.com/v1beta/models/gemma-4-31b-it:generateContent?key=YOUR_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
  "contents": [{
    "parts":[{"text": "What is the water formula?"}]
    }],
    "generationConfig": {
      "thinkingConfig": {
            "thinkingLevel": "high"
      }
    }
   }'

চিন্তাভাবনা সম্পর্কে আরও জানুন:

চিত্র বোঝা

জেমা ৪ মডেলগুলো ছবি প্রসেস করতে পারে, যা ডেভেলপারদের জন্য এমন অনেক অত্যাধুনিক ব্যবহারের সুযোগ তৈরি করে, যার জন্য ঐতিহাসিকভাবে ডোমেইন-নির্দিষ্ট মডেলের প্রয়োজন হতো।

নিম্নলিখিত উদাহরণটি দেখায় কিভাবে জেমিনি এপিআই (Gemini API)-এর সাথে জেমা ইমেজ ইনপুট (Gemma Image inputs) ব্যবহার করতে হয়:

পাইথন

from google import genai

client = genai.Client(api_key="YOUR_API_KEY")

my_file = client.files.upload(file="path/to/sample.jpg")

response = client.models.generate_content(
    model="gemma-4-31b-it",
    contents=[my_file, "Caption this image."],
)

print(response.text)

নোড.জেএস

import {
  GoogleGenAI,
  createUserContent,
  createPartFromUri,
} from "@google/genai";

const ai = new GoogleGenAI({ apiKey: "YOUR_API_KEY" });

const myfile = await ai.files.upload({
  file: "path/to/sample.jpg",
  config: { mimeType: "image/jpeg" },
});

const response = await ai.models.generateContent({
  model: "gemma-4-31b-it",
  contents: createUserContent([
    createPartFromUri(myfile.uri, myfile.mimeType),
    "Caption this image.",
  ]),
});
console.log(response.text);
 ```

বিশ্রাম

IMAGE_PATH="cats-and-dogs.jpg"
MIME_TYPE=$(file -b --mime-type "${IMAGE_PATH}")
NUM_BYTES=$(wc -c < "${IMAGE_PATH}")
DISPLAY_NAME=IMAGE

tmp_header_file=upload-header.tmp

# Initial resumable request defining metadata.
# The upload url is in the response headers dump them to a file.
curl "https://generativelanguage.googleapis.com/upload/v1beta/files?key=YOUR_API_KEY" \
  -D upload-header.tmp \
  -H "X-Goog-Upload-Protocol: resumable" \
  -H "X-Goog-Upload-Command: start" \
  -H "X-Goog-Upload-Header-Content-Length: ${NUM_BYTES}" \
  -H "X-Goog-Upload-Header-Content-Type: ${MIME_TYPE}" \
  -H "Content-Type: application/json" \
  -d "{'file': {'display_name': '${DISPLAY_NAME}'}}" 2> /dev/null

upload_url=$(grep -i "x-goog-upload-url: " "${tmp_header_file}" | cut -d" " -f2 | tr -d "\r")
rm "${tmp_header_file}"

# Upload the actual bytes.
curl "${upload_url}" \
  -H "Content-Length: ${NUM_BYTES}" \
  -H "X-Goog-Upload-Offset: 0" \
  -H "X-Goog-Upload-Command: upload, finalize" \
  --data-binary "@${IMAGE_PATH}" 2> /dev/null > file_info.json

file_uri=$(jq -r ".file.uri" file_info.json)
echo file_uri=$file_uri

# Now generate content using that file
curl "https://generativelanguage.googleapis.com/v1beta/models/gemma-4-31b-it:generateContent?key=YOUR_API_KEY" \
    -H 'Content-Type: application/json' \
    -X POST \
    -d '{
      "contents": [{
        "parts":[
          {"file_data":{"mime_type": "'"${MIME_TYPE}"'", "file_uri": "'"${file_uri}"'"}},
          {"text": "Caption this image."}]
        }]
      }' 2> /dev/null > response.json

cat response.json
echo

jq -r ".candidates[].content.parts[].text" response.json

ইমেজ আন্ডারস্ট্যান্ডিং সম্পর্কে আরও জানুন: