জেমিনি এপিআই প্রম্পট ইনপুট থেকে আলাদাভাবে মিডিয়া ফাইল আপলোড করা সমর্থন করে, যার ফলে আপনার মিডিয়া একাধিক অনুরোধ এবং একাধিক প্রম্পটে পুনরায় ব্যবহার করা যায়। আরও বিস্তারিত জানতে, ‘প্রম্পটিং উইথ মিডিয়া’ গাইডটি দেখুন।
পদ্ধতি: মিডিয়া আপলোড
একটি File তৈরি করে।
এন্ডপয়েন্ট
https: / /generativelanguage.googleapis.com /upload /v1beta /fileshttps: / /generativelanguage.googleapis.com /v1beta /files
অনুরোধকারী শরীর
অনুরোধের মূল অংশে নিম্নলিখিত কাঠামোসহ ডেটা থাকে:
fileobject ( File )ঐচ্ছিক। যে ফাইলটি তৈরি করা হবে তার মেটাডেটা।
উদাহরণ অনুরোধ
ছবি
পাইথন
নোড.জেএস
যান
শেল
অডিও
পাইথন
নোড.জেএস
যান
শেল
পাঠ্য
পাইথন
নোড.জেএস
যান
শেল
ভিডিও
পাইথন
নোড.জেএস
যান
শেল
পিডিএফ
পাইথন
যান
পদ্ধতি: files.get
প্রদত্ত File মেটাডেটা সংগ্রহ করে।
এন্ডপয়েন্ট
gethttps: / /generativelanguage.googleapis.com /v1beta /{name=files /*}পথের পরামিতি
namestring আবশ্যক। যে File আনতে হবে তার নাম। উদাহরণ: files/abc-123 এর গঠনটি হলো files/{file} ।
অনুরোধকারী শরীর
অনুরোধের মূল অংশ অবশ্যই খালি হতে হবে।
উদাহরণ অনুরোধ
পাইথন
নোড.জেএস
যান
শেল
প্রতিক্রিয়া সংস্থা
সফল হলে, রেসপন্স বডিতে File এর একটি ইনস্ট্যান্স থাকে।
পদ্ধতি: ফাইল.তালিকা
অনুরোধকারী প্রকল্পের মালিকানাধীন File মেটাডেটা তালিকাভুক্ত করে।
এন্ডপয়েন্ট
https: / /generativelanguage.googleapis.com /v1beta /files পানকোয়েরি প্যারামিটার
pageSizeinteger ঐচ্ছিক। প্রতি পৃষ্ঠায় ফেরত দেওয়া File সর্বোচ্চ সংখ্যা। নির্দিষ্ট না করা হলে, ডিফল্ট মান ১০ হবে। সর্বোচ্চ pageSize হলো ১০০।
pageTokenstring ঐচ্ছিক। পূর্ববর্তী files.list কল থেকে প্রাপ্ত একটি পৃষ্ঠা টোকেন।
অনুরোধকারী শরীর
অনুরোধের মূল অংশ অবশ্যই খালি হতে হবে।
উদাহরণ অনুরোধ
পাইথন
নোড.জেএস
যান
শেল
প্রতিক্রিয়া সংস্থা
files.list এর প্রতিক্রিয়া।
সফল হলে, প্রতিক্রিয়া অংশে নিম্নলিখিত কাঠামোসহ ডেটা থাকে:
files[]object ( File ) File তালিকা।
nextPageTokenstring এমন একটি টোকেন যা পরবর্তী files.list কলে pageToken হিসেবে পাঠানো যেতে পারে।
| JSON উপস্থাপনা |
|---|
{
"files": [
{
object ( |
পদ্ধতি: files.delete
File মুছে দেয়।
এন্ডপয়েন্ট
https: / /generativelanguage.googleapis.com /v1beta /{name=files /*} মুছে ফেলুনপথের পরামিতি
namestring আবশ্যক। যে File মুছতে হবে তার নাম। উদাহরণ: files/abc-123 এর গঠনটি হলো files/{file} ।
অনুরোধকারী শরীর
অনুরোধের মূল অংশ অবশ্যই খালি হতে হবে।
উদাহরণ অনুরোধ
পাইথন
নোড.জেএস
যান
শেল
প্রতিক্রিয়া সংস্থা
সফল হলে, রেসপন্স বডিটি একটি খালি JSON অবজেক্ট হয়।
পদ্ধতি: files.register
FileService-এর সাথে একটি Google Cloud Storage ফাইল রেজিস্টার করে। ব্যবহারকারীকে Google Cloud Storage URI প্রদান করতে হবে এবং এর বিনিময়ে প্রতিটি URI-এর জন্য একটি File রিসোর্স পাওয়া যাবে। উল্লেখ্য যে, ফাইলগুলো কপি করা হয় না, শুধু File API-এর সাথে রেজিস্টার করা হয়। যদি একটি ফাইল রেজিস্টার করতে ব্যর্থ হয়, তবে পুরো অনুরোধটিই ব্যর্থ হয়ে যায়।
এন্ডপয়েন্ট
পোস্টhttps: / /generativelanguage.googleapis.com /v1beta /files:registerঅনুরোধকারী শরীর
অনুরোধের মূল অংশে নিম্নলিখিত কাঠামোসহ ডেটা থাকে:
uris[]string নিবন্ধনের জন্য প্রয়োজনীয় গুগল ক্লাউড স্টোরেজ ইউআরআইগুলো আবশ্যক। উদাহরণ: gs://bucket/object ।
REST রিসোর্স: ফাইল
উৎস: ফাইল
এপিআই-তে একটি ফাইল আপলোড করা হয়েছে। পরবর্তী আইডি: ১৫
namestring অপরিবর্তনীয়। শনাক্তকারী। File রিসোর্সের নাম। আইডি (নামের শুরুতে "files/" উপসর্গটি বাদে) ৪০টি পর্যন্ত ছোট হাতের অক্ষর, সংখ্যা বা ড্যাশ (-) দিয়ে গঠিত হতে পারে। আইডি ড্যাশ দিয়ে শুরু বা শেষ হতে পারবে না। তৈরির সময় নামটি খালি থাকলে, একটি অনন্য নাম তৈরি করা হবে। উদাহরণ: files/123-456
displayNamestring ঐচ্ছিক। File জন্য সহজে পাঠযোগ্য প্রদর্শিত নাম। স্পেস সহ প্রদর্শিত নামটি অবশ্যই ৫১২ অক্ষরের বেশি হবে না। উদাহরণ: "Welcome Image"
mimeTypestringশুধুমাত্র আউটপুট। ফাইলটির MIME টাইপ।
sizeBytesstring ( int64 format)শুধুমাত্র আউটপুট। ফাইলের আকার বাইটে।
createTimestring ( Timestamp format) শুধুমাত্র আউটপুট। File তৈরি হওয়ার সময়কার টাইমস্ট্যাম্প।
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) শুধুমাত্র আউটপুট। File সর্বশেষ কখন আপডেট করা হয়েছিল তার টাইমস্ট্যাম্প।
RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
expirationTimestring ( Timestamp format) শুধুমাত্র আউটপুট। File কখন মুছে ফেলা হবে তার টাইমস্ট্যাম্প। শুধুমাত্র তখনই সেট করা হয় যখন File মেয়াদ শেষ হওয়ার জন্য সময়সূচী নির্ধারণ করা থাকে।
RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30" ।
sha256Hashstring ( bytes format)শুধুমাত্র আউটপুট। আপলোড করা বাইটগুলোর SHA-256 হ্যাশ।
একটি বেস৬৪-এনকোডেড স্ট্রিং।
uristring শুধুমাত্র আউটপুট। File ইউআরআই।
downloadUristring শুধুমাত্র আউটপুট। File ডাউনলোড ইউআরআই।
stateenum ( State )শুধুমাত্র আউটপুট। ফাইলটির প্রক্রিয়াকরণ অবস্থা।
sourceenum ( Source )ফাইলটির উৎস।
errorobject ( Status )শুধুমাত্র আউটপুট। ফাইল প্রক্রিয়াকরণ ব্যর্থ হলে ত্রুটির অবস্থা দেখানো হবে।
metadataUnion typemetadata নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:videoMetadataobject ( VideoFileMetadata )শুধুমাত্র আউটপুট। একটি ভিডিওর মেটাডেটা।
| JSON উপস্থাপনা |
|---|
{ "name": string, "displayName": string, "mimeType": string, "sizeBytes": string, "createTime": string, "updateTime": string, "expirationTime": string, "sha256Hash": string, "uri": string, "downloadUri": string, "state": enum ( |
ভিডিওফাইলমেটাডেটা
একটি ভিডিও File মেটাডেটা।
videoDurationstring ( Duration format)ভিডিওটির সময়কাল।
সেকেন্ডে পরিমাপকৃত সময়কাল, যা সর্বোচ্চ নয়টি ভগ্নাংশ অঙ্ক পর্যন্ত হতে পারে এবং শেষে ' s ' থাকে। উদাহরণ: "3.5s" ।
| JSON উপস্থাপনা |
|---|
{ "videoDuration": string } |
রাজ্য
একটি ফাইলের জীবনচক্রের অবস্থাসমূহ।
| এনামস | |
|---|---|
STATE_UNSPECIFIED | ডিফল্ট মান। স্টেটটি উল্লেখ না করা হলে এই মানটি ব্যবহৃত হয়। |
PROCESSING | ফাইলটি প্রক্রিয়াধীন আছে এবং এখনও অনুমানের জন্য ব্যবহার করা যাবে না। |
ACTIVE | ফাইলটি প্রক্রিয়াজাত করা হয়েছে এবং অনুমানের জন্য উপলব্ধ। |
FAILED | ফাইলটি প্রক্রিয়াকরণে ব্যর্থ হয়েছে। |
উৎস
| এনামস | |
|---|---|
SOURCE_UNSPECIFIED | উৎস নির্দিষ্ট করা না থাকলে ব্যবহৃত হয়। |
UPLOADED | এটি নির্দেশ করে যে ফাইলটি ব্যবহারকারী দ্বারা আপলোড করা হয়েছে। |
GENERATED | এটি নির্দেশ করে যে ফাইলটি গুগল দ্বারা তৈরি করা হয়েছে। |
REGISTERED | এটি নির্দেশ করে যে ফাইলটি নিবন্ধিত, অর্থাৎ এটি একটি গুগল ক্লাউড স্টোরেজ ফাইল। |
অবস্থা
Status টাইপ একটি লজিক্যাল এরর মডেল নির্ধারণ করে যা REST API এবং RPC API সহ বিভিন্ন প্রোগ্রামিং এনভায়রনমেন্টের জন্য উপযুক্ত। এটি gRPC দ্বারা ব্যবহৃত হয়। প্রতিটি Status মেসেজে তিনটি ডেটা থাকে: এরর কোড, এরর মেসেজ এবং এররের বিস্তারিত বিবরণ।
এই এরর মডেল এবং এটি নিয়ে কীভাবে কাজ করতে হয়, সে সম্পর্কে আরও জানতে আপনি এপিআই ডিজাইন গাইড দেখতে পারেন।
codeinteger স্ট্যাটাস কোডটি google.rpc.Code এর একটি enum ভ্যালু হওয়া উচিত।
messagestring ডেভেলপারদের জন্য একটি ত্রুটির বার্তা, যা ইংরেজিতে হওয়া উচিত। ব্যবহারকারীদের জন্য যেকোনো ত্রুটির বার্তা স্থানীয়করণ করে google.rpc.Status.details ফিল্ডে পাঠাতে হবে, অথবা ক্লায়েন্ট দ্বারা স্থানীয়করণ করতে হবে।
details[]objectত্রুটির বিবরণ বহনকারী বার্তাগুলির একটি তালিকা। এপিআই (API) ব্যবহারের জন্য কিছু সাধারণ বার্তা প্রকার রয়েছে।
একটি অবজেক্ট যাতে যেকোনো ধরনের ফিল্ড থাকে। "@type" নামে একটি অতিরিক্ত ফিল্ড থাকে, যা ধরনটি শনাক্তকারী একটি URI ধারণ করে। উদাহরণ: { "id": 1234, "@type": "types.example.com/standard/id" } ।
| JSON উপস্থাপনা |
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |