Guías de integración · 2026-10-10

Editar con imágenes de referencia, varias referencias y try-on en Nano Banana 2.1

Edita imágenes con google/gemini-nano-banana-2.1: sube la referencia a /v1/files y envíala a /v1/images/generations con file_ids, hasta 8 referencias.

Diagrama simple: imágenes de referencia (file_ids) y un prompt van a https://llmtr.com/v1/images/generations, y google/gemini-nano-banana-2.1 devuelve una imagen nueva.

Respuesta corta: sube la referencia a /v1/files y envíala con file_ids

LLMTR (llmtr.com) es una pasarela que da acceso a modelos de lenguaje alojados en Turquía y en proveedores globales a través de una única API compatible con OpenAI. Para editar una imagen con Nano Banana 2.1, primero subes la referencia a https://llmtr.com/v1/files, pones el id devuelto en el campo file_ids y envías la solicitud al endpoint /v1/images/generations con el modelo google/gemini-nano-banana-2.1. Una solicitud admite 8 imágenes de referencia en total; varias referencias y try-on usan el mismo flujo.

Google presenta Nano Banana 2.1 como un modelo de generación de imágenes y edición conversacional. LLMTR no tiene un endpoint de edición aparte: /v1/images/edits no está disponible para los modelos de Google, una solicitud enviada allí con este modelo devuelve 400 y la respuesta te remite al flujo de /v1/images/generations. Las referencias y el prompt que describe el cambio van en la misma solicitud.

Cómo editar una imagen de referencia con Nano Banana 2.1

Hay dos pasos. Primero sube la imagen como formulario multipart a /v1/files con los campos provider=google y purpose=vision_reference; la respuesta devuelve un id. Después pon ese id en la lista file_ids y explica en el prompt qué debe cambiar y qué debe mantenerse. El ejemplo de abajo lleva una foto de producto a una encimera de mármol y pide que la etiqueta quede igual.

Escribe el prompt como una nota de corrección: indica qué cambia y qué se conserva, por ejemplo 'cambia el fondo, conserva el producto y su etiqueta'. size acepta 1K, 2K o 4K, y aspect_ratio acepta 1:1, 3:4, 4:3, 9:16 o 16:9. n no se aplica en este modelo; para varias variaciones de la misma edición, repite la solicitud y reutiliza el id subido.

Dos comandos curl: suben una foto de producto a /v1/files y piden una edición 2K en 4:3 con el id devuelto.

curl https://llmtr.com/v1/files \
  -H "Authorization: Bearer $LLMTR_API_KEY" \
  -F "provider=google" \
  -F "purpose=vision_reference" \
  -F "file=@./product.jpg"
# -> {"id": "file_product_xxx", ...}

curl https://llmtr.com/v1/images/generations \
  -H "Authorization: Bearer $LLMTR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "google/gemini-nano-banana-2.1",
    "prompt": "Place this product on a marble kitchen counter. Keep the label, shape and colours exactly as in the reference.",
    "file_ids": ["file_product_xxx"],
    "size": "2K",
    "aspect_ratio": "4:3"
  }'

Varias referencias: elegir entre file_ids e image_urls

Para más de una referencia, pon varios ids en la lista file_ids; el producto, el entorno y la imagen de estilo pueden ir en la misma solicitud. Los campos file_id, file_ids, image_url e image_urls se pueden combinar, un valor repetido cuenta una vez y el límite total es de 8 imágenes. En el prompt, nombra las imágenes por orden: 'el producto de la primera imagen, el entorno de la segunda'.

Para una referencia pequeña y puntual, una data URL en base64 dentro de image_urls basta en una sola solicitud. Para imágenes grandes y flujos que reutilizan la misma referencia, /v1/files encaja mejor: el cuerpo JSON sigue siendo pequeño y el archivo se puede reutilizar durante 7 días.

Rutas de referencia de Nano Banana 2.1: file_ids e image_urls (2026-10-10)
Aspectofile_ids (subida con /v1/files)image_urls (data URL)
SolicitudesDos: subida y generaciónUna
Imágenes grandesEl cuerpo JSON sigue pequeñoBase64 agranda la imagen alrededor de un tercio
Reutilizar una referenciaSe sube una vez, el id sirve 7 díasSe reenvía en cada solicitud
Prueba puntualRequiere dos pasosBasta una solicitud
AlmacenamientoEl archivo se borra a los 7 díasNo se guarda
Límite8 imágenes entre todos los campos de referencia8 imágenes entre todos los campos de referencia

Try-on: unir una persona y una prenda en una solicitud

El try-on une dos referencias con sentido: la foto de una persona y una prenda fotografiada aparte. Sube las dos imágenes con /v1/files y pon los ids en file_ids con la persona primero y la prenda después. En el prompt, pide que se mantengan la pose, la cara y la luz de la primera imagen y el estampado y los colores de la segunda.

El mismo enfoque sirve para colocar un producto en una escena o para montar un anuncio a partir de dos fotos de producto. El ejemplo en Python sube los dos archivos, envía el try-on como imagen 2K en 3:4 y guarda el resultado.

Ejemplo en Python que sube una foto de persona y una de chaqueta, envía el try-on con file_ids y guarda el resultado en try-on.png.

import base64
import os

import requests

BASE_URL = "https://llmtr.com/v1"
HEADERS = {"Authorization": "Bearer " + os.environ["LLMTR_API_KEY"]}


def upload(path):
    with open(path, "rb") as image_file:
        response = requests.post(
            BASE_URL + "/files",
            headers=HEADERS,
            data={"provider": "google", "purpose": "vision_reference"},
            files={"file": image_file},
            timeout=60,
        )
    response.raise_for_status()
    return response.json()["id"]


person_id = upload("person.jpg")
garment_id = upload("garment.jpg")

response = requests.post(
    BASE_URL + "/images/generations",
    headers=HEADERS,
    json={
        "model": "google/gemini-nano-banana-2.1",
        "prompt": (
            "Dress the person in the first image with the jacket from the second image. "
            "Keep the pose, face and lighting of the first image and the pattern and colours of the jacket."
        ),
        "file_ids": [person_id, garment_id],
        "size": "2K",
        "aspect_ratio": "3:4",
    },
    timeout=120,
)
response.raise_for_status()
with open("try-on.png", "wb") as output:
    output.write(base64.b64decode(response.json()["data"][0]["b64_json"]))

¿Cómo se facturan las solicitudes con referencias?

Las imágenes de referencia cuentan como tokens de entrada y se facturan al mismo precio que el prompt de texto, 1,50 $ por 1M de tokens. La imagen de salida se cobra según su tamaño; los equivalentes por imagen de Google son 0,0336 $ para 1K, 0,0504 $ para 2K y 0,113 $ para 4K. Si el modelo razona antes de editar, esos tokens se facturan como salida de texto a 7,50 $ por 1M de tokens.

La parte de entrada crece con el número de referencias: una solicitud con ocho referencias lleva más tokens de entrada que una con una sola. Cuando la misma entrada se repite, una parte puede leerse de la caché y facturarse a 0,15 $, pero no está garantizado. El importe real por clave aparece en la página de uso del Dashboard.

Primeros pasos y errores frecuentes

Paso 1: crea una cuenta en llmtr.com y recarga crédito prepago. Paso 2: crea una clave en Dashboard > API Keys y guárdala en la variable de entorno LLMTR_API_KEY. Paso 3: sube la referencia con /v1/files y envía la solicitud a /v1/images/generations con el id devuelto. La misma clave sirve para todos los modelos del catálogo.

Errores frecuentes: enviar la edición a /v1/images/edits (devuelve 400 con modelos de Google); usar un id de más de 7 días (el archivo ya no existe, súbelo de nuevo); adjuntar más de 8 referencias; enviar n para varias imágenes (no se aplica, repite la solicitud).

Editar una imagen de referencia con Nano Banana 2.1

Crea una clave API, sube la referencia con /v1/files y envía una solicitud a /v1/images/generations con file_ids y google/gemini-nano-banana-2.1.

  1. Clave API. Crea una cuenta en llmtr.com, recarga crédito y crea una clave en Dashboard > API Keys.
  2. Subir la referencia. Sube la imagen a https://llmtr.com/v1/files con provider=google y purpose=vision_reference y guarda el id devuelto.
  3. Solicitud de edición. Envía una solicitud a https://llmtr.com/v1/images/generations con el modelo, el prompt, file_ids, size y aspect_ratio; decodifica b64_json para guardar el resultado.

Frequently asked questions

¿Cuántas imágenes de referencia puedo enviar a Nano Banana 2.1?

Como máximo 8 imágenes por solicitud sumando los campos file_id, file_ids, image_url e image_urls. Un valor repetido cuenta una vez.

¿Nano Banana 2.1 funciona con /v1/images/edits?

No. /v1/images/edits no está disponible para los modelos de Google y devuelve 400. La edición se hace en /v1/images/generations pasando las referencias en file_ids.

¿Cuánto tiempo se guardan las imágenes de referencia subidas?

Los archivos subidos con /v1/files se borran automáticamente a los 7 días. Durante ese tiempo puedes reutilizar el mismo id en varias solicitudes.

Artículos relacionados