Skip to main content
Google Gemini — это очень мощная AI система диалога, которая может генерировать плавные и естественные ответы всего за несколько секунд, просто вводя подсказки. Gemini предоставляет удивительную интеллектуальную помощь, значительно повышая эффективность и креативность работы человека. Этот документ в основном описывает процесс использования Gemini Chat Completion API, с помощью которого мы можем легко использовать функции диалога официального Gemini.

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

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

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

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

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

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

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

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

Gemini является нативной мультимодальной моделью и может напрямую «смотреть на изображения». Чтобы передать изображение, измените content одного из сообщений с строки на массив блоков содержимого, в котором одновременно находятся блоки text и image_url — это полностью совместимо с форматом 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, data внутри choices — это последние ответы, которые соответствуют содержанию, представленному выше. choices — это новые ответы, которые вы можете интегрировать в вашу систему. В то же время окончание потокового ответа определяется по содержимому data, если содержимое равно [DONE], это означает, что потоковый ответ завершен. Возвращаемые результаты data содержат несколько полей, описание которых приведено ниже:
  • 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 - это обновленная версия Gemini 3.0 Pro, базовая модель - gemini-3.1-pro-preview, также поддерживает текст, изображения, видео и другие многомодальные входы, обладает более сильными способностями к рассуждению и пониманию. Способ использования полностью совпадает с Gemini 3.0 Pro, достаточно заменить параметр model на 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:Внутренняя ошибка сервера, что-то пошло не так на сервере.

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

Заключение

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