কন্টেক্সট ক্যাশিং আপনাকে আগে থেকে গণনা করা ইনপুট টোকেনগুলো সংরক্ষণ ও পুনরায় ব্যবহার করার সুযোগ দেয়, যা আপনি বারবার ব্যবহার করতে চান; যেমন, একই মিডিয়া ফাইল সম্পর্কে বিভিন্ন প্রশ্ন করার সময়। ব্যবহারের ধরনের ওপর নির্ভর করে, এর ফলে খরচ এবং গতি উভয়ই সাশ্রয় হতে পারে। এ বিষয়ে বিস্তারিত জানতে কন্টেক্সট ক্যাশিং গাইডটি দেখুন।
পদ্ধতি: 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 )Optional. Input only. Immutable. Developer set system instruction. Currently text only.
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 রিসোর্স: ক্যাশড কন্টেন্টস
- উৎস: ক্যাশড কন্টেন্ট
- টুলকনফিগ
- ফাংশনকলিংকনফিগ
- মোড
- পুনরুদ্ধার কনফিগারেশন
- অক্ষাংশ দ্রাঘিমাংশ
- ব্যবহার মেটাডেটা
- পদ্ধতি
উৎস: ক্যাশড কন্টেন্ট
যে কন্টেন্টটি পূর্ব-প্রক্রিয়াজাত করা হয়েছে এবং যা জেনারেটিভসার্ভিস-এ পরবর্তী অনুরোধে ব্যবহার করা যাবে।
ক্যাশ করা কন্টেন্ট শুধুমাত্র সেই মডেলের সাথেই ব্যবহার করা যাবে, যেটির জন্য এটি তৈরি করা হয়েছে।
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 )Optional. Input only. Immutable. Developer set system instruction. Currently text only.
toolConfigobject ( ToolConfig )ঐচ্ছিক। শুধুমাত্র ইনপুট। অপরিবর্তনীয়। টুল কনফিগারেশন। এই কনফিগারেশনটি সকল টুলের জন্য ব্যবহৃত হবে।
| JSON উপস্থাপনা |
|---|
{ "contents": [ { object ( |
টুলকনফিগ
টুল কনফিগারেশনে অনুরোধে 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"-গুলোর যেকোনো একটি হবে। |
পুনরুদ্ধার কনফিগারেশন
অক্ষাংশ দ্রাঘিমাংশ
একটি অবজেক্ট যা একটি অক্ষাংশ/দ্রাঘিমাংশ জোড়াকে উপস্থাপন করে। এটি ডিগ্রি অক্ষাংশ এবং ডিগ্রি দ্রাঘিমাংশ বোঝাতে একজোড়া ডাবল (double) হিসেবে প্রকাশ করা হয়। অন্যভাবে নির্দিষ্ট করা না থাকলে, এই অবজেক্টটিকে অবশ্যই WGS84 স্ট্যান্ডার্ড মেনে চলতে হবে। মানগুলো অবশ্যই নর্মালাইজড রেঞ্জের মধ্যে থাকতে হবে।
latitudenumberঅক্ষাংশ ডিগ্রিতে। এটি অবশ্যই [-90.0, +90.0] সীমার মধ্যে হতে হবে।
longitudenumberদ্রাঘিমাংশ ডিগ্রিতে। এটি অবশ্যই [-180.0, +180.0] সীমার মধ্যে হতে হবে।
| JSON উপস্থাপনা |
|---|
{ "latitude": number, "longitude": number } |
ব্যবহার মেটাডেটা
ক্যাশে করা বিষয়বস্তুর ব্যবহার সংক্রান্ত মেটাডেটা।
totalTokenCountintegerক্যাশে করা কন্টেন্ট দ্বারা ব্যবহৃত মোট টোকেনের সংখ্যা।
| JSON উপস্থাপনা |
|---|
{ "totalTokenCount": integer } |