REST Resource: cachedContents

المورد: CachedContent

المحتوى الذي تمت معالجته مسبقًا ويمكن استخدامه في الطلب اللاحق إلى GenerativeService

لا يمكن استخدام المحتوى المخزن مؤقتًا إلا مع النموذج الذي تم إنشاؤه من أجله.

تمثيل JSON
{
  "contents": [
    {
      object (Content)
    }
  ],
  "tools": [
    {
      object (Tool)
    }
  ],
  "createTime": string,
  "updateTime": string,
  "usageMetadata": {
    object (UsageMetadata)
  },

  // Union field expiration can be only one of the following:
  "expireTime": string,
  "ttl": string
  // End of list of possible types for union field expiration.
  "name": string,
  "displayName": string,
  "model": string,
  "systemInstruction": {
    object (Content)
  },
  "toolConfig": {
    object (ToolConfig)
  }
}
الحقول
contents[]

object (Content)

اختياريّ. الإدخال فقط. غير قابل للتغيير. المحتوى المطلوب تخزينه مؤقتًا.

tools[]

object (Tool)

اختياريّ. الإدخال فقط. غير قابل للتغيير. قائمة بـ Tools التي قد يستخدمها النموذج لإنشاء الرد التالي

createTime

string (Timestamp format)

النتائج فقط. وقت إنشاء إدخال ذاكرة التخزين المؤقت

طابع زمني بتنسيق RFC3339 UTC "Zulu"، بدقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "2014-10-02T15:01:23Z" و"2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

النتائج فقط. تاريخ آخر تعديل لإدخال ذاكرة التخزين المؤقت بالتوقيت العالمي المنسّق

طابع زمني بتنسيق RFC3339 UTC "Zulu"، بدقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "2014-10-02T15:01:23Z" و"2014-10-02T15:01:23.045123456Z".

usageMetadata

object (UsageMetadata)

النتائج فقط. البيانات الوصفية حول استخدام المحتوى المُخزَّن مؤقتًا

حقل الاتحاد expiration. تحدِّد هذه السياسة تاريخ انتهاء صلاحية هذا المورد. يمكن أن يكون expiration واحدًا فقط مما يلي:
expireTime

string (Timestamp format)

الطابع الزمني بالتوقيت العالمي المنسّق (UTC) لوقت اعتبار هذا المورد منتهي الصلاحية. يتم توفير ذلك دائمًا في الناتج، بصرف النظر عما تم إرساله في الإدخال.

طابع زمني بتنسيق RFC3339 UTC "Zulu"، بدقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "2014-10-02T15:01:23Z" و"2014-10-02T15:01:23.045123456Z".

ttl

string (Duration format)

الإدخال فقط. مدة البقاء جديدة لهذا المورد، الإدخال فقط.

مدة بالثواني تضم تسعة أرقام كسور كحد أقصى وتنتهي بـ "s"، مثال: "3.5s"

name

string

اختياريّ. المُعرّف. اسم المورد الذي يشير إلى المحتوى المخزَّن مؤقتًا تنسيق الملف: cachedContents/{id}

displayName

string

اختياريّ. غير قابل للتغيير. الاسم المعروض الذي ينشئه المستخدمون للمحتوى المخزَّن مؤقتًا. الحد الأقصى لعدد أحرف يونيكود هو 128 حرفًا.

model

string

مطلوبة. غير قابل للتغيير. اسم Model المطلوب استخدامه للمحتوى المخزَّن مؤقتًا التنسيق: models/{model}

systemInstruction

object (Content)

اختياريّ. الإدخال فقط. غير قابل للتغيير. تعليمات بشأن ضبط النظام من قِبل المطوّر هذه الميزة هي نصّ فقط حاليًا.

toolConfig

object (ToolConfig)

اختياريّ. الإدخال فقط. غير قابل للتغيير. إعدادات الأداة. وتتم مشاركة هذه الإعدادات مع جميع الأدوات.

المحتوى

يشير ذلك المصطلح إلى نوع البيانات المنظَّمة الأساسية الذي يتضمّن محتوى رسالة متعدد الأجزاء.

تشتمل Content على الحقل role الذي يعيّن منتج Content والحقل parts الذي يحتوي على بيانات متعددة الأجزاء التي تتضمن محتوى مسار الرسالة.

تمثيل JSON
{
  "parts": [
    {
      object (Part)
    }
  ],
  "role": string
}
الحقول
parts[]

object (Part)

تم طلب Parts التي تشكل رسالة واحدة. وقد تحتوي الأجزاء على أنواع MIME مختلفة.

role

string

اختياريّ. منتج المحتوى. يجب أن تكون القيمة إما "user" أو "model".

ويُفيد هذا الإعداد في المحادثات المتعددة الأدوار، وإلا يمكن تركها فارغة أو تركها بدون ضبط.

الجزء

يشير ذلك المصطلح إلى نوع بيانات يحتوي على وسائط تشكّل جزءًا من رسالة Content متعددة الأجزاء.

تتألف السمة Part من بيانات لها نوع بيانات مرتبط بها. يمكن أن يحتوي Part على نوع واحد فقط من الأنواع المقبولة في Part.data.

يجب أن يتوفّر في Part نوع MIME ثابت من IANA يحدّد نوع الوسائط ونوعها الفرعي إذا كان الحقل inlineData مملوءًا بوحدات البايت غير الأوّلية.

تمثيل JSON
{

  // Union field data can be only one of the following:
  "text": string,
  "inlineData": {
    object (Blob)
  },
  "functionCall": {
    object (FunctionCall)
  },
  "functionResponse": {
    object (FunctionResponse)
  },
  "fileData": {
    object (FileData)
  }
  // End of list of possible types for union field data.
}
الحقول

حقل الاتحاد data.

يمكن أن يكون data واحدًا فقط مما يلي:

text

string

نص مضمّن.

inlineData

object (Blob)

وحدات بايت للوسائط المضمَّنة

functionCall

object (FunctionCall)

تعرض الدالة FunctionCall المتوقعة من النموذج الذي يحتوي على سلسلة تمثّل FunctionDeclaration.name مع الوسيطات وقيمها.

functionResponse

object (FunctionResponse)

إنّ نتيجة الدالة FunctionCall التي تتضمّن سلسلة تمثّل FunctionDeclaration.name وكائن JSON منظم يحتوي على أي ناتج من الدالة، يتم استخدامه كسياق للنموذج.

fileData

object (FileData)

البيانات المستندة إلى معرّف الموارد المنتظم (URI).

بلوب

وحدات البايت للوسائط غير المُعدَّة

يجب عدم إرسال النص كوحدات بايت غير مُنسَّقة، استخدِم الحقل "text".

تمثيل JSON
{
  "mimeType": string,
  "data": string
}
الحقول
mimeType

string

تمثّل هذه السمة نوع MIME العادي لبيانات المصدر الصادر عن هيئة أرقام الإنترنت المخصصة (IANA). أمثلة: - image/png - image/jpeg في حال تقديم نوع MIME غير متوافق، سيتم عرض خطأ. للحصول على قائمة كاملة بأنواع الملفات المتوافقة، يُرجى الاطّلاع على تنسيقات الملفات المتوافقة.

data

string (bytes format)

وحدات البايت الأولية لتنسيقات الوسائط.

سلسلة بترميز base64.

FunctionCall

تعرض الدالة FunctionCall المتوقعة من النموذج الذي يحتوي على سلسلة تمثّل FunctionDeclaration.name مع الوسيطات وقيمها.

تمثيل JSON
{
  "name": string,
  "args": {
    object
  }
}
الحقول
name

string

مطلوبة. اسم الدالة المطلوب استدعاءها. يجب أن يكون النص a-z أو A-Z أو 0-9 أو يحتوي على شرطات سفلية وشرطات، ولا يزيد طولها عن 63 حرفًا.

args

object (Struct format)

اختياريّ. معلَمات الدالة وقيمها بتنسيق كائن JSON.

FunctionResponse

إنّ الناتج من FunctionCall الذي يتضمّن سلسلة تمثّل FunctionDeclaration.name وكائن JSON منظمًا يحتوي على أي ناتج من الدالة يتم استخدامه كسياق للنموذج. ويجب أن يشتمل هذا على نتيجة FunctionCall التي تم إجراؤها استنادًا إلى نموذج التنبؤ.

تمثيل JSON
{
  "name": string,
  "response": {
    object
  }
}
الحقول
name

string

مطلوبة. اسم الدالة المطلوب استدعاءها. يجب أن يكون النص a-z أو A-Z أو 0-9 أو يحتوي على شرطات سفلية وشرطات، ولا يزيد طولها عن 63 حرفًا.

response

object (Struct format)

مطلوبة. استجابة الدالة بتنسيق كائن JSON.

FileData

البيانات المستندة إلى معرّف الموارد المنتظم (URI).

تمثيل JSON
{
  "mimeType": string,
  "fileUri": string
}
الحقول
mimeType

string

اختياريّ. تمثّل هذه السمة نوع MIME العادي لبيانات المصدر الصادر عن هيئة أرقام الإنترنت المخصصة (IANA).

fileUri

string

مطلوبة. معرّف الموارد المنتظم (URI).

الأداة

تشير هذه السمة إلى تفاصيل الأداة التي قد يستخدمها النموذج لإنشاء استجابة.

Tool هو جزء من الرمز البرمجي يتيح للنظام التفاعل مع الأنظمة الخارجية لتنفيذ إجراء أو مجموعة إجراءات خارج نطاق المعرفة ونطاق النموذج.

تمثيل JSON
{
  "functionDeclarations": [
    {
      object (FunctionDeclaration)
    }
  ]
}
الحقول
functionDeclarations[]

object (FunctionDeclaration)

اختياريّ. تتوفر قائمة بـ FunctionDeclarations للنموذج ويمكن استخدامها لاستدعاء الدوال.

لا ينفّذ النموذج أو النظام الدالة. بدلاً من ذلك، يمكن عرض الدالة المحددة على شكل [FunctionCall][content.part.function_call] مع وسيطات إلى جانب العميل للتنفيذ. قد يقرّر النموذج استدعاء مجموعة فرعية من هذه الدوال عن طريق إضافة [FunctionCall][content.part.function_call] في الاستجابة. قد يشتمل منعطف المحادثة التالي على [FunctionResponse][content.part.function_response] مع سياق إنشاء "الوظيفة" من [content.role] للمنعطف التالي للنموذج.

FunctionDeclaration

تمثيل منظَّم لبيان دالة على النحو المحدّد في مواصفات OpenAPI 3.03. يتضمّن هذا البيان اسم الدالة والمَعلمات. تمثّل دالة FunctionDeclaration مجموعة رموز يمكن استخدامها في النموذج كرمز Tool وينفّذها العميل.

تمثيل JSON
{
  "name": string,
  "description": string,
  "parameters": {
    object (Schema)
  }
}
الحقول
name

string

مطلوبة. تمثّل هذه السمة اسم الدالة. يجب أن يكون النص a-z أو A-Z أو 0-9 أو يحتوي على شرطات سفلية وشرطات، ولا يزيد طولها عن 63 حرفًا.

description

string

مطلوبة. تمثّل هذه السمة وصفًا موجزًا للدالة.

parameters

object (Schema)

اختياريّ. تصف المعاملات لهذه الدالة. يعكس مفتاح سلسلة كائن المعلَمة Open API 3.03: اسم المعلمة. أسماء المَعلمات حسّاسة لحالة الأحرف. قيمة المخطط: المخطط الذي يحدد النوع المستخدم للمعلمة.

المخطّط

يسمح الكائن Schema بتحديد أنواع بيانات الإدخال والمخرجات. يمكن أن تكون هذه الأنواع كائنات، ولكنها أيضًا أولية ومصفوفات. ويمثِّل ذلك مجموعة فرعية محدَّدة من كائن مخطط OpenAPI 3.0.

تمثيل JSON
{
  "type": enum (Type),
  "format": string,
  "description": string,
  "nullable": boolean,
  "enum": [
    string
  ],
  "properties": {
    string: {
      object (Schema)
    },
    ...
  },
  "required": [
    string
  ],
  "items": {
    object (Schema)
  }
}
الحقول
type

enum (Type)

مطلوبة. نوع البيانات.

format

string

اختياريّ. تنسيق البيانات. يستخدم هذا فقط لأنواع البيانات الأولية. التنسيقات المتوافقة: لنوع الأرقام: عدد عائم، مزدوج لنوع العدد الصحيح: int32، وint64

description

string

اختياريّ. تمثّل هذه السمة وصفًا موجزًا للمَعلمة. وقد يحتوي هذا القسم على أمثلة على الاستخدام. يمكن تنسيق وصف المَعلمة على أنّه Markdown.

nullable

boolean

اختياريّ. يشير إلى ما إذا كانت القيمة خالية.

enum[]

string

اختياريّ. القيم المحتملة لعنصر Type.STRING بتنسيق enum. على سبيل المثال، يمكننا تعريف اتجاه التعداد على النحو التالي : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]}

properties

map (key: string, value: object (Schema))

اختياريّ. خصائص النوع.OBJECT.

عنصر يحتوي على قائمة بأزواج "key": value مثال: { "name": "wrench", "mass": "1.3kg", "count": "3" }

required[]

string

اختياريّ. السمات المطلوبة من Type.OBJECT.

items

object (Schema)

اختياريّ. مخطط لعناصر Type.ARRAY.

النوع

يحتوي النوع على قائمة بأنواع بيانات OpenAPI كما هو موضح في https://spec.openapis.org/oas/v3.0.3#data-types

عمليات التعداد
TYPE_UNSPECIFIED غير محدَّد، يجب عدم استخدامه.
STRING نوع السلسلة.
NUMBER نوع الرقم.
INTEGER نوع عدد صحيح
BOOLEAN النوع المنطقي.
ARRAY نوع المصفوفة
OBJECT نوع الكائن:

ToolConfig

إعدادات الأداة التي تحتوي على مَعلمات لتحديد استخدام Tool في الطلب

تمثيل JSON
{
  "functionCallingConfig": {
    object (FunctionCallingConfig)
  }
}
الحقول
functionCallingConfig

object (FunctionCallingConfig)

اختياريّ. تهيئة استدعاء الدالة.

FunctionCallingConfig

إعداد لتحديد سلوك استدعاء الدوال.

تمثيل JSON
{
  "mode": enum (Mode),
  "allowedFunctionNames": [
    string
  ]
}
الحقول
mode

enum (Mode)

اختياريّ. تحدِّد هذه السياسة الوضع الذي يجب فيه تنفيذ استدعاء الدوال. وفي حال عدم تحديد القيمة، سيتم ضبط القيمة التلقائية على "تلقائي".

allowedFunctionNames[]

string

اختياريّ. يشير ذلك المصطلح إلى مجموعة من أسماء الدوال التي تحدّ من الدوال التي سيستدعيها النموذج.

يجب ضبط هذا الإعداد فقط عندما يكون الوضع "Any". يجب أن تتطابق أسماء الدوال مع [FunctionDeclaration.name]. عند تعيين الوضع على "أي"، يتوقع النموذج استدعاء الدالة من مجموعة أسماء الدوال المتوفرة.

الوضع

تحدد سلوك التنفيذ لاستدعاء الدوال من خلال تحديد وضع التنفيذ.

عمليات التعداد
MODE_UNSPECIFIED وضع استدعاء الدوال غير محدَّد. يجب عدم استخدام هذه القيمة.
AUTO سلوك النموذج التلقائي، يقرِّر النموذج توقُّع استدعاء دالة أو استجابة لغة طبيعية.
ANY يقتصر النموذج على التنبؤ دائمًا باستدعاء الدالة فقط. إذا تم ضبط "allowedFunctionNames"، سيقتصر استدعاء الدالة المتنبأ به على أي من "allowedFunctionNames"، وإلا سيكون استدعاء الدالة المتنبأ به أي من "functionDeclarations المقدّمة".
NONE لن يتوقع النموذج أي استدعاء الدالة. يكون سلوك النموذج مماثلاً عند عدم تمرير أيّ إعلانات دالة.

UsageMetadata

البيانات الوصفية حول استخدام المحتوى المُخزَّن مؤقتًا

تمثيل JSON
{
  "totalTokenCount": integer
}
الحقول
totalTokenCount

integer

إجمالي عدد الرموز المميّزة التي يستهلكها المحتوى المخزَّن مؤقتًا

الطُرق

create

ينشئ مورد cachedContent.

delete

لحذف مورد CachedContent.

get

قراءة مورد CachedContent.

list

يسرد CachedContents.

patch

مورد CachedContent (صلاحية انتهاء الصلاحية فقط قابلة للتحديث).