Gemini API ব্যবহার করে পাঠ্য তৈরি করুন

ইনপুট হিসাবে টেক্সট, ছবি, ভিডিও এবং অডিও প্রদান করা হলে Gemini API টেক্সট আউটপুট তৈরি করতে পারে।

এই নির্দেশিকা আপনাকে দেখায় কিভাবে generateContent এবং streamGenerateContent পদ্ধতি ব্যবহার করে পাঠ্য তৈরি করতে হয়। মিথুনের দৃষ্টি এবং অডিও ক্ষমতা নিয়ে কাজ করার বিষয়ে জানতে, দৃষ্টি এবং অডিও নির্দেশিকা পড়ুন।

আপনি শুরু করার আগে: আপনার প্রকল্প এবং API কী সেট আপ করুন

Gemini API কল করার আগে, আপনাকে আপনার প্রকল্প সেট আপ করতে হবে এবং আপনার API কী কনফিগার করতে হবে।

শুধুমাত্র পাঠ্য ইনপুট থেকে পাঠ্য তৈরি করুন

Gemini API ব্যবহার করে টেক্সট জেনারেট করার সবচেয়ে সহজ উপায় হল মডেলটিকে একটি মাত্র টেক্সট ইনপুট প্রদান করা, যেমন এই উদাহরণে দেখানো হয়েছে:

import google.generativeai as genai

model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content("Write a story about a magic backpack.")
print(response.text)

এই ক্ষেত্রে, প্রম্পট ("একটি জাদু ব্যাকপ্যাক সম্পর্কে একটি গল্প লিখুন") কোনো আউটপুট উদাহরণ, সিস্টেম নির্দেশাবলী, বা ফর্ম্যাটিং তথ্য অন্তর্ভুক্ত করে না। এটি একটি শূন্য-শট পদ্ধতির। কিছু ব্যবহারের ক্ষেত্রে, একটি এক-শট বা কয়েক-শট প্রম্পট আউটপুট তৈরি করতে পারে যা ব্যবহারকারীর প্রত্যাশার সাথে আরও সারিবদ্ধ। কিছু ক্ষেত্রে, আপনি মডেলটিকে কাজ বুঝতে বা নির্দিষ্ট নির্দেশিকা অনুসরণ করতে সাহায্য করার জন্য সিস্টেম নির্দেশাবলী প্রদান করতে চাইতে পারেন।

টেক্সট এবং ইমেজ ইনপুট থেকে টেক্সট তৈরি করুন

Gemini API মাল্টিমোডাল ইনপুট সমর্থন করে যা মিডিয়া ফাইলের সাথে পাঠ্য একত্রিত করে। নিম্নলিখিত উদাহরণ দেখায় কিভাবে পাঠ্য-এবং-চিত্র ইনপুট থেকে পাঠ্য তৈরি করা যায়:

import google.generativeai as genai

import PIL.Image

model = genai.GenerativeModel("gemini-1.5-flash")
organ = PIL.Image.open(media / "organ.jpg")
response = model.generate_content(["Tell me about this instrument", organ])
print(response.text)

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

একটি পাঠ্য স্ট্রীম তৈরি করুন

ডিফল্টরূপে, সম্পূর্ণ টেক্সট জেনারেশন প্রক্রিয়া সম্পন্ন করার পর মডেলটি একটি প্রতিক্রিয়া প্রদান করে। আপনি সম্পূর্ণ ফলাফলের জন্য অপেক্ষা না করে দ্রুত মিথস্ক্রিয়া অর্জন করতে পারেন এবং পরিবর্তে আংশিক ফলাফলগুলি পরিচালনা করতে স্ট্রিমিং ব্যবহার করতে পারেন।

নিম্নলিখিত উদাহরণটি দেখায় যে কীভাবে একটি পাঠ্য-শুধু ইনপুট প্রম্পট থেকে পাঠ্য তৈরি করতে streamGenerateContent পদ্ধতি ব্যবহার করে স্ট্রিমিং বাস্তবায়ন করতে হয়।

import google.generativeai as genai

model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content("Write a story about a magic backpack.", stream=True)
for chunk in response:
    print(chunk.text)
    print("_" * 80)

একটি ইন্টারেক্টিভ চ্যাট তৈরি করুন

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

নিম্নলিখিত কোড উদাহরণ একটি মৌলিক চ্যাট বাস্তবায়ন দেখায়:

import google.generativeai as genai

model = genai.GenerativeModel("gemini-1.5-flash")
chat = model.start_chat(
    history=[
        {"role": "user", "parts": "Hello"},
        {"role": "model", "parts": "Great to meet you. What would you like to know?"},
    ]
)
response = chat.send_message("I have 2 dogs in my house.")
print(response.text)
response = chat.send_message("How many paws are in my house?")
print(response.text)

চ্যাট স্ট্রিমিং সক্ষম করুন

আপনি চ্যাটের সাথে স্ট্রিমিংও ব্যবহার করতে পারেন, যেমনটি নিম্নলিখিত উদাহরণে দেখানো হয়েছে:

import google.generativeai as genai

model = genai.GenerativeModel("gemini-1.5-flash")
chat = model.start_chat(
    history=[
        {"role": "user", "parts": "Hello"},
        {"role": "model", "parts": "Great to meet you. What would you like to know?"},
    ]
)
response = chat.send_message("I have 2 dogs in my house.", stream=True)
for chunk in response:
    print(chunk.text)
    print("_" * 80)
response = chat.send_message("How many paws are in my house?", stream=True)
for chunk in response:
    print(chunk.text)
    print("_" * 80)

print(chat.history)

পাঠ্য প্রজন্ম কনফিগার করুন

আপনি মডেলে পাঠানো প্রতিটি প্রম্পটে প্যারামিটার অন্তর্ভুক্ত থাকে যা মডেলটি কীভাবে প্রতিক্রিয়া তৈরি করে তা নিয়ন্ত্রণ করে। আপনি এই পরামিতিগুলি কনফিগার করতে GenerationConfig ব্যবহার করতে পারেন। আপনি যদি প্যারামিটারগুলি কনফিগার না করেন তবে মডেলটি ডিফল্ট বিকল্পগুলি ব্যবহার করে, যা মডেল অনুসারে পরিবর্তিত হতে পারে।

নিম্নলিখিত উদাহরণটি দেখায় কিভাবে উপলব্ধ বিকল্পগুলির কয়েকটি কনফিগার করতে হয়।

import google.generativeai as genai

model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content(
    "Tell me a story about a magic backpack.",
    generation_config=genai.types.GenerationConfig(
        # Only one candidate for now.
        candidate_count=1,
        stop_sequences=["x"],
        max_output_tokens=20,
        temperature=1.0,
    ),
)

print(response.text)

candidateCount প্রত্যাবর্তনের জন্য উত্পন্ন প্রতিক্রিয়ার সংখ্যা নির্দিষ্ট করে। বর্তমানে, এই মানটি শুধুমাত্র 1 তে সেট করা যেতে পারে৷ যদি সেট না করা হয় তবে এটি 1 এ ডিফল্ট হবে৷

stopSequences ক্যারেক্টার সিকোয়েন্সের সেট নির্দিষ্ট করে (5 পর্যন্ত) যা আউটপুট জেনারেশন বন্ধ করবে। নির্দিষ্ট করা হলে, API একটি stop_sequence এর প্রথম উপস্থিতিতে থেমে যাবে। প্রতিক্রিয়ার অংশ হিসেবে স্টপ সিকোয়েন্স অন্তর্ভুক্ত করা হবে না।

maxOutputTokens একজন প্রার্থীকে অন্তর্ভুক্ত করার জন্য সর্বাধিক সংখ্যক টোকেন সেট করে।

temperature আউটপুটের এলোমেলোতা নিয়ন্ত্রণ করে। আরো সৃজনশীল প্রতিক্রিয়ার জন্য উচ্চ মান ব্যবহার করুন, এবং আরো নির্ধারক প্রতিক্রিয়ার জন্য নিম্ন মান ব্যবহার করুন। মান [0.0, 2.0] থেকে পরিসীমা হতে পারে।

আপনি generateContent করতে পৃথক কল কনফিগার করতে পারেন:

response = model.generate_content(
    'Write a story about a magic backpack.',
    generation_config = genai.GenerationConfig(
        max_output_tokens=1000,
        temperature=0.1,
    )
)

মডেল কনস্ট্রাক্টরের পৃথক কল ওভাররাইড মানগুলিতে সেট করা যেকোনো মান।

এরপর কি

এখন আপনি Gemini API-এর মূল বিষয়গুলি অন্বেষণ করেছেন, আপনি চেষ্টা করতে চাইতে পারেন:

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