تتيح واجهة Gemini API تحميل ملفات وسائط بشكل منفصل عن إدخالات الطلب، ما يتيح إعادة استخدام الوسائط في طلبات متعددة وطلبات متعددة. لمزيد من التفاصيل، يمكنك الاطّلاع على دليل الطلب باستخدام الوسائط.
الطريقة: media.upload
ينشئ File
.
نقطة نهاية
- تحميل عنوان URI، لطلبات تحميل الوسائط:
- معرّف الموارد المنتظم (URI) للبيانات الوصفية، لطلبات البيانات الوصفية فقط:
نص الطلب
يحتوي نص الطلب على بيانات بالبنية التالية:
file
object (File
)
اختياريّ. البيانات الوصفية للملف المطلوب إنشاؤه
مثال على الطلب
صورة
Python
Node.js
البدء
صَدفة
الصوت
Python
Node.js
البدء
صَدفة
نص
Python
Node.js
البدء
صَدفة
فيديو
Python
Node.js
البدء
صَدفة
Python
الطريقة: Files.get
تحصل على البيانات الوصفية لـ File
المحدّد.
نقطة نهاية
get https://generativelanguage.googleapis.com/v1beta/{name=files/*}مَعلمات المسار
name
string
مطلوب. اسم File
المطلوب الحصول عليه. مثال: files/abc-123
يكون على الشكل files/{file}
.
نص الطلب
يجب أن يكون نص الطلب فارغًا.
مثال على الطلب
Python
Node.js
البدء
صَدفة
نص الاستجابة
إذا كانت الاستجابة ناجحة، يحتوي نص الاستجابة على مثال File
.
الطريقة: Files.list
يسرد هذا العمود البيانات الوصفية لـ File
التي يملكها المشروع الذي يطلب الإجراء.
نقطة نهاية
الحصول على https://generativelanguage.googleapis.com/v1beta/filesمعامِلات طلب البحث
pageSize
integer
اختياريّ. الحد الأقصى لعدد File
التي يتم عرضها في كل صفحة إذا لم يتم تحديد عدد، يتم ضبط القيمة التلقائية على 10. الحد الأقصى لعدد pageSize
هو 100.
pageToken
string
اختياريّ. رمز مميّز للصفحة من استدعاء files.list
سابق.
نص الطلب
يجب أن يكون نص الطلب فارغًا.
مثال على الطلب
Python
Node.js
البدء
صَدفة
نص الاستجابة
ردّ على files.list
إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:
files[]
object (File
)
قائمة File
.
nextPageToken
string
هو رمز مميّز يمكن إرساله على أنّه pageToken
في استدعاء files.list
لاحق.
تمثيل JSON |
---|
{
"files": [
{
object ( |
الطريقة: files.delete
يؤدي النقر على هذا الزر إلى حذف File
.
نقطة نهاية
حذف https://generativelanguage.googleapis.com/v1beta/{name=files/*}مَعلمات المسار
name
string
مطلوب. اسم File
المطلوب حذفه. مثال: files/abc-123
يكون على الشكل files/{file}
.
نص الطلب
يجب أن يكون نص الطلب فارغًا.
مثال على الطلب
Python
Node.js
البدء
صَدفة
نص الاستجابة
إذا كانت الاستجابة ناجحة، يكون نص الاستجابة فارغًا.
مورد REST: الملفات
المرجع: ملف
ملف تم تحميله إلى واجهة برمجة التطبيقات
name
string
غير قابل للتغيير المعرّف اسم المورد File
يمكن أن يحتوي رقم التعريف (الاسم باستثناء البادئة "files/") على 40 حرفًا أبجديًا رقميًا صغيرًا أو شرطات (-). لا يمكن أن يبدأ المعرّف أو ينتهي بشرطة. إذا كان الاسم فارغًا عند الإنشاء، سيتم إنشاء اسم فريد. مثلاً: files/123-456
displayName
string
اختياريّ. تمثّل هذه السمة الاسم المعروض لـ File
الذي يمكن للمستخدمين قراءته. يجب ألا يزيد طول الاسم المعروض عن 512 حرفًا، بما في ذلك المسافات. مثال: "صورة الترحيب"
mimeType
string
النتائج فقط. نوع MIME للملف.
sizeBytes
string (int64 format)
النتائج فقط. حجم الملف بالبايت.
createTime
string (Timestamp
format)
النتائج فقط. الطابع الزمني لوقت إنشاء File
يجب أن يكون طابعًا زمنيًا بالتنسيق RFC3339 UTC "Zulu" وبدقة تصل إلى نانوثانية وما يصل إلى تسعة أرقام كسور. أمثلة: "2014-10-02T15:01:23Z"
و"2014-10-02T15:01:23.045123456Z"
.
updateTime
string (Timestamp
format)
النتائج فقط. الطابع الزمني لآخر تعديل على File
يجب أن يكون طابعًا زمنيًا بالتنسيق RFC3339 UTC "Zulu" وبدقة تصل إلى نانوثانية وما يصل إلى تسعة أرقام كسور. أمثلة: "2014-10-02T15:01:23Z"
و"2014-10-02T15:01:23.045123456Z"
expirationTime
string (Timestamp
format)
النتائج فقط. الطابع الزمني لوقت حذف File
لا يتم ضبط هذه السمة إلا إذا كان من المقرر انتهاء صلاحية File
.
طابع زمني بتنسيق RFC3339 حسب التوقيت العالمي المنسَّق (UTC) "زولو" بدقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "2014-10-02T15:01:23Z"
و"2014-10-02T15:01:23.045123456Z"
sha256Hash
string (bytes format)
النتائج فقط. تجزئة SHA-256 للبايتات المحمَّلة
سلسلة بترميز base64
uri
string
النتائج فقط. عنوان URL الخاص بالسمة File
state
enum (State
)
النتائج فقط. حالة معالجة الملف
error
object (Status
)
النتائج فقط. حالة الخطأ في حال تعذّرت معالجة الملف
metadata
. البيانات الوصفية للملف يمكن أن يكون metadata
واحدًا فقط مما يلي:
videoMetadata
object (VideoMetadata
)
النتائج فقط. البيانات الوصفية للفيديو.
تمثيل JSON |
---|
{ "name": string, "displayName": string, "mimeType": string, "sizeBytes": string, "createTime": string, "updateTime": string, "expirationTime": string, "sha256Hash": string, "uri": string, "state": enum ( |
VideoMetadata
البيانات الوصفية للفيديو File
videoDuration
string (Duration
format)
تشير هذه العلامة إلى مدة الفيديو.
مدة بالثواني مكونة من تسعة أرقام كسور كحد أقصى وتنتهي بالأرقام "s
" مثال: "3.5s"
تمثيل JSON |
---|
{ "videoDuration": string } |
الحالة
الحالات التي تشملها دورة حياة الملف
عمليات التعداد | |
---|---|
STATE_UNSPECIFIED |
القيمة التلقائية يتم استخدام هذه القيمة في حال حذف الحالة. |
PROCESSING |
تتم معالجة الملف ولا يمكن استخدامه للاستنتاج بعد. |
ACTIVE |
تتم معالجة الملف ويمكن استنتاجه. |
FAILED |
تعذّرت معالجة الملف. |
الحالة
يحدِّد نوع Status
نموذج خطأ منطقيًا مناسبًا لبيئات البرمجة المختلفة، بما في ذلك واجهات برمجة التطبيقات REST وRPC. وتُستخدَم من قِبل gRPC. تحتوي كل رسالة Status
على ثلاث قطع من البيانات: رمز الخطأ ورسالة الخطأ وتفاصيل الخطأ.
يمكنك الاطّلاع على مزيد من المعلومات عن نموذج الأخطاء هذا وكيفية التعامل معه في دليل تصميم واجهة برمجة التطبيقات.
code
integer
رمز الحالة، الذي يجب أن يكون قيمة تعداد بقيمة google.rpc.Code
.
message
string
رسالة خطأ مواجهة للمطوِّر، ويجب أن تكون باللغة الإنجليزية يجب ترجمة أي رسالة خطأ تظهر للمستخدم وإرسالها في الحقل google.rpc.Status.details
، أو ترجمتها من خلال البرنامج.
details[]
object
قائمة بالرسائل التي تتضمّن تفاصيل الخطأ هناك مجموعة شائعة من أنواع الرسائل لاستخدام واجهات برمجة التطبيقات.
كائن يحتوي على حقول من نوع عشوائي يحتوي الحقل "@type"
الإضافي على معرّف موارد منتظم (URI) يحدِّد النوع. مثال: { "id": 1234, "@type": "types.example.com/standard/id" }
تمثيل JSON |
---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |