Communitygithub.com

vídeo-de-producto

Planifica y genera vídeos cortos de producto y comercio electrónico con Makernice, como muestras de producto, clips publicitarios y vídeos para listados de marketplace. Incluye selección de modo, redacción del prompt, elección de relación de aspecto y resolución, verificación del precio y ejecución del trabajo.

¿Qué es vídeo-de-producto?

Esta habilidad permite a un agente de IA planificar y generar vídeos cortos de producto para comercio electrónico y marketing utilizando la API de Makernice. El agente recopila los detalles necesarios del usuario (producto, foto, uso previsto, duración y presupuesto), selecciona el modelo y modo adecuados (i2v, t2v o r2v según si hay foto de referencia), redacta un prompt optimizado para un solo clip, estima el coste en USD para resoluciones 720p y 1080p, y ejecuta el trabajo de generación solo tras la aprobación del usuario. Soporta relaciones de aspecto 9:16, 16:9 y 1:1, duraciones de 5 a 10 segundos, y maneja reintentos por fallos de red, cancelaciones y consultas de saldo. Es útil para crear vídeos para feeds de redes sociales, páginas web, anuncios y listados de marketplace sin necesidad de edición compleja.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/makernice/makernice-plugin/tree/HEAD/skills/product-video

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Vídeo de producto

Convierte un producto (idealmente con una foto) en un videoclip corto. Responde en el idioma del usuario. Todos los precios están en USD.

1. Recopilar la información

Pregunta solo por lo que falte:

  • Producto: qué es, material, color, tamaño, la única característica que mostrar.
  • Foto del producto: un enlace https público a una foto limpia. Los archivos locales y los enlaces privados no funcionan; el usuario debe alojar la imagen en una URL https pública primero.
  • Dónde se usará: esto define la relación de aspecto.
    • TikTok, Reels, Shorts, stories: 9:16
    • Hero de sitio web, YouTube, landing page: 16:9
    • Listado de marketplace, publicación en feed: 1:1 (si el modelo lo ofrece)
  • Duración y presupuesto: la mayoría de los clips duran de 5 a 10 segundos. Para un vídeo más largo, planifica varios clips cortos en lugar de uno largo.

2. Elegir modelo y modo

Llama a list_models, luego llámalo de nuevo con model establecido en un ID candidato para ver sus modes, aspect_ratios, durations, options y max_prompt_chars.

  • Foto disponible: usa un modo i2v con la foto como image_url. Esto conserva la forma, la etiqueta y el color reales del producto.
  • Varias fotos de referencia (producto desde diferentes ángulos): usa un modo r2v si el modelo lo tiene, con reference_images, dentro de max_references.
  • Sin foto: usa un modo t2v y describe el producto con precisión.
  • Si un modelo lista negative_prompt en options, puedes usarlo para cosas como "etiqueta distorsionada, piezas extra, borroso".

3. Escribir el prompt

Un clip, una toma. Construye el prompt en este orden:

  1. Sujeto: el producto exacto, con material y color ("una taza de café de cerámica negra mate con base de corcho").
  2. Acción o movimiento de cámara: solo un movimiento, por ejemplo, acercamiento lento, órbita suave de 360 grados, revelado desde arriba, paneo macro sobre la textura, mano levantándolo.
  3. Escenario y luz: superficie, fondo, iluminación ("sobre una mesa de roble claro, luz suave de ventana matutina, poca profundidad de campo").
  4. Estilo y ritmo: "aspecto comercial limpio, ritmo calmado".

Consejos:

  • No le pidas al modelo que muestre palabras, precios o logotipos como texto; a menudo salen distorsionados. Añade el texto después en un editor.
  • Con i2v, describe el movimiento y la escena, no la apariencia del producto; la foto ya la define.
  • Mantente por debajo de max_prompt_chars.

Ejemplo:

Una taza de café de cerámica negra mate con base de corcho sobre una mesa de roble claro, vapor ascendiendo, la cámara se acerca lentamente, luz suave de ventana matutina, poca profundidad de campo, aspecto comercial limpio, ritmo calmado.

4. Resolución y precio

  • Haz un borrador en 720p primero para comprobar el movimiento y el encuadre; cuesta menos. Haz la versión final en 1080p para sitio web, anuncios o pantallas grandes. 720p suele ser suficiente para feeds de teléfono.

  • Llama a estimate_cost para las opciones de borrador y final y muestra al usuario ambos precios antes de ejecutar nada:

    {"input": {"model": "<model id>", "mode": "i2v", "prompt": "Una taza de café de cerámica negra mate sobre una mesa de roble claro, vapor ascendiendo, la cámara se acerca lentamente, luz suave de ventana", "image_url": "https://example.com/taza.jpg", "duration": 5, "resolution": "720p", "aspect_ratio": "9:16"}}
    

5. Generar después de que el usuario acepte

Solo llama a generate después de que el usuario haya visto el precio y haya dicho que sí. Si el usuario ya estableció un presupuesto y te indicó que continúes, puedes comenzar sin preguntar de nuevo siempre que amount_usd esté dentro de ese presupuesto; usa amount_usd, no el presupuesto, como max_cost_usd.

  • max_cost_usd: obligatorio. Usa el amount_usd aprobado de estimate_cost, exactamente como se devolvió. El trabajo se rechaza si el precio es mayor.
  • request_id: obligatorio y único para cada nuevo trabajo, ASCII imprimible sin espacios, como máximo 64 caracteres, por ejemplo taza-orbita-720p-1. Un ID usado nunca se puede reutilizar para un trabajo diferente.
  • Si generate falla con un error de red, un tiempo de espera, un error del sistema o "Demasiadas solicitudes", espera unos segundos y reintenta con el mismo input, el mismo max_cost_usd y el mismo request_id. El mismo ID devuelve el mismo trabajo y nunca se cobra dos veces.
{"input": {"model": "<model id>", "mode": "i2v", "prompt": "Una taza de café de cerámica negra mate sobre una mesa de roble claro, vapor ascendiendo, la cámara se acerca lentamente, luz suave de ventana", "image_url": "https://example.com/taza.jpg", "duration": 5, "resolution": "720p", "aspect_ratio": "9:16"}, "max_cost_usd": "<amount_usd from estimate_cost>", "request_id": "taza-orbita-720p-1"}

Espera con check_job, pasando job_id y wait_s establecido en 55; si el trabajo aún se está ejecutando, sigue next_step y llama de nuevo con wait_s 55. No hagas polling en un bucle cerrado.

En caso de éxito, proporciona el enlace del resultado de outputs y la console_url. Los enlaces caducan después de 24 horas; check_job devuelve enlaces nuevos. Si un output tiene state blocked y no tiene url, la revisión de seguridad ocultó el resultado después de generarse; ese trabajo aún se cobra, y el usuario puede contactar con Makernice para que lo revisen. Los trabajos fallidos no se cobran; informa al usuario del motivo desde error.

Para un vídeo de varios clips, ejecuta un trabajo por clip, cada uno con su propio estimate_cost, max_cost_usd y nuevo request_id, y proporciona al usuario el total acumulado.

Manejo de rechazos

  • Precio superior a max_cost_usd: muestra el nuevo precio y pregunta antes de reintentar con un nuevo max_cost_usd y un nuevo request_id.
  • Supera el límite por trabajo: sugiere 720p o una duración más corta, o el usuario puede aumentar el límite por trabajo en Makernice.
  • Saldo insuficiente o límite diario alcanzado: llama a get_balance y explica. Si la herramienta get_topup_link está disponible y el usuario pregunta cómo añadir saldo, proporciona el enlace una vez.
  • Configuración incorrecta en un trabajo en cola: cancel_job con su job_id libera el monto retenido por completo.

Skills relacionados