প্রকাশিত: 13 মে, 2025
বড় ভাষা মডেল (LLMs) তাদের মাঝে মাঝে দীর্ঘ প্রতিক্রিয়ার জন্য কুখ্যাত। এমনকি যদি আপনি মডেলটিকে "সত্য" বা "মিথ্যা" দিয়ে উত্তর দিতে বলেন, তাহলে মডেলটি একটি বন্ধুত্বপূর্ণ আউটপুট দিয়ে প্রতিক্রিয়া জানাতে পারে এবং আপনি যা চেয়েছেন তার চেয়ে বেশি, যেমন: "অবশ্যই, উত্তরটি হল: সত্য।"
এই চ্যালেঞ্জ মোকাবেলা করার জন্য, প্রম্পট API আপনাকে LanguageModel.prompt()
এবং LanguageModel.promptStreaming()
পদ্ধতিতে একটি JSON স্কিমা পাস করে মডেলের প্রতিক্রিয়ার একটি JSON আউটপুট ফর্ম্যাট নির্দিষ্ট করতে দেয়। ক্রোম সংস্করণ 137 হিসাবে স্ট্রাকচার্ড আউটপুট সমর্থন উপলব্ধ।
JSON স্কিমা কি?
JSON স্কিমা হল একটি শব্দভাণ্ডার যা JSON ডেটার সামঞ্জস্য, বৈধতা এবং আন্তঃকার্যযোগ্যতা সক্ষম করে। যখন ডেটা আদান-প্রদানের কথা আসে, JSON স্কিম JSON ডেটার কাঠামো এবং নিয়মগুলিকে সংজ্ঞায়িত করার জন্য একটি শক্তিশালী মান হিসাবে দাঁড়িয়েছে৷ এটি আপনার ডেটার বৈশিষ্ট্যগুলি সংজ্ঞায়িত করতে কীওয়ার্ডগুলির একটি সেট ব্যবহার করে।
JSON স্কিমা হল স্ট্রাকচার্ড আউটপুট নিশ্চিত করার জন্য ইন্ডাস্ট্রি স্ট্যান্ডার্ড, অন্যদের মধ্যে OpenAI API এবং Gemini API দ্বারা ব্যবহৃত হয়।
উদাহরণস্বরূপ, আপনি একটি অনলাইন সোশ্যাল নেটওয়ার্কে একটি পোস্টের জন্য মডেলটিকে সর্বাধিক তিনটি হ্যাশট্যাগ বরাদ্দ করার জন্য অনুরোধ করেন, যেমন মাস্টোডন৷ আদর্শ আউটপুট নিম্নলিখিত JSON অনুরূপ দেখতে পারে:
{
"hashtags": [
"#pottery",
"#dyi"
]
}
এই অনুরোধকৃত আউটপুট অবজেক্ট আকৃতির জন্য সংশ্লিষ্ট JSON স্কিমা নিচের মত দেখাবে:
{
"type": "object",
"properties": {
"hashtags": {
"type": "array",
"maxItems": 3,
"items": {
"type": "string",
"pattern": "^#[^\\s#]+$"
}
}
},
"required": ["hashtags"],
"additionalProperties": false
}
এই JSON স্কিমা একটি অবজেক্টের জন্য একটি কাঠামো সংজ্ঞায়িত করে যাতে নিম্নলিখিত সীমাবদ্ধতা সহ একটি hashtags
ক্ষেত্র থাকতে হবে:
-
"type": "object"
: মূল মান অবশ্যই একটি JSON অবজেক্ট হতে হবে। -
"properties": { "hashtags": ... }
: অবজেক্টের (এবং এই ক্ষেত্রে, অবশ্যই)hashtags
নামে একটি বৈশিষ্ট্য থাকতে পারে। "hashtags":
-
"type": "array"
: মান অবশ্যই একটি অ্যারে হতে হবে। -
"maxItems": 3
: অ্যারেতে সর্বাধিক 3টি আইটেম থাকতে পারে। -
"items": { "type": "string", "pattern": "^#[^\\s#]+$" }
: অ্যারের প্রতিটি আইটেম অবশ্যই একটি স্ট্রিং হতে হবে যা প্রদত্ত রেগুলার এক্সপ্রেশন প্যাটার্নের সাথে মেলে:^#[^\\s#]+$
:-
^#
→ একটি#
দিয়ে শুরু করতে হবে। -
[^\\s#]+
→ এর পরে এক বা একাধিক অক্ষর যা একটি স্থান (\s
) বা অন্য#
নয়। -
$
→ সেখানে শেষ করতে হবে।
-
-
"required": ["hashtags"]
: বস্তুটিতে অবশ্যইhashtags
বৈশিষ্ট্য থাকতে হবে।"additionalProperties": false
: হ্যাশট্যাগ ছাড়া অন্য কোনো বৈশিষ্ট্য অনুমোদিত নয়।
বিন্যাসের ক্ষমতার সম্পূর্ণ বিবরণের জন্য JSON স্কিমা বেসিক ডকুমেন্টেশন পড়ুন।
আসলে, LLMs JSON স্কিমা তৈরিতে সত্যিই ভাল। আপনার প্রম্পটে প্রাকৃতিক ভাষায় সীমাবদ্ধতাগুলি বর্ণনা করুন এবং একটি বৈধ উদাহরণ JSON অবজেক্ট প্রদান করুন এবং আপনি সেখানে অর্ধেক হয়ে গেছেন। তারপরে আপনি জেএসওএন স্কিমা ভ্যালিডেটরগুলির একটির সাথে জেনারেট করা JSON স্কিমার বিরুদ্ধে JSON অবজেক্টগুলিকে যাচাই করতে পারেন, উদাহরণস্বরূপ, অনলাইন নিউটনসফ্ট JSON স্কিমা ভ্যালিডেটর ৷
প্রম্পট API-এ একটি JSON স্কিমা পাস করুন
মডেলটি একটি অনুরোধ করা JSON স্কিমাকে সম্মান করে তা নিশ্চিত করতে, আপনাকে prompt()
বা promptStreaming()
পদ্ধতির বিকল্প অবজেক্টে একটি responseConstraint
ফিল্ডের মান হিসাবে JSON স্কিমাকে একটি যুক্তি হিসাবে পাস করতে হবে।
এখানে একটি খুব প্রাথমিক JSON স্কিমার উদাহরণ রয়েছে যা নিশ্চিত করে যে মডেলটি true
বা false
সাথে শ্রেণীবদ্ধ করার ক্ষেত্রে এই মাস্টোডন পোস্টের মতো একটি প্রদত্ত বার্তা মৃৎশিল্প সম্পর্কে।
const session = await LanguageModel.create();
const schema = {
"type": "boolean"
};
const post = "Mugs and ramen bowls, both a bit smaller than intended- but that's
how it goes with reclaim. Glaze crawled the first time around, but pretty happy
with it after refiring.";
const result = await session.prompt(
`Is this post about pottery?\n\n${post}`,
{
responseConstraint: schema,
}
);
console.log(JSON.parse(result));
// true
অনুমানযোগ্য আউটপুট সমর্থন করুন
প্রম্পট API-এর জন্য স্ট্রাকচার্ড আউটপুট সমর্থন এলএলএম-এর প্রতিক্রিয়াগুলিকে অনেক বেশি অনুমানযোগ্য করে তোলে। মার্কডাউন প্রতিক্রিয়া বা অন্যান্য পোস্ট-প্রসেসিং থেকে কোনও বস্তু বের করার পরিবর্তে, বিকাশকারীরা এখন ধরে নিতে পারে মডেলের প্রতিক্রিয়া বৈধ JSON।
স্থানীয়, ক্লায়েন্ট-সাইড এআই চালানোর সমস্ত সুবিধা সহ এটি অন্তর্নির্মিত AI-কে ক্লাউড-ভিত্তিক API-এর এক ধাপ কাছাকাছি নিয়ে আসে।
,প্রকাশিত: 13 মে, 2025
বড় ভাষা মডেল (LLMs) তাদের মাঝে মাঝে দীর্ঘ প্রতিক্রিয়ার জন্য কুখ্যাত। এমনকি যদি আপনি মডেলটিকে "সত্য" বা "মিথ্যা" দিয়ে উত্তর দিতে বলেন, তাহলে মডেলটি একটি বন্ধুত্বপূর্ণ আউটপুট দিয়ে প্রতিক্রিয়া জানাতে পারে এবং আপনি যা চেয়েছেন তার চেয়ে বেশি, যেমন: "অবশ্যই, উত্তরটি হল: সত্য।"
এই চ্যালেঞ্জ মোকাবেলা করার জন্য, প্রম্পট API আপনাকে LanguageModel.prompt()
এবং LanguageModel.promptStreaming()
পদ্ধতিতে একটি JSON স্কিমা পাস করে মডেলের প্রতিক্রিয়ার একটি JSON আউটপুট ফর্ম্যাট নির্দিষ্ট করতে দেয়। ক্রোম সংস্করণ 137 হিসাবে স্ট্রাকচার্ড আউটপুট সমর্থন উপলব্ধ।
JSON স্কিমা কি?
JSON স্কিমা হল একটি শব্দভাণ্ডার যা JSON ডেটার সামঞ্জস্য, বৈধতা এবং আন্তঃকার্যযোগ্যতা সক্ষম করে। যখন ডেটা আদান-প্রদানের কথা আসে, JSON স্কিম JSON ডেটার কাঠামো এবং নিয়মগুলিকে সংজ্ঞায়িত করার জন্য একটি শক্তিশালী মান হিসাবে দাঁড়িয়েছে৷ এটি আপনার ডেটার বৈশিষ্ট্যগুলি সংজ্ঞায়িত করতে কীওয়ার্ডগুলির একটি সেট ব্যবহার করে।
JSON স্কিমা হল স্ট্রাকচার্ড আউটপুট নিশ্চিত করার জন্য ইন্ডাস্ট্রি স্ট্যান্ডার্ড, অন্যদের মধ্যে OpenAI API এবং Gemini API দ্বারা ব্যবহৃত হয়।
উদাহরণস্বরূপ, আপনি একটি অনলাইন সোশ্যাল নেটওয়ার্কে একটি পোস্টের জন্য মডেলটিকে সর্বাধিক তিনটি হ্যাশট্যাগ বরাদ্দ করার জন্য অনুরোধ করেন, যেমন মাস্টোডন৷ আদর্শ আউটপুট নিম্নলিখিত JSON অনুরূপ দেখতে পারে:
{
"hashtags": [
"#pottery",
"#dyi"
]
}
এই অনুরোধকৃত আউটপুট অবজেক্ট আকৃতির জন্য সংশ্লিষ্ট JSON স্কিমা নিচের মত দেখাবে:
{
"type": "object",
"properties": {
"hashtags": {
"type": "array",
"maxItems": 3,
"items": {
"type": "string",
"pattern": "^#[^\\s#]+$"
}
}
},
"required": ["hashtags"],
"additionalProperties": false
}
এই JSON স্কিমা একটি অবজেক্টের জন্য একটি কাঠামো সংজ্ঞায়িত করে যাতে নিম্নলিখিত সীমাবদ্ধতা সহ একটি hashtags
ক্ষেত্র থাকতে হবে:
-
"type": "object"
: মূল মান অবশ্যই একটি JSON অবজেক্ট হতে হবে। -
"properties": { "hashtags": ... }
: অবজেক্টের (এবং এই ক্ষেত্রে, অবশ্যই)hashtags
নামে একটি বৈশিষ্ট্য থাকতে পারে। "hashtags":
-
"type": "array"
: মান অবশ্যই একটি অ্যারে হতে হবে। -
"maxItems": 3
: অ্যারেতে সর্বাধিক 3টি আইটেম থাকতে পারে। -
"items": { "type": "string", "pattern": "^#[^\\s#]+$" }
: অ্যারের প্রতিটি আইটেম অবশ্যই একটি স্ট্রিং হতে হবে যা প্রদত্ত রেগুলার এক্সপ্রেশন প্যাটার্নের সাথে মেলে:^#[^\\s#]+$
:-
^#
→ একটি#
দিয়ে শুরু করতে হবে। -
[^\\s#]+
→ এর পরে এক বা একাধিক অক্ষর যা একটি স্থান (\s
) বা অন্য#
নয়। -
$
→ সেখানে শেষ করতে হবে।
-
-
"required": ["hashtags"]
: বস্তুটিতে অবশ্যইhashtags
বৈশিষ্ট্য থাকতে হবে।"additionalProperties": false
: হ্যাশট্যাগ ছাড়া অন্য কোনো বৈশিষ্ট্য অনুমোদিত নয়।
বিন্যাসের ক্ষমতার সম্পূর্ণ বিবরণের জন্য JSON স্কিমা বেসিক ডকুমেন্টেশন পড়ুন।
আসলে, LLMs JSON স্কিমা তৈরিতে সত্যিই ভাল। আপনার প্রম্পটে প্রাকৃতিক ভাষায় সীমাবদ্ধতাগুলি বর্ণনা করুন এবং একটি বৈধ উদাহরণ JSON অবজেক্ট প্রদান করুন এবং আপনি সেখানে অর্ধেক হয়ে গেছেন। তারপরে আপনি জেএসওএন স্কিমা ভ্যালিডেটরগুলির একটির সাথে জেনারেট করা JSON স্কিমার বিরুদ্ধে JSON অবজেক্টগুলিকে যাচাই করতে পারেন, উদাহরণস্বরূপ, অনলাইন নিউটনসফ্ট JSON স্কিমা ভ্যালিডেটর ৷
প্রম্পট API-এ একটি JSON স্কিমা পাস করুন
মডেলটি একটি অনুরোধ করা JSON স্কিমাকে সম্মান করে তা নিশ্চিত করতে, আপনাকে prompt()
বা promptStreaming()
পদ্ধতির বিকল্প অবজেক্টে একটি responseConstraint
ফিল্ডের মান হিসাবে JSON স্কিমাকে একটি যুক্তি হিসাবে পাস করতে হবে।
এখানে একটি খুব প্রাথমিক JSON স্কিমার উদাহরণ রয়েছে যা নিশ্চিত করে যে মডেলটি true
বা false
সাথে শ্রেণীবদ্ধ করার ক্ষেত্রে এই মাস্টোডন পোস্টের মতো একটি প্রদত্ত বার্তা মৃৎশিল্প সম্পর্কে।
const session = await LanguageModel.create();
const schema = {
"type": "boolean"
};
const post = "Mugs and ramen bowls, both a bit smaller than intended- but that's
how it goes with reclaim. Glaze crawled the first time around, but pretty happy
with it after refiring.";
const result = await session.prompt(
`Is this post about pottery?\n\n${post}`,
{
responseConstraint: schema,
}
);
console.log(JSON.parse(result));
// true
অনুমানযোগ্য আউটপুট সমর্থন করুন
প্রম্পট API-এর জন্য স্ট্রাকচার্ড আউটপুট সমর্থন এলএলএম-এর প্রতিক্রিয়াগুলিকে অনেক বেশি অনুমানযোগ্য করে তোলে। মার্কডাউন প্রতিক্রিয়া বা অন্যান্য পোস্ট-প্রসেসিং থেকে কোনও বস্তু বের করার পরিবর্তে, বিকাশকারীরা এখন ধরে নিতে পারে মডেলের প্রতিক্রিয়া বৈধ JSON।
স্থানীয়, ক্লায়েন্ট-সাইড এআই চালানোর সমস্ত সুবিধা সহ এটি অন্তর্নির্মিত AI-কে ক্লাউড-ভিত্তিক API-এর এক ধাপ কাছাকাছি নিয়ে আসে।