Passer au contenu principal
LemonData prend en charge le format natif de l’API Google Gemini pour les modèles Gemini. Cela permet une compatibilité directe avec les SDK Google AI.

Paramètres de chemin

model
string
requis
Nom du modèle (par ex., gemini-2.5-pro, gemini-2.5-flash).For production integrations, prefer URL-based fileData / file_data media parts with a public https URL. LemonData will route supported Gemini-native channels through the native path when possible and automatically fall back to the compatible internal conversion path when a native-ready route is unavailable for that multimodal request.

Paramètres de requête

key
string
Clé API (alternative à l’authentification par en-tête).

Authentification

Les points de terminaison Gemini prennent en charge plusieurs méthodes d’authentification :
  • Paramètre de requête ?key=YOUR_API_KEY
  • En-tête x-goog-api-key: YOUR_API_KEY
  • En-tête Authorization: Bearer YOUR_API_KEY

Corps de la requête

contents
array
requis
Contenu de la conversation.Chaque objet de contenu contient :
  • role (string) : user ou model
  • parts (array) : parties du contenu. LemonData prend actuellement en charge :
    • les parties texte : { "text": "..." }
    • les parties média inline : inlineData / inline_data
    • les parties fichier basées sur URL : fileData / file_data
Pour les parties média, LemonData accepte actuellement les types MIME image, audio et vidéo, puis les transmet via le contrat public compatible Gemini.
systemInstruction
object
Instruction système pour le modèle.
generationConfig
object
Configuration de génération :
  • temperature (number) : Température d’échantillonnage
  • topP (number) : Probabilité d’échantillonnage nucleus
  • topK (integer) : Échantillonnage Top-K
  • maxOutputTokens (integer) : Nombre maximum de tokens de sortie
  • stopSequences (array) : Séquences d’arrêt
safetySettings
array
Paramètres des filtres de sécurité.

Réponse

candidates
array
Candidats de contenu générés.
usageMetadata
object
Informations sur l’utilisation des tokens.
curl -X POST "https://api.lemondata.cc/v1beta/models/gemini-2.5-pro:generateContent?key=sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [
      {
        "parts": [{"text": "Hello, Gemini!"}]
      }
    ],
    "generationConfig": {
      "temperature": 0.7,
      "maxOutputTokens": 1024
    }
  }'

Exemples d’entrée multimodale

Pour les requêtes multimodales Gemini, placez les médias dans contents[].parts[] en utilisant soit des octets inline, soit des références de fichier basées sur une URL. Catégories de médias actuellement prises en charge dans le contrat public Gemini :
  • image
  • audio
  • video
Pour les médias inline, utilisez inlineData ou inline_data et transmettez les octets du fichier encodés en Base64. Pour les médias via URL, utilisez fileData ou file_data et transmettez une URL publique en https.

Exemple d’entrée image

{
  "contents": [
    {
      "role": "user",
      "parts": [
        { "text": "Veuillez décrire cette image." },
        {
          "inlineData": {
            "mimeType": "image/jpeg",
            "data": "/9j/4AAQSkZJRgABAQ..."
          }
        }
      ]
    }
  ]
}

Exemple d’entrée audio

{
  "contents": [
    {
      "role": "user",
      "parts": [
        { "text": "Veuillez transcrire et résumer cet audio." },
        {
          "file_data": {
            "mime_type": "audio/mpeg",
            "file_uri": "https://example.com/sample.mp3"
          }
        }
      ]
    }
  ]
}

Exemple d’entrée vidéo

{
  "contents": [
    {
      "role": "user",
      "parts": [
        { "text": "Veuillez décrire brièvement cette vidéo." },
        {
          "fileData": {
            "mimeType": "video/mp4",
            "fileUri": "https://example.com/sample.mp4"
          }
        }
      ]
    }
  ]
}
{
  "candidates": [
    {
      "content": {
        "role": "model",
        "parts": [
          {"text": "Hello! How can I assist you today?"}
        ]
      },
      "finishReason": "STOP",
      "safetyRatings": [
        {"category": "HARM_CATEGORY_HARASSMENT", "probability": "NEGLIGIBLE"}
      ]
    }
  ],
  "usageMetadata": {
    "promptTokenCount": 5,
    "candidatesTokenCount": 10,
    "totalTokenCount": 15
  }
}

Video Input Example

{
  "contents": [
    {
      "role": "user",
      "parts": [
        { "text": "Please describe this video." },
        {
          "fileData": {
            "mimeType": "video/mp4",
            "fileUri": "https://example.com/demo.mp4"
          }
        }
      ]
    }
  ]
}

Audio Input Example

{
  "contents": [
    {
      "role": "user",
      "parts": [
        { "text": "Please describe this audio." },
        {
          "fileData": {
            "mimeType": "audio/mpeg",
            "fileUri": "https://example.com/demo.mp3"
          }
        }
      ]
    }
  ]
}