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-2.0-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-2.0-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_KEY

نص الاستجابة

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

الطريقة: models.list

تعرض هذه الصفحة Models المتاحة من خلال Gemini API.

نقطة نهاية

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

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

pageSize integer

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

إذا لم يتم تحديدها، سيتم عرض 50 نموذج لكل صفحة. تعرض هذه الطريقة 1, 000 نموذج كحدّ أقصى لكل صفحة، حتى إذا مرّرت قيمة أكبر من 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_KEY

نص الاستجابة

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

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

الحقول
models[] object (Model)

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

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

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

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

topK integer

بالنسبة إلى أخذ العيّنات من أعلى k احتمال.

تأخذ عملية أخذ العيّنات من أعلى 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

تُجري هذه السمة طلب توقّع.

نقطة نهاية

post https://generativelanguage.googleapis.com/v1beta/{model=models/*}:predict

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

model string

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

نص الطلب

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

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

الحقل مطلوب. الحالات التي يتم إدخالها في طلب التوقّع.

parameters value (Value format)

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

نص الاستجابة

رسالة الردّ على [PredictionService.Predict].

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

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

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

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

الطريقة: models.predictLongRunning

هي نفسها models.predict ولكنّها تعرض عملية طويلة الأمد.

نقطة نهاية

post https://generativelanguage.googleapis.com/v1beta/{model=models/*}:predictLongRunning

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

model string

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

نص الطلب

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

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

الحقل مطلوب. الحالات التي يتم إدخالها في طلب التوقّع.

parameters value (Value format)

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

نص الاستجابة

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