Gemini API

رابط برنامه‌نویسی کاربردی Gemini Interactions یک رابط برنامه‌نویسی کاربردی آزمایشی است که به توسعه‌دهندگان اجازه می‌دهد تا با استفاده از مدل‌های Gemini، برنامه‌های هوش مصنوعی مولد بسازند. Gemini توانمندترین مدل ما است که از پایه برای چندوجهی بودن ساخته شده است. این مدل می‌تواند انواع مختلف اطلاعات از جمله زبان، تصاویر، صدا، ویدئو و کد را تعمیم داده و به طور یکپارچه درک کند، در میان آنها عمل کند و ترکیب کند. می‌توانید از API Gemini برای موارد استفاده مانند استدلال در متن و تصاویر، تولید محتوا، عامل‌های گفتگو، سیستم‌های خلاصه‌سازی و طبقه‌بندی و موارد دیگر استفاده کنید.

ایجاد تعامل

ارسال به آدرس https://generativelanguage.googleapis.com/v1beta/interactions

یک تعامل جدید ایجاد می‌کند.

درخواست بدنه

بدنه درخواست شامل داده‌هایی با ساختار زیر است:

مدل ModelOption (اختیاری)

نام «مدل» مورد استفاده برای تولید تعامل.
در صورت عدم ارائه «عامل»، الزامی است.

مقادیر ممکن:

  • gemini-2.5-flash

    اولین مدل استدلال ترکیبی ما که از یک پنجره زمینه ۱ میلیون توکنی پشتیبانی می‌کند و دارای بودجه‌های تفکر است.

  • gemini-2.5-flash-image

    مدل تولید تصویر بومی ما، که برای سرعت، انعطاف‌پذیری و درک متنی بهینه شده است. ورودی و خروجی متن با همان قیمت ۲.۵ فلش ارائه می‌شود.

  • gemini-2.5-flash-lite

    کوچکترین و مقرون به صرفه ترین مدل ما، ساخته شده برای استفاده در مقیاس بزرگ.

  • gemini-2.5-flash-lite-preview-09-2025

    جدیدترین مدل مبتنی بر Gemini 2.5 Flash lite که برای صرفه‌جویی در هزینه، توان عملیاتی بالا و کیفیت بالا بهینه شده است.

  • gemini-2.5-flash-native-audio-preview-12-2025

    مدل‌های صوتی بومی ما برای خروجی‌های صوتی با کیفیت بالاتر با ریتم بهتر، طبیعی بودن صدا، پرگویی و حس و حال بهتر بهینه شده‌اند.

  • gemini-2.5-flash-preview-09-2025

    آخرین مدل مبتنی بر مدل فلش ۲.۵. پیش‌نمایش فلش ۲.۵ برای پردازش در مقیاس بزرگ، وظایف با تأخیر کم و حجم بالا که نیاز به تفکر دارند و موارد استفاده عامل‌محور بهترین گزینه است.

  • gemini-2.5-flash-preview-tts

    مدل تبدیل متن به گفتار ۲.۵ فلش ما برای تولید گفتار قابل کنترل قدرتمند و با تأخیر کم بهینه شده است.

  • gemini-2.5-pro

    مدل چندمنظوره پیشرفته ما، که در کدنویسی و کارهای استدلالی پیچیده عالی عمل می‌کند.

  • gemini-2.5-pro-preview-tts

    مدل صوتی متن به گفتار نسخه ۲.۵ پرو ما برای تولید گفتار قدرتمند و با تأخیر کم بهینه شده است تا خروجی‌های طبیعی‌تر و هدایت آسان‌تر دستورات را فراهم کند.

  • gemini-3-flash-preview

    هوشمندترین مدل ما که برای سرعت ساخته شده است، هوش مرزی را با جستجو و ردیابی برتر ترکیب می‌کند.

  • gemini-3-pro-image-preview

    مدل پیشرفته تولید و ویرایش تصویر.

  • gemini-3-pro-preview

    هوشمندترین مدل ما با استدلال SOTA و درک چندوجهی، و قابلیت‌های قدرتمند کدگذاری عاملی و ارتعاشی.

  • gemini-3.1-pro-preview

    جدیدترین مدل استدلال SOTA ما با عمق و ظرافت بی‌سابقه و قابلیت‌های قدرتمند درک و کدنویسی چندوجهی.

  • gemini-3.1-flash-image-preview

    هوش بصری حرفه‌ای با کارایی فوق‌العاده و قابلیت‌های تولید محتوای مبتنی بر واقعیت.

مدلی که اعلان شما را تکمیل می‌کند.\n\nبرای جزئیات بیشتر به [models](https://ai.google.dev/gemini-api/docs/models) مراجعه کنید.

گزینه عامل (اختیاری)

نام «عامل» مورد استفاده برای ایجاد تعامل.
در صورت عدم ارائه «مدل»، الزامی است.

مقادیر ممکن:

  • deep-research-pro-preview-12-2025

    نماینده تحقیقات عمیق جمینی

عاملی که باید با آن تعامل داشت.

ورودی محتوا یا آرایه ( Content ) یا آرایه ( Turn ) یا رشته ( الزامی )

ورودی‌های تعامل (مشترک برای مدل و عامل).

رشته system_instruction (اختیاری)

دستورالعمل سیستم برای تعامل.

آرایه ابزارها ( ابزار ) (اختیاری)

فهرستی از اعلان‌های ابزار که مدل ممکن است در طول تعامل فراخوانی کند.

شیء response_format (اختیاری)

تأکید می‌کند که پاسخ تولید شده یک شیء JSON است که با طرحواره JSON مشخص شده در این فیلد مطابقت دارد.

رشته response_mime_type (اختیاری)

نوع MIME پاسخ. در صورت تنظیم response_format، این مورد الزامی است.

جریان بولی (اختیاری)

فقط ورودی. اینکه آیا تعامل پخش زنده خواهد شد یا خیر.

ذخیره بولی (اختیاری)

فقط ورودی. آیا پاسخ و درخواست برای بازیابی بعدی ذخیره شود یا خیر.

مقدار بولی پس‌زمینه (اختیاری)

فقط ورودی. اینکه آیا تعامل مدل در پس‌زمینه اجرا شود یا خیر.

generation_config GenerationConfig (اختیاری)

پیکربندی مدل
پارامترهای پیکربندی برای تعامل مدل.
جایگزینی برای `agent_config`. فقط زمانی قابل اجرا است که `model` تنظیم شده باشد.

پارامترهای پیکربندی برای تعاملات مدل.

فیلدها

عدد دما (اختیاری)

تصادفی بودن خروجی را کنترل می‌کند.

شماره top_p (اختیاری)

حداکثر احتمال تجمعی توکن‌ها که باید هنگام نمونه‌گیری در نظر گرفته شود.

عدد صحیح اولیه (اختیاری)

بذر مورد استفاده در رمزگشایی برای تکرارپذیری.

آرایه stop_sequences (رشته) (اختیاری)

فهرستی از توالی‌های کاراکتری که تعامل خروجی را متوقف می‌کنند.

سطح_فکریسطح_فکری ( اختیاری )

سطح توکن‌های فکری که مدل باید تولید کند.

مقادیر ممکن:

  • minimal
  • low
  • medium
  • high

خلاصه‌های تفکر ( اختیاری)

اینکه آیا خلاصه نظرات در پاسخ گنجانده شود یا خیر.

مقادیر ممکن:

  • auto
  • none

عدد صحیح max_output_tokens (اختیاری)

حداکثر تعداد توکن‌هایی که باید در پاسخ گنجانده شوند.

speech_config SpeechConfig (اختیاری)

پیکربندی برای تعامل گفتاری.

پیکربندی برای تعامل گفتاری.

فیلدها

رشته صدا (اختیاری)

صدای گوینده.

رشته زبان (اختیاری)

زبان گفتار.

سیم بلندگو (اختیاری)

نام گوینده، باید با نام گوینده داده شده در سوال مطابقت داشته باشد.

image_config پیکربندی تصویر (اختیاری)

پیکربندی برای تعامل تصویر.

پیکربندی برای تعامل تصویر.

فیلدها

متغیر شمارشی aspect_ratio (رشته‌ای) (اختیاری)

هیچ توضیحی ارائه نشده است.

مقادیر ممکن:

  • 1:1
  • 2:3
  • 3:2
  • 3:4
  • 4:3
  • 4:5
  • 5:4
  • 9:16
  • 16:9
  • 21:9
  • 1:8
  • 8:1
  • 1:4
  • 4:1
متغیر شمارشی image_size (رشته‌ای) (اختیاری)

هیچ توضیحی ارائه نشده است.

مقادیر ممکن:

  • 1K
  • 2K
  • 4K
  • 512
tool_choice ToolChoiceConfig یا ToolChoiceType (اختیاری)

انتخاب ابزار برای تعامل.

شیء agent_config (اختیاری)

پیکربندی عامل
پیکربندی برای عامل.
جایگزینی برای `generation_config`. فقط زمانی قابل اجرا است که `agent` تنظیم شده باشد.

انواع ممکن

تفکیک‌کننده چندریختی: type

پیکربندی DynamicAgent

پیکربندی برای عامل‌های پویا

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "dynamic" تنظیم شود.

پیکربندی DeepResearchAgent

پیکربندی برای عامل تحقیقات عمیق.

خلاصه‌های تفکر ( اختیاری)

اینکه آیا خلاصه نظرات در پاسخ گنجانده شود یا خیر.

مقادیر ممکن:

  • auto
  • none

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "deep-research" تنظیم شود.

رشته‌ی previous_interaction_id (اختیاری)

شناسه‌ی تعامل قبلی، در صورت وجود.

روش_پاسخ ( اختیاری )

روش‌های درخواستی برای پاسخ (متن، تصویر، صدا).

مقادیر ممکن:

  • text
  • image
  • audio

پاسخ

یک منبع تعامل (Interaction) را برمی‌گرداند.

درخواست ساده

پاسخ نمونه

{
  "created": "2025-11-26T12:25:15Z",
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "object": "interaction",
  "outputs": [
    {
      "text": "Hello! I'm functioning perfectly and ready to assist you.\n\nHow are you doing today?",
      "type": "text"
    }
  ],
  "role": "model",
  "status": "completed",
  "updated": "2025-11-26T12:25:15Z",
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 7
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 7,
    "total_output_tokens": 20,
    "total_thought_tokens": 22,
    "total_tokens": 49,
    "total_tool_use_tokens": 0
  }
}

چند نوبتی

پاسخ نمونه

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "status": "completed",
  "object": "interaction",
  "created": "2025-11-26T12:22:47Z",
  "updated": "2025-11-26T12:22:47Z",
  "role": "model",
  "outputs": [
    {
      "type": "text",
      "text": "The capital of France is Paris."
    }
  ],
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 50
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 50,
    "total_output_tokens": 10,
    "total_thought_tokens": 0,
    "total_tokens": 60,
    "total_tool_use_tokens": 0
  }
}

ورودی تصویر

پاسخ نمونه

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "status": "completed",
  "object": "interaction",
  "created": "2025-11-26T12:22:47Z",
  "updated": "2025-11-26T12:22:47Z",
  "role": "model",
  "outputs": [
    {
      "type": "text",
      "text": "A white humanoid robot with glowing blue eyes stands holding a red skateboard."
    }
  ],
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 10
      },
      {
        "modality": "image",
        "tokens": 258
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 268,
    "total_output_tokens": 20,
    "total_thought_tokens": 0,
    "total_tokens": 288,
    "total_tool_use_tokens": 0
  }
}

فراخوانی تابع

پاسخ نمونه

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "status": "requires_action",
  "object": "interaction",
  "created": "2025-11-26T12:22:47Z",
  "updated": "2025-11-26T12:22:47Z",
  "role": "model",
  "outputs": [
    {
      "type": "function_call",
      "id": "gth23981",
      "name": "get_weather",
      "arguments": {
        "location": "Boston, MA"
      }
    }
  ],
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 100
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 100,
    "total_output_tokens": 25,
    "total_thought_tokens": 0,
    "total_tokens": 125,
    "total_tool_use_tokens": 50
  }
}

تحقیقات عمیق

پاسخ نمونه

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "agent": "deep-research-pro-preview-12-2025",
  "status": "completed",
  "object": "interaction",
  "created": "2025-11-26T12:22:47Z",
  "updated": "2025-11-26T12:22:47Z",
  "role": "agent",
  "outputs": [
    {
      "type": "text",
      "text": "Here is a comprehensive research report on the current state of cancer research..."
    }
  ],
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 20
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 20,
    "total_output_tokens": 1000,
    "total_thought_tokens": 500,
    "total_tokens": 1520,
    "total_tool_use_tokens": 0
  }
}

بازیابی یک تعامل

دریافت کنید https://generativelanguage.googleapis.com/v1beta/interactions/{id}

جزئیات کامل یک تعامل واحد را بر اساس `Interaction.id` آن بازیابی می‌کند.

پارامترهای مسیر/پرس‌وجو

رشته شناسه (الزامی)

شناسه منحصر به فرد تعاملی که قرار است بازیابی شود.

جریان بولی (اختیاری)

اگر روی درست تنظیم شود، محتوای تولید شده به صورت تدریجی پخش می‌شود.

پیش‌فرض: False

رشته last_event_id (اختیاری)

اختیاری. در صورت تنظیم، جریان تعامل را از بخش بعدی پس از رویداد مشخص شده توسط شناسه رویداد از سر می‌گیرد. فقط در صورتی قابل استفاده است که `stream` برابر با true باشد.

مقدار بولی include_input (اختیاری)

اگر روی true تنظیم شود، ورودی را در پاسخ لحاظ می‌کند.

پیش‌فرض: False

رشته api_version (اختیاری)

از کدام نسخه API استفاده کنیم.

پاسخ

یک منبع تعامل (Interaction) را برمی‌گرداند.

تعامل دریافت کنید

پاسخ نمونه

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "status": "completed",
  "object": "interaction",
  "created": "2025-11-26T12:25:15Z",
  "updated": "2025-11-26T12:25:15Z",
  "role": "model",
  "outputs": [
    {
      "type": "text",
      "text": "I'm doing great, thank you for asking! How can I help you today?"
    }
  ]
}

حذف یک تعامل

https://generativelanguage.googleapis.com/v1beta/interactions/{id} را حذف کنید

تعامل را بر اساس شناسه حذف می‌کند.

پارامترهای مسیر/پرس‌وجو

رشته شناسه (الزامی)

شناسه منحصر به فرد تعاملی که باید حذف شود.

رشته api_version (اختیاری)

از کدام نسخه API استفاده کنیم.

پاسخ

در صورت موفقیت، پاسخ خالی است.

حذف تعامل

لغو یک تعامل

ارسال https://generativelanguage.googleapis.com/v1beta/interactions/{id}/cancel

یک تعامل را بر اساس شناسه لغو می‌کند. این فقط برای تعاملات پس‌زمینه‌ای که هنوز در حال اجرا هستند، اعمال می‌شود.

پارامترهای مسیر/پرس‌وجو

رشته شناسه (الزامی)

شناسه منحصر به فرد تعاملی که باید لغو شود.

رشته api_version (اختیاری)

از کدام نسخه API استفاده کنیم.

پاسخ

یک منبع تعامل (Interaction) را برمی‌گرداند.

لغو تعامل

پاسخ نمونه

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "agent": "deep-research-pro-preview-12-2025",
  "status": "cancelled",
  "object": "interaction",
  "created": "2025-11-26T12:25:15Z",
  "updated": "2025-11-26T12:25:15Z",
  "role": "agent"
}

منابع

تعامل

منبع تعامل.

فیلدها

مدل ModelOption (اختیاری)

نام «مدل» مورد استفاده برای تولید تعامل.

مقادیر ممکن:

  • gemini-2.5-flash

    اولین مدل استدلال ترکیبی ما که از یک پنجره زمینه ۱ میلیون توکنی پشتیبانی می‌کند و دارای بودجه‌های تفکر است.

  • gemini-2.5-flash-image

    مدل تولید تصویر بومی ما، که برای سرعت، انعطاف‌پذیری و درک متنی بهینه شده است. ورودی و خروجی متن با همان قیمت ۲.۵ فلش ارائه می‌شود.

  • gemini-2.5-flash-lite

    کوچکترین و مقرون به صرفه ترین مدل ما، ساخته شده برای استفاده در مقیاس بزرگ.

  • gemini-2.5-flash-lite-preview-09-2025

    جدیدترین مدل مبتنی بر Gemini 2.5 Flash lite که برای صرفه‌جویی در هزینه، توان عملیاتی بالا و کیفیت بالا بهینه شده است.

  • gemini-2.5-flash-native-audio-preview-12-2025

    مدل‌های صوتی بومی ما برای خروجی‌های صوتی با کیفیت بالاتر با ریتم بهتر، طبیعی بودن صدا، پرگویی و حس و حال بهتر بهینه شده‌اند.

  • gemini-2.5-flash-preview-09-2025

    آخرین مدل مبتنی بر مدل فلش ۲.۵. پیش‌نمایش فلش ۲.۵ برای پردازش در مقیاس بزرگ، وظایف با تأخیر کم و حجم بالا که نیاز به تفکر دارند و موارد استفاده عامل‌محور بهترین گزینه است.

  • gemini-2.5-flash-preview-tts

    مدل تبدیل متن به گفتار ۲.۵ فلش ما برای تولید گفتار قابل کنترل قدرتمند و با تأخیر کم بهینه شده است.

  • gemini-2.5-pro

    مدل چندمنظوره پیشرفته ما، که در کدنویسی و کارهای استدلالی پیچیده عالی عمل می‌کند.

  • gemini-2.5-pro-preview-tts

    مدل صوتی متن به گفتار نسخه ۲.۵ پرو ما برای تولید گفتار قدرتمند و با تأخیر کم بهینه شده است تا خروجی‌های طبیعی‌تر و هدایت آسان‌تر دستورات را فراهم کند.

  • gemini-3-flash-preview

    هوشمندترین مدل ما که برای سرعت ساخته شده است، هوش مرزی را با جستجو و ردیابی برتر ترکیب می‌کند.

  • gemini-3-pro-image-preview

    مدل پیشرفته تولید و ویرایش تصویر.

  • gemini-3-pro-preview

    هوشمندترین مدل ما با استدلال SOTA و درک چندوجهی، و قابلیت‌های قدرتمند کدگذاری عاملی و ارتعاشی.

  • gemini-3.1-pro-preview

    جدیدترین مدل استدلال SOTA ما با عمق و ظرافت بی‌سابقه و قابلیت‌های قدرتمند درک و کدنویسی چندوجهی.

  • gemini-3.1-flash-image-preview

    هوش بصری حرفه‌ای با کارایی فوق‌العاده و قابلیت‌های تولید محتوای مبتنی بر واقعیت.

مدلی که اعلان شما را تکمیل می‌کند.\n\nبرای جزئیات بیشتر به [models](https://ai.google.dev/gemini-api/docs/models) مراجعه کنید.

گزینه عامل (اختیاری)

نام «عامل» مورد استفاده برای ایجاد تعامل.

مقادیر ممکن:

  • deep-research-pro-preview-12-2025

    نماینده تحقیقات عمیق جمینی

عاملی که باید با آن تعامل داشت.

رشته شناسه (اختیاری)

فقط خروجی. یک شناسه منحصر به فرد برای تکمیل تعامل.

شمارش وضعیت (رشته) (اختیاری)

فقط خروجی. وضعیت تعامل.

مقادیر ممکن:

  • in_progress
  • requires_action
  • completed
  • failed
  • cancelled
  • incomplete
رشته ایجاد شده (اختیاری)

فقط خروجی. زمانی که پاسخ در قالب ISO 8601 (YYYY-MM-DDThh:mm:ssZ) ایجاد شده است.

رشته به‌روزرسانی‌شده (اختیاری)

فقط خروجی. زمانی که پاسخ آخرین بار در قالب ISO 8601 (YYYY-MM-DDThh:mm:ssZ) به‌روزرسانی شده است.

رشته نقش (اختیاری)

فقط خروجی. نقش تعامل.

خروجی آرایه ( محتوا ) (اختیاری)

فقط خروجی. پاسخ‌ها از مدل.

رشته system_instruction (اختیاری)

دستورالعمل سیستم برای تعامل.

آرایه ابزارها ( ابزار ) (اختیاری)

فهرستی از اعلان‌های ابزار که مدل ممکن است در طول تعامل فراخوانی کند.

کاربرد (اختیاری )

فقط خروجی. آمار مربوط به میزان استفاده از توکن درخواست تعامل.

آمار مربوط به میزان استفاده از توکن درخواست تعامل.

فیلدها

عدد صحیح total_input_tokens (اختیاری)

تعداد توکن‌ها در اعلان (زمینه).

ورودی_توکن‌ها_براساس_مودالیتی توکن‌های مودالیتی (اختیاری)

تفکیک استفاده از توکن ورودی بر اساس روش.

تعداد توکن‌ها برای یک روش پاسخ واحد.

فیلدها

روش پاسخ (اختیاری)

روش مرتبط با شمارش توکن‌ها.

مقادیر ممکن:

  • text
  • image
  • audio

عدد صحیح توکن (اختیاری)

تعداد توکن‌ها برای روش.

عدد صحیح total_cached_tokens (اختیاری)

تعداد توکن‌ها در بخش ذخیره‌شده‌ی اعلان (محتوای ذخیره‌شده).

cached_tokens_by_modality توکن‌های مودالیتی (اختیاری)

تفکیک میزان استفاده از توکن‌های ذخیره‌شده بر اساس روش.

تعداد توکن‌ها برای یک روش پاسخ واحد.

فیلدها

روش پاسخ (اختیاری)

روش مرتبط با شمارش توکن‌ها.

مقادیر ممکن:

  • text
  • image
  • audio

عدد صحیح توکن (اختیاری)

تعداد توکن‌ها برای روش.

total_output_tokens عدد صحیح (اختیاری)

تعداد کل توکن‌ها در تمام پاسخ‌های تولید شده.

خروجی_توکن‌ها_براساس_مودالیتی توکن‌های مودالیتی (اختیاری)

تفکیک استفاده از توکن خروجی بر اساس روش.

تعداد توکن‌ها برای یک روش پاسخ واحد.

فیلدها

روش پاسخ (اختیاری)

روش مرتبط با شمارش توکن‌ها.

مقادیر ممکن:

  • text
  • image
  • audio

عدد صحیح توکن (اختیاری)

تعداد توکن‌ها برای روش.

عدد صحیح total_tool_use_tokens (اختیاری)

تعداد توکن‌های موجود در اعلان(های) استفاده از ابزار.

ابزار_استفاده_از_توکن‌ها_توسط_مودالیتی توکن‌های مودالیتی (اختیاری)

تفکیک میزان استفاده از توکن‌های ابزار بر اساس روش.

تعداد توکن‌ها برای یک روش پاسخ واحد.

فیلدها

روش پاسخ (اختیاری)

روش مرتبط با شمارش توکن‌ها.

مقادیر ممکن:

  • text
  • image
  • audio

عدد صحیح توکن (اختیاری)

تعداد توکن‌ها برای روش.

total_thought_tokens عدد صحیح (اختیاری)

تعداد توکن‌های افکار برای مدل‌های تفکر.

عدد صحیح total_tokens (اختیاری)

تعداد کل توکن‌ها برای درخواست تعامل (درخواست + پاسخ‌ها + سایر توکن‌های داخلی).

روش_پاسخ ( اختیاری )

روش‌های درخواستی برای پاسخ (متن، تصویر، صدا).

مقادیر ممکن:

  • text
  • image
  • audio

شیء response_format (اختیاری)

تأکید می‌کند که پاسخ تولید شده یک شیء JSON است که با طرحواره JSON مشخص شده در این فیلد مطابقت دارد.

رشته response_mime_type (اختیاری)

نوع MIME پاسخ. در صورت تنظیم response_format، این مورد الزامی است.

رشته‌ی previous_interaction_id (اختیاری)

شناسه‌ی تعامل قبلی، در صورت وجود.

ورودی محتوا یا آرایه ( Content ) یا آرایه ( Turn ) یا رشته ( الزامی )

ورودی‌های تعامل (مشترک برای مدل و عامل).

شیء agent_config (اختیاری)

پارامترهای پیکربندی برای تعامل عامل.

انواع ممکن

تفکیک‌کننده چندریختی: type

پیکربندی DynamicAgent

پیکربندی برای عامل‌های پویا

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "dynamic" تنظیم شود.

پیکربندی DeepResearchAgent

پیکربندی برای عامل تحقیقات عمیق.

خلاصه‌های تفکر ( اختیاری)

اینکه آیا خلاصه نظرات در پاسخ گنجانده شود یا خیر.

مقادیر ممکن:

  • auto
  • none

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "deep-research" تنظیم شود.

مثال‌ها

مثال

{
  "created": "2025-12-04T15:01:45Z",
  "id": "v1_ChdXS0l4YWZXTk9xbk0xZThQczhEcmlROBIXV0tJeGFmV05PcW5NMWU4UHM4RHJpUTg",
  "model": "gemini-3-flash-preview",
  "object": "interaction",
  "outputs": [
    {
      "text": "Hello! I'm doing well, functioning as expected. Thank you for asking! How are you doing today?",
      "type": "text"
    }
  ],
  "role": "model",
  "status": "completed",
  "updated": "2025-12-04T15:01:45Z",
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 7
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 7,
    "total_output_tokens": 23,
    "total_thought_tokens": 49,
    "total_tokens": 79,
    "total_tool_use_tokens": 0
  }
}

مدل‌های داده

محتوا

محتوای پاسخ.

انواع ممکن

تفکیک‌کننده چندریختی: type

محتوای متن

یک بلوک محتوای متنی.

رشته متن (الزامی)

محتوای متن.

حاشیه‌نویسی‌ها ( اختیاری )

اطلاعات استناد برای محتوای تولید شده توسط مدل.

اطلاعات استناد برای محتوای تولید شده توسط مدل.

انواع ممکن

تفکیک‌کننده چندریختی: type

استناد به آدرس اینترنتی

حاشیه‌نویسی استناد URL.

رشته آدرس اینترنتی (اختیاری)

آدرس اینترنتی (URL).

رشته عنوان (اختیاری)

عنوان URL.

نوع رشته (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "url_citation" تنظیم شود.

عدد صحیح start_index (اختیاری)

شروع بخشی از پاسخ که به این منبع نسبت داده می‌شود.

عدد صحیح end_index (اختیاری)

پایان بخش منسوب، منحصر به فرد.

استناد به فایل

حاشیه‌نویسی استناد به فایل.

رشته document_uri (اختیاری)

آدرس اینترنتی (URI) فایل.

رشته نام فایل (اختیاری)

نام فایل.

رشته منبع (اختیاری)

منبع برای بخشی از متن ذکر شده است.

نوع رشته (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "file_citation" تنظیم شود.

عدد صحیح start_index (اختیاری)

شروع بخشی از پاسخ که به این منبع نسبت داده می‌شود.

عدد صحیح end_index (اختیاری)

پایان بخش منسوب، منحصر به فرد.

استناد به مکان

حاشیه‌نویسی برای استناد به مکان.

رشته place_id (اختیاری)

شناسه مکان، با فرمت `places/{place_id}`.

رشته نام (اختیاری)

عنوان مکان.

رشته آدرس اینترنتی (اختیاری)

مرجع URI آن مکان.

review_snippets قطعه کد نقد و بررسی (اختیاری)

گزیده‌هایی از نظرات که برای تولید پاسخ در مورد ویژگی‌های یک مکان مشخص در نقشه‌های گوگل استفاده می‌شوند.

بخشی از نقد کاربر را که به سوالی در مورد ویژگی‌های یک مکان خاص در نقشه‌های گوگل پاسخ می‌دهد، در بر می‌گیرد.

فیلدها

رشته عنوان (اختیاری)

عنوان نقد.

رشته آدرس اینترنتی (اختیاری)

لینکی که مربوط به نظر کاربر در نقشه گوگل باشد.

رشته review_id (اختیاری)

شناسه‌ی قطعه نقد و بررسی.

نوع رشته (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "place_citation" تنظیم شود.

عدد صحیح start_index (اختیاری)

شروع بخشی از پاسخ که به این منبع نسبت داده می‌شود.

عدد صحیح end_index (اختیاری)

پایان بخش منسوب، منحصر به فرد.

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "text" تنظیم شود.

محتوای تصویر

یک بلوک محتوای تصویر.

رشته داده (اختیاری)

محتوای تصویر.

رشته uri (اختیاری)

آدرس اینترنتی (URI) تصویر.

mime_type enum (رشته) (اختیاری)

نوع مایم تصویر.

مقادیر ممکن:

  • image/png
  • image/jpeg
  • image/webp
  • image/heic
  • image/heif
وضوح تصویر MediaResolution (اختیاری)

قطعنامه رسانه‌ها.

مقادیر ممکن:

  • low
  • medium
  • high
  • ultra_high

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "image" تنظیم شود.

محتوای صوتی

یک بلوک محتوای صوتی.

رشته داده (اختیاری)

محتوای صوتی.

رشته uri (اختیاری)

آدرس اینترنتی (URI) فایل صوتی.

mime_type enum (رشته) (اختیاری)

نوع مایم صدا.

مقادیر ممکن:

  • audio/wav
  • audio/mp3
  • audio/aiff
  • audio/aac
  • audio/ogg
  • audio/flac
نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "audio" تنظیم شود.

محتوای سند

یک بلوک محتوای سند.

رشته داده (اختیاری)

محتوای سند.

رشته uri (اختیاری)

آدرس اینترنتی (URI) سند.

mime_type enum (رشته) (اختیاری)

نوع MIME سند.

مقادیر ممکن:

  • application/pdf
نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "document" تنظیم شود.

محتوای ویدیویی

یک بلوک محتوای ویدیویی.

رشته داده (اختیاری)

محتوای ویدیویی.

رشته uri (اختیاری)

آدرس اینترنتی (URI) ویدیو.

mime_type enum (رشته) (اختیاری)

نوع میم (شبیه‌سازی) ویدیو.

مقادیر ممکن:

  • video/mp4
  • video/mpeg
  • video/mpg
  • video/mov
  • video/avi
  • video/x-flv
  • video/webm
  • video/wmv
  • video/3gpp
وضوح تصویر MediaResolution (اختیاری)

قطعنامه رسانه‌ها.

مقادیر ممکن:

  • low
  • medium
  • high
  • ultra_high

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "video" تنظیم شود.

محتوای فکری

یک بلوک محتوای فکری.

رشته امضا (اختیاری)

امضا برای مطابقت با منبع backend تا بخشی از نسل باشد.

خلاصه محتوای خلاصه اندیشه (اختیاری)

خلاصه‌ای از اندیشه.

انواع ممکن

تفکیک‌کننده چندریختی: type

محتوای متن

یک بلوک محتوای متنی.

رشته متن (الزامی)

محتوای متن.

حاشیه‌نویسی‌ها ( اختیاری )

اطلاعات استناد برای محتوای تولید شده توسط مدل.

اطلاعات استناد برای محتوای تولید شده توسط مدل.

انواع ممکن

تفکیک‌کننده چندریختی: type

استناد به آدرس اینترنتی

حاشیه‌نویسی استناد URL.

رشته آدرس اینترنتی (اختیاری)

آدرس اینترنتی (URL).

رشته عنوان (اختیاری)

عنوان URL.

نوع رشته (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "url_citation" تنظیم شود.

عدد صحیح start_index (اختیاری)

شروع بخشی از پاسخ که به این منبع نسبت داده می‌شود.

عدد صحیح end_index (اختیاری)

پایان بخش منسوب، منحصر به فرد.

استناد به فایل

حاشیه‌نویسی استناد به فایل.

رشته document_uri (اختیاری)

آدرس اینترنتی (URI) فایل.

رشته نام فایل (اختیاری)

نام فایل.

رشته منبع (اختیاری)

منبع برای بخشی از متن ذکر شده است.

نوع رشته (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "file_citation" تنظیم شود.

عدد صحیح start_index (اختیاری)

شروع بخشی از پاسخ که به این منبع نسبت داده می‌شود.

عدد صحیح end_index (اختیاری)

پایان بخش منسوب، منحصر به فرد.

استناد به مکان

حاشیه‌نویسی برای استناد به مکان.

رشته place_id (اختیاری)

شناسه مکان، با فرمت `places/{place_id}`.

رشته نام (اختیاری)

عنوان مکان.

رشته آدرس اینترنتی (اختیاری)

مرجع URI آن مکان.

review_snippets قطعه کد نقد و بررسی (اختیاری)

گزیده‌هایی از نظرات که برای تولید پاسخ در مورد ویژگی‌های یک مکان مشخص در نقشه‌های گوگل استفاده می‌شوند.

بخشی از نقد کاربر را که به سوالی در مورد ویژگی‌های یک مکان خاص در نقشه‌های گوگل پاسخ می‌دهد، در بر می‌گیرد.

فیلدها

رشته عنوان (اختیاری)

عنوان نقد.

رشته آدرس اینترنتی (اختیاری)

لینکی که مربوط به نظر کاربر در نقشه گوگل باشد.

رشته review_id (اختیاری)

شناسه‌ی قطعه نقد و بررسی.

نوع رشته (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "place_citation" تنظیم شود.

عدد صحیح start_index (اختیاری)

شروع بخشی از پاسخ که به این منبع نسبت داده می‌شود.

عدد صحیح end_index (اختیاری)

پایان بخش منسوب، منحصر به فرد.

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "text" تنظیم شود.

محتوای تصویر

یک بلوک محتوای تصویر.

رشته داده (اختیاری)

محتوای تصویر.

رشته uri (اختیاری)

آدرس اینترنتی (URI) تصویر.

mime_type enum (رشته) (اختیاری)

نوع مایم تصویر.

مقادیر ممکن:

  • image/png
  • image/jpeg
  • image/webp
  • image/heic
  • image/heif
وضوح تصویر MediaResolution (اختیاری)

قطعنامه رسانه‌ها.

مقادیر ممکن:

  • low
  • medium
  • high
  • ultra_high

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "image" تنظیم شود.

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "thought" تنظیم شود.

محتوای فراخوانی تابع

یک بلوک محتوای فراخوانی ابزار تابع.

رشته نام (الزامی)

نام ابزاری که باید فراخوانی شود.

شیء آرگومان‌ها (الزامی)

آرگومان‌هایی که باید به تابع ارسال شوند.

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "function_call" تنظیم شود.

رشته شناسه (الزامی)

یک شناسه منحصر به فرد برای این فراخوانی ابزار خاص.

رشته امضا (اختیاری)

یک هش امضا برای اعتبارسنجی backend.

محتوای نتیجه تابع

یک بلوک محتوای نتیجه ابزار تابع.

رشته نام (اختیاری)

نام ابزاری که نامیده شد.

is_error نوع داده بولی (اختیاری)

اینکه آیا فراخوانی ابزار منجر به خطا شده است یا خیر.

آرایه نتیجه ( FunctionResultSubcontent ) یا رشته (الزامی)

نتیجه فراخوانی ابزار.

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "function_result" تنظیم شود.

رشته call_id (الزامی)

شناسه‌ای که با شناسه‌ی بلوک فراخوانی تابع مطابقت دارد.

رشته امضا (اختیاری)

یک هش امضا برای اعتبارسنجی backend.

اجرای کدفراخوانی محتوا

محتوای اجرای کد.

آرگومان‌های CodeExecutionCallArguments (الزامی)

آرگومان‌هایی که باید به اجرای کد ارسال شوند.

آرگومان‌هایی که باید به اجرای کد ارسال شوند.

فیلدها

شمارش زبان (رشته) (اختیاری)

زبان برنامه‌نویسی «کد».

مقادیر ممکن:

  • python
رشته کد (اختیاری)

کدی که قرار است اجرا شود.

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "code_execution_call" تنظیم شود.

رشته شناسه (الزامی)

یک شناسه منحصر به فرد برای این فراخوانی ابزار خاص.

رشته امضا (اختیاری)

یک هش امضا برای اعتبارسنجی backend.

محتوای نتیجه اجرای کد

محتوای نتیجه اجرای کد.

رشته نتیجه (الزامی)

خروجی اجرای کد.

is_error نوع داده بولی (اختیاری)

اینکه آیا اجرای کد منجر به خطا شده است یا خیر.

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "code_execution_result" تنظیم شود.

رشته call_id (الزامی)

شناسه‌ای که با شناسه‌ی بلوک فراخوانی اجرای کد مطابقت دارد.

رشته امضا (اختیاری)

یک هش امضا برای اعتبارسنجی backend.

محتوا

محتوای زمینه URL.

آرگومان‌های UrlContextCallArguments (الزامی)

آرگومان‌هایی که باید به متن URL ارسال شوند.

آرگومان‌هایی که باید به متن URL ارسال شوند.

فیلدها

آرایه آدرس‌های اینترنتی (رشته‌ای) (اختیاری)

آدرس‌های اینترنتی (URL) برای دریافت.

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "url_context_call" تنظیم شود.

رشته شناسه (الزامی)

یک شناسه منحصر به فرد برای این فراخوانی ابزار خاص.

رشته امضا (اختیاری)

یک هش امضا برای اعتبارسنجی backend.

محتوای نتیجه‌ی URL

محتوای نتیجه‌ی زمینه‌ی URL.

نتیجه UrlContextResult (الزامی)

نتایج حاصل از متن URL.

نتیجه‌ی زمینه‌ی URL.

فیلدها

رشته آدرس اینترنتی (اختیاری)

آدرس اینترنتی (URL) که دریافت شده است.

شمارش وضعیت (رشته) (اختیاری)

وضعیت بازیابی URL.

مقادیر ممکن:

  • success
  • error
  • paywall
  • unsafe
is_error نوع داده بولی (اختیاری)

اینکه آیا زمینه URL منجر به خطا شده است یا خیر.

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "url_context_result" تنظیم شود.

رشته call_id (الزامی)

شناسه‌ای که با شناسه‌ی بلوک فراخوانی زمینه‌ی url مطابقت دارد.

رشته امضا (اختیاری)

یک هش امضا برای اعتبارسنجی backend.

جستجوی گوگل، محتوای تماس

محتوای جستجوی گوگل

آرگومان‌های GoogleSearchCall (الزامی)

آرگومان‌هایی که باید به جستجوی گوگل ارسال شوند.

آرگومان‌هایی که باید به جستجوی گوگل ارسال شوند.

فیلدها

آرایه کوئری‌ها (رشته) (اختیاری)

عبارت‌های جستجوی وب برای جستجوی وب بعدی.

تابع search_type enum (رشته‌ای) (اختیاری)

نوع اتصال زمینی جستجو فعال شده.

مقادیر ممکن:

  • web_search
  • image_search
نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "google_search_call" تنظیم شود.

رشته شناسه (الزامی)

یک شناسه منحصر به فرد برای این فراخوانی ابزار خاص.

رشته امضا (اختیاری)

یک هش امضا برای اعتبارسنجی backend.

محتوای نتایج جستجوی گوگل

محتوای نتایج جستجوی گوگل

نتیجه جستجوی گوگل (الزامی)

نتایج جستجوی گوگل.

نتیجه جستجوی گوگل.

فیلدها

رشته‌ی search_suggestions (اختیاری)

قطعه محتوای وب که می‌تواند در یک صفحه وب یا نمای وب یک برنامه تعبیه شود.

is_error نوع داده بولی (اختیاری)

اینکه آیا جستجوی گوگل منجر به خطا شده است یا خیر.

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "google_search_result" تنظیم شود.

رشته call_id (الزامی)

شناسه‌ای که با شناسه‌ی بلوک تماس جستجوی گوگل مطابقت دارد.

رشته امضا (اختیاری)

یک هش امضا برای اعتبارسنجی backend.

McpServerToolCallContent

محتوای فراخوانی ابزار MCPServer.

رشته نام (الزامی)

نام ابزاری که نامگذاری شده است.

رشته نام سرور (الزامی)

نام سرور MCP مورد استفاده.

شیء آرگومان‌ها (الزامی)

شیء JSON آرگومان‌های تابع.

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "mcp_server_tool_call" تنظیم شود.

رشته شناسه (الزامی)

یک شناسه منحصر به فرد برای این فراخوانی ابزار خاص.

رشته امضا (اختیاری)

یک هش امضا برای اعتبارسنجی backend.

محتوای نتیجه ابزار McpServerTool

محتوای نتایج ابزار MCPServer.

رشته نام (اختیاری)

نام ابزاری که برای این فراخوانی ابزار خاص فراخوانی می‌شود.

رشته server_name (اختیاری)

نام سرور MCP مورد استفاده.

آرایه نتیجه ( FunctionResultSubcontent ) یا رشته (الزامی)

خروجی حاصل از فراخوانی سرور MCP. می‌تواند متن ساده یا محتوای غنی باشد.

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "mcp_server_tool_result" تنظیم شود.

رشته call_id (الزامی)

شناسه‌ای که با شناسه‌ی بلوک فراخوانی ابزار سرور MCP مطابقت دارد.

رشته امضا (اختیاری)

یک هش امضا برای اعتبارسنجی backend.

جستجوی فایلمحتوای تماس

محتوای جستجوی فایل

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "file_search_call" تنظیم شود.

رشته شناسه (الزامی)

یک شناسه منحصر به فرد برای این فراخوانی ابزار خاص.

رشته امضا (اختیاری)

یک هش امضا برای اعتبارسنجی backend.

محتوای نتیجه جستجوی فایل

محتوای نتیجه جستجوی فایل.

نتیجه FileSearchResult (اختیاری)

نتایج جستجوی فایل

نتیجه جستجوی فایل

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "file_search_result" تنظیم شود.

رشته call_id (الزامی)

شناسه‌ای که با شناسه‌ی بلوک فراخوانی جستجوی فایل مطابقت دارد.

رشته امضا (اختیاری)

یک هش امضا برای اعتبارسنجی backend.

محتوای تماس نقشه گوگل

محتوای نقشه‌های گوگل

آرگومان‌های GoogleMapsCallArguments (اختیاری)

آرگومان‌هایی که باید به ابزار نقشه‌های گوگل ارسال شوند.

آرگومان‌هایی که باید به ابزار نقشه‌های گوگل ارسال شوند.

فیلدها

آرایه کوئری‌ها (رشته) (اختیاری)

کوئری‌هایی که باید اجرا شوند.

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "google_maps_call" تنظیم شود.

رشته شناسه (الزامی)

یک شناسه منحصر به فرد برای این فراخوانی ابزار خاص.

رشته امضا (اختیاری)

یک هش امضا برای اعتبارسنجی backend.

محتوای نتایج نقشه گوگل

محتوای نتایج نقشه گوگل

نتیجه GoogleMapsResult (الزامی)

نتایج نقشه‌های گوگل

نتیجه نقشه‌های گوگل.

فیلدها

مکان‌ها مکان‌ها (اختیاری)

جاهایی که پیدا شد.

فیلدها

رشته place_id (اختیاری)

شناسه مکان، با فرمت `places/{place_id}`.

رشته نام (اختیاری)

عنوان مکان.

رشته آدرس اینترنتی (اختیاری)

مرجع URI آن مکان.

review_snippets قطعه کد نقد و بررسی (اختیاری)

گزیده‌هایی از نظرات که برای تولید پاسخ در مورد ویژگی‌های یک مکان مشخص در نقشه‌های گوگل استفاده می‌شوند.

بخشی از نقد کاربر را که به سوالی در مورد ویژگی‌های یک مکان خاص در نقشه‌های گوگل پاسخ می‌دهد، در بر می‌گیرد.

فیلدها

رشته عنوان (اختیاری)

عنوان نقد.

رشته آدرس اینترنتی (اختیاری)

لینکی که مربوط به نظر کاربر در نقشه گوگل باشد.

رشته review_id (اختیاری)

شناسه‌ی قطعه نقد و بررسی.

رشته widget_context_token (اختیاری)

نام منبع توکن زمینه ویجت نقشه‌های گوگل.

نوع شیء (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "google_maps_result" تنظیم شود.

رشته call_id (الزامی)

شناسه‌ای که با شناسه‌ی بلوک تماس نقشه‌ی گوگل مطابقت دارد.

رشته امضا (اختیاری)

یک هش امضا برای اعتبارسنجی backend.

مثال‌ها

متن

{
  "type": "text",
  "text": "Hello, how are you?"
}

تصویر

{
  "type": "image",
  "data": "BASE64_ENCODED_IMAGE",
  "mime_type": "image/png"
}

صوتی

{
  "type": "audio",
  "data": "BASE64_ENCODED_AUDIO",
  "mime_type": "audio/wav"
}

سند

{
  "type": "document",
  "data": "BASE64_ENCODED_DOCUMENT",
  "mime_type": "application/pdf"
}

ویدئو

{
  "type": "video",
  "uri": "https://www.youtube.com/watch?v=9hE5-98ZeCg"
}

فکر

{
  "type": "thought",
  "summary": [
    {
      "type": "text",
      "text": "The user is asking about the weather. I should use the get_weather tool."
    }
  ],
  "signature": "CoMDAXLI2nynRYojJIy6B1Jh9os2crpWLfB0+19xcLsGG46bd8wjkF/6RNlRUdvHrXyjsHkG0BZFcuO/bPOyA6Xh5jANNgx82wPHjGExN8A4ZQn56FlMwyZoqFVQz0QyY1lfibFJ2zU3J87uw26OewzcuVX0KEcs+GIsZa3EA6WwqhbsOd3wtZB3Ua2Qf98VAWZTS5y/tWpql7jnU3/CU7pouxQr/Bwft3hwnJNesQ9/dDJTuaQ8Zprh9VRWf1aFFjpIueOjBRrlT3oW6/y/eRl/Gt9BQXCYTqg/38vHFUU4Wo/d9dUpvfCe/a3o97t2Jgxp34oFKcsVb4S5WJrykIkw+14DzVnTpCpbQNFckqvFLuqnJCkL0EQFtunBXI03FJpPu3T1XU6id8S7ojoJQZSauGUCgmaLqUGdMrd08oo81ecoJSLs51Re9N/lISGmjWFPGpqJLoGq6uo4FHz58hmeyXCgHG742BHz2P3MiH1CXHUT2J8mF6zLhf3SR9Qb3lkrobAh"
}

فراخوانی تابع

{
  "type": "function_call",
  "name": "get_weather",
  "id": "gth23981",
  "arguments": {
    "location": "Boston, MA"
  }
}

نتیجه تابع

{
  "type": "function_result",
  "name": "get_weather",
  "call_id": "gth23981",
  "result": [
    {
      "type": "text",
      "text": "{\"weather\":\"sunny\"}"
    }
  ]
}

فراخوانی اجرای کد

{
  "type": "code_execution_call",
  "id": "call_123456",
  "arguments": {
    "language": "python",
    "code": "print('hello world')"
  }
}

نتیجه اجرای کد

{
  "type": "code_execution_result",
  "call_id": "call_123456",
  "result": "hello world"
}

فراخوانی متن URL

{
  "type": "url_context_call",
  "id": "call_123456",
  "arguments": {
    "urls": [
      "https://www.example.com"
    ]
  }
}

نتیجه متن URL

{
  "type": "url_context_result",
  "call_id": "call_123456",
  "result": [
    {
      "url": "https://www.example.com",
      "status": "SUCCESS"
    }
  ]
}

تماس جستجوی گوگل

{
  "type": "google_search_call",
  "id": "call_123456",
  "arguments": {
    "queries": [
      "weather in Boston"
    ]
  }
}

نتیجه جستجوی گوگل

{
  "type": "google_search_result",
  "call_id": "call_123456",
  "result": [
    {
      "url": "https://www.google.com/search?q=weather+in+Boston",
      "title": "Weather in Boston"
    }
  ]
}

ابزار سرور مک‌پد

{
  "type": "mcp_server_tool_call",
  "id": "call_123456",
  "name": "get_forecast",
  "server_name": "weather_server",
  "arguments": {
    "city": "London"
  }
}

نتیجه ابزار سرور مک‌پد

{
  "type": "mcp_server_tool_result",
  "name": "get_forecast",
  "server_name": "weather_server",
  "call_id": "call_123456",
  "result": "sunny"
}

جستجوی فایل

{
  "type": "file_search_call",
  "id": "call_123456"
}

نتیجه جستجوی فایل

{
  "type": "file_search_result",
  "call_id": "call_123456",
  "result": [
    {
      "text": "search result chunk",
      "file_search_store": "file_search_store"
    }
  ]
}

تماس با نقشه گوگل

{
  "type": "google_maps_call",
  "id": "call_123456",
  "arguments": {
    "query": "best food near me"
  }
}

نتیجه نقشه گوگل

{
  "type": "google_maps_result",
  "call_id": "call_123456",
  "result": [
    {
      "places": [
        {
          "url": "https://www.google.com/maps/search/best+food+near+me",
          "name": "Tasty Restaurant"
        }
      ]
    }
  ]
}

ابزار

انواع ممکن

تفکیک‌کننده چندریختی: type

عملکرد

ابزاری که می‌تواند توسط مدل مورد استفاده قرار گیرد.

رشته نام (اختیاری)

نام تابع.

رشته توضیحات (اختیاری)

شرحی از تابع.

پارامتر شیء (اختیاری)

طرحواره JSON برای پارامترهای تابع.

نوع رشته (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "function" تنظیم شود.

جستجوی گوگل

ابزاری که می‌تواند توسط مدل برای جستجو در گوگل استفاده شود.

آرایه search_types (enum (رشته)) (اختیاری)

انواع زمینه‌سازی جستجو برای فعال‌سازی.

مقادیر ممکن:

  • web_search
  • image_search
نوع رشته (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "google_search" تنظیم شود.

اجرای کد

ابزاری که می‌تواند توسط مدل برای اجرای کد استفاده شود.

نوع رشته (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "code_execution" تنظیم شود.

متن آدرس

ابزاری که می‌تواند توسط مدل برای دریافت متن URL استفاده شود.

نوع رشته (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "url_context" تنظیم شود.

استفاده از کامپیوتر

ابزاری که می‌تواند توسط مدل برای تعامل با کامپیوتر استفاده شود.

enum محیطی (رشته‌ای) (اختیاری)

محیطی که در حال اجرا است.

مقادیر ممکن:

  • browser
آرایه excludePredefinedFunctions (رشته) (اختیاری)

فهرست توابع از پیش تعریف شده‌ای که از فراخوانی مدل مستثنی شده‌اند.

نوع رشته (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "computer_use" تنظیم شود.

مک‌پ‌سرور

MCPServer سروری است که می‌تواند توسط مدل برای انجام اقدامات فراخوانی شود.

رشته نام (اختیاری)

نام سرور MCP.

رشته آدرس اینترنتی (اختیاری)

آدرس کامل URL برای نقطه پایانی MCPServer. مثال: "https://api.example.com/mcp"

شیء هدر (اختیاری)

اختیاری: در صورت نیاز، فیلدهایی برای هدرهای احراز هویت، زمان‌های انقضا و غیره.

ابزارهای مجاز (اختیاری)

ابزارهای مجاز.

پیکربندی ابزارهای مجاز.

فیلدها

حالت انتخاب ابزار (اختیاری)

حالت انتخاب ابزار.

مقادیر ممکن:

  • auto
  • any
  • none
  • validated

آرایه ابزار (رشته) (اختیاری)

نام ابزارهای مجاز

نوع رشته (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "mcp_server" تنظیم شود.

جستجوی فایل

ابزاری که می‌تواند توسط مدل برای جستجوی فایل‌ها استفاده شود.

آرایه file_search_store_names (رشته‌ای) (اختیاری)

جستجوی فایل، نام‌های فروشگاه را برای جستجو ذخیره می‌کند.

عدد صحیح top_k (اختیاری)

تعداد تکه‌های بازیابی معنایی که باید بازیابی شوند.

رشته metadata_filter (اختیاری)

فیلتر فراداده برای اعمال روی اسناد و تکه‌های بازیابی معنایی.

نوع رشته (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "file_search" تنظیم شود.

گوگل مپ

ابزاری که می‌تواند توسط مدل برای فراخوانی نقشه‌های گوگل استفاده شود.

enable_widget بولی (اختیاری)

اینکه آیا در نتیجه فراخوانی ابزار، توکن زمینه ویجت برگردانده شود یا خیر.

شماره عرض جغرافیایی (اختیاری)

عرض جغرافیایی محل کاربر.

شماره طول جغرافیایی (اختیاری)

طول جغرافیایی موقعیت مکانی کاربر.

نوع رشته (اختیاری)

هیچ توضیحی ارائه نشده است.

همیشه روی "google_maps" تنظیم شود.

مثال‌ها

عملکرد

جستجوی گوگل

اجرای کد

متن آدرس

استفاده از کامپیوتر

مک‌پ‌سرور

جستجوی فایل

گوگل مپ

نوبت

فیلدها

رشته نقش (اختیاری)

آغازگر این نوبت. باید برای ورودی کاربر یا برای خروجی مدل مدل باشد.

آرایه محتوا ( Content ) یا رشته (اختیاری)

محتوای نوبت.

مثال‌ها

نوبت کاربر

{
  "role": "user",
  "content": [
    {
      "type": "text",
      "text": "user turn"
    }
  ]
}

مدل چرخش

{
  "role": "model",
  "content": [
    {
      "type": "text",
      "text": "model turn"
    }
  ]
}

رویداد تعامل

انواع ممکن

تفکیک‌کننده چندریختی: event_type

رویداد شروع تعامل

تعامل تعامل ( الزامی)

هیچ توضیحی ارائه نشده است.

نوع رویداد enum (رشته) (الزامی)

هیچ توضیحی ارائه نشده است.

مقادیر ممکن:

  • interaction.start
رشته event_id (اختیاری)

توکن event_id که برای از سرگیری جریان تعامل، از این رویداد، استفاده می‌شود.

رویداد کامل تعامل

تعامل تعامل ( الزامی)

تعامل کامل با خروجی‌های خالی برای کاهش اندازه‌ی بار مفید. از رویدادهای ContentDelta قبلی برای خروجی واقعی استفاده کنید.

نوع رویداد enum (رشته) (الزامی)

هیچ توضیحی ارائه نشده است.

مقادیر ممکن:

  • interaction.complete
رشته event_id (اختیاری)

توکن event_id که برای از سرگیری جریان تعامل، از این رویداد، استفاده می‌شود.

به‌روزرسانی وضعیت تعامل

رشته‌ی interaction_id (الزامی)

هیچ توضیحی ارائه نشده است.

شمارش وضعیت (رشته) (الزامی)

هیچ توضیحی ارائه نشده است.

مقادیر ممکن:

  • in_progress
  • requires_action
  • completed
  • failed
  • cancelled
  • incomplete
رشته نوع رویداد (الزامی)

هیچ توضیحی ارائه نشده است.

همیشه روی "interaction.status_update" تنظیم شود.

رشته event_id (اختیاری)

توکن event_id که برای از سرگیری جریان تعامل، از این رویداد، استفاده می‌شود.

شروع محتوا

عدد صحیح شاخص (الزامی)

No description provided.

content Content (required)

No description provided.

event_type string (required)

No description provided.

Always set to "content.start" .

event_id string (optional)

The event_id token to be used to resume the interaction stream, from this event.

ContentDelta

index integer (required)

No description provided.

delta object (required)

No description provided.

Possible Types

Polymorphic discriminator: type

TextDelta

text string (required)

No description provided.

annotations Annotation (optional)

Citation information for model-generated content.

Citation information for model-generated content.

Possible Types

Polymorphic discriminator: type

UrlCitation

A URL citation annotation.

url string (optional)

The URL.

title string (optional)

The title of the URL.

type string (required)

No description provided.

Always set to "url_citation" .

start_index integer (optional)

Start of segment of the response that is attributed to this source.

end_index integer (optional)

End of the attributed segment, exclusive.

FileCitation

A file citation annotation.

document_uri string (optional)

The URI of the file.

file_name string (optional)

The name of the file.

source string (optional)

Source attributed for a portion of the text.

type string (required)

No description provided.

Always set to "file_citation" .

start_index integer (optional)

Start of segment of the response that is attributed to this source.

end_index integer (optional)

End of the attributed segment, exclusive.

PlaceCitation

A place citation annotation.

place_id string (optional)

The ID of the place, in `places/{place_id}` format.

name string (optional)

Title of the place.

url string (optional)

URI reference of the place.

review_snippets ReviewSnippet (optional)

Snippets of reviews that are used to generate answers about the features of a given place in Google Maps.

Encapsulates a snippet of a user review that answers a question about the features of a specific place in Google Maps.

فیلدها

title string (optional)

Title of the review.

url string (optional)

A link that corresponds to the user review on Google Maps.

review_id string (optional)

The ID of the review snippet.

type string (required)

No description provided.

Always set to "place_citation" .

start_index integer (optional)

Start of segment of the response that is attributed to this source.

end_index integer (optional)

End of the attributed segment, exclusive.

type object (required)

No description provided.

Always set to "text" .

ImageDelta

data string (optional)

No description provided.

uri string (optional)

No description provided.

mime_type enum (string) (optional)

No description provided.

Possible values:

  • image/png
  • image/jpeg
  • image/webp
  • image/heic
  • image/heif
resolution MediaResolution (optional)

The resolution of the media.

Possible values:

  • low
  • medium
  • high
  • ultra_high

type object (required)

No description provided.

Always set to "image" .

AudioDelta

data string (optional)

No description provided.

uri string (optional)

No description provided.

mime_type enum (string) (optional)

No description provided.

Possible values:

  • audio/wav
  • audio/mp3
  • audio/aiff
  • audio/aac
  • audio/ogg
  • audio/flac
type object (required)

No description provided.

Always set to "audio" .

DocumentDelta

data string (optional)

No description provided.

uri string (optional)

No description provided.

mime_type enum (string) (optional)

No description provided.

Possible values:

  • application/pdf
type object (required)

No description provided.

Always set to "document" .

VideoDelta

data string (optional)

No description provided.

uri string (optional)

No description provided.

mime_type enum (string) (optional)

No description provided.

Possible values:

  • video/mp4
  • video/mpeg
  • video/mpg
  • video/mov
  • video/avi
  • video/x-flv
  • video/webm
  • video/wmv
  • video/3gpp
resolution MediaResolution (optional)

The resolution of the media.

Possible values:

  • low
  • medium
  • high
  • ultra_high

type object (required)

No description provided.

Always set to "video" .

ThoughtSummaryDelta

content ThoughtSummaryContent (optional)

A new summary item to be added to the thought.

Possible Types

Polymorphic discriminator: type

TextContent

A text content block.

text string (required)

The text content.

annotations Annotation (optional)

Citation information for model-generated content.

Citation information for model-generated content.

Possible Types

Polymorphic discriminator: type

UrlCitation

A URL citation annotation.

url string (optional)

The URL.

title string (optional)

The title of the URL.

type string (required)

No description provided.

Always set to "url_citation" .

start_index integer (optional)

Start of segment of the response that is attributed to this source.

end_index integer (optional)

End of the attributed segment, exclusive.

FileCitation

A file citation annotation.

document_uri string (optional)

The URI of the file.

file_name string (optional)

The name of the file.

source string (optional)

Source attributed for a portion of the text.

type string (required)

No description provided.

Always set to "file_citation" .

start_index integer (optional)

Start of segment of the response that is attributed to this source.

end_index integer (optional)

End of the attributed segment, exclusive.

PlaceCitation

A place citation annotation.

place_id string (optional)

The ID of the place, in `places/{place_id}` format.

name string (optional)

Title of the place.

url string (optional)

URI reference of the place.

review_snippets ReviewSnippet (optional)

Snippets of reviews that are used to generate answers about the features of a given place in Google Maps.

Encapsulates a snippet of a user review that answers a question about the features of a specific place in Google Maps.

فیلدها

title string (optional)

Title of the review.

url string (optional)

A link that corresponds to the user review on Google Maps.

review_id string (optional)

The ID of the review snippet.

type string (required)

No description provided.

Always set to "place_citation" .

start_index integer (optional)

Start of segment of the response that is attributed to this source.

end_index integer (optional)

End of the attributed segment, exclusive.

type object (required)

No description provided.

Always set to "text" .

ImageContent

An image content block.

data string (optional)

The image content.

uri string (optional)

The URI of the image.

mime_type enum (string) (optional)

The mime type of the image.

Possible values:

  • image/png
  • image/jpeg
  • image/webp
  • image/heic
  • image/heif
resolution MediaResolution (optional)

The resolution of the media.

Possible values:

  • low
  • medium
  • high
  • ultra_high

type object (required)

No description provided.

Always set to "image" .

type object (required)

No description provided.

Always set to "thought_summary" .

ThoughtSignatureDelta

signature string (optional)

Signature to match the backend source to be part of the generation.

type object (required)

No description provided.

Always set to "thought_signature" .

FunctionCallDelta

name string (required)

No description provided.

arguments object (required)

No description provided.

type object (required)

No description provided.

Always set to "function_call" .

id string (required)

A unique ID for this specific tool call.

signature string (optional)

A signature hash for backend validation.

FunctionResultDelta

name string (optional)

No description provided.

is_error boolean (optional)

No description provided.

result object or string (required)

Tool call result delta.

type object (required)

No description provided.

Always set to "function_result" .

call_id string (required)

ID to match the ID from the function call block.

signature string (optional)

A signature hash for backend validation.

CodeExecutionCallDelta

arguments CodeExecutionCallArguments (required)

No description provided.

The arguments to pass to the code execution.

فیلدها

language enum (string) (optional)

Programming language of the `code`.

Possible values:

  • python
code string (optional)

The code to be executed.

type object (required)

No description provided.

Always set to "code_execution_call" .

id string (required)

A unique ID for this specific tool call.

signature string (optional)

A signature hash for backend validation.

CodeExecutionResultDelta

result string (required)

No description provided.

is_error boolean (optional)

No description provided.

type object (required)

No description provided.

Always set to "code_execution_result" .

call_id string (required)

ID to match the ID from the function call block.

signature string (optional)

A signature hash for backend validation.

UrlContextCallDelta

arguments UrlContextCallArguments (required)

No description provided.

The arguments to pass to the URL context.

فیلدها

urls array (string) (optional)

The URLs to fetch.

type object (required)

No description provided.

Always set to "url_context_call" .

id string (required)

A unique ID for this specific tool call.

signature string (optional)

A signature hash for backend validation.

UrlContextResultDelta

result UrlContextResult (required)

No description provided.

The result of the URL context.

فیلدها

url string (optional)

The URL that was fetched.

status enum (string) (optional)

The status of the URL retrieval.

Possible values:

  • success
  • error
  • paywall
  • unsafe
is_error boolean (optional)

No description provided.

type object (required)

No description provided.

Always set to "url_context_result" .

call_id string (required)

ID to match the ID from the function call block.

signature string (optional)

A signature hash for backend validation.

GoogleSearchCallDelta

arguments GoogleSearchCallArguments (required)

No description provided.

The arguments to pass to Google Search.

فیلدها

queries array (string) (optional)

Web search queries for the following-up web search.

type object (required)

No description provided.

Always set to "google_search_call" .

id string (required)

A unique ID for this specific tool call.

signature string (optional)

A signature hash for backend validation.

GoogleSearchResultDelta

result GoogleSearchResult (required)

No description provided.

The result of the Google Search.

فیلدها

search_suggestions string (optional)

Web content snippet that can be embedded in a web page or an app webview.

is_error boolean (optional)

No description provided.

type object (required)

No description provided.

Always set to "google_search_result" .

call_id string (required)

ID to match the ID from the function call block.

signature string (optional)

A signature hash for backend validation.

McpServerToolCallDelta

name string (required)

No description provided.

server_name string (required)

No description provided.

arguments object (required)

No description provided.

type object (required)

No description provided.

Always set to "mcp_server_tool_call" .

id string (required)

A unique ID for this specific tool call.

signature string (optional)

A signature hash for backend validation.

McpServerToolResultDelta

name string (optional)

No description provided.

server_name string (optional)

No description provided.

result object or string (required)

Tool call result delta.

type object (required)

No description provided.

Always set to "mcp_server_tool_result" .

call_id string (required)

ID to match the ID from the function call block.

signature string (optional)

A signature hash for backend validation.

FileSearchCallDelta

type object (required)

No description provided.

Always set to "file_search_call" .

id string (required)

A unique ID for this specific tool call.

signature string (optional)

A signature hash for backend validation.

FileSearchResultDelta

result FileSearchResult (optional)

No description provided.

The result of the File Search.

type object (required)

No description provided.

Always set to "file_search_result" .

call_id string (required)

ID to match the ID from the function call block.

signature string (optional)

A signature hash for backend validation.

GoogleMapsCallDelta

arguments GoogleMapsCallArguments (optional)

The arguments to pass to the Google Maps tool.

The arguments to pass to the Google Maps tool.

فیلدها

queries array (string) (optional)

The queries to be executed.

type object (required)

No description provided.

Always set to "google_maps_call" .

id string (required)

A unique ID for this specific tool call.

signature string (optional)

A signature hash for backend validation.

GoogleMapsResultDelta

result GoogleMapsResult (required)

The results of the Google Maps.

The result of the Google Maps.

فیلدها

places Places (optional)

The places that were found.

فیلدها

place_id string (optional)

The ID of the place, in `places/{place_id}` format.

name string (optional)

Title of the place.

url string (optional)

URI reference of the place.

review_snippets ReviewSnippet (optional)

Snippets of reviews that are used to generate answers about the features of a given place in Google Maps.

Encapsulates a snippet of a user review that answers a question about the features of a specific place in Google Maps.

فیلدها

title string (optional)

Title of the review.

url string (optional)

A link that corresponds to the user review on Google Maps.

review_id string (optional)

The ID of the review snippet.

widget_context_token string (optional)

Resource name of the Google Maps widget context token.

type object (required)

No description provided.

Always set to "google_maps_result" .

call_id string (required)

ID to match the ID from the function call block.

signature string (optional)

A signature hash for backend validation.

event_type string (required)

No description provided.

Always set to "content.delta" .

event_id string (optional)

The event_id token to be used to resume the interaction stream, from this event.

ContentStop

index integer (required)

No description provided.

event_type string (required)

No description provided.

Always set to "content.stop" .

event_id string (optional)

The event_id token to be used to resume the interaction stream, from this event.

ErrorEvent

error Error (optional)

No description provided.

Error message from an interaction.

فیلدها

code string (optional)

A URI that identifies the error type.

message string (optional)

A human-readable error message.

event_type string (required)

No description provided.

Always set to "error" .

event_id string (optional)

The event_id token to be used to resume the interaction stream, from this event.

مثال‌ها

Interaction Start

{
  "event_type": "interaction.start",
  "interaction": {
    "id": "v1_ChdTMjQ0YWJ5TUF1TzcxZThQdjRpcnFRcxIXUzI0NGFieU1BdU83MWU4UHY0aXJxUXM",
    "model": "gemini-3-flash-preview",
    "object": "interaction",
    "status": "in_progress"
  }
}

Interaction Complete

{
  "event_type": "interaction.complete",
  "interaction": {
    "created": "2025-12-09T18:45:40Z",
    "id": "v1_ChdTMjQ0YWJ5TUF1TzcxZThQdjRpcnFRcxIXUzI0NGFieU1BdU83MWU4UHY0aXJxUXM",
    "model": "gemini-3-flash-preview",
    "object": "interaction",
    "role": "model",
    "status": "completed",
    "updated": "2025-12-09T18:45:40Z",
    "usage": {
      "input_tokens_by_modality": [
        {
          "modality": "text",
          "tokens": 11
        }
      ],
      "total_cached_tokens": 0,
      "total_input_tokens": 11,
      "total_output_tokens": 364,
      "total_thought_tokens": 1120,
      "total_tokens": 1495,
      "total_tool_use_tokens": 0
    }
  }
}

Interaction Status Update

{
  "event_type": "interaction.status_update",
  "interaction_id": "v1_ChdTMjQ0YWJ5TUF1TzcxZThQdjRpcnFRcxIXUzI0NGFieU1BdU83MWU4UHY0aXJxUXM",
  "status": "in_progress"
}

Content Start

{
  "event_type": "content.start",
  "content": {
    "type": "text"
  },
  "index": 1
}

Content Delta

{
  "event_type": "content.delta",
  "delta": {
    "type": "text",
    "text": "Elara\u2019s life was a symphony of quiet moments. A librarian, she found solace in the hushed aisles, the scent of aged paper, and the predictable rhythm of her days. Her small apartment, meticulously ordered, reflected this internal calm, save"
  },
  "index": 1
}

Content Stop

{
  "event_type": "content.stop",
  "index": 1
}

Error Event

{
  "event_type": "error",
  "error": {
    "message": "Failed to get completed interaction: Result not found.",
    "code": "not_found"
  }
}