Saltar al contenido principal

Descripción general

LemonData funciona con los SDK oficiales de OpenAI apuntando el cliente a https://api.lemondata.cc/v1. Para proyectos nuevos, prefiere la Responses API. Mantén Chat Completions solo cuando un framework, plugin o ruta de código heredada aún lo requiera.
Python, JavaScript y Go tienen SDK oficiales de OpenAI. PHP funciona bien con clientes comunitarios compatibles con OpenAI, pero no es un SDK oficial de OpenAI.
Esta es la ruta SDK OpenAI-compatible por defecto en LemonData, pero no promete que cada campo Responses-native-only funcione igual en todos los modelos y canales enrutados.

Instalación

pip install openai

Configurar el cliente

from openai import OpenAI

client = OpenAI(
    api_key="sk-your-lemondata-key",
    base_url="https://api.lemondata.cc/v1",
)

Recomendado: Responses API

response = client.responses.create(
    model="gpt-5.4",
    input="Explain what LemonData does in one sentence."
)

print(response.output_text)
Algunos hosted tools, así como include, service_tier y truncation_strategy, dependen del soporte de passthrough nativo /v1/responses del modelo elegido y del canal enrutado. Si ese soporte no existe, LemonData devuelve un 400 o 503 explícito en lugar de fingir que el campo funcionó.

Streaming con Responses

stream = client.responses.create(
    model="gpt-5.4",
    input="Write a short poem about coding.",
    stream=True,
)

for event in stream:
    if event.type == "response.output_text.delta":
        print(event.delta, end="")

Herramientas / Llamada a funciones

response = client.responses.create(
    model="gpt-5.4",
    input="What's the weather in Tokyo?",
    tools=[{
        "type": "function",
        "name": "get_weather",
        "description": "Get weather for a location",
        "parameters": {
            "type": "object",
            "properties": {
                "location": {"type": "string"}
            },
            "required": ["location"]
        }
    }]
)

for item in response.output:
    if item.type == "function_call":
        print(item.name)
        print(item.arguments)

Visión con Responses

response = client.responses.create(
    model="gpt-4o",
    input=[{
        "role": "user",
        "content": [
            {"type": "input_text", "text": "What's in this image?"},
            {"type": "input_image", "image_url": "https://example.com/image.jpg"}
        ]
    }]
)

print(response.output_text)

Embeddings

response = client.embeddings.create(
    model="text-embedding-3-small",
    input="Hello world"
)

print(response.data[0].embedding[:5])

Compatibilidad con Chat Completions

Si tu framework o plugin aún requiere Chat Completions, LemonData también admite la ruta estándar compatible con OpenAI:
response = client.chat.completions.create(
    model="gpt-4o",
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Hello!"}
    ]
)

print(response.choices[0].message.content)
Usa Chat Completions solo por compatibilidad. Para integraciones nuevas, prefiere client.responses.create(...).

Solución de problemas

  • Verifica que la URL base sea exactamente https://api.lemondata.cc/v1
  • Comprueba si hay interferencia de proxy o sobrescrituras personalizadas del cliente HTTP
  • Asegúrate de que la versión de tu SDK esté actualizada antes de depurar el comportamiento del proveedor
  • Comprueba que tu API key comience con sk-
  • Verifica que la key esté activa en el dashboard de LemonData
  • Confirma que el SDK esté enviando Authorization: Bearer ...
  • responses.create(...) envía solicitudes a /v1/responses
  • chat.completions.create(...) envía solicitudes a /v1/chat/completions
  • Si tu app solo admite Chat Completions hoy, mantenla en esa ruta de compatibilidad