কন্টেক্সট ক্যাশিং আপনাকে আগে থেকে গণনা করা ইনপুট টোকেনগুলো সংরক্ষণ ও পুনরায় ব্যবহার করার সুযোগ দেয়, যা আপনি বারবার ব্যবহার করতে চান; যেমন, একই মিডিয়া ফাইল সম্পর্কে বিভিন্ন প্রশ্ন করার সময়। ব্যবহারের ধরনের ওপর নির্ভর করে, এর ফলে খরচ এবং গতি উভয়ই সাশ্রয় হতে পারে। এ বিষয়ে বিস্তারিত জানতে কন্টেক্সট ক্যাশিং গাইডটি দেখুন।
পদ্ধতি: cachedContents.create
CachedContent রিসোর্স তৈরি করে।
এন্ডপয়েন্ট
পোস্টhttps: / /generativelanguage.googleapis.com /v1beta /cachedContentsঅনুরোধকারী শরীর
অনুরোধের বডিতে CachedContent এর একটি ইনস্ট্যান্স থাকে।
contents[]object ( Content )ঐচ্ছিক। শুধুমাত্র ইনপুট। অপরিবর্তনীয়। ক্যাশে করার বিষয়বস্তু।
tools[]object ( Tool ) ঐচ্ছিক। শুধুমাত্র ইনপুট। অপরিবর্তনীয়। পরবর্তী প্রতিক্রিয়া তৈরি করতে মডেলটি Tools ব্যবহার করতে পারে তার একটি তালিকা।
expirationUnion typeexpiration নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে: expireTimestring ( Timestamp format)এই রিসোর্সটি কখন মেয়াদোত্তীর্ণ বলে বিবেচিত হবে, তার UTC টাইমস্ট্যাম্প। ইনপুটে যা-ই পাঠানো হোক না কেন, এটি আউটপুটে সর্বদা প্রদান করা হয়।
RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
ttlstring ( Duration format)শুধুমাত্র ইনপুট। এই রিসোর্সের জন্য নতুন TTL, শুধুমাত্র ইনপুট।
সেকেন্ডে পরিমাপকৃত সময়কাল, যা সর্বোচ্চ নয়টি ভগ্নাংশ অঙ্ক পর্যন্ত হতে পারে এবং শেষে ' s ' থাকে। উদাহরণ: "3.5s" ।
displayNamestringঐচ্ছিক। অপরিবর্তনীয়। ক্যাশ করা কন্টেন্টের জন্য ব্যবহারকারী-সৃষ্ট অর্থপূর্ণ প্রদর্শিত নাম। সর্বোচ্চ ১২৮টি ইউনিকোড অক্ষর।
modelstring আবশ্যক। অপরিবর্তনীয়। ক্যাশ করা কন্টেন্টের জন্য ব্যবহৃত Model নাম। ফরম্যাট: models/{model}
systemInstructionobject ( Content )ঐচ্ছিক। শুধুমাত্র ইনপুটযোগ্য। অপরিবর্তনীয়। ডেভেলপার কর্তৃক নির্ধারিত সিস্টেম নির্দেশ। বর্তমানে শুধুমাত্র টেক্সট হিসেবে উপলব্ধ।
toolConfigobject ( ToolConfig )ঐচ্ছিক। শুধুমাত্র ইনপুট। অপরিবর্তনীয়। টুল কনফিগারেশন। এই কনফিগারেশনটি সকল টুলের জন্য ব্যবহৃত হবে।
উদাহরণ অনুরোধ
মৌলিক
পাইথন
নোড.জেএস
যান
খোলস
নাম থেকে
পাইথন
নোড.জেএস
যান
চ্যাট থেকে
পাইথন
নোড.জেএস
যান
প্রতিক্রিয়া সংস্থা
সফল হলে, রেসপন্স বডিতে CachedContent এর একটি নতুন তৈরি হওয়া ইনস্ট্যান্স থাকে।
পদ্ধতি: cachedContents.list
ক্যাশ করা বিষয়বস্তু তালিকাভুক্ত করে।
এন্ডপয়েন্ট
https: / /generativelanguage.googleapis.com /v1beta /cachedContents পানকোয়েরি প্যারামিটার
pageSizeintegerঐচ্ছিক। ফেরত দেওয়ার জন্য ক্যাশ করা কন্টেন্টের সর্বোচ্চ সংখ্যা। পরিষেবাটি এই মানের চেয়ে কমও ফেরত দিতে পারে। যদি নির্দিষ্ট না করা হয়, তাহলে ডিফল্ট (সর্বোচ্চের চেয়ে কম) সংখ্যক আইটেম ফেরত দেওয়া হবে। সর্বোচ্চ মান হলো ১০০০; ১০০০-এর উপরের মানগুলোকে ১০০০-এ রূপান্তরিত করা হবে।
pageTokenstring ঐচ্ছিক। পূর্ববর্তী cachedContents.list কল থেকে প্রাপ্ত একটি পেজ টোকেন। পরবর্তী পেজটি পুনরুদ্ধার করতে এটি প্রদান করুন।
পেজিনেশন করার সময়, cachedContents.list এ প্রদত্ত অন্য সকল প্যারামিটার অবশ্যই সেই কলের সাথে মিলতে হবে যা পেজ টোকেনটি প্রদান করেছে।
অনুরোধকারী শরীর
অনুরোধের মূল অংশ অবশ্যই খালি হতে হবে।
প্রতিক্রিয়া সংস্থা
CachedContents তালিকা সহ প্রতিক্রিয়া।
সফল হলে, প্রতিক্রিয়া অংশে নিম্নলিখিত কাঠামোসহ ডেটা থাকে:
cachedContents[]object ( CachedContent )ক্যাশে করা বিষয়বস্তুর তালিকা।
nextPageTokenstring একটি টোকেন, যা পরবর্তী পৃষ্ঠা আনার জন্য pageToken হিসেবে পাঠানো যেতে পারে। এই ক্ষেত্রটি বাদ দিলে, পরবর্তী কোনো পৃষ্ঠা থাকবে না।
| JSON উপস্থাপনা |
|---|
{
"cachedContents": [
{
object ( |
পদ্ধতি: cachedContents.get
CachedContent রিসোর্সটি পড়ে।
এন্ডপয়েন্ট
gethttps: / /generativelanguage.googleapis.com /v1beta /{name=cachedContents /*}পথের পরামিতি
namestring আবশ্যক। কন্টেন্ট ক্যাশ এন্ট্রিকে নির্দেশকারী রিসোর্সের নাম। ফরম্যাট: cachedContents/{id} এটি cachedContents/{cachedcontent} আকারে থাকে।
অনুরোধকারী শরীর
অনুরোধের মূল অংশ অবশ্যই খালি হতে হবে।
উদাহরণ অনুরোধ
পাইথন
নোড.জেএস
যান
খোলস
প্রতিক্রিয়া সংস্থা
সফল হলে, রেসপন্স বডিতে CachedContent এর একটি ইনস্ট্যান্স থাকে।
পদ্ধতি: cachedContents.patch
- এন্ডপয়েন্ট
- পথের পরামিতি
- কোয়েরি প্যারামিটার
- অনুরোধকারী শরীর
- প্রতিক্রিয়া সংস্থা
- অনুমোদনের পরিধি
- উদাহরণ অনুরোধ
CachedContent রিসোর্স আপডেট করে (শুধুমাত্র মেয়াদোত্তীর্ণের তারিখ আপডেটযোগ্য)।
এন্ডপয়েন্ট
patchhttps: / /generativelanguage.googleapis.com /v1beta /{cachedContent.name=cachedContents /*}PATCH https://generativelanguage.googleapis.com/v1beta/{cachedContent.name=cachedContents/*} পথের পরামিতি
cachedContent.namestring শুধুমাত্র আউটপুট। শনাক্তকারী। ক্যাশ করা বিষয়বস্তুকে নির্দেশকারী রিসোর্সের নাম। ফরম্যাট: cachedContents/{id} এটি cachedContents/{cachedcontent} আকারে থাকে।
কোয়েরি প্যারামিটার
updateMaskstring ( FieldMask format)আপডেট করার জন্য ফিল্ডগুলির তালিকা।
এটি ফিল্ডগুলোর পূর্ণাঙ্গ নামের একটি কমা-দ্বারা-বিভক্ত তালিকা। উদাহরণ: "user.displayName,photo" ।
অনুরোধকারী শরীর
অনুরোধের বডিতে CachedContent এর একটি ইনস্ট্যান্স থাকে।
expirationUnion typeexpiration নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে: expireTimestring ( Timestamp format)এই রিসোর্সটি কখন মেয়াদোত্তীর্ণ বলে বিবেচিত হবে, তার UTC টাইমস্ট্যাম্প। ইনপুটে যা-ই পাঠানো হোক না কেন, এটি আউটপুটে সর্বদা প্রদান করা হয়।
RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
ttlstring ( Duration format)শুধুমাত্র ইনপুট। এই রিসোর্সের জন্য নতুন TTL, শুধুমাত্র ইনপুট।
সেকেন্ডে পরিমাপকৃত সময়কাল, যা সর্বোচ্চ নয়টি ভগ্নাংশ অঙ্ক পর্যন্ত হতে পারে এবং শেষে ' s ' থাকে। উদাহরণ: "3.5s" ।
উদাহরণ অনুরোধ
পাইথন
নোড.জেএস
যান
খোলস
প্রতিক্রিয়া সংস্থা
সফল হলে, রেসপন্স বডিতে CachedContent এর একটি ইনস্ট্যান্স থাকে।
পদ্ধতি: cachedContents.delete
CachedContent রিসোর্সটি মুছে ফেলে।
এন্ডপয়েন্ট
https: / /generativelanguage.googleapis.com /v1beta /{name=cachedContents /*} মুছে ফেলুনপথের পরামিতি
namestring আবশ্যক। কন্টেন্ট ক্যাশ এন্ট্রিকে নির্দেশকারী রিসোর্সের নাম। ফরম্যাট: cachedContents/{id} এটি cachedContents/{cachedcontent} আকারে থাকে।
অনুরোধকারী শরীর
অনুরোধের মূল অংশ অবশ্যই খালি হতে হবে।
উদাহরণ অনুরোধ
পাইথন
নোড.জেএস
যান
খোলস
প্রতিক্রিয়া সংস্থা
সফল হলে, রেসপন্স বডিটি একটি খালি JSON অবজেক্ট হয়।
REST রিসোর্স: ক্যাশড কন্টেন্টস
- উৎস: ক্যাশড কন্টেন্ট
- বিষয়বস্তু
- অংশ
- ব্লব
- ফাংশনকল
- ফাংশন প্রতিক্রিয়া
- ফাংশন প্রতিক্রিয়া অংশ
- ফাংশনরেসপন্সব্লব
- সময়সূচী
- ফাইলডেটা
- এক্সিকিউটেবলকোড
- ভাষা
- কোড এক্সিকিউশন রেজাল্ট
- ফলাফল
- টুলকল
- টুলটাইপ
- টুলরেসপন্স
- ভিডিওমেটাডেটা
- মিডিয়ারেজোলিউশন
- স্তর
- সরঞ্জাম
- ফাংশন ঘোষণা
- স্কিমা
- প্রকার
- আচরণ
- গুগলসার্চরিট্রিভাল
- ডাইনামিকরিট্রিভালকনফিগ
- মোড
- কোডএক্সিকিউশন
- গুগল অনুসন্ধান
- ব্যবধান
- অনুসন্ধানের ধরণ
- ওয়েবসার্চ
- ইমেজসার্চ
- কম্পিউটার ব্যবহার
- পরিবেশ
- ইউআরএলপ্রসঙ্গ
- ফাইলসার্চ
- McpServer
- স্ট্রিমেবলএইচটিটিপিট্রান্সপোর্ট
- গুগলম্যাপস
- টুলকনফিগ
- ফাংশনকলিংকনফিগ
- মোড
- পুনরুদ্ধার কনফিগারেশন
- অক্ষাংশ দ্রাঘিমাংশ
- ব্যবহার মেটাডেটা
- পদ্ধতি
উৎস: ক্যাশড কন্টেন্ট
যে কন্টেন্টটি পূর্ব-প্রক্রিয়াজাত করা হয়েছে এবং যা জেনারেটিভসার্ভিস-এ পরবর্তী অনুরোধে ব্যবহার করা যাবে।
ক্যাশ করা কন্টেন্ট শুধুমাত্র সেই মডেলের সাথেই ব্যবহার করা যাবে, যেটির জন্য এটি তৈরি করা হয়েছে।
contents[]object ( Content )ঐচ্ছিক। শুধুমাত্র ইনপুট। অপরিবর্তনীয়। ক্যাশে করার বিষয়বস্তু।
tools[]object ( Tool ) ঐচ্ছিক। শুধুমাত্র ইনপুট। অপরিবর্তনীয়। পরবর্তী প্রতিক্রিয়া তৈরি করতে মডেলটি Tools ব্যবহার করতে পারে তার একটি তালিকা।
createTimestring ( Timestamp format)শুধুমাত্র আউটপুট। ক্যাশ এন্ট্রি তৈরির সময়।
RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
updateTimestring ( Timestamp format)শুধুমাত্র আউটপুট। UTC সময় অনুযায়ী ক্যাশ এন্ট্রিটি সর্বশেষ কখন আপডেট করা হয়েছিল।
RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
usageMetadataobject ( UsageMetadata )শুধুমাত্র আউটপুট। ক্যাশ করা কন্টেন্টের ব্যবহার সংক্রান্ত মেটাডেটা।
expirationUnion typeexpiration নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে: expireTimestring ( Timestamp format)এই রিসোর্সটি কখন মেয়াদোত্তীর্ণ বলে বিবেচিত হবে, তার UTC টাইমস্ট্যাম্প। ইনপুটে যা-ই পাঠানো হোক না কেন, এটি আউটপুটে সর্বদা প্রদান করা হয়।
RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
ttlstring ( Duration format)শুধুমাত্র ইনপুট। এই রিসোর্সের জন্য নতুন TTL, শুধুমাত্র ইনপুট।
সেকেন্ডে পরিমাপকৃত সময়কাল, যা সর্বোচ্চ নয়টি ভগ্নাংশ অঙ্ক পর্যন্ত হতে পারে এবং শেষে ' s ' থাকে। উদাহরণ: "3.5s" ।
namestring শুধুমাত্র আউটপুট। শনাক্তকারী। ক্যাশ করা বিষয়বস্তুকে নির্দেশকারী রিসোর্সের নাম। ফরম্যাট: cachedContents/{id}
displayNamestringঐচ্ছিক। অপরিবর্তনীয়। ক্যাশ করা কন্টেন্টের জন্য ব্যবহারকারী-সৃষ্ট অর্থপূর্ণ প্রদর্শিত নাম। সর্বোচ্চ ১২৮টি ইউনিকোড অক্ষর।
modelstring আবশ্যক। অপরিবর্তনীয়। ক্যাশ করা কন্টেন্টের জন্য ব্যবহৃত Model নাম। ফরম্যাট: models/{model}
systemInstructionobject ( Content )ঐচ্ছিক। শুধুমাত্র ইনপুটযোগ্য। অপরিবর্তনীয়। ডেভেলপার কর্তৃক নির্ধারিত সিস্টেম নির্দেশ। বর্তমানে শুধুমাত্র টেক্সট হিসেবে উপলব্ধ।
toolConfigobject ( ToolConfig )ঐচ্ছিক। শুধুমাত্র ইনপুট। অপরিবর্তনীয়। টুল কনফিগারেশন। এই কনফিগারেশনটি সকল টুলের জন্য ব্যবহৃত হবে।
| JSON উপস্থাপনা |
|---|
{ "contents": [ { object ( |
বিষয়বস্তু
একটি বার্তার বহু-অংশবিশিষ্ট বিষয়বস্তু ধারণকারী মূল কাঠামোগত ডেটাটাইপ।
একটি Content একটি role ' ফিল্ড থাকে যা Content প্রযোজককে নির্দেশ করে এবং একটি ' parts ' ফিল্ড থাকে, যাতে বহু-অংশবিশিষ্ট ডেটা থাকে যা মেসেজ টার্নের বিষয়বস্তু ধারণ করে।
parts[]object ( Part ) ক্রমবিন্যস্ত Parts যা একটি একক বার্তা গঠন করে। অংশগুলোর ভিন্ন ভিন্ন MIME টাইপ থাকতে পারে।
rolestringঐচ্ছিক। বিষয়বস্তুর প্রযোজক। অবশ্যই 'ব্যবহারকারী' অথবা 'মডেল' হতে হবে।
একাধিক পালায় কথোপকথনের জন্য এটি সেট করা সুবিধাজনক, অন্যথায় এটি খালি বা সেট না করেও রাখা যেতে পারে।
| JSON উপস্থাপনা |
|---|
{
"parts": [
{
object ( |
অংশ
একটি ডেটাটাইপ যা একটি বহু-অংশবিশিষ্ট Content মেসেজের অংশ এমন মিডিয়া ধারণ করে।
একটি Part এমন ডেটা নিয়ে গঠিত যার একটি সংশ্লিষ্ট ডেটাটাইপ থাকে। একটি Part Part.data তে থাকা স্বীকৃত টাইপগুলোর মধ্যে শুধুমাত্র একটিই থাকতে পারে।
যদি inlineData ফিল্ডটি র' বাইট দিয়ে পূরণ করা হয়, তাহলে একটি Part অবশ্যই একটি নির্দিষ্ট IANA MIME টাইপ থাকতে হবে যা মিডিয়ার টাইপ এবং সাবটাইপ শনাক্ত করে।
thoughtbooleanঐচ্ছিক। অংশটি মডেল থেকে ভাবা হয়েছে কিনা তা নির্দেশ করে।
thoughtSignaturestring ( bytes format)ঐচ্ছিক। ভাবনার জন্য একটি অস্বচ্ছ স্বাক্ষর, যাতে এটি পরবর্তী অনুরোধগুলিতে পুনরায় ব্যবহার করা যায়।
একটি বেস৬৪-এনকোডেড স্ট্রিং।
partMetadataobject ( Struct format)পার্টটির সাথে যুক্ত কাস্টম মেটাডেটা। যে এজেন্টরা কন্টেন্ট রিপ্রেজেন্টেশন হিসেবে genai.Part ব্যবহার করেন, তাদের এই অতিরিক্ত তথ্যগুলোর হিসাব রাখার প্রয়োজন হতে পারে। উদাহরণস্বরূপ, এটি হতে পারে সেই ফাইল/সোর্সের নাম যেখান থেকে পার্টটি তৈরি হয়েছে, অথবা একাধিক পার্ট স্ট্রিমকে মাল্টিপ্লেক্স করার কোনো উপায়।
mediaResolutionobject ( MediaResolution )ঐচ্ছিক। ইনপুট মিডিয়ার জন্য মিডিয়া রেজোলিউশন।
dataUnion typedata নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:textstringইনলাইন টেক্সট।
inlineDataobject ( Blob )ইনলাইন মিডিয়া বাইট।
functionCallobject ( FunctionCall ) মডেল থেকে ফেরত আসা একটি পূর্বাভাসিত FunctionCall , যাতে FunctionDeclaration.name এর প্রতিনিধিত্বকারী একটি স্ট্রিং-এর সাথে আর্গুমেন্ট এবং তাদের মানগুলো থাকে।
functionResponseobject ( FunctionResponse ) একটি FunctionCall এর ফলাফল আউটপুট, যাতে FunctionDeclaration.name কে প্রতিনিধিত্বকারী একটি স্ট্রিং এবং ফাংশন থেকে প্রাপ্ত যেকোনো আউটপুট ধারণকারী একটি স্ট্রাকচার্ড JSON অবজেক্ট থাকে, তা মডেলের কনটেক্সট হিসেবে ব্যবহৃত হয়।
fileDataobject ( FileData )URI ভিত্তিক ডেটা।
executableCodeobject ( ExecutableCode )মডেল দ্বারা তৈরি কোড যা কার্যকর করার জন্য নির্ধারিত।
codeExecutionResultobject ( CodeExecutionResult ) ExecutableCode কার্যকর করার ফলাফল।
toolCallobject ( ToolCall )সার্ভার-সাইড টুল কল। যখন মডেল এমন কোনো টুল আহ্বানের পূর্বাভাস দেয় যা সার্ভারে চালানো উচিত, তখন এই ফিল্ডটি পূরণ করা হয়। ক্লায়েন্টের কাছ থেকে এই বার্তাটি এপিআই-তে ফেরত পাঠানোর কথা।
toolResponseobject ( ToolResponse ) সার্ভার-সাইড ToolCall নির্বাহের আউটপুট। এই ফিল্ডটি ক্লায়েন্ট দ্বারা সংশ্লিষ্ট ToolCall নির্বাহের ফলাফল দিয়ে পূরণ করা হয়।
metadataUnion typemetadata নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:videoMetadataobject ( VideoMetadata )ঐচ্ছিক। ভিডিও মেটাডেটা। মেটাডেটা শুধুমাত্র তখনই উল্লেখ করা উচিত যখন ভিডিও ডেটা inlineData বা fileData-তে উপস্থাপন করা হয়।
| JSON উপস্থাপনা |
|---|
{ "thought": boolean, "thoughtSignature": string, "partMetadata": { object }, "mediaResolution": { object ( |
ব্লব
কাঁচা মিডিয়া বাইট।
টেক্সট সরাসরি বাইট হিসেবে পাঠানো উচিত নয়, 'টেক্সট' ফিল্ডটি ব্যবহার করুন।
mimeTypestringউৎস ডেটার IANA স্ট্যান্ডার্ড MIME টাইপ। উদাহরণ: - image/png - image/jpeg যদি কোনো অসমর্থিত MIME টাইপ প্রদান করা হয়, তাহলে একটি ত্রুটি দেখানো হবে। সমর্থিত টাইপগুলোর সম্পূর্ণ তালিকার জন্য, সমর্থিত ফাইল ফরম্যাটসমূহ দেখুন।
datastring ( bytes format)মিডিয়া ফরম্যাটের জন্য কাঁচা বাইট।
একটি বেস৬৪-এনকোডেড স্ট্রিং।
| JSON উপস্থাপনা |
|---|
{ "mimeType": string, "data": string } |
ফাংশনকল
মডেল থেকে ফেরত আসা একটি পূর্বাভাসিত FunctionCall , যাতে FunctionDeclaration.name এর প্রতিনিধিত্বকারী একটি স্ট্রিং-এর সাথে আর্গুমেন্ট এবং তাদের মানগুলো থাকে।
idstring ঐচ্ছিক। ফাংশন কলের অনন্য শনাক্তকারী। এটি পূরণ করা হলে, ক্লায়েন্ট functionCall কার্যকর করবে এবং মিলে যাওয়া id সহ প্রতিক্রিয়াটি ফেরত দেবে।
namestringআবশ্যক। যে ফাংশনটি কল করতে হবে তার নাম। এটি অবশ্যই az, AZ, 0-9 হতে হবে অথবা এতে আন্ডারস্কোর এবং ড্যাশ থাকতে হবে, এবং এর সর্বোচ্চ দৈর্ঘ্য ১২৮।
argsobject ( Struct format)ঐচ্ছিক। ফাংশনের প্যারামিটার এবং মানগুলো JSON অবজেক্ট ফরম্যাটে থাকবে।
| JSON উপস্থাপনা |
|---|
{ "id": string, "name": string, "args": { object } } |
ফাংশন প্রতিক্রিয়া
একটি FunctionCall থেকে প্রাপ্ত ফলাফল, যাতে FunctionDeclaration.name কে প্রতিনিধিত্বকারী একটি স্ট্রিং এবং ফাংশনের যেকোনো আউটপুট ধারণকারী একটি স্ট্রাকচার্ড JSON অবজেক্ট থাকে, তা মডেলের কনটেক্সট হিসেবে ব্যবহৃত হয়। এতে মডেলের পূর্বাভাসের উপর ভিত্তি করে করা একটি FunctionCall এর ফলাফল থাকা উচিত।
idstring ঐচ্ছিক। যে ফাংশন কলের জন্য এই প্রতিক্রিয়াটি, তার শনাক্তকারী। সংশ্লিষ্ট ফাংশন কল id সাথে মেলানোর জন্য ক্লায়েন্ট দ্বারা এটি পূরণ করা হয়।
namestringআবশ্যক। যে ফাংশনটি কল করতে হবে তার নাম। এটি অবশ্যই az, AZ, 0-9 হতে হবে অথবা এতে আন্ডারস্কোর এবং ড্যাশ থাকতে হবে, এবং এর সর্বোচ্চ দৈর্ঘ্য ১২৮।
responseobject ( Struct format)প্রয়োজনীয়। ফাংশনের প্রতিক্রিয়া JSON অবজেক্ট ফরম্যাটে হতে হবে। কলাররা ফাংশনের আউটপুট ফেরত দেওয়ার জন্য ফাংশনের সিনট্যাক্স অনুযায়ী তাদের পছন্দমতো যেকোনো কী (key) ব্যবহার করতে পারে, যেমন "output", "result", ইত্যাদি। বিশেষ করে, যদি ফাংশন কলটি কার্যকর হতে ব্যর্থ হয়, তাহলে মডেলে ত্রুটির বিবরণ ফেরত পাঠানোর জন্য প্রতিক্রিয়ায় একটি "error" কী থাকতে পারে।
parts[]object ( FunctionResponsePart ) ঐচ্ছিক। অর্ডারকৃত Parts যা একটি ফাংশন রেসপন্স গঠন করে। পার্টসগুলোর ভিন্ন ভিন্ন IANA MIME টাইপ থাকতে পারে।
willContinueboolean ঐচ্ছিক। এটি নির্দেশ করে যে ফাংশন কলটি চলতে থাকবে এবং আরও প্রতিক্রিয়া ফেরত দেওয়া হবে, যা ফাংশন কলটিকে একটি জেনারেটরে পরিণত করে। এটি শুধুমাত্র নন-ব্লকিং (NON_BLOCKING) ফাংশন কলের ক্ষেত্রে প্রযোজ্য, অন্যথায় উপেক্ষা করা হয়। যদি এটি ফলস (false) সেট করা হয়, তাহলে ভবিষ্যতের প্রতিক্রিয়াগুলো বিবেচনা করা হবে না। ফাংশন কলটি শেষ হয়েছে তা বোঝাতে willContinue=False সহ একটি খালি response ফেরত দেওয়ার অনুমতি আছে। এটি মডেল জেনারেশনকে ট্রিগার করতে পারে। জেনারেশন ট্রিগার হওয়া এড়াতে এবং ফাংশন কলটি শেষ করতে, অতিরিক্তভাবে scheduling SILENT এ সেট করুন।
schedulingenum ( Scheduling )ঐচ্ছিক। কথোপকথনে প্রতিক্রিয়াটি কীভাবে নির্ধারিত হবে তা নির্দিষ্ট করে। শুধুমাত্র NON_BLOCKING ফাংশন কলের ক্ষেত্রে প্রযোজ্য, অন্যথায় উপেক্ষা করা হয়। ডিফল্ট মান হলো WHEN_IDLE।
| JSON উপস্থাপনা |
|---|
{ "id": string, "name": string, "response": { object }, "parts": [ { object ( |
ফাংশন প্রতিক্রিয়া অংশ
একটি ডেটাটাইপ যা FunctionResponse মেসেজের অংশ এমন মিডিয়া ধারণ করে।
একটি FunctionResponsePart এমন ডেটা থাকে যার একটি সংশ্লিষ্ট ডেটাটাইপ রয়েছে। একটি FunctionResponsePart শুধুমাত্র FunctionResponsePart.data তে থাকা স্বীকৃত টাইপগুলোর মধ্যে একটি ধারণ করতে পারে।
যদি inlineData ফিল্ডটি র ডেটা বাইট দিয়ে পূরণ করা হয়, তাহলে একটি FunctionResponsePart অবশ্যই একটি নির্দিষ্ট IANA MIME টাইপ থাকতে হবে, যা মিডিয়ার ধরন এবং উপ-ধরন শনাক্ত করে।
dataUnion typedata নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে: inlineDataobject ( FunctionResponseBlob )ইনলাইন মিডিয়া বাইট।
| JSON উপস্থাপনা |
|---|
{
// data
"inlineData": {
object ( |
ফাংশনরেসপন্সব্লব
ফাংশন প্রতিক্রিয়ার জন্য কাঁচা মিডিয়া বাইট।
টেক্সট সরাসরি বাইট হিসেবে পাঠানো উচিত নয়, 'FunctionResponse.response' ফিল্ডটি ব্যবহার করুন।
mimeTypestringউৎস ডেটার IANA স্ট্যান্ডার্ড MIME টাইপ। উদাহরণ: - image/png - image/jpeg যদি কোনো অসমর্থিত MIME টাইপ প্রদান করা হয়, তাহলে একটি ত্রুটি দেখানো হবে। সমর্থিত টাইপগুলোর সম্পূর্ণ তালিকার জন্য, সমর্থিত ফাইল ফরম্যাটসমূহ দেখুন।
datastring ( bytes format)মিডিয়া ফরম্যাটের জন্য কাঁচা বাইট।
একটি বেস৬৪-এনকোডেড স্ট্রিং।
| JSON উপস্থাপনা |
|---|
{ "mimeType": string, "data": string } |
সময়সূচী
কথোপকথনে প্রতিক্রিয়াটি কীভাবে নির্ধারিত হবে তা নির্দিষ্ট করে।
| এনাম | |
|---|---|
SCHEDULING_UNSPECIFIED | এই মানটি অব্যবহৃত। |
SILENT | ফলাফলটি শুধুমাত্র কথোপকথনের প্রসঙ্গে যোগ করুন, এটিকে বাধা দেবেন না বা এর সৃষ্টি প্রক্রিয়াকে সক্রিয় করবেন না। |
WHEN_IDLE | ফলাফলটি কথোপকথনের প্রসঙ্গে যোগ করুন, এবং চলমান জেনারেশনে বাধা না দিয়ে আউটপুট তৈরি করার জন্য অনুরোধ করুন। |
INTERRUPT | ফলাফলটি কথোপকথনের প্রসঙ্গে যোগ করুন, চলমান জেনারেশন বন্ধ করুন এবং আউটপুট তৈরি করতে বলুন। |
ফাইলডেটা
URI ভিত্তিক ডেটা।
mimeTypestringঐচ্ছিক। উৎস ডেটার IANA স্ট্যান্ডার্ড MIME টাইপ।
fileUristringআবশ্যক। ইউআরআই।
| JSON উপস্থাপনা |
|---|
{ "mimeType": string, "fileUri": string } |
এক্সিকিউটেবলকোড
মডেল দ্বারা তৈরি কোড যা কার্যকর করার জন্য নির্ধারিত, এবং এর ফলাফল যা মডেলে ফেরত পাঠানো হয়।
এটি শুধুমাত্র CodeExecution টুল ব্যবহার করার সময় তৈরি হয়, যেখানে কোডটি স্বয়ংক্রিয়ভাবে এক্সিকিউট হবে এবং একটি সংশ্লিষ্ট CodeExecutionResult ও তৈরি হবে।
idstring ঐচ্ছিক। ExecutableCode অংশের অনন্য শনাক্তকারী। সার্ভারটি মিলে যাওয়া id সহ CodeExecutionResult ফেরত দেয়।
languageenum ( Language ) প্রয়োজনীয়। code প্রোগ্রামিং ভাষা।
codestringপ্রয়োজনীয়। যে কোডটি নির্বাহ করতে হবে।
| JSON উপস্থাপনা |
|---|
{
"id": string,
"language": enum ( |
ভাষা
তৈরি করা কোডের জন্য সমর্থিত প্রোগ্রামিং ভাষাসমূহ।
| এনাম | |
|---|---|
LANGUAGE_UNSPECIFIED | অনির্দিষ্ট ভাষা। এই মানটি ব্যবহার করা উচিত নয়। |
PYTHON | পাইথন >= ৩.১০, সাথে নামপাই (numpy) এবং সিমপাই (simpy) উপলব্ধ। পাইথন হলো ডিফল্ট ভাষা। |
কোড এক্সিকিউশন রেজাল্ট
ExecutableCode কার্যকর করার ফলাফল।
শুধুমাত্র CodeExecution টুল ব্যবহার করা হলেই এটি তৈরি হয়।
idstring ঐচ্ছিক। এই ফলাফলটি যে ExecutableCode অংশের জন্য, তার শনাক্তকারী। শুধুমাত্র তখনই পূরণ করা হবে যখন সংশ্লিষ্ট ExecutableCode একটি আইডি থাকবে।
outcomeenum ( Outcome )প্রয়োজনীয়। কোড সম্পাদনের ফলাফল।
outputstringঐচ্ছিক। কোড কার্যকর হলে stdout থাকে, অন্যথায় stderr বা অন্য কোনো বিবরণ থাকে।
| JSON উপস্থাপনা |
|---|
{
"id": string,
"outcome": enum ( |
ফলাফল
কোড নির্বাহের সম্ভাব্য ফলাফলসমূহের তালিকা।
| এনাম | |
|---|---|
OUTCOME_UNSPECIFIED | অনির্দিষ্ট অবস্থা। এই মানটি ব্যবহার করা উচিত নয়। |
OUTCOME_OK | কোড সফলভাবে কার্যকর হয়েছে। output stdout অন্তর্ভুক্ত থাকবে, যদি থাকে। |
OUTCOME_FAILED | কোড কার্যকর করা ব্যর্থ হয়েছে। output stderr এবং stdout (যদি থাকে) অন্তর্ভুক্ত থাকবে। |
OUTCOME_DEADLINE_EXCEEDED | কোডটি অনেকক্ষণ ধরে চলার কারণে বাতিল করা হয়েছে। আংশিক output থাকতেও পারে, আবার নাও থাকতে পারে। |
টুলকল
মডেল থেকে ফেরত আসা একটি পূর্বাভাসিত সার্ভার-সাইড ToolCall । এই মেসেজটিতে এমন একটি টুল সম্পর্কে তথ্য থাকে যা মডেলটি চালু করতে চায়। ক্লায়েন্টের এই ToolCall কার্যকর করার কথা নয়। এর পরিবর্তে, ক্লায়েন্টের উচিত পরবর্তী ধাপে একটি Content মেসেজের মধ্যে সংশ্লিষ্ট ToolResponse সহ এই ToolCall এপিআই-তে ফেরত পাঠানো।
idstring ঐচ্ছিক। টুল কলের অনন্য শনাক্তকারী। সার্ভারটি মিলে যাওয়া id সহ টুল রেসপন্সটি ফেরত পাঠায়।
toolTypeenum ( ToolType )প্রয়োজনীয়। যে ধরনের টুল ডাকা হয়েছিল।
argsobject ( Struct format)ঐচ্ছিক। টুল কল করার আর্গুমেন্ট। উদাহরণ: {"arg1" : "value1", "arg2" : "value2" , ...}
| JSON উপস্থাপনা |
|---|
{
"id": string,
"toolType": enum ( |
টুলটাইপ
ফাংশন কলে ব্যবহৃত টুলের ধরন।
| এনাম | |
|---|---|
TOOL_TYPE_UNSPECIFIED | অনির্দিষ্ট সরঞ্জামের ধরণ। |
GOOGLE_SEARCH_WEB | গুগল সার্চ টুল, Tool.google_search.search_types.web_search-এর সাথে ম্যাপ করা হয়েছে। |
GOOGLE_SEARCH_IMAGE | ইমেজ সার্চ টুল, যা Tool.google_search.search_types.image_search-এর সাথে ম্যাপ করা হয়। |
URL_CONTEXT | URL কনটেক্সট টুল, Tool.url_context-এর সাথে ম্যাপ করে। |
GOOGLE_MAPS | গুগল ম্যাপস টুল, ম্যাপস টু টুল.গুগল_ম্যাপস। |
FILE_SEARCH | ফাইল অনুসন্ধান টুল, যা Tool.file_search-এর সাথে ম্যাপ করা হয়েছে। |
টুলরেসপন্স
সার্ভার-সাইড ToolCall এক্সিকিউশনের আউটপুট। এই মেসেজটিতে এমন একটি টুল ইনভোকেশনের ফলাফল থাকে, যা মডেল থেকে আসা একটি ToolCall মাধ্যমে শুরু করা হয়েছিল। ক্লায়েন্টের উচিত পরবর্তী ধাপে একটি Content মেসেজের মধ্যে এই ToolResponse , সংশ্লিষ্ট ToolCall , এপিআই-তে ফেরত পাঠানো।
idstringঐচ্ছিক। যে টুল কলের জন্য এই প্রতিক্রিয়াটি দেওয়া হচ্ছে, তার শনাক্তকারী।
toolTypeenum ( ToolType ) আবশ্যক। যে টুলটি কল করা হয়েছে তার ধরন, যা সংশ্লিষ্ট ToolCall এর toolType সাথে মিলতে হবে।
responseobject ( Struct format)ঐচ্ছিক। টুলটির প্রতিক্রিয়া।
| JSON উপস্থাপনা |
|---|
{
"id": string,
"toolType": enum ( |
ভিডিওমেটাডেটা
অপ্রচলিত: এর পরিবর্তে GenerateContentRequest.processing_options ব্যবহার করুন। মেটাডেটা ইনপুট ভিডিও কন্টেন্টের বর্ণনা দেয়।
startOffsetstring ( Duration format)ঐচ্ছিক। ভিডিওটির শুরুর অফসেট।
সেকেন্ডে পরিমাপকৃত সময়কাল, যা সর্বোচ্চ নয়টি ভগ্নাংশ অঙ্ক পর্যন্ত হতে পারে এবং শেষে ' s ' থাকে। উদাহরণ: "3.5s" ।
endOffsetstring ( Duration format)ঐচ্ছিক। ভিডিওটির শেষ অফসেট।
সেকেন্ডে পরিমাপকৃত সময়কাল, যা সর্বোচ্চ নয়টি ভগ্নাংশ অঙ্ক পর্যন্ত হতে পারে এবং শেষে ' s ' থাকে। উদাহরণ: "3.5s" ।
fpsnumberঐচ্ছিক। মডেলে পাঠানো ভিডিওর ফ্রেম রেট। নির্দিষ্ট করে না দিলে, ডিফল্ট মান হবে ১.০। এফপিএস পরিসীমা হলো (০.০, ২৪.০)।
| JSON উপস্থাপনা |
|---|
{ "startOffset": string, "endOffset": string, "fps": number } |
মিডিয়ারেজোলিউশন
টোকেনাইজেশনের জন্য মিডিয়া রেজোলিউশন।
valueUnion typevalue নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:levelenum ( Level ) প্রদত্ত মিডিয়ার জন্য ব্যবহৃত টোকেনাইজেশন গুণমান।
| JSON উপস্থাপনা |
|---|
{
// value
"level": enum ( |
স্তর
মিডিয়া রেজোলিউশন লেভেল।
| এনাম | |
|---|---|
MEDIA_RESOLUTION_UNSPECIFIED | মিডিয়া রেজোলিউশন সেট করা হয়নি। |
MEDIA_RESOLUTION_LOW | মিডিয়া রেজোলিউশন নিম্নতে সেট করা হয়েছে। |
MEDIA_RESOLUTION_MEDIUM | মিডিয়া রেজোলিউশন মাঝারিতে সেট করা হয়েছে। |
MEDIA_RESOLUTION_HIGH | মিডিয়া রেজোলিউশন উচ্চতে সেট করা হয়েছে। |
MEDIA_RESOLUTION_ULTRA_HIGH | মিডিয়া রেজোলিউশন আল্ট্রা হাই-তে সেট করা হয়েছে। |
সরঞ্জাম
মডেলটি প্রতিক্রিয়া তৈরি করতে যে টুলের বিবরণ ব্যবহার করতে পারে।
Tool হলো এক খণ্ড কোড যা সিস্টেমকে বাহ্যিক সিস্টেমের সাথে যোগাযোগ করে এমন কোনো কাজ বা একাধিক কাজ সম্পাদন করতে সক্ষম করে, যা মডেলের জ্ঞান ও পরিধির বাইরে থাকে।
পরবর্তী আইডি: ১৬
functionDeclarations[]object ( FunctionDeclaration ) ঐচ্ছিক। মডেলে উপলব্ধ FunctionDeclarations একটি তালিকা যা ফাংশন কল করার জন্য ব্যবহার করা যেতে পারে।
মডেল বা সিস্টেমটি ফাংশনটি সম্পাদন করে না। এর পরিবর্তে, সংজ্ঞায়িত ফাংশনটি এক্সিকিউশনের জন্য আর্গুমেন্টসহ একটি FunctionCall হিসেবে ক্লায়েন্ট সাইডে ফেরত পাঠানো হতে পারে। মডেলটি রেসপন্সে FunctionCall পূরণ করার মাধ্যমে এই ফাংশনগুলোর একটি উপসেট কল করার সিদ্ধান্ত নিতে পারে। পরবর্তী কথোপকথনের পালাটিতে পরবর্তী মডেল পালার জন্য Content.role 'function' জেনারেশন কনটেক্সটসহ একটি FunctionResponse থাকতে পারে।
googleSearchRetrievalobject ( GoogleSearchRetrieval )ঐচ্ছিক। গুগল সার্চ দ্বারা চালিত একটি তথ্য পুনরুদ্ধার টুল।
codeExecutionobject ( CodeExecution )ঐচ্ছিক। এটি মডেলকে জেনারেশনের অংশ হিসেবে কোড এক্সিকিউট করতে সক্ষম করে।
googleSearchobject ( GoogleSearch )ঐচ্ছিক। গুগল সার্চ টুলের ধরণ। মডেলে গুগল সার্চ সমর্থন করার টুল। গুগল দ্বারা চালিত।
computerUseobject ( ComputerUse )ঐচ্ছিক। মডেলটিকে সরাসরি কম্পিউটারের সাথে সংযোগ স্থাপনে সহায়তা করার একটি টুল। এটি সক্রিয় করা হলে, এটি স্বয়ংক্রিয়ভাবে কম্পিউটার-ব্যবহার-নির্দিষ্ট ফাংশন ডিক্লারেশনগুলো পূরণ করে দেয়।
urlContextobject ( UrlContext )ঐচ্ছিক। ইউআরএল কনটেক্সট পুনরুদ্ধারে সহায়ক টুল।
fileSearchobject ( FileSearch )ঐচ্ছিক। ফাইলসার্চ টুলের ধরন। সিমান্টিক রিট্রিভাল কর্পোরা থেকে জ্ঞান আহরণের টুল।
mcpServers[]object ( McpServer )ঐচ্ছিক। সংযোগ করার জন্য এমসিপি সার্ভারসমূহ।
googleMapsobject ( GoogleMaps )ঐচ্ছিক। এমন একটি টুল যা ব্যবহারকারীর কোয়েরি সম্পর্কিত ভূ-স্থানিক প্রেক্ষাপটের সাহায্যে মডেলের প্রতিক্রিয়াকে ভিত্তি প্রদান করে।
| JSON উপস্থাপনা |
|---|
{ "functionDeclarations": [ { object ( |
ফাংশন ঘোষণা
OpenAPI 3.03 স্পেসিফিকেশন দ্বারা সংজ্ঞায়িত একটি ফাংশন ডিক্লারেশনের কাঠামোগত উপস্থাপনা। এই ডিক্লারেশনে ফাংশনের নাম এবং প্যারামিটার অন্তর্ভুক্ত থাকে। এই ফাংশন ডিক্লারেশনটি একটি কোড ব্লকের উপস্থাপনা, যা মডেল দ্বারা একটি Tool হিসাবে ব্যবহৃত হতে পারে এবং ক্লায়েন্ট দ্বারা এক্সিকিউট করা যেতে পারে।
namestringআবশ্যক। ফাংশনের নাম। নামটি অবশ্যই az, AZ, ০-৯ এর মধ্যে হতে হবে অথবা এতে আন্ডারস্কোর, কোলন, ডট এবং ড্যাশ থাকতে পারে, এবং এর সর্বোচ্চ দৈর্ঘ্য ১২৮।
descriptionstringপ্রয়োজনীয়। ফাংশনটির একটি সংক্ষিপ্ত বিবরণ।
behaviorenum ( Behavior )ঐচ্ছিক। ফাংশনের আচরণ নির্দিষ্ট করে। বর্তমানে শুধুমাত্র BidiGenerateContent মেথড দ্বারা সমর্থিত।
parametersobject ( Schema )ঐচ্ছিক। এই ফাংশনের প্যারামিটারগুলো বর্ণনা করে। এটি ওপেন এপিআই ৩.০৩ প্যারামিটার অবজেক্টকে প্রতিফলিত করে। স্ট্রিং কী: প্যারামিটারের নাম। প্যারামিটারের নাম কেস-সেনসিটিভ। স্কিমা ভ্যালু: প্যারামিটারের জন্য ব্যবহৃত টাইপ নির্ধারণকারী স্কিমা।
parametersJsonSchemavalue ( Value format)ঐচ্ছিক। JSON স্কিমা ফরম্যাটে ফাংশনের প্যারামিটারগুলো বর্ণনা করে। স্কিমাটিতে অবশ্যই একটি অবজেক্ট থাকতে হবে, যার প্রোপার্টিগুলোই হলো ফাংশনের প্যারামিটার। উদাহরণস্বরূপ:
{
"type": "object",
"properties": {
"name": { "type": "string" },
"age": { "type": "integer" }
},
"additionalProperties": false,
"required": ["name", "age"],
"propertyOrdering": ["name", "age"]
}
এই ক্ষেত্রটি parameters সাথে পারস্পরিকভাবে বর্জনশীল।
responseobject ( Schema )ঐচ্ছিক। এই ফাংশনের আউটপুটকে JSON স্কিমা ফরম্যাটে বর্ণনা করে। এটি ওপেন এপিআই ৩.০৩ রেসপন্স অবজেক্টকে প্রতিফলিত করে। স্কিমাটি ফাংশনের রেসপন্স ভ্যালুর জন্য ব্যবহৃত টাইপ নির্ধারণ করে।
responseJsonSchemavalue ( Value format)ঐচ্ছিক। এই ফাংশনের আউটপুট JSON স্কিমা ফরম্যাটে বর্ণনা করে। স্কিমা দ্বারা নির্দিষ্ট মানটিই হলো ফাংশনটির প্রতিক্রিয়া মান।
এই ক্ষেত্রটি response সাথে পারস্পরিকভাবে বর্জনশীল।
স্কিমা
Schema অবজেক্ট ইনপুট এবং আউটপুট ডেটা টাইপ নির্ধারণের সুযোগ দেয়। এই টাইপগুলো অবজেক্ট, প্রিমিটিভ এবং অ্যারেও হতে পারে। এটি একটি OpenAPI 3.0 স্কিমা অবজেক্টের একটি নির্বাচিত উপসেটকে প্রতিনিধিত্ব করে।
typeenum ( Type )আবশ্যক। ডেটা টাইপ।
formatstringঐচ্ছিক। ডেটার ফরম্যাট। যেকোনো মানই গ্রহণযোগ্য, তবে বেশিরভাগই কোনো বিশেষ কার্যকারিতা চালু করে না।
titlestringঐচ্ছিক। স্কিমার শিরোনাম।
descriptionstringঐচ্ছিক। প্যারামিটারটির একটি সংক্ষিপ্ত বিবরণ। এতে ব্যবহারের উদাহরণ থাকতে পারে। প্যারামিটারের বিবরণ মার্কডাউন ফরম্যাটে দেওয়া যেতে পারে।
nullablebooleanঐচ্ছিক। মানটি নাল হতে পারে কিনা তা নির্দেশ করে।
enum[]stringঐচ্ছিক। enum ফরম্যাটের Type.STRING এলিমেন্টের সম্ভাব্য মানসমূহ। উদাহরণস্বরূপ, আমরা একটি Enum Direction এভাবে সংজ্ঞায়িত করতে পারি: {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]}
maxItemsstring ( int64 format)ঐচ্ছিক। Type.ARRAY-এর উপাদানগুলোর সর্বোচ্চ সংখ্যা।
minItemsstring ( int64 format)ঐচ্ছিক। Type.ARRAY-এর জন্য উপাদানগুলোর ন্যূনতম সংখ্যা।
propertiesmap (key: string, value: object ( Schema ))ঐচ্ছিক। Type.OBJECT-এর বৈশিষ্ট্যসমূহ।
একটি অবজেক্ট যা "key": value জোড়ের একটি তালিকা ধারণ করে। উদাহরণ: { "name": "wrench", "mass": "1.3kg", "count": "3" } ।
required[]stringঐচ্ছিক। Type.OBJECT-এর প্রয়োজনীয় প্রোপার্টিসমূহ।
minPropertiesstring ( int64 format)ঐচ্ছিক। Type.OBJECT-এর জন্য প্রপার্টিগুলোর ন্যূনতম সংখ্যা।
maxPropertiesstring ( int64 format)ঐচ্ছিক। Type.OBJECT-এর জন্য প্রপার্টির সর্বোচ্চ সংখ্যা।
minLengthstring ( int64 format)ঐচ্ছিক। টাইপ স্ট্রিং-এর জন্য স্কিমা ফিল্ডসমূহ। Type.STRING-এর সর্বনিম্ন দৈর্ঘ্য।
maxLengthstring ( int64 format)ঐচ্ছিক। Type.STRING-এর সর্বোচ্চ দৈর্ঘ্য।
patternstringঐচ্ছিক। কোনো স্ট্রিংকে রেগুলার এক্সপ্রেশনে সীমাবদ্ধ করার জন্য Type.STRING-এর প্যাটার্ন।
examplevalue ( Value format)ঐচ্ছিক। অবজেক্টটির উদাহরণ। শুধুমাত্র যখন অবজেক্টটি রুট হবে, তখনই এটি পূরণ হবে।
anyOf[]object ( Schema )ঐচ্ছিক। তালিকার যেকোনো একটি বা একাধিক সাবস্কিমার সাপেক্ষে মানটি যাচাই করা উচিত।
propertyOrdering[]stringঐচ্ছিক। প্রোপার্টিগুলোর ক্রম। ওপেন এপিআই স্পেসিফিকেশনের কোনো স্ট্যান্ডার্ড ফিল্ড নয়। রেসপন্সে প্রোপার্টিগুলোর ক্রম নির্ধারণ করতে ব্যবহৃত হয়।
defaultvalue ( Value format) ঐচ্ছিক। ফিল্ডটির ডিফল্ট মান। JSON স্কিমা অনুযায়ী, এই ফিল্ডটি ডকুমেন্টেশন জেনারেটরদের জন্য উদ্দিষ্ট এবং এটি ভ্যালিডেশনকে প্রভাবিত করে না। তাই এটিকে এখানে অন্তর্ভুক্ত করা হয়েছে এবং উপেক্ষা করা হয়, যাতে default ফিল্ডসহ স্কিমা প্রেরণকারী ডেভেলপাররা ‘unknown-field’ ত্রুটি না পান।
itemsobject ( Schema )ঐচ্ছিক। Type.ARRAY-এর উপাদানগুলোর স্কিমা।
minimumnumberঐচ্ছিক। INTEGER এবং NUMBER টাইপের জন্য স্কিমা ফিল্ড। Type.INTEGER এবং Type.NUMBER-এর সর্বনিম্ন মান।
maximumnumberঐচ্ছিক। Type.INTEGER এবং Type.NUMBER-এর সর্বোচ্চ মান।
| JSON উপস্থাপনা |
|---|
{ "type": enum ( |
প্রকার
https://spec.openapis.org/oas/v3.0.3#data-types- এ সংজ্ঞায়িত OpenAPI ডেটা টাইপগুলির তালিকা Type-এ রয়েছে।
| এনাম | |
|---|---|
TYPE_UNSPECIFIED | নির্দিষ্ট করা না থাকলে, ব্যবহার করা উচিত নয়। |
STRING | স্ট্রিং টাইপ। |
NUMBER | সংখ্যা প্রকার। |
INTEGER | পূর্ণসংখ্যা প্রকার। |
BOOLEAN | বুলিয়ান প্রকার। |
ARRAY | অ্যারে টাইপ। |
OBJECT | বস্তুর প্রকার। |
NULL | নাল টাইপ। |
আচরণ
ফাংশনের আচরণ নির্ধারণ করে। ডিফল্টভাবে এটি BLOCKING ।
| এনাম | |
|---|---|
UNSPECIFIED | এই মানটি অব্যবহৃত। |
BLOCKING | সেট করা থাকলে, সিস্টেমটি কথোপকথন চালিয়ে যাওয়ার আগে ফাংশনের প্রতিক্রিয়া পাওয়ার জন্য অপেক্ষা করবে। |
NON_BLOCKING | এটি সেট করা থাকলে, সিস্টেমটি ফাংশন রেসপন্স পাওয়ার জন্য অপেক্ষা করবে না। এর পরিবর্তে, এটি ব্যবহারকারী এবং মডেলের মধ্যে কথোপকথন বজায় রেখে, রেসপন্সগুলো উপলব্ধ হওয়ার সাথে সাথেই তা পরিচালনা করার চেষ্টা করবে। |
গুগলসার্চরিট্রিভাল
গ্রাউন্ডিংয়ের জন্য পাবলিক ওয়েব ডেটা সংগ্রহের একটি টুল, গুগল দ্বারা চালিত।
dynamicRetrievalConfigobject ( DynamicRetrievalConfig )প্রদত্ত উৎসের জন্য গতিশীল পুনরুদ্ধার কনফিগারেশন নির্দিষ্ট করে।
| JSON উপস্থাপনা |
|---|
{
"dynamicRetrievalConfig": {
object ( |
ডাইনামিকরিট্রিভালকনফিগ
ডাইনামিক রিট্রিভাল কাস্টমাইজ করার বিকল্পগুলো বর্ণনা করে।
modeenum ( Mode )ডাইনামিক রিট্রিভালে ব্যবহৃত প্রেডিক্টরের মোড।
dynamicThresholdnumberডাইনামিক রিট্রিভালে ব্যবহার করার জন্য থ্রেশহোল্ড। এটি সেট করা না থাকলে, সিস্টেমের ডিফল্ট মান ব্যবহৃত হয়।
| JSON উপস্থাপনা |
|---|
{
"mode": enum ( |
মোড
ডাইনামিক রিট্রিভালে ব্যবহৃত প্রেডিক্টরের মোড।
| এনাম | |
|---|---|
MODE_UNSPECIFIED | সর্বদা পুনরুদ্ধার প্রক্রিয়া চালু করুন। |
MODE_DYNAMIC | সিস্টেম যখন প্রয়োজন মনে করবে, কেবল তখনই তথ্য পুনরুদ্ধার চালাবে। |
কোডএক্সিকিউশন
এই প্রকারে কোনো ক্ষেত্র নেই।
এমন একটি টুল যা মডেল দ্বারা তৈরি কোড কার্যকর করে এবং স্বয়ংক্রিয়ভাবে ফলাফলটি মডেলে ফেরত পাঠায়।
আরও দেখুন ExecutableCode এবং CodeExecutionResult , যেগুলো শুধুমাত্র এই টুলটি ব্যবহার করার সময়ই তৈরি হয়।
গুগল অনুসন্ধান
গুগল সার্চ টুলের ধরণ। মডেলে গুগল সার্চ সমর্থন করার টুল। গুগল দ্বারা চালিত।
timeRangeFilterobject ( Interval )ঐচ্ছিক। অনুসন্ধানের ফলাফল একটি নির্দিষ্ট সময়সীমার মধ্যে ফিল্টার করুন। গ্রাহকরা যদি শুরুর সময় নির্ধারণ করেন, তবে তাদের অবশ্যই শেষের সময়ও নির্ধারণ করতে হবে (এবং এর বিপরীতটিও প্রযোজ্য)।
searchTypesobject ( SearchTypes )ঐচ্ছিক। যে ধরনের অনুসন্ধান সক্রিয় করতে চান। সেট করা না থাকলে, ওয়েব অনুসন্ধান ডিফল্টরূপে সক্রিয় থাকে।
| JSON উপস্থাপনা |
|---|
{ "timeRangeFilter": { object ( |
ব্যবধান
একটি সময় ব্যবধানকে বোঝায়, যা একটি টাইমস্ট্যাম্প শুরু (অন্তর্ভুক্ত) এবং একটি টাইমস্ট্যাম্প শেষ (বর্জনীয়) হিসেবে এনকোড করা হয়।
শুরু অবশ্যই শেষের চেয়ে কম বা সমান হতে হবে। যখন শুরু শেষের সমান হয়, তখন ব্যবধানটি শূন্য থাকে (কোনো সময়ের সাথে মেলে না)। যখন শুরু এবং শেষ উভয়ই অনির্দিষ্ট থাকে, তখন ব্যবধানটি যেকোনো সময়ের সাথে মেলে।
startTimestring ( Timestamp format)ঐচ্ছিক। বিরতির অন্তর্ভুক্তিমূলক শুরু।
যদি নির্দিষ্ট করা থাকে, তবে এই ব্যবধানের সাথে মিলে যাওয়া একটি টাইমস্ট্যাম্পকে অবশ্যই শুরুর সময়ের সমান বা তার পরের হতে হবে।
RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
endTimestring ( Timestamp format)ঐচ্ছিক। ব্যবধানের একচেটিয়া সমাপ্তি।
যদি নির্দিষ্ট করা থাকে, তবে এই ব্যবধানের সাথে মেলে এমন একটি টাইমস্ট্যাম্প শেষের আগে থাকতে হবে।
RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
| JSON উপস্থাপনা |
|---|
{ "startTime": string, "endTime": string } |
অনুসন্ধানের ধরণ
গুগল সার্চ টুলে বিভিন্ন ধরনের সার্চ চালু করা যায়।
webSearchobject ( WebSearch )ঐচ্ছিক। ওয়েব অনুসন্ধান সক্ষম করে। শুধুমাত্র টেক্সট ফলাফল দেখানো হয়।
imageSearchobject ( ImageSearch )ঐচ্ছিক। ছবি অনুসন্ধান সক্ষম করে। ছবির বাইটগুলো ফেরত দেওয়া হয়।
| JSON উপস্থাপনা |
|---|
{ "webSearch": { object ( |
ওয়েবসার্চ
এই প্রকারে কোনো ক্ষেত্র নেই।
গ্রাউন্ডিং এবং সংশ্লিষ্ট কনফিগারেশনের জন্য সাধারণ ওয়েব অনুসন্ধান।
ইমেজসার্চ
এই প্রকারে কোনো ক্ষেত্র নেই।
গ্রাউন্ডিং এবং সংশ্লিষ্ট কনফিগারেশনের জন্য চিত্র অনুসন্ধান।
কম্পিউটার ব্যবহার
কম্পিউটার ব্যবহারের টুলের ধরন।
environmentenum ( Environment )প্রয়োজনীয়। যে পরিবেশে কাজ করা হচ্ছে।
excludedPredefinedFunctions[]stringঐচ্ছিক। ডিফল্টরূপে, পূর্বনির্ধারিত ফাংশনগুলো চূড়ান্ত মডেল কলে অন্তর্ভুক্ত থাকে। এগুলোর মধ্যে কয়েকটিকে স্বয়ংক্রিয়ভাবে অন্তর্ভুক্ত হওয়া থেকে সুস্পষ্টভাবে বাদ দেওয়া যেতে পারে। এর দুটি উদ্দেশ্য থাকতে পারে: ১. আরও সীমাবদ্ধ / ভিন্ন একটি অ্যাকশন স্পেস ব্যবহার করা। ২. পূর্বনির্ধারিত ফাংশনগুলোর সংজ্ঞা / নির্দেশাবলীর উন্নতি সাধন করা।
| JSON উপস্থাপনা |
|---|
{
"environment": enum ( |
পরিবেশ
যে পরিবেশে কাজ করা হচ্ছে, তার প্রতিনিধিত্ব করে, যেমন একটি ওয়েব ব্রাউজার।
| এনাম | |
|---|---|
ENVIRONMENT_UNSPECIFIED | ডিফল্ট হিসেবে ব্রাউজার ব্যবহৃত হয়। |
ENVIRONMENT_BROWSER | ওয়েব ব্রাউজারে পরিচালিত হয়। |
ইউআরএলপ্রসঙ্গ
এই প্রকারে কোনো ক্ষেত্র নেই।
ইউআরএল কনটেক্সট পুনরুদ্ধারে সহায়ক টুল।
ফাইলসার্চ
ফাইলসার্চ টুলটি সিম্যান্টিক রিট্রিভাল কর্পোরা থেকে তথ্য আহরণ করে। ইমপোর্টফাইল এপিআই (ImportFile API) ব্যবহার করে সিম্যান্টিক রিট্রিভাল কর্পোরা-তে ফাইল ইম্পোর্ট করা হয়।
fileSearchStoreNames[]string আবশ্যক। যে ফাইলসার্চস্টোরগুলো থেকে ডেটা সংগ্রহ করতে হবে, সেগুলোর নাম। উদাহরণ: fileSearchStores/my-file-search-store-123
metadataFilterstringঐচ্ছিক। শব্দার্থিক পুনরুদ্ধারের ডকুমেন্ট এবং চাঙ্কগুলিতে প্রয়োগ করার জন্য মেটাডেটা ফিল্টার।
topKintegerঐচ্ছিক। পুনরুদ্ধার করার জন্য শব্দার্থিক পুনরুদ্ধার খণ্ডের সংখ্যা।
| JSON উপস্থাপনা |
|---|
{ "fileSearchStoreNames": [ string ], "metadataFilter": string, "topK": integer } |
McpServer
একটি MCPServer হলো এমন একটি সার্ভার যাকে মডেল বিভিন্ন কাজ সম্পাদনের জন্য আহ্বান করতে পারে। এটি এমন একটি সার্ভার যা MCP প্রোটোকল বাস্তবায়ন করে। পরবর্তী আইডি: ৫
namestringMCPServer-টির নাম।
transportUnion typetransport নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে: streamableHttpTransportobject ( StreamableHttpTransport )এমন একটি ট্রান্সপোর্ট যা HTTP অনুরোধ এবং প্রতিক্রিয়া স্ট্রিম করতে পারে।
| JSON উপস্থাপনা |
|---|
{
"name": string,
// transport
"streamableHttpTransport": {
object ( |
স্ট্রিমেবলএইচটিটিপিট্রান্সপোর্ট
একটি ট্রান্সপোর্ট যা HTTP অনুরোধ এবং প্রতিক্রিয়া স্ট্রিম করতে পারে। পরবর্তী আইডি: ৬
urlstringMCPServer এন্ডপয়েন্টের সম্পূর্ণ URL। উদাহরণ: "https://api.example.com/mcp"
headersmap (key: string, value: string)ঐচ্ছিক: প্রয়োজন হলে অথেনটিকেশন হেডার, টাইমআউট ইত্যাদির জন্য ফিল্ড।
একটি অবজেক্ট যা "key": value জোড়ের একটি তালিকা ধারণ করে। উদাহরণ: { "name": "wrench", "mass": "1.3kg", "count": "3" } ।
timeoutstring ( Duration format)নিয়মিত কার্যক্রমের জন্য HTTP টাইমআউট।
সেকেন্ডে পরিমাপকৃত সময়কাল, যা সর্বোচ্চ নয়টি ভগ্নাংশ অঙ্ক পর্যন্ত হতে পারে এবং শেষে ' s ' থাকে। উদাহরণ: "3.5s" ।
sseReadTimeoutstring ( Duration format)SSE রিড অপারেশনের জন্য সময়সীমা শেষ।
সেকেন্ডে পরিমাপকৃত সময়কাল, যা সর্বোচ্চ নয়টি ভগ্নাংশ অঙ্ক পর্যন্ত হতে পারে এবং শেষে ' s ' থাকে। উদাহরণ: "3.5s" ।
terminateOnClosebooleanট্রান্সপোর্ট বন্ধ হলে ক্লায়েন্ট সেশন বন্ধ করা হবে কিনা।
| JSON উপস্থাপনা |
|---|
{ "url": string, "headers": { string: string, ... }, "timeout": string, "sseReadTimeout": string, "terminateOnClose": boolean } |
গুগলম্যাপস
গুগল ম্যাপস টুল যা ব্যবহারকারীর অনুসন্ধানের জন্য ভূ-স্থানিক প্রেক্ষাপট প্রদান করে।
enableWidgetbooleanঐচ্ছিক। রেসপন্সের GroundingMetadata-তে একটি উইজেট কনটেক্সট টোকেন ফেরত দেওয়া হবে কিনা। ডেভেলপাররা রেসপন্সে মডেল দ্বারা উল্লেখিত স্থানগুলির সাথে সম্পর্কিত ভূ-স্থানিক প্রেক্ষাপটসহ একটি গুগল ম্যাপস উইজেট রেন্ডার করতে উইজেট কনটেক্সট টোকেনটি ব্যবহার করতে পারেন।
| JSON উপস্থাপনা |
|---|
{ "enableWidget": boolean } |
টুলকনফিগ
টুল কনফিগারেশনে অনুরোধে Tool ব্যবহার নির্দিষ্ট করার জন্য প্যারামিটারসমূহ থাকে।
functionCallingConfigobject ( FunctionCallingConfig )ঐচ্ছিক। ফাংশন কল করার কনফিগারেশন।
retrievalConfigobject ( RetrievalConfig )ঐচ্ছিক। পুনরুদ্ধার কনফিগারেশন।
includeServerSideToolInvocationsboolean ঐচ্ছিক। যদি এটি সত্য হয়, তাহলে এপিআই প্রতিক্রিয়ার Content মেসেজের মধ্যেই সার্ভার-সাইড টুলের কল এবং প্রতিক্রিয়াগুলো অন্তর্ভুক্ত থাকবে। এর ফলে ক্লায়েন্টরা সার্ভারের টুলের কার্যকলাপ পর্যবেক্ষণ করতে পারে।
| JSON উপস্থাপনা |
|---|
{ "functionCallingConfig": { object ( |
ফাংশনকলিংকনফিগ
ফাংশন কল করার আচরণ নির্দিষ্ট করার কনফিগারেশন।
modeenum ( Mode )ঐচ্ছিক। ফাংশন কলিং কোন মোডে সম্পাদিত হবে তা নির্দিষ্ট করে। নির্দিষ্ট না করা হলে, ডিফল্ট মান AUTO সেট করা হবে।
allowedFunctionNames[]stringঐচ্ছিক। ফাংশন নামগুলির একটি সেট, যা প্রদান করা হলে মডেলটি কোন কোন ফাংশনকে কল করবে তা সীমিত করে।
এটি শুধুমাত্র তখনই সেট করা উচিত যখন মোড ANY বা VALIDATED হয়। ফাংশনের নাম অবশ্যই [FunctionDeclaration.name]-এর সাথে মিলতে হবে। এটি সেট করা হলে, মডেলটি শুধুমাত্র অনুমোদিত ফাংশনের নামগুলো থেকে একটি ফাংশন কল প্রেডিক্ট করবে।
| JSON উপস্থাপনা |
|---|
{
"mode": enum ( |
মোড
এক্সিকিউশন মোড নির্ধারণের মাধ্যমে ফাংশন কলিংয়ের কার্যসম্পাদন আচরণ সংজ্ঞায়িত করা হয়।
| এনাম | |
|---|---|
MODE_UNSPECIFIED | অনির্দিষ্ট ফাংশন কলিং মোড। এই মানটি ব্যবহার করা উচিত নয়। |
AUTO | মডেলের ডিফল্ট আচরণ অনুযায়ী, মডেলটি একটি ফাংশন কল অথবা স্বাভাবিক ভাষার প্রতিক্রিয়া ভবিষ্যদ্বাণী করার সিদ্ধান্ত নেয়। |
ANY | মডেলটি সর্বদা শুধুমাত্র একটি ফাংশন কল ভবিষ্যদ্বাণী করতে সীমাবদ্ধ। যদি "allowedFunctionNames" সেট করা থাকে, তাহলে ভবিষ্যদ্বাণী করা ফাংশন কলটি "allowedFunctionNames"-এর যেকোনো একটির মধ্যে সীমাবদ্ধ থাকবে, অন্যথায় ভবিষ্যদ্বাণী করা ফাংশন কলটি প্রদত্ত "functionDeclarations"-গুলোর যেকোনো একটি হবে। |
NONE | মডেল কোনো ফাংশন কল প্রেডিক্ট করবে না। কোনো ফাংশন ডিক্লারেশন পাস না করার সময়ের মতোই মডেলের আচরণ একই থাকবে। |
VALIDATED | মডেলটি একটি ফাংশন কল অথবা একটি স্বাভাবিক ভাষার প্রতিক্রিয়া ভবিষ্যদ্বাণী করার সিদ্ধান্ত নেয়, তবে সীমাবদ্ধ ডিকোডিংয়ের মাধ্যমে ফাংশন কলগুলো যাচাই করবে। যদি "allowedFunctionNames" সেট করা থাকে, তাহলে ভবিষ্যদ্বাণী করা ফাংশন কলটি "allowedFunctionNames"-এর যেকোনো একটির মধ্যে সীমাবদ্ধ থাকবে, অন্যথায় ভবিষ্যদ্বাণী করা ফাংশন কলটি প্রদত্ত "functionDeclarations"-গুলোর যেকোনো একটি হবে। |
পুনরুদ্ধার কনফিগারেশন
LatLng
An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard . Values must be within normalized ranges.
latitudenumberThe latitude in degrees. It must be in the range [-90.0, +90.0].
longitudenumberThe longitude in degrees. It must be in the range [-180.0, +180.0].
| JSON উপস্থাপনা |
|---|
{ "latitude": number, "longitude": number } |
UsageMetadata
Metadata on the usage of the cached content.
totalTokenCountintegerTotal number of tokens that the cached content consumes.
| JSON উপস্থাপনা |
|---|
{ "totalTokenCount": integer } |