Models

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

الطريقة: models.get

تتيح الحصول على معلومات حول Model معيّن، مثل رقم إصداره والحدود القصوى للرموز المميّزة والمَعلمات والبيانات الوصفية الأخرى. يُرجى الرجوع إلى دليل نماذج Gemini للحصول على معلومات مفصّلة عن النماذج.

نقطة نهاية

get https://generativelanguage.googleapis.com/v1beta/{name=models/*}

مَعلمات المسار

name string

الحقل مطلوب. اسم المورد الخاص بالنموذج

يجب أن يتطابق هذا الاسم مع اسم النموذج الذي تعرضه طريقة models.list.

التنسيق: models/{model} يكون بالتنسيق التالي: models/{model}.

نص الطلب

يجب أن يكون نص الطلب فارغًا.

مثال على الطلب

Python

from google import genai

client = genai.Client()
model_info = client.models.get(model="gemini-3.8-flash")
print(model_info)

Go

ctx := context.Background()
client, err := genai.NewClient(ctx, &genai.ClientConfig{
	APIKey:  os.Getenv("GEMINI_API_KEY"),
	Backend: genai.BackendGeminiAPI,
})
if err != nil {
	log.Fatal(err)
}

modelInfo, err := client.Models.Get(ctx, "gemini-3.8-flash", nil)
if err != nil {
	log.Fatal(err)
}

fmt.Println(modelInfo)

محارة

curl https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash?key=$GEMINI_API_KEYpan>.sh

الطريقة: models.list

يعرض قائمة Model المتاحة من خلال Gemini API.

نقطة نهاية

get https://generativelanguage.googleapis.com/v1beta/models

مَعلمات طلب البحث

pageSize integer

الحدّ الأقصى لعدد Models المطلوب عرضها (لكل صفحة).

إذا لم يتم تحديدها، سيتم عرض 50 نموذجًا في كل صفحة. تعرض هذه الطريقة 1000 نموذج كحدّ أقصى لكل صفحة، حتى إذا تم تمرير قيمة أكبر لـ pageSize.

pageToken string

رمز مميّز للصفحة، يتم تلقّيه من طلب models.list سابق.

قدِّم pageToken الذي تم عرضه من خلال طلب واحد كوسيطة للطلب التالي لاسترداد الصفحة التالية.

عند تقسيم الصفحات، يجب أن تتطابق جميع المَعلمات الأخرى المقدَّمة إلى models.list مع الطلب الذي قدّم رمز الصفحة المميّز.

نص الطلب

يجب أن يكون نص الطلب فارغًا.

مثال على الطلب

Python

from google import genai

client = genai.Client()

print("List of models that support generateContent:\n")
for m in client.models.list():
  for action in m.supported_actions:
    if action == "generateContent":
      print(m.name)

print("List of models that support embedContent:\n")
for m in client.models.list():
  for action in m.supported_actions:
    if action == "embedContent":
      print(m.name)

Go

ctx := context.Background()
client, err := genai.NewClient(ctx, &genai.ClientConfig{
	APIKey:  os.Getenv("GEMINI_API_KEY"),
	Backend: genai.BackendGeminiAPI,
})
if err != nil {
	log.Fatal(err)
}

// Retrieve the list of models.
models, err := client.Models.List(ctx, &genai.ListModelsConfig{})
if err != nil {
	log.Fatal(err)
}

fmt.Println("List of models that support generateContent:")
for _, m := range models.Items {
	for _, action := range m.SupportedActions {
		if action == "generateContent" {
			fmt.Println(m.Name)
			break
		}
	}
}

fmt.Println("\nList of models that support embedContent:")
for _, m := range models.Items {
	for _, action := range m.SupportedActions {
		if action == "embedContent" {
			fmt.Println(m.Name)
			break
		}
	}
}

محارة

curl https://generativelanguage.googleapis.com/v1beta/models?key=$GEMINI_API_KEYpan>.sh

نص الاستجابة

ردّ من "ListModel" يحتوي على قائمة مقسّمة على صفحات من النماذج

إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:

الحقول

النماذج التي تم عرضها

nextPageToken string

رمز مميّز يمكن إرساله كـ pageToken لاسترداد الصفحة التالية

إذا تم حذف هذا الحقل، لن تظهر أي صفحات أخرى.

تمثيل JSON
{
  "models": [
    {
      object (Model)
    }
  ],
  "nextPageToken": string
}

مورد REST: ‏ models

المورد: الطراز

معلومات حول نموذج لغة توليدي

الحقول
name string

الحقل مطلوب. اسم المورد لـ Model. يُرجى الرجوع إلى إصدارات النماذج للاطّلاع على جميع القيم المسموح بها.

التنسيق: models/{model} مع اصطلاح تسمية {model}:

  • "{baseModelId}-{version}"

أمثلة:

  • models/gemini-1.5-flash-001
baseModelId string

الحقل مطلوب. اسم النموذج الأساسي، ويتم تمريره إلى طلب الإنشاء.

أمثلة:

  • gemini-1.5-flash
version string

الحقل مطلوب. رقم إصدار النموذج

يمثّل ذلك رقم الإصدار الرئيسي (1.0 أو 1.5)

displayName string

اسم النموذج الذي يمكن لشخص عادي قراءته مثال: "Gemini 1.5 Flash".

يمكن أن يصل طول الاسم إلى 128 حرفًا ويمكن أن يتألف من أي أحرف UTF-8.

description string

وصف موجز للنموذج

inputTokenLimit integer

الحد الأقصى لعدد الرموز المميّزة المسموح بها للإدخال في هذا النموذج.

outputTokenLimit integer

الحد الأقصى لعدد الرموز المميّزة الناتجة المتاحة لهذا النموذج

supportedGenerationMethods[] string

طُرق الإنشاء المتوافقة مع النموذج

يتم تحديد أسماء طرق واجهة برمجة التطبيقات المقابلة كسلاسل Pascal case، مثل generateMessage وgenerateContent.

thinking boolean

ما إذا كان النموذج يتيح ميزة التفكير

temperature number

تتحكّم في عشوائية الناتج.

يمكن أن تتراوح القيم بين [0.0,maxTemperature] ضمنًا. ستؤدي القيمة الأعلى إلى تقديم ردود أكثر تنوعًا، بينما تؤدي القيمة الأقرب إلى 0.0 عادةً إلى تقديم ردود أقل مفاجأة من النموذج. تحدّد هذه القيمة الإعداد التلقائي الذي سيستخدمه الخلفية أثناء إجراء الطلب إلى النموذج.

maxTemperature number

الحد الأقصى لدرجة الحرارة التي يمكن لهذا النموذج استخدامها

topP number

بالنسبة إلى اختيار العيّنات بناءً على الاحتمال التراكمي.

يأخذ أسلوب Nucleus sampling في الاعتبار أصغر مجموعة من الرموز المميّزة التي يبلغ مجموع احتمالاتها topP على الأقل. تحدّد هذه القيمة الإعداد التلقائي الذي سيستخدمه الخلفية أثناء إجراء الطلب إلى النموذج.

topK integer

لأخذ عينات من أعلى k.

يأخذ أسلوب أخذ العينات Top-k في الاعتبار مجموعة من الرموز المميّزة الأكثر احتمالاً وعددها topK. تحدّد هذه القيمة الإعداد التلقائي الذي سيستخدمه الخلفية أثناء إجراء الطلب إلى النموذج. إذا كان الحقل فارغًا، يشير ذلك إلى أنّ النموذج لا يستخدم أخذ عينات من أفضل k، ولا يُسمح باستخدام topK كمَعلمة إنشاء.

تمثيل JSON
{
  "name": string,
  "baseModelId": string,
  "version": string,
  "displayName": string,
  "description": string,
  "inputTokenLimit": integer,
  "outputTokenLimit": integer,
  "supportedGenerationMethods": [
    string
  ],
  "thinking": boolean,
  "temperature": number,
  "maxTemperature": number,
  "topP": number,
  "topK": integer
}

الطريقة: models.predict

تنفّذ طلب توقّع.

نقطة نهاية

منشور https://generativelanguage.googleapis.com/v1beta/{model=models/*}:predict

مَعلمات المسار

model string

الحقل مطلوب. اسم النموذج المستخدَم للتوقّع التنسيق: name=models/{model} ويكون بالتنسيق التالي: models/{model}.

نص الطلب

يتضمن نص الطلب بيانات بالبنية التالية:

الحقول
instances[] value (Value format)

الحقل مطلوب. تمثّل هذه السمة النماذج التي يتم إدخالها إلى طلب التوقّع.

parameters value (Value format)

اختيارية: المَعلمات التي تتحكّم في طلب التوقّع

labels map (key: string, value: string)

اختيارية: التصنيفات التي تحتوي على بيانات وصفية يحدّدها المستخدم للطلب

اختيارية: يجب أن تتّبع التصنيفات متطلبات تصنيفات Cloud الموحّدة العادية: - يجب أن تبدأ مفاتيح التصنيفات بحرف. - يجب ألا يزيد طول مفاتيح التصنيفات وقيمها عن 63 حرفًا (نقاط ترميز Unicode)، ويمكن أن تحتوي فقط على أحرف صغيرة وأحرف رقمية وشرطات سفلية وشرطات عادية. - يُسمح باستخدام الأحرف الدولية.

Usage: - Safety identifiers from aggregators: Use the key safety_identifier (e.g. {"safety_identifier": "user_session_123"})

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

نص الاستجابة

Response message for [PredictionService.Predict].

إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:

الحقول
predictions[] value (Value format)

نتائج طلب التوقّع

تمثيل JSON
{
  "predictions": [
    value
  ]
}

الطريقة: models.predictLongRunning

هذه الطريقة مماثلة لـ models.predict ولكنّها تعرض LRO.

نقطة نهاية

منشور https://generativelanguage.googleapis.com/v1beta/{model=models/*}:predictLongRunning

مَعلمات المسار

model string

الحقل مطلوب. اسم النموذج المستخدَم للتوقّع التنسيق: name=models/{model}

نص الطلب

يتضمن نص الطلب بيانات بالبنية التالية:

الحقول
instances[] value (Value format)

الحقل مطلوب. تمثّل هذه السمة النماذج التي يتم إدخالها إلى طلب التوقّع.

parameters value (Value format)

اختيارية: المَعلمات التي تتحكّم في طلب التوقّع

webhookConfig.uris[] string

اختيارية: في حال ضبطها، سيتم استخدام معرّفات الموارد المنتظمة (URI) هذه لأحداث الويب هوك بدلاً من الويب هوك المسجّلة.

labels map (key: string, value: string)

اختيارية: التصنيفات التي تحتوي على بيانات وصفية يحدّدها المستخدم للطلب

اختيارية: يجب أن تتّبع التصنيفات متطلبات تصنيفات Cloud الموحّدة العادية: - يجب أن تبدأ مفاتيح التصنيفات بحرف. - يجب ألا يزيد طول مفاتيح التصنيفات وقيمها عن 63 حرفًا (نقاط ترميز Unicode)، ويمكن أن تحتوي فقط على أحرف صغيرة وأحرف رقمية وشرطات سفلية وشرطات عادية. - يُسمح باستخدام الأحرف الدولية.

Usage: - Safety identifiers from aggregators: Use the key safety_identifier (e.g. {"safety_identifier": "user_session_123"})

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

نص الاستجابة

إذا كانت الاستجابة ناجحة، يحتوي نص الاستجابة على مثال Operation.