API, совместимый с Gemini

GetRouter предоставляет совместимые с Gemini эндпоинты для получения списка моделей и генерации содержимого.

GET  https://getrouter.ai/v1beta/models
POST https://getrouter.ai/v1beta/models/{model}:generateContent

Замените {model} точным идентификатором модели.

Получение списка моделей

curl https://getrouter.ai/v1beta/models \
  -H "x-goog-api-key: YOUR_API_KEY"

Ответ имеет совместимую с Gemini структуру списка моделей.

Генерация содержимого

curl "https://getrouter.ai/v1beta/models/MODEL_ID:generateContent" \
  -H "x-goog-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [
      {
        "role": "user",
        "parts": [
          {"text": "Объясни маршрутизацию API в двух предложениях."}
        ]
      }
    ],
    "generationConfig": {
      "temperature": 0.4,
      "maxOutputTokens": 256
    }
  }'

Сгенерированное содержимое возвращается в совместимой с Gemini структуре candidates. Сведения об использовании могут возвращаться в usageMetadata.

Поля запроса

Схема generateContent включает:

  • contents с ролями user или model
  • Текстовые части
  • Встроенные данные с mimeType и данными Base64 в поле data
  • generationConfig, включая temperature, top-p, top-k, максимальное количество выходных токенов и стоп-последовательности
  • safetySettings
  • tools
  • systemInstruction

Поддержка зависит от модели. Начните с текстового запроса и только затем добавляйте мультимодальные входные данные, инструменты или настройки, специфичные для модели.

Пример со встроенными данными

Совместимая мультимодальная модель может принимать часть со встроенными данными:

{
  "contents": [
    {
      "role": "user",
      "parts": [
        {"text": "Опиши прикреплённое изображение."},
        {
          "inlineData": {
            "mimeType": "image/png",
            "data": "BASE64_IMAGE_DATA"
          }
        }
      ]
    }
  ]
}

Запросы Gemini для генерации изображений

Тот же путь generateContent для совместимых моделей может предоставлять настройки ответа, предназначенные для изображений, включая модальности ответа и конфигурацию изображения. Используйте документацию конкретной модели и пример из справочника API.

Особенности совместимости

  • Клиенты, совместимые с Gemini, могут формировать URL иначе, чем OpenAI-совместимые клиенты.
  • Не указывайте https://getrouter.ai/v1 в клиенте Gemini, если руководство по его интеграции явно не требует это значение.
  • Уточните, что именно ожидает клиент: корневой URL API, путь версии API или полный эндпоинт операции.

Что дальше