Saltar al contenido principal
LemonData es compatible con el formato nativo de la API de Google Gemini para los modelos Gemini. Esto permite una compatibilidad directa con los SDK de Google AI.

Parámetros de Ruta

model
string
requerido
Nombre del modelo (por ejemplo, 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.

Parámetros de Consulta

key
string
Clave API (alternativa a la autenticación por encabezado).

Autenticación

Los endpoints de Gemini admiten múltiples métodos de autenticación:
  • Parámetro de consulta ?key=YOUR_API_KEY
  • Encabezado x-goog-api-key: YOUR_API_KEY
  • Encabezado Authorization: Bearer YOUR_API_KEY

Cuerpo de la Solicitud

contents
array
requerido
Contenidos de la conversación.Cada objeto de contenido contiene:
  • role (string): user o model
  • parts (array): partes del contenido. LemonData admite actualmente:
    • partes de texto: { "text": "..." }
    • partes de medios en línea: inlineData / inline_data
    • partes de archivo basadas en URL: fileData / file_data
Para las partes multimedia, LemonData acepta actualmente tipos MIME de imagen, audio y video, y los reenvía a través del contrato público compatible con Gemini.
systemInstruction
object
Instrucción del sistema para el modelo.
generationConfig
object
Configuración de generación:
  • temperature (number): Temperatura de muestreo
  • topP (number): Probabilidad de muestreo de núcleo (nucleus sampling)
  • topK (integer): Muestreo Top-K
  • maxOutputTokens (integer): Máximo de tokens de salida
  • stopSequences (array): Secuencias de parada
safetySettings
array
Configuración de filtros de seguridad.

Respuesta

candidates
array
Candidatos de contenido generado.
usageMetadata
object
Información de uso de 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
    }
  }'

Ejemplos de entrada multimodal

Para solicitudes multimodales de Gemini, coloca los medios dentro de contents[].parts[] usando bytes inline o referencias de archivo basadas en URL. Categorías multimedia compatibles actualmente en el contrato público de Gemini:
  • image
  • audio
  • video
Para medios inline, usa inlineData o inline_data y pasa los bytes del archivo codificados en Base64. Para medios mediante URL, usa fileData o file_data y pasa una URL pública https.

Ejemplo de entrada de imagen

{
  "contents": [
    {
      "role": "user",
      "parts": [
        { "text": "Describe esta imagen." },
        {
          "inlineData": {
            "mimeType": "image/jpeg",
            "data": "/9j/4AAQSkZJRgABAQ..."
          }
        }
      ]
    }
  ]
}

Ejemplo de entrada de audio

{
  "contents": [
    {
      "role": "user",
      "parts": [
        { "text": "Transcribe y resume este audio." },
        {
          "file_data": {
            "mime_type": "audio/mpeg",
            "file_uri": "https://example.com/sample.mp3"
          }
        }
      ]
    }
  ]
}

Ejemplo de entrada de video

{
  "contents": [
    {
      "role": "user",
      "parts": [
        { "text": "Describe brevemente este video." },
        {
          "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"
          }
        }
      ]
    }
  ]
}