API gratuita do MiniMax H3: vídeo com som sem custo
O MiniMax H3 agora tem um nível gratuito na Revana. Nós o renderizamos em nossa própria GPU, então um clipe não custa nada para você: entra texto ou uma imagem, sai um vídeo de 5 a 15 segundos com som. Veja o que ele faz, como funciona a fila e o código para chamá-lo.
O que é o MiniMax H3 Free
minimax-h3-free é o MiniMax H3 executado com o FastH3 Omni, uma versão destilada que renderiza em 8 passos em vez do cronograma completo. Ele roda em uma GPU nossa em vez de um provedor pago, e é por isso que podemos oferecê-lo de graça. Todo clipe tem som gerado junto com a imagem: passos, vozes, música, o ambiente.
| Id do modelo | minimax-h3-free |
|---|---|
| Faz | texto para vídeo, imagem para vídeo (uma imagem inicial), imagens de referência |
| Resolução | 480p, 720p, 768p (768×1344 vertical) |
| Proporção | 9:16, 16:9, 1:1 |
| Duração | 5 a 15 segundos |
| Som | sempre, gerado junto com a imagem |
| Imagens | até quatro no total |
| Preço | free |
| Ao mesmo tempo | 10 jobs por conta, na fila ou em execução |
É um id de modelo separado do minimax-h3 pago. Nada muda no modelo pago, e você escolhe a cada requisição qual chamar.
Como funciona a fila gratuita
Uma GPU faz um clipe por vez, então os jobs gratuitos se revezam:
- Seu job é aceito na hora.
POST /v1/generationsresponde202com um id, como em qualquer modelo, e o job mostraqueuedaté a GPU ter espaço. - O rodízio é por conta. Quando muita gente está esperando, a GPU pega o próximo job da próxima conta na fila, então uma conta que envia uma rajada não empurra todas as outras para trás.
- Dez por vez por conta. Você pode ter até 10 jobs gratuitos na fila ou em execução. Um décimo primeiro é recusado com
429 concurrency_limit; envie-o de novo quando um terminar. - Espera até três horas. Um job que ainda estiver esperando depois disso falha com
model_busy, sem custo.
Quando um job chega à GPU, ele renderiza em cerca de 12 segundos mais 10 segundos por segundo de clipe em 768p, então um clipe de 5 segundos leva cerca de um minuto. Consulte a cada 10 segundos mais ou menos; a documentação cobre todos os status que um job pode mostrar.
Gere um clipe gratuito a partir de texto
A requisição é igual à de todos os modelos da Revana. Não há max_cost_usd para definir nem crédito para comprar antes.
export REVANA_API_KEY="sr_live_..."
# 1. Submit the job (returns 202 with the generation id)
curl https://api.revana.si/v1/generations \
-H "Authorization: Bearer $REVANA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "minimax-h3-free",
"input": {
"prompt": "A street drummer plays on upturned buckets on a busy corner at night, coins in a hat at his feet, passers-by slowing to watch. The drums echo off the buildings.",
"resolution": "768p",
"aspect_ratio": "9:16",
"duration": 8
}
}'
# 2. Poll with the id from step 1 until status is "succeeded" or "failed"
curl https://api.revana.si/v1/generations/gen_01JC2V8K5T \
-H "Authorization: Bearer $REVANA_API_KEY"Comece a partir de uma imagem
Envie uma imagem inicial como image_url e o clipe abre nela, mantendo suas pessoas, objetos e cenário. Adicione até mais três como image_urls (quatro no total) e cite-as no prompt como Picture 1, Picture 2 e assim por diante, cada nome entre os sinais < e >. As imagens são PNG, JPEG, WebP ou GIF em links https públicos; se você só tem um arquivo, faça o upload antes com POST /v1/uploads.
import os
import time
import requests
API = "https://api.revana.si/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['REVANA_API_KEY']}"}
resp = requests.post(f"{API}/generations", headers=HEADERS, json={
"model": "minimax-h3-free",
"input": {
"prompt": "<Picture 1> turns to the camera and smiles, then walks out of frame. Soft cafe chatter.",
"image_url": "https://example.com/portrait.jpg",
"duration": 5,
},
})
resp.raise_for_status()
job = resp.json()
# A free job may wait in the GPU queue before it renders, so poll patiently
while job["status"] in ("queued", "running"):
time.sleep(10)
job = requests.get(f"{API}/generations/{job['id']}", headers=HEADERS).json()
if job["status"] == "succeeded":
print(job["output"]["urls"])
else:
print("Failed:", job["error"])Tudo o que o FastH3 Omni não consegue fazer é recusado na hora com 422 invalid_input: uma resolução de 1080p ou 2K, um quadro 21:9, um clipe com menos de 5 ou mais de 15 segundos, audio: false, uma entrada de vídeo ou mais de quatro imagens. Para esses casos, use o minimax-h3 pago.
MiniMax H3 gratuito ou pago?
Use o modelo gratuito para testar ideias, fazer rascunhos de storyboard e criar clipes para redes sociais em que 768p basta. Use o pago quando precisar de 2K, um quadro mais largo, primeiro e último quadros, mais imagens de referência ou um clipe que comece na hora.
minimax-h3-free | minimax-h3 | |
|---|---|---|
| Preço | free | $0.03 por segundo ou mais |
| Engine | FastH3 Omni: MiniMax H3 em 8 passos, na nossa GPU | MiniMax H3 com todos os passos, em rotas pagas |
| Resolução | até 768p | 768p e 2K |
| Proporções | 9:16, 16:9, 1:1 | mais opções, incluindo 21:9 |
| Primeiro e último quadros | no | yes |
| Imagens de referência | até 4 | até 9 |
| Espera | na fila com todos os outros da fila gratuita | começa na hora |
A linha completa está no guia do Hailuo e do MiniMax, e o guia da API de vídeo mais barata traz o menor preço de cada modelo pago. Todos os modelos estão na página de modelos, os pacotes de créditos estão na página de preços, e você pode obter uma chave de API para rodar os exemplos.
Perguntas frequentes
A API gratuita do MiniMax H3 é mesmo gratuita?
Sim. Os jobs em minimax-h3-free são cotados, reservados e cobrados a zero, então funcionam em uma conta sem crédito. Um job que falha também não custa nada.
Qual é a diferença entre minimax-h3-free e minimax-h3?
minimax-h3-free é o MiniMax H3 destilado em 8 passos (FastH3 Omni) e renderizado em nossa própria GPU, em até 768p. minimax-h3 é o modelo completo da MiniMax em rotas pagas, com 2K, mais proporções e primeiro e último quadros. Os dois geram som.
Quantos jobs gratuitos posso rodar ao mesmo tempo?
Dez por conta, na fila ou em execução. Um décimo primeiro é recusado com 429 concurrency_limit até que um dos seus termine.
Quanto tempo leva um clipe gratuito?
Cerca de 12 segundos mais 10 segundos por segundo de clipe depois que começa a renderizar, então um clipe de 5 segundos leva mais ou menos um minuto. Quando a GPU está ocupada, o seu job espera antes na fila, em rodízio com outras contas, por até três horas.
Posso enviar minhas próprias imagens?
Sim. Envie uma imagem inicial como image_url e até quatro imagens de referência como image_urls, quatro no total, como links https. Cite-as no prompt como Picture 1, Picture 2 e assim por diante, cada nome entre os sinais < e >.
Faça um clipe gratuito do MiniMax H3
Cadastre-se, crie uma chave de API e envie sua primeira requisição minimax-h3-free. Não precisa de crédito; a mesma chave roda todos os modelos pagos quando você quiser mais.