Перейти к основному содержанию
Google Gemini — это очень мощная система диалогового ИИ: достаточно ввести промпт, и она сможет всего за несколько секунд сгенерировать плавный и естественный ответ. Gemini может предоставлять впечатляющую интеллектуальную помощь, значительно повышая эффективность работы и творческий потенциал человека. В этом документе главным образом представлен процесс использования операций Gemini Chat Completion API, с помощью которого мы можем легко использовать диалоговые возможности официального Gemini.

Процесс подачи заявки

Чтобы использовать Gemini Chat Completion API, сначала получите ваш API Token в консоли Ace Data Cloud и сохраните его для дальнейшего использования. Если вы ещё не вошли в систему или не зарегистрировались, вы будете автоматически перенаправлены на страницу входа, где вам будет предложено зарегистрироваться и войти в систему; после завершения вы автоматически вернётесь на текущую страницу. Один API Token позволяет вызывать все сервисы платформы, без необходимости подавать отдельную заявку для каждого сервиса. При первом запросе предоставляется бесплатный лимит для бесплатного ознакомления; при недостатке лимита вы можете пополнить универсальный баланс в консоли.
📘 Полная документация: Gemini Chat Completion API →

Базовое использование

Далее вы можете заполнить соответствующее содержимое в интерфейсе, как показано на рисунке:

При первом использовании этого интерфейса нам необходимо заполнить как минимум три поля: одно из них — authorization, которое можно напрямую выбрать в выпадающем списке. Другой параметр — model, model — это категория модели с официального сайта Gemini, которую мы выбираем для использования; доступные модели определяются перечислением model в документации интерфейса. Последний параметр — messages, messages — это массив введённых нами запросов; это массив, означающий, что можно одновременно загрузить несколько запросов, каждый из которых содержит role и content, где role обозначает роль задающего вопрос, и мы предоставляем три роли: user, assistant, system. Другой параметр content — это конкретное содержание нашего вопроса. Одновременно вы можете заметить, что справа генерируется соответствующий код вызова; вы можете скопировать код и запустить его напрямую, а также можете напрямую нажать кнопку «Try» для тестирования.

Подсказка: flash серии gemini-3.x являются моделями с рассуждением и сначала расходуют reasoning tokens; установите max_tokens выше 512, иначе может вернуться только пустое содержимое. gemini-3.8-flash — текущая рекомендуемая Flash-модель, поддерживающая до 1 миллиона Token контекста, ввод изображений, вызов инструментов и потоковые ответы; в настоящее время вызывается через интерфейс Chat Completions.
После вызова мы видим, что возвращаемый результат выглядит следующим образом:
Возвращаемый результат содержит несколько полей, описание которых приведено ниже:
  • id — ID созданной задачи этого диалога, используемый для уникальной идентификации данной задачи диалога.
  • model — выбранная модель с официального сайта Gemini.
  • choices — информация об ответе, предоставленном Gemini на запрос.
  • usage : статистическая информация о token для данной пары вопрос-ответ.
Среди них choices содержит информацию об ответе Gemini, а choices внутри него — конкретную информацию об ответе Gemini, как можно увидеть на рисунке.

Можно увидеть, что поле content внутри choices содержит конкретное содержание ответа Gemini.

Понимание изображений (мультимодальный ввод)

Gemini — это нативная мультимодальная модель, которая может напрямую «видеть изображения». Чтобы передать изображение, измените content определённого сообщения со строки на массив блоков содержимого, и одновременно поместите в массив блок text и блок image_url — это полностью соответствует OpenAI и формату совместимости OpenAI официального Gemini. image_url.url поддерживает два способа записи:
  • base64 data: URI (рекомендуется, наиболее стабильно): формат — data:<медиа-тип>;base64,<данные>, например data:image/jpeg;base64,/9j/4AAQ.... Медиа-тип (MIME) уже указан в префиксе data:, поэтому отдельное поле media_type не требуется и не существует.
  • Общедоступный URL изображения: например https://cdn.acedata.cloud/4hfydw.jpg.
Поддерживаемые типы изображений: png, jpeg, webp, heic, heif. Пример кода вызова Python (base64 data URI):
Также можно напрямую передать общедоступный URL изображения:
💡 image_url принимает только поле url (значением может быть URL изображения или base64 data: URI), а также необязательное поле detail. Не передавайте media_type — это поле изображения Anthropic Claude, оно не относится к формату image_url OpenAI / Gemini.

Потоковый ответ

Этот интерфейс также поддерживает потоковые ответы, что очень полезно для интеграции с веб-страницами и позволяет реализовать эффект посимвольного отображения. Если вы хотите получать ответ в потоковом режиме, можно изменить параметр stream в заголовках запроса на true. Изменения показаны на рисунке, однако код вызова также необходимо соответствующим образом изменить для поддержки потокового ответа.

После изменения stream на true API будет построчно возвращать соответствующие данные JSON, и на уровне кода нам необходимо внести соответствующие изменения, чтобы получить построчные результаты. Пример кода вызова на Python:
Результат вывода выглядит следующим образом:
Как можно увидеть, в ответе содержится много data, а choices внутри data — это самое последнее содержимое ответа, соответствующее описанному выше. choices — это добавленное содержимое ответа, которое вы можете использовать для интеграции в свою систему в соответствии с результатами. При этом завершение потокового ответа определяется по содержимому data: если содержимое равно [DONE], это означает, что потоковый ответ полностью завершён. Возвращаемый результат data содержит несколько полей, описание которых приведено ниже:
  • id,генерирует ID данной задачи диалога, используемый для уникальной идентификации данной задачи диалога.
  • model ,выбранная модель с официального сайта Gemini.
  • choices,информация об ответе, предоставленном Gemini на запрос.
JavaScript также поддерживается, например, код потокового вызова для Node.js выглядит следующим образом:
Пример кода Java:
Другие языки можно дополнительно самостоятельно адаптировать, принцип везде одинаковый.

Многораундовый диалог

Если вы хотите подключить функцию многораундового диалога, необходимо передать несколько запросов в поле messages, конкретный пример нескольких запросов показан на рисунке ниже:

Пример кода вызова Python:
Передав несколько запросов, можно легко реализовать многораундовый диалог и получить следующий ответ:
Можно увидеть, что информация, содержащаяся в choices, совпадает с содержимым базового использования; она содержит конкретное содержимое ответов Gemini на несколько диалогов, поэтому можно отвечать на соответствующие вопросы на основе содержимого нескольких диалогов.

Мультимодальная модель Gemini-3.0

Пример запроса:
Пример результата:
Конечно, вы также можете передать, например, ссылку на видео, конкретный ввод выглядит следующим образом:
Пример результата:
Из приведённого выше видно, что модель Gemini 3.0 поддерживает мультимодальное понимание.

Мультимодальная модель Gemini-3.1

gemini-3.1-pro-preview — это официальный ID текущей модели Gemini 3.1 Pro, поддерживающей мультимодальные входные данные, такие как текст, изображения и видео, и подходящей для сложных задач рассуждения, кодирования и понимания. Пример запроса:
Gemini 3.1 Pro также поддерживает понимание видео:
Формат возврата совпадает с Gemini 3.0 Pro; подробности смотрите в описании раздела о мультимодальной модели Gemini-3.0 выше.

Обработка ошибок

При вызове API, если возникает ошибка, API возвращает соответствующий код ошибки и информацию. Например:
  • 400 token_mismatched:Некорректный запрос, возможно, из-за отсутствующих или недействительных параметров.
  • 400 api_not_implemented:Некорректный запрос, возможно, из-за отсутствующих или недействительных параметров.
  • 401 invalid_token:Не авторизован, недействительный или отсутствующий токен авторизации.
  • 429 too_many_requests:Слишком много запросов, вы превысили лимит частоты запросов.
  • 500 api_error:Внутренняя ошибка сервера, на сервере что-то пошло не так.

Пример ответа об ошибке

Заключение

С помощью данного документа вы уже узнали, как использовать Gemini Chat Completion API для простой реализации функции диалога официального Gemini. Надеемся, этот документ поможет вам лучше интегрировать и использовать данный API. Если у вас возникнут какие-либо вопросы, пожалуйста, свяжитесь с нашей командой технической поддержки в любое время.