কন্টেক্সট ক্যাশিং আপনাকে আগে থেকে গণনা করা ইনপুট টোকেনগুলো সংরক্ষণ ও পুনরায় ব্যবহার করার সুযোগ দেয়, যা আপনি বারবার ব্যবহার করতে চান; যেমন, একই মিডিয়া ফাইল সম্পর্কে বিভিন্ন প্রশ্ন করার সময়। ব্যবহারের ধরনের ওপর নির্ভর করে, এর ফলে খরচ এবং গতি উভয়ই সাশ্রয় হতে পারে। এ বিষয়ে বিস্তারিত জানতে কন্টেক্সট ক্যাশিং গাইডটি দেখুন।
পদ্ধতি: cachedContents.create
CachedContent রিসোর্স তৈরি করে।
এন্ডপয়েন্ট
পোস্টhttps: / /generativelanguage.googleapis.com /v1beta /cachedContentsঅনুরোধকারী শরীর
অনুরোধের বডিতে CachedContent এর একটি ইনস্ট্যান্স থাকে।
contents[] object ( Content )ঐচ্ছিক। শুধুমাত্র ইনপুট। অপরিবর্তনীয়। ক্যাশে করার বিষয়বস্তু।
tools[] object ( Tool ) ঐচ্ছিক। শুধুমাত্র ইনপুট। অপরিবর্তনীয়। পরবর্তী প্রতিক্রিয়া তৈরি করতে মডেলটি Tools ব্যবহার করতে পারে তার একটি তালিকা।
expiration Union typeexpiration নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে: expireTime string ( Timestamp format)এই রিসোর্সটি কখন মেয়াদোত্তীর্ণ বলে বিবেচিত হবে, তার UTC টাইমস্ট্যাম্প। ইনপুটে যা-ই পাঠানো হোক না কেন, এটি আউটপুটে সর্বদা প্রদান করা হয়।
RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-স্বাভাবিক হবে এবং 0, 3, 6 অথবা 9 ভগ্নাংশ সংখ্যা ব্যবহার করবে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণযোগ্য। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
ttl string ( Duration format)শুধুমাত্র ইনপুট। এই রিসোর্সের জন্য নতুন TTL, শুধুমাত্র ইনপুট।
সেকেন্ডে একটি সময়কাল যার সর্বোচ্চ নয়টি ভগ্নাংশ সংখ্যা ' s ' দিয়ে শেষ হয়। উদাহরণ: "3.5s" ।
displayName stringঐচ্ছিক। অপরিবর্তনীয়। ক্যাশ করা কন্টেন্টের জন্য ব্যবহারকারী-সৃষ্ট অর্থপূর্ণ প্রদর্শিত নাম। সর্বোচ্চ ১২৮টি ইউনিকোড অক্ষর।
model string আবশ্যক। অপরিবর্তনীয়। ক্যাশ করা কন্টেন্টের জন্য ব্যবহৃত Model নাম। ফরম্যাট: models/{model}
systemInstruction object ( Content )ঐচ্ছিক। শুধুমাত্র ইনপুটযোগ্য। অপরিবর্তনীয়। ডেভেলপার কর্তৃক নির্ধারিত সিস্টেম নির্দেশ। বর্তমানে শুধুমাত্র টেক্সট হিসেবে উপলব্ধ।
toolConfig object ( ToolConfig )ঐচ্ছিক। শুধুমাত্র ইনপুট। অপরিবর্তনীয়। টুল কনফিগারেশন। এই কনফিগারেশনটি সকল টুলের জন্য ব্যবহৃত হবে।
উদাহরণ অনুরোধ
মৌলিক
পাইথন
নোড.জেএস
যান
খোলস
নাম থেকে
পাইথন
নোড.জেএস
যান
চ্যাট থেকে
পাইথন
নোড.জেএস
যান
প্রতিক্রিয়া মূল অংশ
সফল হলে, রেসপন্স বডিতে CachedContent এর একটি নতুন তৈরি হওয়া ইনস্ট্যান্স থাকে।
পদ্ধতি: cachedContents.list
ক্যাশ করা বিষয়বস্তু তালিকাভুক্ত করে।
এন্ডপয়েন্ট
https: / /generativelanguage.googleapis.com /v1beta /cachedContents পানকোয়েরি প্যারামিটার
pageSize integerঐচ্ছিক। ফেরত দেওয়ার জন্য ক্যাশ করা কন্টেন্টের সর্বোচ্চ সংখ্যা। পরিষেবাটি এই মানের চেয়ে কমও ফেরত দিতে পারে। যদি নির্দিষ্ট না করা হয়, তাহলে ডিফল্ট (সর্বোচ্চের চেয়ে কম) সংখ্যক আইটেম ফেরত দেওয়া হবে। সর্বোচ্চ মান হলো ১০০০; ১০০০-এর উপরের মানগুলোকে ১০০০-এ রূপান্তরিত করা হবে।
pageToken string ঐচ্ছিক। পূর্ববর্তী cachedContents.list কল থেকে প্রাপ্ত একটি পেজ টোকেন। পরবর্তী পেজটি পুনরুদ্ধার করতে এটি প্রদান করুন।
পেজিনেশন করার সময়, cachedContents.list এ প্রদত্ত অন্য সকল প্যারামিটার অবশ্যই সেই কলের সাথে মিলতে হবে যা পেজ টোকেনটি প্রদান করেছে।
অনুরোধকারী শরীর
অনুরোধের মূল অংশ অবশ্যই খালি হতে হবে।
প্রতিক্রিয়া মূল অংশ
CachedContents তালিকা সহ প্রতিক্রিয়া।
যদি সফল হয়, তাহলে রেসপন্স বডিতে নিম্নলিখিত কাঠামো সহ ডেটা থাকবে:
cachedContents[] object ( CachedContent )ক্যাশে করা বিষয়বস্তুর তালিকা।
nextPageToken string একটি টোকেন, যা পরবর্তী পৃষ্ঠা আনার জন্য pageToken হিসেবে পাঠানো যেতে পারে। এই ক্ষেত্রটি বাদ দিলে, পরবর্তী কোনো পৃষ্ঠা থাকবে না।
| JSON উপস্থাপনা |
|---|
{
"cachedContents": [
{
object ( |
পদ্ধতি: cachedContents.get
CachedContent রিসোর্সটি পড়ে।
এন্ডপয়েন্ট
gethttps: / /generativelanguage.googleapis.com /v1beta /{name=cachedContents /*}পথের পরামিতি
name string আবশ্যক। কন্টেন্ট ক্যাশ এন্ট্রিকে নির্দেশকারী রিসোর্সের নাম। ফরম্যাট: 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.name string শুধুমাত্র আউটপুট। শনাক্তকারী। ক্যাশ করা বিষয়বস্তুকে নির্দেশকারী রিসোর্সের নাম। ফরম্যাট: cachedContents/{id} এটি cachedContents/{cachedcontent} আকারে থাকে।
কোয়েরি প্যারামিটার
updateMask string ( FieldMask format)আপডেট করার জন্য ফিল্ডগুলির তালিকা।
এটি ফিল্ডগুলোর পূর্ণাঙ্গ নামের একটি কমা-দ্বারা-বিভক্ত তালিকা। উদাহরণ: "user.displayName,photo" ।
অনুরোধকারী শরীর
অনুরোধের বডিতে CachedContent এর একটি ইনস্ট্যান্স থাকে।
expiration Union typeexpiration নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে: expireTime string ( Timestamp format)এই রিসোর্সটি কখন মেয়াদোত্তীর্ণ বলে বিবেচিত হবে, তার UTC টাইমস্ট্যাম্প। ইনপুটে যা-ই পাঠানো হোক না কেন, এটি আউটপুটে সর্বদা প্রদান করা হয়।
RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-স্বাভাবিক হবে এবং 0, 3, 6 অথবা 9 ভগ্নাংশ সংখ্যা ব্যবহার করবে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণযোগ্য। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
ttl string ( Duration format)শুধুমাত্র ইনপুট। এই রিসোর্সের জন্য নতুন TTL, শুধুমাত্র ইনপুট।
সেকেন্ডে একটি সময়কাল যার সর্বোচ্চ নয়টি ভগ্নাংশ সংখ্যা ' s ' দিয়ে শেষ হয়। উদাহরণ: "3.5s" ।
উদাহরণ অনুরোধ
পাইথন
নোড.জেএস
যান
খোলস
প্রতিক্রিয়া মূল অংশ
সফল হলে, রেসপন্স বডিতে CachedContent এর একটি ইনস্ট্যান্স থাকে।
পদ্ধতি: cachedContents.delete
CachedContent রিসোর্সটি মুছে ফেলে।
এন্ডপয়েন্ট
https: / /generativelanguage.googleapis.com /v1beta /{name=cachedContents /*} মুছে ফেলুনপথের পরামিতি
name string আবশ্যক। কন্টেন্ট ক্যাশ এন্ট্রিকে নির্দেশকারী রিসোর্সের নাম। ফরম্যাট: cachedContents/{id} এটি cachedContents/{cachedcontent} আকারে থাকে।
অনুরোধকারী শরীর
অনুরোধের মূল অংশ অবশ্যই খালি হতে হবে।
উদাহরণ অনুরোধ
পাইথন
নোড.জেএস
যান
খোলস
প্রতিক্রিয়া মূল অংশ
সফল হলে, রেসপন্স বডিটি একটি খালি JSON অবজেক্ট হয়।
REST রিসোর্স: ক্যাশড কন্টেন্টস
- উৎস: ক্যাশড কন্টেন্ট
- বিষয়বস্তু
- অংশ
- ব্লব
- ফাংশনকল
- ফাংশন প্রতিক্রিয়া
- ফাংশন প্রতিক্রিয়া অংশ
- ফাংশনরেসপন্সব্লব
- সময়সূচী
- ফাইলডেটা
- এক্সিকিউটেবলকোড
- ভাষা
- কোড এক্সিকিউশন রেজাল্ট
- ফলাফল
- টুলকল
- টুলটাইপ
- টুলরেসপন্স
- ভিডিওমেটাডেটা
- মিডিয়ারেজোলিউশন
- স্তর
- সরঞ্জাম
- ফাংশন ঘোষণা
- স্কিমা
- প্রকার
- আচরণ
- গুগলসার্চরিট্রিভাল
- ডাইনামিকরিট্রিভালকনফিগ
- মোড
- কোডএক্সিকিউশন
- গুগল অনুসন্ধান
- ব্যবধান
- অনুসন্ধানের ধরণ
- ওয়েবসার্চ
- ইমেজসার্চ
- কম্পিউটার ব্যবহার
- পরিবেশ
- ইউআরএলপ্রসঙ্গ
- ফাইলসার্চ
- McpServer
- স্ট্রিমেবলএইচটিটিপিট্রান্সপোর্ট
- গুগলম্যাপস
- টুলকনফিগ
- ফাংশনকলিংকনফিগ
- মোড
- পুনরুদ্ধার কনফিগারেশন
- অক্ষাংশ দ্রাঘিমাংশ
- ব্যবহার মেটাডেটা
- পদ্ধতি
উৎস: ক্যাশড কন্টেন্ট
যে কন্টেন্টটি পূর্ব-প্রক্রিয়াজাত করা হয়েছে এবং যা জেনারেটিভসার্ভিস-এ পরবর্তী অনুরোধে ব্যবহার করা যাবে।
ক্যাশ করা কন্টেন্ট শুধুমাত্র সেই মডেলের সাথেই ব্যবহার করা যাবে, যেটির জন্য এটি তৈরি করা হয়েছে।
contents[] object ( Content )ঐচ্ছিক। শুধুমাত্র ইনপুট। অপরিবর্তনীয়। ক্যাশে করার বিষয়বস্তু।
tools[] object ( Tool ) ঐচ্ছিক। শুধুমাত্র ইনপুট। অপরিবর্তনীয়। পরবর্তী প্রতিক্রিয়া তৈরি করতে মডেলটি Tools ব্যবহার করতে পারে তার একটি তালিকা।
createTime string ( Timestamp format)শুধুমাত্র আউটপুট। ক্যাশ এন্ট্রি তৈরির সময়।
RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-স্বাভাবিক হবে এবং 0, 3, 6 অথবা 9 ভগ্নাংশ সংখ্যা ব্যবহার করবে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণযোগ্য। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
updateTime string ( Timestamp format)শুধুমাত্র আউটপুট। UTC সময় অনুযায়ী ক্যাশ এন্ট্রিটি সর্বশেষ কখন আপডেট করা হয়েছিল।
RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-স্বাভাবিক হবে এবং 0, 3, 6 অথবা 9 ভগ্নাংশ সংখ্যা ব্যবহার করবে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণযোগ্য। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
usageMetadata object ( UsageMetadata )শুধুমাত্র আউটপুট। ক্যাশ করা কন্টেন্টের ব্যবহার সংক্রান্ত মেটাডেটা।
expiration Union typeexpiration নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে: expireTime string ( Timestamp format)এই রিসোর্সটি কখন মেয়াদোত্তীর্ণ বলে বিবেচিত হবে, তার UTC টাইমস্ট্যাম্প। ইনপুটে যা-ই পাঠানো হোক না কেন, এটি আউটপুটে সর্বদা প্রদান করা হয়।
RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-স্বাভাবিক হবে এবং 0, 3, 6 অথবা 9 ভগ্নাংশ সংখ্যা ব্যবহার করবে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণযোগ্য। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
ttl string ( Duration format)শুধুমাত্র ইনপুট। এই রিসোর্সের জন্য নতুন TTL, শুধুমাত্র ইনপুট।
সেকেন্ডে একটি সময়কাল যার সর্বোচ্চ নয়টি ভগ্নাংশ সংখ্যা ' s ' দিয়ে শেষ হয়। উদাহরণ: "3.5s" ।
name string শুধুমাত্র আউটপুট। শনাক্তকারী। ক্যাশ করা বিষয়বস্তুকে নির্দেশকারী রিসোর্সের নাম। ফরম্যাট: cachedContents/{id}
displayName stringঐচ্ছিক। অপরিবর্তনীয়। ক্যাশ করা কন্টেন্টের জন্য ব্যবহারকারী-সৃষ্ট অর্থপূর্ণ প্রদর্শিত নাম। সর্বোচ্চ ১২৮টি ইউনিকোড অক্ষর।
model string আবশ্যক। অপরিবর্তনীয়। ক্যাশ করা কন্টেন্টের জন্য ব্যবহৃত Model নাম। ফরম্যাট: models/{model}
systemInstruction object ( Content )ঐচ্ছিক। শুধুমাত্র ইনপুটযোগ্য। অপরিবর্তনীয়। ডেভেলপার কর্তৃক নির্ধারিত সিস্টেম নির্দেশ। বর্তমানে শুধুমাত্র টেক্সট হিসেবে উপলব্ধ।
toolConfig object ( ToolConfig )ঐচ্ছিক। শুধুমাত্র ইনপুট। অপরিবর্তনীয়। টুল কনফিগারেশন। এই কনফিগারেশনটি সকল টুলের জন্য ব্যবহৃত হবে।
| JSON উপস্থাপনা |
|---|
{ "contents": [ { object ( |
বিষয়বস্তু
একটি বার্তার বহু-অংশবিশিষ্ট বিষয়বস্তু ধারণকারী মূল কাঠামোগত ডেটাটাইপ।
একটি Content একটি role ' ফিল্ড থাকে যা Content প্রযোজককে নির্দেশ করে এবং একটি ' parts ' ফিল্ড থাকে, যাতে বহু-অংশবিশিষ্ট ডেটা থাকে যা মেসেজ টার্নের বিষয়বস্তু ধারণ করে।
parts[] object ( Part ) ক্রমবিন্যস্ত Parts যা একটি একক বার্তা গঠন করে। অংশগুলোর ভিন্ন ভিন্ন MIME টাইপ থাকতে পারে।
role stringঐচ্ছিক। বিষয়বস্তুর প্রযোজক। অবশ্যই 'ব্যবহারকারী' অথবা 'মডেল' হতে হবে।
একাধিক পালায় কথোপকথনের জন্য এটি সেট করা সুবিধাজনক, অন্যথায় এটি খালি বা সেট না করেও রাখা যেতে পারে।
| JSON উপস্থাপনা |
|---|
{
"parts": [
{
object ( |
অংশ
একটি ডেটাটাইপ যা একটি বহু-অংশবিশিষ্ট Content মেসেজের অংশ এমন মিডিয়া ধারণ করে।
একটি Part এমন ডেটা নিয়ে গঠিত যার একটি সংশ্লিষ্ট ডেটাটাইপ থাকে। একটি Part Part.data তে থাকা স্বীকৃত টাইপগুলোর মধ্যে শুধুমাত্র একটিই থাকতে পারে।
যদি inlineData ফিল্ডটি র' বাইট দিয়ে পূরণ করা হয়, তাহলে একটি Part অবশ্যই একটি নির্দিষ্ট IANA MIME টাইপ থাকতে হবে যা মিডিয়ার টাইপ এবং সাবটাইপ শনাক্ত করে।
thought booleanঐচ্ছিক। অংশটি মডেল থেকে ভাবা হয়েছে কিনা তা নির্দেশ করে।
thoughtSignature string ( bytes format)ঐচ্ছিক। ভাবনার জন্য একটি অস্বচ্ছ স্বাক্ষর, যাতে এটি পরবর্তী অনুরোধগুলিতে পুনরায় ব্যবহার করা যায়।
একটি বেস৬৪-এনকোডেড স্ট্রিং।
partMetadata object ( Struct format)পার্টটির সাথে যুক্ত কাস্টম মেটাডেটা। যে এজেন্টরা কন্টেন্ট রিপ্রেজেন্টেশন হিসেবে genai.Part ব্যবহার করেন, তাদের এই অতিরিক্ত তথ্যগুলোর হিসাব রাখার প্রয়োজন হতে পারে। উদাহরণস্বরূপ, এটি হতে পারে সেই ফাইল/সোর্সের নাম যেখান থেকে পার্টটি তৈরি হয়েছে, অথবা একাধিক পার্ট স্ট্রিমকে মাল্টিপ্লেক্স করার কোনো উপায়।
mediaResolution object ( MediaResolution )ঐচ্ছিক। ইনপুট মিডিয়ার জন্য মিডিয়া রেজোলিউশন।
data Union typedata নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:text stringইনলাইন টেক্সট।
inlineData object ( Blob )ইনলাইন মিডিয়া বাইট।
functionCall object ( FunctionCall ) মডেল থেকে ফেরত আসা একটি পূর্বাভাসিত FunctionCall , যাতে FunctionDeclaration.name এর প্রতিনিধিত্বকারী একটি স্ট্রিং-এর সাথে আর্গুমেন্ট এবং তাদের মানগুলো থাকে।
functionResponse object ( FunctionResponse ) একটি FunctionCall এর ফলাফল আউটপুট, যাতে FunctionDeclaration.name কে প্রতিনিধিত্বকারী একটি স্ট্রিং এবং ফাংশন থেকে প্রাপ্ত যেকোনো আউটপুট ধারণকারী একটি স্ট্রাকচার্ড JSON অবজেক্ট থাকে, তা মডেলের কনটেক্সট হিসেবে ব্যবহৃত হয়।
fileData object ( FileData )URI ভিত্তিক ডেটা।
executableCode object ( ExecutableCode )মডেল দ্বারা তৈরি কোড যা কার্যকর করার জন্য নির্ধারিত।
codeExecutionResult object ( CodeExecutionResult ) ExecutableCode কার্যকর করার ফলাফল।
toolCall object ( ToolCall )সার্ভার-সাইড টুল কল। যখন মডেল এমন কোনো টুল আহ্বানের পূর্বাভাস দেয় যা সার্ভারে চালানো উচিত, তখন এই ফিল্ডটি পূরণ করা হয়। ক্লায়েন্টের কাছ থেকে এই বার্তাটি এপিআই-তে ফেরত পাঠানোর কথা।
toolResponse object ( ToolResponse ) সার্ভার-সাইড ToolCall নির্বাহের আউটপুট। এই ফিল্ডটি ক্লায়েন্ট দ্বারা সংশ্লিষ্ট ToolCall নির্বাহের ফলাফল দিয়ে পূরণ করা হয়।
metadata Union typemetadata নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:videoMetadata object ( VideoMetadata )ঐচ্ছিক। ভিডিও মেটাডেটা। মেটাডেটা শুধুমাত্র তখনই উল্লেখ করা উচিত যখন ভিডিও ডেটা inlineData বা fileData-তে উপস্থাপন করা হয়।
| JSON উপস্থাপনা |
|---|
{ "thought": boolean, "thoughtSignature": string, "partMetadata": { object }, "mediaResolution": { object ( |
ব্লব
কাঁচা মিডিয়া বাইট।
টেক্সট সরাসরি বাইট হিসেবে পাঠানো উচিত নয়, 'টেক্সট' ফিল্ডটি ব্যবহার করুন।
mimeType stringউৎস ডেটার IANA স্ট্যান্ডার্ড MIME টাইপ। উদাহরণ: - image/png - image/jpeg যদি কোনো অসমর্থিত MIME টাইপ প্রদান করা হয়, তাহলে একটি ত্রুটি দেখানো হবে। সমর্থিত টাইপগুলোর সম্পূর্ণ তালিকার জন্য, সমর্থিত ফাইল ফরম্যাটসমূহ দেখুন।
data string ( bytes format)মিডিয়া ফরম্যাটের জন্য কাঁচা বাইট।
একটি বেস৬৪-এনকোডেড স্ট্রিং।
| JSON উপস্থাপনা |
|---|
{ "mimeType": string, "data": string } |
ফাংশনকল
মডেল থেকে ফেরত আসা একটি পূর্বাভাসিত FunctionCall , যাতে FunctionDeclaration.name এর প্রতিনিধিত্বকারী একটি স্ট্রিং-এর সাথে আর্গুমেন্ট এবং তাদের মানগুলো থাকে।
id string ঐচ্ছিক। ফাংশন কলের অনন্য শনাক্তকারী। এটি পূরণ করা হলে, ক্লায়েন্ট functionCall কার্যকর করবে এবং মিলে যাওয়া id সহ প্রতিক্রিয়াটি ফেরত দেবে।
name stringআবশ্যক। যে ফাংশনটি কল করতে হবে তার নাম। এটি অবশ্যই az, AZ, 0-9 হতে হবে অথবা এতে আন্ডারস্কোর এবং ড্যাশ থাকতে হবে, এবং এর সর্বোচ্চ দৈর্ঘ্য ১২৮।
args object ( Struct format)ঐচ্ছিক। ফাংশনের প্যারামিটার এবং মানগুলো JSON অবজেক্ট ফরম্যাটে থাকবে।
| JSON উপস্থাপনা |
|---|
{ "id": string, "name": string, "args": { object } } |
ফাংশন প্রতিক্রিয়া
একটি FunctionCall থেকে প্রাপ্ত ফলাফল, যাতে FunctionDeclaration.name কে প্রতিনিধিত্বকারী একটি স্ট্রিং এবং ফাংশনের যেকোনো আউটপুট ধারণকারী একটি স্ট্রাকচার্ড JSON অবজেক্ট থাকে, তা মডেলের কনটেক্সট হিসেবে ব্যবহৃত হয়। এতে মডেলের পূর্বাভাসের উপর ভিত্তি করে করা একটি FunctionCall এর ফলাফল থাকা উচিত।
id string ঐচ্ছিক। যে ফাংশন কলের জন্য এই প্রতিক্রিয়াটি, তার শনাক্তকারী। সংশ্লিষ্ট ফাংশন কল id সাথে মেলানোর জন্য ক্লায়েন্ট দ্বারা এটি পূরণ করা হয়।
name stringআবশ্যক। যে ফাংশনটি কল করতে হবে তার নাম। এটি অবশ্যই az, AZ, 0-9 হতে হবে অথবা এতে আন্ডারস্কোর এবং ড্যাশ থাকতে হবে, এবং এর সর্বোচ্চ দৈর্ঘ্য ১২৮।
response object ( Struct format)প্রয়োজনীয়। ফাংশনের প্রতিক্রিয়া JSON অবজেক্ট ফরম্যাটে হতে হবে। কলাররা ফাংশনের আউটপুট ফেরত দেওয়ার জন্য ফাংশনের সিনট্যাক্স অনুযায়ী তাদের পছন্দমতো যেকোনো কী (key) ব্যবহার করতে পারে, যেমন "output", "result", ইত্যাদি। বিশেষ করে, যদি ফাংশন কলটি কার্যকর হতে ব্যর্থ হয়, তাহলে মডেলে ত্রুটির বিবরণ ফেরত পাঠানোর জন্য প্রতিক্রিয়ায় একটি "error" কী থাকতে পারে।
parts[] object ( FunctionResponsePart ) ঐচ্ছিক। অর্ডারকৃত Parts যা একটি ফাংশন রেসপন্স গঠন করে। পার্টসগুলোর ভিন্ন ভিন্ন IANA MIME টাইপ থাকতে পারে।
willContinue boolean ঐচ্ছিক। এটি নির্দেশ করে যে ফাংশন কলটি চলতে থাকবে এবং আরও প্রতিক্রিয়া ফেরত দেওয়া হবে, যা ফাংশন কলটিকে একটি জেনারেটরে পরিণত করে। এটি শুধুমাত্র নন-ব্লকিং (NON_BLOCKING) ফাংশন কলের ক্ষেত্রে প্রযোজ্য, অন্যথায় উপেক্ষা করা হয়। যদি এটি ফলস (false) সেট করা হয়, তাহলে ভবিষ্যতের প্রতিক্রিয়াগুলো বিবেচনা করা হবে না। ফাংশন কলটি শেষ হয়েছে তা বোঝাতে willContinue=False সহ একটি খালি response ফেরত দেওয়ার অনুমতি আছে। এটি মডেল জেনারেশনকে ট্রিগার করতে পারে। জেনারেশন ট্রিগার হওয়া এড়াতে এবং ফাংশন কলটি শেষ করতে, অতিরিক্তভাবে scheduling SILENT এ সেট করুন।
scheduling enum ( Scheduling )ঐচ্ছিক। কথোপকথনে প্রতিক্রিয়াটি কীভাবে নির্ধারিত হবে তা নির্দিষ্ট করে। শুধুমাত্র NON_BLOCKING ফাংশন কলের ক্ষেত্রে প্রযোজ্য, অন্যথায় উপেক্ষা করা হয়। ডিফল্ট মান হলো WHEN_IDLE।
| JSON উপস্থাপনা |
|---|
{ "id": string, "name": string, "response": { object }, "parts": [ { object ( |
ফাংশন প্রতিক্রিয়া অংশ
একটি ডেটাটাইপ যা FunctionResponse মেসেজের অংশ এমন মিডিয়া ধারণ করে।
একটি FunctionResponsePart এমন ডেটা থাকে যার একটি সংশ্লিষ্ট ডেটাটাইপ রয়েছে। একটি FunctionResponsePart শুধুমাত্র FunctionResponsePart.data তে থাকা স্বীকৃত টাইপগুলোর মধ্যে একটি ধারণ করতে পারে।
যদি inlineData ফিল্ডটি র ডেটা বাইট দিয়ে পূরণ করা হয়, তাহলে একটি FunctionResponsePart অবশ্যই একটি নির্দিষ্ট IANA MIME টাইপ থাকতে হবে, যা মিডিয়ার ধরন এবং উপ-ধরন শনাক্ত করে।
data Union typedata নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে: inlineData object ( FunctionResponseBlob )ইনলাইন মিডিয়া বাইট।
| JSON উপস্থাপনা |
|---|
{
// data
"inlineData": {
object ( |
ফাংশনরেসপন্সব্লব
ফাংশন প্রতিক্রিয়ার জন্য কাঁচা মিডিয়া বাইট।
টেক্সট সরাসরি বাইট হিসেবে পাঠানো উচিত নয়, 'FunctionResponse.response' ফিল্ডটি ব্যবহার করুন।
mimeType stringউৎস ডেটার IANA স্ট্যান্ডার্ড MIME টাইপ। উদাহরণ: - image/png - image/jpeg যদি কোনো অসমর্থিত MIME টাইপ প্রদান করা হয়, তাহলে একটি ত্রুটি দেখানো হবে। সমর্থিত টাইপগুলোর সম্পূর্ণ তালিকার জন্য, সমর্থিত ফাইল ফরম্যাটসমূহ দেখুন।
data string ( bytes format)মিডিয়া ফরম্যাটের জন্য কাঁচা বাইট।
একটি বেস৬৪-এনকোডেড স্ট্রিং।
| JSON উপস্থাপনা |
|---|
{ "mimeType": string, "data": string } |
সময়সূচী
কথোপকথনে প্রতিক্রিয়াটি কীভাবে নির্ধারিত হবে তা নির্দিষ্ট করে।
| এনাম | |
|---|---|
SCHEDULING_UNSPECIFIED | এই মানটি অব্যবহৃত। |
SILENT | ফলাফলটি শুধুমাত্র কথোপকথনের প্রসঙ্গে যোগ করুন, এটিকে বাধা দেবেন না বা এর সৃষ্টি প্রক্রিয়াকে সক্রিয় করবেন না। |
WHEN_IDLE | ফলাফলটি কথোপকথনের প্রসঙ্গে যোগ করুন, এবং চলমান জেনারেশনে বাধা না দিয়ে আউটপুট তৈরি করার জন্য অনুরোধ করুন। |
INTERRUPT | ফলাফলটি কথোপকথনের প্রসঙ্গে যোগ করুন, চলমান জেনারেশন বন্ধ করুন এবং আউটপুট তৈরি করতে বলুন। |
ফাইলডেটা
URI ভিত্তিক ডেটা।
mimeType stringঐচ্ছিক। উৎস ডেটার IANA স্ট্যান্ডার্ড MIME টাইপ।
fileUri stringআবশ্যক। ইউআরআই।
| JSON উপস্থাপনা |
|---|
{ "mimeType": string, "fileUri": string } |
এক্সিকিউটেবলকোড
মডেল দ্বারা তৈরি কোড যা কার্যকর করার জন্য নির্ধারিত, এবং এর ফলাফল যা মডেলে ফেরত পাঠানো হয়।
এটি শুধুমাত্র CodeExecution টুল ব্যবহার করার সময় তৈরি হয়, যেখানে কোডটি স্বয়ংক্রিয়ভাবে এক্সিকিউট হবে এবং একটি সংশ্লিষ্ট CodeExecutionResult ও তৈরি হবে।
id string ঐচ্ছিক। ExecutableCode অংশের অনন্য শনাক্তকারী। সার্ভারটি মিলে যাওয়া id সহ CodeExecutionResult ফেরত দেয়।
language enum ( Language ) প্রয়োজনীয়। code প্রোগ্রামিং ভাষা।
code stringপ্রয়োজনীয়। যে কোডটি নির্বাহ করতে হবে।
| JSON উপস্থাপনা |
|---|
{
"id": string,
"language": enum ( |
ভাষা
তৈরি করা কোডের জন্য সমর্থিত প্রোগ্রামিং ভাষাসমূহ।
| এনাম | |
|---|---|
LANGUAGE_UNSPECIFIED | অনির্দিষ্ট ভাষা। এই মানটি ব্যবহার করা উচিত নয়। |
PYTHON | পাইথন >= ৩.১০, সাথে নামপাই (numpy) এবং সিমপাই (simpy) উপলব্ধ। পাইথন হলো ডিফল্ট ভাষা। |
কোড এক্সিকিউশন রেজাল্ট
ExecutableCode কার্যকর করার ফলাফল।
শুধুমাত্র CodeExecution টুল ব্যবহার করা হলেই এটি তৈরি হয়।
id string ঐচ্ছিক। এই ফলাফলটি যে ExecutableCode অংশের জন্য, তার শনাক্তকারী। শুধুমাত্র তখনই পূরণ করা হবে যখন সংশ্লিষ্ট ExecutableCode একটি আইডি থাকবে।
outcome enum ( Outcome )প্রয়োজনীয়। কোড সম্পাদনের ফলাফল।
output stringঐচ্ছিক। কোড কার্যকর হলে 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 এপিআই-তে ফেরত পাঠানো।
id string ঐচ্ছিক। টুল কলের অনন্য শনাক্তকারী। সার্ভারটি মিলে যাওয়া id সহ টুল রেসপন্সটি ফেরত পাঠায়।
toolType enum ( ToolType )প্রয়োজনীয়। যে ধরনের টুল ডাকা হয়েছিল।
args object ( 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 , এপিআই-তে ফেরত পাঠানো।
id stringঐচ্ছিক। যে টুল কলের জন্য এই প্রতিক্রিয়াটি দেওয়া হচ্ছে, তার শনাক্তকারী।
toolType enum ( ToolType ) আবশ্যক। যে টুলটি কল করা হয়েছে তার ধরন, যা সংশ্লিষ্ট ToolCall এর toolType সাথে মিলতে হবে।
response object ( Struct format)ঐচ্ছিক। টুলটির প্রতিক্রিয়া।
| JSON উপস্থাপনা |
|---|
{
"id": string,
"toolType": enum ( |
ভিডিওমেটাডেটা
অপ্রচলিত: এর পরিবর্তে GenerateContentRequest.processing_options ব্যবহার করুন। মেটাডেটা ইনপুট ভিডিও কন্টেন্টের বর্ণনা দেয়।
startOffset string ( Duration format)ঐচ্ছিক। ভিডিওটির শুরুর অফসেট।
সেকেন্ডে একটি সময়কাল যার সর্বোচ্চ নয়টি ভগ্নাংশ সংখ্যা ' s ' দিয়ে শেষ হয়। উদাহরণ: "3.5s" ।
endOffset string ( Duration format)ঐচ্ছিক। ভিডিওটির শেষ অফসেট।
সেকেন্ডে একটি সময়কাল যার সর্বোচ্চ নয়টি ভগ্নাংশ সংখ্যা ' s ' দিয়ে শেষ হয়। উদাহরণ: "3.5s" ।
fps numberঐচ্ছিক। মডেলে পাঠানো ভিডিওর ফ্রেম রেট। নির্দিষ্ট করে না দিলে, ডিফল্ট মান হবে ১.০। এফপিএস পরিসীমা হলো (০.০, ২৪.০)।
| JSON উপস্থাপনা |
|---|
{ "startOffset": string, "endOffset": string, "fps": number } |
মিডিয়ারেজোলিউশন
টোকেনাইজেশনের জন্য মিডিয়া রেজোলিউশন।
value Union typevalue নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:level enum ( 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 থাকতে পারে।
googleSearchRetrieval object ( GoogleSearchRetrieval )ঐচ্ছিক। গুগল সার্চ দ্বারা চালিত একটি তথ্য পুনরুদ্ধার টুল।
codeExecution object ( CodeExecution )ঐচ্ছিক। এটি মডেলকে জেনারেশনের অংশ হিসেবে কোড এক্সিকিউট করতে সক্ষম করে।
googleSearch object ( GoogleSearch )ঐচ্ছিক। গুগল সার্চ টুলের ধরণ। মডেলে গুগল সার্চ সমর্থন করার টুল। গুগল দ্বারা চালিত।
computerUse object ( ComputerUse )ঐচ্ছিক। মডেলটিকে সরাসরি কম্পিউটারের সাথে সংযোগ স্থাপনে সহায়তা করার একটি টুল। এটি সক্রিয় করা হলে, এটি স্বয়ংক্রিয়ভাবে কম্পিউটার-ব্যবহার-নির্দিষ্ট ফাংশন ডিক্লারেশনগুলো পূরণ করে দেয়।
urlContext object ( UrlContext )ঐচ্ছিক। ইউআরএল কনটেক্সট পুনরুদ্ধারে সহায়ক টুল।
fileSearch object ( FileSearch )ঐচ্ছিক। ফাইলসার্চ টুলের ধরন। সিমান্টিক রিট্রিভাল কর্পোরা থেকে জ্ঞান আহরণের টুল।
mcpServers[] object ( McpServer )ঐচ্ছিক। সংযোগ করার জন্য এমসিপি সার্ভারসমূহ।
googleMaps object ( GoogleMaps )ঐচ্ছিক। এমন একটি টুল যা ব্যবহারকারীর কোয়েরি সম্পর্কিত ভূ-স্থানিক প্রেক্ষাপটের সাহায্যে মডেলের প্রতিক্রিয়াকে ভিত্তি প্রদান করে।
| JSON উপস্থাপনা |
|---|
{ "functionDeclarations": [ { object ( |
ফাংশন ঘোষণা
OpenAPI 3.03 স্পেসিফিকেশন দ্বারা সংজ্ঞায়িত একটি ফাংশন ডিক্লারেশনের কাঠামোগত উপস্থাপনা। এই ডিক্লারেশনে ফাংশনের নাম এবং প্যারামিটার অন্তর্ভুক্ত থাকে। এই ফাংশন ডিক্লারেশনটি একটি কোড ব্লকের উপস্থাপনা, যা মডেল দ্বারা একটি Tool হিসাবে ব্যবহৃত হতে পারে এবং ক্লায়েন্ট দ্বারা এক্সিকিউট করা যেতে পারে।
name stringআবশ্যক। ফাংশনের নাম। নামটি অবশ্যই az, AZ, ০-৯ এর মধ্যে হতে হবে অথবা এতে আন্ডারস্কোর, কোলন, ডট এবং ড্যাশ থাকতে পারে, এবং এর সর্বোচ্চ দৈর্ঘ্য ১২৮।
description stringপ্রয়োজনীয়। ফাংশনটির একটি সংক্ষিপ্ত বিবরণ।
behavior enum ( Behavior )ঐচ্ছিক। ফাংশনের আচরণ নির্দিষ্ট করে। বর্তমানে শুধুমাত্র BidiGenerateContent মেথড দ্বারা সমর্থিত।
parameters object ( Schema )ঐচ্ছিক। এই ফাংশনের প্যারামিটারগুলো বর্ণনা করে। এটি ওপেন এপিআই ৩.০৩ প্যারামিটার অবজেক্টকে প্রতিফলিত করে। স্ট্রিং কী: প্যারামিটারের নাম। প্যারামিটারের নাম কেস-সেনসিটিভ। স্কিমা ভ্যালু: প্যারামিটারের জন্য ব্যবহৃত টাইপ নির্ধারণকারী স্কিমা।
parametersJsonSchema value ( Value format)ঐচ্ছিক। JSON স্কিমা ফরম্যাটে ফাংশনের প্যারামিটারগুলো বর্ণনা করে। স্কিমাটিতে অবশ্যই একটি অবজেক্ট থাকতে হবে, যার প্রোপার্টিগুলোই হলো ফাংশনের প্যারামিটার। উদাহরণস্বরূপ:
{
"type": "object",
"properties": {
"name": { "type": "string" },
"age": { "type": "integer" }
},
"additionalProperties": false,
"required": ["name", "age"],
"propertyOrdering": ["name", "age"]
}
এই ক্ষেত্রটি parameters সাথে পারস্পরিকভাবে বর্জনশীল।
response object ( Schema )ঐচ্ছিক। এই ফাংশনের আউটপুটকে JSON স্কিমা ফরম্যাটে বর্ণনা করে। এটি ওপেন এপিআই ৩.০৩ রেসপন্স অবজেক্টকে প্রতিফলিত করে। স্কিমাটি ফাংশনের রেসপন্স ভ্যালুর জন্য ব্যবহৃত টাইপ নির্ধারণ করে।
responseJsonSchema value ( Value format)ঐচ্ছিক। এই ফাংশনের আউটপুট JSON স্কিমা ফরম্যাটে বর্ণনা করে। স্কিমা দ্বারা নির্দিষ্ট মানটিই হলো ফাংশনটির প্রতিক্রিয়া মান।
এই ক্ষেত্রটি response সাথে পারস্পরিকভাবে বর্জনশীল।
স্কিমা
Schema অবজেক্ট ইনপুট এবং আউটপুট ডেটা টাইপ নির্ধারণের সুযোগ দেয়। এই টাইপগুলো অবজেক্ট, প্রিমিটিভ এবং অ্যারেও হতে পারে। এটি একটি OpenAPI 3.0 স্কিমা অবজেক্টের একটি নির্বাচিত উপসেটকে প্রতিনিধিত্ব করে।
type enum ( Type )আবশ্যক। ডেটা টাইপ।
format stringঐচ্ছিক। ডেটার ফরম্যাট। যেকোনো মানই গ্রহণযোগ্য, তবে বেশিরভাগই কোনো বিশেষ কার্যকারিতা চালু করে না।
title stringঐচ্ছিক। স্কিমার শিরোনাম।
description stringঐচ্ছিক। প্যারামিটারটির একটি সংক্ষিপ্ত বিবরণ। এতে ব্যবহারের উদাহরণ থাকতে পারে। প্যারামিটারের বিবরণ মার্কডাউন ফরম্যাটে দেওয়া যেতে পারে।
nullable booleanঐচ্ছিক। মানটি নাল হতে পারে কিনা তা নির্দেশ করে।
enum[] stringঐচ্ছিক। enum ফরম্যাটের Type.STRING এলিমেন্টের সম্ভাব্য মানসমূহ। উদাহরণস্বরূপ, আমরা একটি Enum Direction এভাবে সংজ্ঞায়িত করতে পারি: {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]}
maxItems string ( int64 format)ঐচ্ছিক। Type.ARRAY-এর উপাদানগুলোর সর্বোচ্চ সংখ্যা।
minItems string ( int64 format)ঐচ্ছিক। Type.ARRAY-এর জন্য উপাদানগুলোর ন্যূনতম সংখ্যা।
properties map (key: string, value: object ( Schema ))ঐচ্ছিক। Type.OBJECT-এর বৈশিষ্ট্যসমূহ।
একটি অবজেক্ট যা "key": value জোড়ের একটি তালিকা ধারণ করে। উদাহরণ: { "name": "wrench", "mass": "1.3kg", "count": "3" } ।
required[] stringঐচ্ছিক। Type.OBJECT-এর প্রয়োজনীয় প্রোপার্টিসমূহ।
minProperties string ( int64 format)ঐচ্ছিক। Type.OBJECT-এর জন্য প্রপার্টিগুলোর ন্যূনতম সংখ্যা।
maxProperties string ( int64 format)ঐচ্ছিক। Type.OBJECT-এর জন্য প্রপার্টির সর্বোচ্চ সংখ্যা।
minLength string ( int64 format)ঐচ্ছিক। টাইপ স্ট্রিং-এর জন্য স্কিমা ফিল্ডসমূহ। Type.STRING-এর সর্বনিম্ন দৈর্ঘ্য।
maxLength string ( int64 format)ঐচ্ছিক। Type.STRING-এর সর্বোচ্চ দৈর্ঘ্য।
pattern stringঐচ্ছিক। কোনো স্ট্রিংকে রেগুলার এক্সপ্রেশনে সীমাবদ্ধ করার জন্য Type.STRING-এর প্যাটার্ন।
example value ( Value format)ঐচ্ছিক। অবজেক্টটির উদাহরণ। শুধুমাত্র যখন অবজেক্টটি রুট হবে, তখনই এটি পূরণ হবে।
anyOf[] object ( Schema )ঐচ্ছিক। তালিকার যেকোনো একটি বা একাধিক সাবস্কিমার সাপেক্ষে মানটি যাচাই করা উচিত।
propertyOrdering[] stringঐচ্ছিক। প্রোপার্টিগুলোর ক্রম। ওপেন এপিআই স্পেসিফিকেশনের কোনো স্ট্যান্ডার্ড ফিল্ড নয়। রেসপন্সে প্রোপার্টিগুলোর ক্রম নির্ধারণ করতে ব্যবহৃত হয়।
default value ( Value format) ঐচ্ছিক। ফিল্ডটির ডিফল্ট মান। JSON স্কিমা অনুযায়ী, এই ফিল্ডটি ডকুমেন্টেশন জেনারেটরদের জন্য উদ্দিষ্ট এবং এটি ভ্যালিডেশনকে প্রভাবিত করে না। তাই এটিকে এখানে অন্তর্ভুক্ত করা হয়েছে এবং উপেক্ষা করা হয়, যাতে default ফিল্ডসহ স্কিমা প্রেরণকারী ডেভেলপাররা ‘unknown-field’ ত্রুটি না পান।
items object ( Schema )ঐচ্ছিক। Type.ARRAY-এর উপাদানগুলোর স্কিমা।
minimum numberঐচ্ছিক। INTEGER এবং NUMBER টাইপের জন্য স্কিমা ফিল্ড। Type.INTEGER এবং Type.NUMBER-এর সর্বনিম্ন মান।
maximum numberঐচ্ছিক। 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 | এটি সেট করা থাকলে, সিস্টেমটি ফাংশন রেসপন্স পাওয়ার জন্য অপেক্ষা করবে না। এর পরিবর্তে, এটি ব্যবহারকারী এবং মডেলের মধ্যে কথোপকথন বজায় রেখে, রেসপন্সগুলো উপলব্ধ হওয়ার সাথে সাথেই তা পরিচালনা করার চেষ্টা করবে। |
গুগলসার্চরিট্রিভাল
গ্রাউন্ডিংয়ের জন্য পাবলিক ওয়েব ডেটা সংগ্রহের একটি টুল, গুগল দ্বারা চালিত।
dynamicRetrievalConfig object ( DynamicRetrievalConfig )প্রদত্ত উৎসের জন্য গতিশীল পুনরুদ্ধার কনফিগারেশন নির্দিষ্ট করে।
| JSON উপস্থাপনা |
|---|
{
"dynamicRetrievalConfig": {
object ( |
ডাইনামিকরিট্রিভালকনফিগ
ডাইনামিক রিট্রিভাল কাস্টমাইজ করার বিকল্পগুলো বর্ণনা করে।
mode enum ( Mode )ডাইনামিক রিট্রিভালে ব্যবহৃত প্রেডিক্টরের মোড।
dynamicThreshold numberডাইনামিক রিট্রিভালে ব্যবহার করার জন্য থ্রেশহোল্ড। এটি সেট করা না থাকলে, সিস্টেমের ডিফল্ট মান ব্যবহৃত হয়।
| JSON উপস্থাপনা |
|---|
{
"mode": enum ( |
মোড
ডাইনামিক রিট্রিভালে ব্যবহৃত প্রেডিক্টরের মোড।
| এনাম | |
|---|---|
MODE_UNSPECIFIED | সর্বদা পুনরুদ্ধার প্রক্রিয়া চালু করুন। |
MODE_DYNAMIC | সিস্টেম যখন প্রয়োজন মনে করবে, কেবল তখনই তথ্য পুনরুদ্ধার চালাবে। |
কোডএক্সিকিউশন
এই প্রকারে কোনো ক্ষেত্র নেই।
এমন একটি টুল যা মডেল দ্বারা তৈরি কোড কার্যকর করে এবং স্বয়ংক্রিয়ভাবে ফলাফলটি মডেলে ফেরত পাঠায়।
আরও দেখুন ExecutableCode এবং CodeExecutionResult , যেগুলো শুধুমাত্র এই টুলটি ব্যবহার করার সময়ই তৈরি হয়।
গুগল অনুসন্ধান
গুগল সার্চ টুলের ধরণ। মডেলে গুগল সার্চ সমর্থন করার টুল। গুগল দ্বারা চালিত।
timeRangeFilter object ( Interval )ঐচ্ছিক। অনুসন্ধানের ফলাফল একটি নির্দিষ্ট সময়সীমার মধ্যে ফিল্টার করুন। গ্রাহকরা যদি শুরুর সময় নির্ধারণ করেন, তবে তাদের অবশ্যই শেষের সময়ও নির্ধারণ করতে হবে (এবং এর বিপরীতটিও প্রযোজ্য)।
searchTypes object ( SearchTypes )ঐচ্ছিক। যে ধরনের অনুসন্ধান সক্রিয় করতে চান। সেট করা না থাকলে, ওয়েব অনুসন্ধান ডিফল্টরূপে সক্রিয় থাকে।
| JSON উপস্থাপনা |
|---|
{ "timeRangeFilter": { object ( |
ব্যবধান
একটি সময় ব্যবধানকে বোঝায়, যা একটি টাইমস্ট্যাম্প শুরু (অন্তর্ভুক্ত) এবং একটি টাইমস্ট্যাম্প শেষ (বর্জনীয়) হিসেবে এনকোড করা হয়।
শুরু অবশ্যই শেষের চেয়ে কম বা সমান হতে হবে। যখন শুরু শেষের সমান হয়, তখন ব্যবধানটি শূন্য থাকে (কোনো সময়ের সাথে মেলে না)। যখন শুরু এবং শেষ উভয়ই অনির্দিষ্ট থাকে, তখন ব্যবধানটি যেকোনো সময়ের সাথে মেলে।
startTime string ( Timestamp format)ঐচ্ছিক। বিরতির অন্তর্ভুক্তিমূলক শুরু।
যদি নির্দিষ্ট করা থাকে, তবে এই ব্যবধানের সাথে মিলে যাওয়া একটি টাইমস্ট্যাম্পকে অবশ্যই শুরুর সময়ের সমান বা তার পরের হতে হবে।
RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-স্বাভাবিক হবে এবং 0, 3, 6 অথবা 9 ভগ্নাংশ সংখ্যা ব্যবহার করবে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণযোগ্য। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
endTime string ( Timestamp format)ঐচ্ছিক। ব্যবধানের একচেটিয়া সমাপ্তি।
যদি নির্দিষ্ট করা থাকে, তবে এই ব্যবধানের সাথে মেলে এমন একটি টাইমস্ট্যাম্প শেষের আগে থাকতে হবে।
RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-স্বাভাবিক হবে এবং 0, 3, 6 অথবা 9 ভগ্নাংশ সংখ্যা ব্যবহার করবে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণযোগ্য। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
| JSON উপস্থাপনা |
|---|
{ "startTime": string, "endTime": string } |
অনুসন্ধানের ধরণ
গুগল সার্চ টুলে বিভিন্ন ধরনের সার্চ চালু করা যায়।
webSearch object ( WebSearch )ঐচ্ছিক। ওয়েব অনুসন্ধান সক্ষম করে। শুধুমাত্র টেক্সট ফলাফল দেখানো হয়।
imageSearch object ( ImageSearch )ঐচ্ছিক। ছবি অনুসন্ধান সক্ষম করে। ছবির বাইটগুলো ফেরত দেওয়া হয়।
| JSON উপস্থাপনা |
|---|
{ "webSearch": { object ( |
ওয়েবসার্চ
এই প্রকারে কোনো ক্ষেত্র নেই।
গ্রাউন্ডিং এবং সংশ্লিষ্ট কনফিগারেশনের জন্য সাধারণ ওয়েব অনুসন্ধান।
ইমেজসার্চ
এই প্রকারে কোনো ক্ষেত্র নেই।
গ্রাউন্ডিং এবং সংশ্লিষ্ট কনফিগারেশনের জন্য চিত্র অনুসন্ধান।
কম্পিউটার ব্যবহার
কম্পিউটার ব্যবহারের টুলের ধরন।
environment enum ( Environment )প্রয়োজনীয়। যে পরিবেশে কাজ করা হচ্ছে।
excludedPredefinedFunctions[] stringঐচ্ছিক। ডিফল্টরূপে, পূর্বনির্ধারিত ফাংশনগুলো চূড়ান্ত মডেল কলে অন্তর্ভুক্ত থাকে। এগুলোর মধ্যে কয়েকটিকে স্বয়ংক্রিয়ভাবে অন্তর্ভুক্ত হওয়া থেকে সুস্পষ্টভাবে বাদ দেওয়া যেতে পারে। এর দুটি উদ্দেশ্য থাকতে পারে: ১. আরও সীমাবদ্ধ / ভিন্ন একটি অ্যাকশন স্পেস ব্যবহার করা। ২. পূর্বনির্ধারিত ফাংশনগুলোর সংজ্ঞা / নির্দেশাবলীর উন্নতি সাধন করা।
| JSON উপস্থাপনা |
|---|
{
"environment": enum ( |
পরিবেশ
যে পরিবেশে কাজ করা হচ্ছে, তার প্রতিনিধিত্ব করে, যেমন একটি ওয়েব ব্রাউজার।
| এনাম | |
|---|---|
ENVIRONMENT_UNSPECIFIED | ডিফল্ট হিসেবে ব্রাউজার ব্যবহৃত হয়। |
ENVIRONMENT_BROWSER | ওয়েব ব্রাউজারে পরিচালিত হয়। |
ইউআরএলপ্রসঙ্গ
এই প্রকারে কোনো ক্ষেত্র নেই।
ইউআরএল কনটেক্সট পুনরুদ্ধারে সহায়ক টুল।
ফাইলসার্চ
ফাইলসার্চ টুলটি সিম্যান্টিক রিট্রিভাল কর্পোরা থেকে তথ্য আহরণ করে। ইমপোর্টফাইল এপিআই (ImportFile API) ব্যবহার করে সিম্যান্টিক রিট্রিভাল কর্পোরা-তে ফাইল ইম্পোর্ট করা হয়।
fileSearchStoreNames[] string আবশ্যক। যে ফাইলসার্চস্টোরগুলো থেকে ডেটা সংগ্রহ করতে হবে, সেগুলোর নাম। উদাহরণ: fileSearchStores/my-file-search-store-123
metadataFilter stringঐচ্ছিক। শব্দার্থিক পুনরুদ্ধারের ডকুমেন্ট এবং চাঙ্কগুলিতে প্রয়োগ করার জন্য মেটাডেটা ফিল্টার।
topK integerঐচ্ছিক। পুনরুদ্ধার করার জন্য শব্দার্থিক পুনরুদ্ধার খণ্ডের সংখ্যা।
| JSON উপস্থাপনা |
|---|
{ "fileSearchStoreNames": [ string ], "metadataFilter": string, "topK": integer } |
McpServer
একটি MCPServer হলো এমন একটি সার্ভার যাকে মডেল বিভিন্ন কাজ সম্পাদনের জন্য আহ্বান করতে পারে। এটি এমন একটি সার্ভার যা MCP প্রোটোকল বাস্তবায়ন করে। পরবর্তী আইডি: ৫
name stringMCPServer-টির নাম।
transport Union typetransport নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে: streamableHttpTransport object ( StreamableHttpTransport )এমন একটি ট্রান্সপোর্ট যা HTTP অনুরোধ এবং প্রতিক্রিয়া স্ট্রিম করতে পারে।
| JSON উপস্থাপনা |
|---|
{
"name": string,
// transport
"streamableHttpTransport": {
object ( |
স্ট্রিমেবলএইচটিটিপিট্রান্সপোর্ট
একটি ট্রান্সপোর্ট যা HTTP অনুরোধ এবং প্রতিক্রিয়া স্ট্রিম করতে পারে। পরবর্তী আইডি: ৬
url stringMCPServer এন্ডপয়েন্টের সম্পূর্ণ URL। উদাহরণ: "https://api.example.com/mcp"
headers map (key: string, value: string)ঐচ্ছিক: প্রয়োজন হলে অথেনটিকেশন হেডার, টাইমআউট ইত্যাদির জন্য ফিল্ড।
একটি অবজেক্ট যা "key": value জোড়ের একটি তালিকা ধারণ করে। উদাহরণ: { "name": "wrench", "mass": "1.3kg", "count": "3" } ।
timeout string ( Duration format)নিয়মিত কার্যক্রমের জন্য HTTP টাইমআউট।
সেকেন্ডে একটি সময়কাল যার সর্বোচ্চ নয়টি ভগ্নাংশ সংখ্যা ' s ' দিয়ে শেষ হয়। উদাহরণ: "3.5s" ।
sseReadTimeout string ( Duration format)SSE রিড অপারেশনের জন্য সময়সীমা শেষ।
সেকেন্ডে একটি সময়কাল যার সর্বোচ্চ নয়টি ভগ্নাংশ সংখ্যা ' s ' দিয়ে শেষ হয়। উদাহরণ: "3.5s" ।
terminateOnClose booleanট্রান্সপোর্ট বন্ধ হলে ক্লায়েন্ট সেশন বন্ধ করা হবে কিনা।
| JSON উপস্থাপনা |
|---|
{ "url": string, "headers": { string: string, ... }, "timeout": string, "sseReadTimeout": string, "terminateOnClose": boolean } |
গুগলম্যাপস
গুগল ম্যাপস টুল যা ব্যবহারকারীর অনুসন্ধানের জন্য ভূ-স্থানিক প্রেক্ষাপট প্রদান করে।
enableWidget booleanOptional. Whether to return a widget context token in the GroundingMetadata of the response. Developers can use the widget context token to render a Google Maps widget with geospatial context related to the places that the model references in the response.
| JSON উপস্থাপনা |
|---|
{ "enableWidget": boolean } |
ToolConfig
The Tool configuration containing parameters for specifying Tool use in the request.
functionCallingConfig object ( FunctionCallingConfig )Optional. Function calling config.
retrievalConfig object ( RetrievalConfig )Optional. Retrieval config.
includeServerSideToolInvocations boolean Optional. If true, the API response will include the server-side tool calls and responses within the Content message. This allows clients to observe the server's tool interactions.
| JSON উপস্থাপনা |
|---|
{ "functionCallingConfig": { object ( |
FunctionCallingConfig
Configuration for specifying function calling behavior.
mode enum ( Mode )Optional. Specifies the mode in which function calling should execute. If unspecified, the default value will be set to AUTO.
allowedFunctionNames[] stringOptional. A set of function names that, when provided, limits the functions the model will call.
This should only be set when the Mode is ANY or VALIDATED. Function names should match [FunctionDeclaration.name]. When set, model will predict a function call from only allowed function names.
| JSON উপস্থাপনা |
|---|
{
"mode": enum ( |
মোড
Defines the execution behavior for function calling by defining the execution mode.
| এনাম | |
|---|---|
MODE_UNSPECIFIED | Unspecified function calling mode. This value should not be used. |
AUTO | Default model behavior, model decides to predict either a function call or a natural language response. |
ANY | Model is constrained to always predicting a function call only. If "allowedFunctionNames" are set, the predicted function call will be limited to any one of "allowedFunctionNames", else the predicted function call will be any one of the provided "functionDeclarations". |
NONE | Model will not predict any function call. Model behavior is same as when not passing any function declarations. |
VALIDATED | Model decides to predict either a function call or a natural language response, but will validate function calls with constrained decoding. If "allowedFunctionNames" are set, the predicted function call will be limited to any one of "allowedFunctionNames", else the predicted function call will be any one of the provided "functionDeclarations". |
RetrievalConfig
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.
latitude numberThe latitude in degrees. It must be in the range [-90.0, +90.0].
longitude numberThe 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.
totalTokenCount integerTotal number of tokens that the cached content consumes.
| JSON উপস্থাপনা |
|---|
{ "totalTokenCount": integer } |