মিথুন ডিফল্টরূপে অসংগঠিত পাঠ্য তৈরি করে, তবে কিছু অ্যাপ্লিকেশনের জন্য কাঠামোগত পাঠ্য প্রয়োজন। এই ব্যবহারের ক্ষেত্রে, আপনি জেমিনিকে JSON এর সাথে প্রতিক্রিয়া জানাতে বাধ্য করতে পারেন, স্বয়ংক্রিয় প্রক্রিয়াকরণের জন্য উপযুক্ত একটি স্ট্রাকচার্ড ডেটা ফর্ম্যাট। আপনি একটি enum-এ উল্লিখিত বিকল্পগুলির একটির সাথে প্রতিক্রিয়া জানাতে মডেলটিকে সীমাবদ্ধ করতে পারেন।
মডেল থেকে কাঠামোগত আউটপুট প্রয়োজন হতে পারে এমন কয়েকটি ব্যবহারের ক্ষেত্রে এখানে রয়েছে:
- সংবাদপত্রের নিবন্ধগুলি থেকে কোম্পানির তথ্য টেনে কোম্পানিগুলির একটি ডাটাবেস তৈরি করুন।
- জীবনবৃত্তান্ত থেকে প্রমিত তথ্য টেনে আনুন।
- রেসিপি থেকে উপাদানগুলি বের করুন এবং প্রতিটি উপাদানের জন্য একটি মুদির ওয়েবসাইটের লিঙ্ক প্রদর্শন করুন।
আপনার প্রম্পটে, আপনি জেমিনিকে JSON-ফরম্যাট করা আউটপুট তৈরি করতে বলতে পারেন, কিন্তু মনে রাখবেন যে মডেলটি JSON তৈরির নিশ্চয়তা দেয় না এবং JSON ছাড়া কিছুই নয়। আরও নির্ধারক প্রতিক্রিয়ার জন্য, আপনি একটি responseSchema
ফিল্ডে একটি নির্দিষ্ট JSON স্কিমা পাস করতে পারেন যাতে মিথুন সবসময় একটি প্রত্যাশিত কাঠামোর সাথে প্রতিক্রিয়া জানায়।
আপনার পছন্দের SDK-এর মাধ্যমে বা সরাসরি REST API ব্যবহার করে generateContent
পদ্ধতি ব্যবহার করে কীভাবে JSON তৈরি করবেন এই নির্দেশিকা আপনাকে দেখায়। উদাহরণগুলি কেবলমাত্র পাঠ্য ইনপুট দেখায়, যদিও জেমিনি ছবি , ভিডিও এবং অডিও অন্তর্ভুক্ত মাল্টিমোডাল অনুরোধগুলিতে JSON প্রতিক্রিয়াও তৈরি করতে পারে।
আপনি শুরু করার আগে: আপনার প্রকল্প এবং API কী সেট আপ করুন
Gemini API কল করার আগে, আপনাকে আপনার প্রকল্প সেট আপ করতে হবে এবং আপনার API কী কনফিগার করতে হবে।
আপনার API কী পান এবং সুরক্ষিত করুন
Gemini API কল করার জন্য আপনার একটি API কী প্রয়োজন। আপনার যদি ইতিমধ্যে একটি না থাকে তবে Google AI স্টুডিওতে একটি কী তৈরি করুন৷
এটি দৃঢ়ভাবে সুপারিশ করা হয় যে আপনি আপনার সংস্করণ নিয়ন্ত্রণ সিস্টেমে একটি API কী চেক করবেন না ৷
আপনার API কী-এর জন্য একটি গোপন স্টোর ব্যবহার করা উচিত, যেমন Google ক্লাউড সিক্রেট ম্যানেজার ।
এই টিউটোরিয়ালের সমস্ত স্নিপেট অনুমান করে যে আপনি একটি বিশ্বব্যাপী ধ্রুবক হিসাবে আপনার API কী অ্যাক্সেস করছেন।
JSON তৈরি করুন
যখন মডেলটিকে JSON আউটপুট করার জন্য কনফিগার করা হয়, তখন এটি JSON- ফরম্যাটেড আউটপুট সহ যেকোনো প্রম্পটে সাড়া দেয়।
আপনি একটি স্কিমা সরবরাহ করে JSON প্রতিক্রিয়ার গঠন নিয়ন্ত্রণ করতে পারেন। মডেলটিতে স্কিমা সরবরাহ করার দুটি উপায় রয়েছে:
- প্রম্পটে পাঠ্য হিসাবে
- একটি কাঠামোগত স্কিমা হিসাবে মডেল কনফিগারেশনের মাধ্যমে সরবরাহ করা হয়
উভয় পদ্ধতিই Gemini 1.5 Flash এবং Gemini 1.5 Pro উভয় ক্ষেত্রেই কাজ করে।
প্রম্পটে পাঠ্য হিসাবে একটি স্কিমা সরবরাহ করুন
নিম্নলিখিত উদাহরণটি মডেলটিকে একটি নির্দিষ্ট JSON ফর্ম্যাটে কুকি রেসিপিগুলি ফেরত দেওয়ার জন্য অনুরোধ করে৷
যেহেতু মডেলটি প্রম্পটে টেক্সট থেকে ফরম্যাট স্পেসিফিকেশন পায়, তাই আপনি স্পেসিফিকেশনটি কীভাবে উপস্থাপন করেন তাতে আপনার কিছুটা নমনীয়তা থাকতে পারে। একটি JSON স্কিমা প্রতিনিধিত্ব করার জন্য যেকোনো যুক্তিসঙ্গত বিন্যাস কাজ করতে পারে।
// Make sure to include these imports:
// import { GoogleGenerativeAI } from "@google/generative-ai";
const genAI = new GoogleGenerativeAI(process.env.API_KEY);
const model = genAI.getGenerativeModel({
model: "gemini-1.5-flash",
});
const prompt = `List a few popular cookie recipes using this JSON schema:
Recipe = {'recipeName': string}
Return: Array<Recipe>`;
const result = await model.generateContent(prompt);
console.log(result.response.text());
আউটপুট এই মত দেখতে পারে:
[{"recipeName": "Chocolate Chip Cookies"}, {"recipeName": "Oatmeal Raisin Cookies"}, {"recipeName": "Snickerdoodles"}, {"recipeName": "Sugar Cookies"}, {"recipeName": "Peanut Butter Cookies"}]
মডেল কনফিগারেশনের মাধ্যমে একটি স্কিমা সরবরাহ করুন
নিম্নলিখিত উদাহরণ নিম্নলিখিত কাজ করে:
- JSON এর সাথে প্রতিক্রিয়া জানাতে একটি স্কিমার মাধ্যমে কনফিগার করা একটি মডেলকে তাৎক্ষণিক করে।
- মডেলকে কুকি রেসিপি ফেরত দিতে অনুরোধ করে।
// Make sure to include these imports:
// import { GoogleGenerativeAI, SchemaType } from "@google/generative-ai";
const genAI = new GoogleGenerativeAI(process.env.API_KEY);
const schema = {
description: "List of recipes",
type: SchemaType.ARRAY,
items: {
type: SchemaType.OBJECT,
properties: {
recipeName: {
type: SchemaType.STRING,
description: "Name of the recipe",
nullable: false,
},
},
required: ["recipeName"],
},
};
const model = genAI.getGenerativeModel({
model: "gemini-1.5-pro",
generationConfig: {
responseMimeType: "application/json",
responseSchema: schema,
},
});
const result = await model.generateContent(
"List a few popular cookie recipes.",
);
console.log(result.response.text());
আউটপুট এই মত দেখতে পারে:
[{"recipeName": "Chocolate Chip Cookies"}, {"recipeName": "Oatmeal Raisin Cookies"}, {"recipeName": "Snickerdoodles"}, {"recipeName": "Sugar Cookies"}, {"recipeName": "Peanut Butter Cookies"}]