Text
MiniMax M3.1 Flash
Usa MiniMax M3.1 Flash con Chat Completions, Messages o Responses. Parámetros oficiales, entrada multimodal, razonamiento, historial de herramientas y contabilización de tokens.
Usa exactamente el ID de modelo MiniMax-M3.1-Flash. La página del modelo incluye el Playground y los precios en tiempo real. La especificación OpenAPI define los campos anidados de las solicitudes y respuestas.
Inicio rápido
curl https://api.seedrouter.ai/v1/chat/completions \
-H "Authorization: Bearer $SEEDROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model":"MiniMax-M3.1-Flash",
"messages":[{"role":"user","content":"What is 17 multiplied by 23?"}],
"max_completion_tokens":2048,
"reasoning_effort":"low"
}'Este ejemplo establece un límite de salida; no es el valor predeterminado del modelo. Guarda las claves en tu servidor. El Playground usa la cuenta con la que has iniciado sesión y no requiere pegar una clave API.
Formatos y autenticación
| Formato | Endpoint | Campos obligatorios | Total de campos de nivel superior |
|---|---|---|---|
| Chat Completions | POST /v1/chat/completions | model, messages | 13 |
| Messages | POST /v1/messages | model, messages | 12 |
| Responses | POST /v1/responses | model, input | 13 |
Envía Content-Type: application/json y Authorization: Bearer $SEEDROUTER_API_KEY. Messages también acepta x-api-key; los clientes SDK pueden incluir anthropic-version: 2023-06-01. Estos formatos conservan sus cuerpos de solicitud y estructuras de respuesta nativos.
Parámetros
Todos los campos son opcionales salvo los obligatorios indicados arriba. Omitir un campo no equivale a enviar explícitamente null: un campo solo acepta null cuando OpenAPI lo declara. Los campos de nivel superior no admitidos se descartan; los valores no válidos de campos admitidos devuelven un error.
Chat Completions
| Campo | Tipo | Regla |
|---|---|---|
model | cadena | Exactamente MiniMax-M3.1-Flash |
messages | array | Mensajes de conversación nativos; conserva el razonamiento y el historial de herramientas |
thinking | objeto | type solo puede ser adaptive |
reasoning_effort | cadena | low, medium, high, xhigh, max; predeterminado: max |
reasoning_split | booleano | Solo true |
stream | booleano | Predeterminado: false |
stream_options | objeto | include_usage controla si se muestran los datos de uso en streaming |
max_completion_tokens | entero | 1–524288; incluye tokens de razonamiento y respuesta |
max_tokens | entero | Límite de salida heredado, 1–524288; se recomienda max_completion_tokens |
temperature | número | Se acepta, pero se ignora; el modelo usa 1 |
top_p | número | Mayor que 0 y como máximo 1; se ignora, el modelo usa 0.95 |
tools | array | Definiciones de funciones: type, function.name, function.parameters y descripción opcional |
n | entero | Solo 1 |
Messages
| Campo | Tipo | Regla |
|---|---|---|
model | cadena | Exactamente MiniMax-M3.1-Flash |
messages | array | Mensajes user/assistant y bloques de contenido nativos |
system | cadena o array | Instrucciones del sistema o bloques de texto |
stream | booleano | Predeterminado: false |
max_tokens | entero | 1–524288, incluido el razonamiento; opcional en el esquema API del modelo |
temperature | número | Se acepta, pero se ignora; el modelo usa 1 |
top_p | número | Mayor que 0 y como máximo 1; el modelo usa 0.95 |
tools | array | Definiciones de funciones nativas con input_schema |
tool_choice | objeto | Solo {"type":"auto"} |
thinking | objeto | Solo {"type":"adaptive"} |
output_config | objeto | effort: low, medium, high, xhigh, max; predeterminado: max |
metadata | objeto | Metadatos nativos opcionales |
Responses
| Campo | Tipo | Regla |
|---|---|---|
model | cadena | Exactamente MiniMax-M3.1-Flash |
input | cadena o array | Texto o elementos nativos de mensaje, llamada a función, resultado de función y razonamiento |
instructions | cadena | Instrucciones del sistema |
max_output_tokens | entero | 1–524288, incluido el razonamiento |
temperature | número | Se acepta, pero se ignora; el modelo usa 1 |
top_p | número | Mayor que 0 y como máximo 1; el modelo usa 0.95 |
stream | booleano | Predeterminado: false |
tools | array | Definiciones de funciones nativas |
tool_choice | cadena | Solo auto |
metadata | objeto | Los valores deben ser cadenas |
prompt_cache_key | cadena | Clave opcional para agrupar la caché |
text | objeto | Solo {"format":{"type":"text"}} |
reasoning | objeto | effort: los cinco niveles anteriores; predeterminado: max |
El Playground fija model y permite configurar todos los campos restantes: 12 controles de Chat, 11 de Messages y 12 de Responses. Los objetos anidados y los historiales de conversación completos usan campos JSON. Si un campo admitido tiene un valor no válido, el navegador bloquea el envío.
Razonamiento y límites
La ventana de contexto documentada es de 1.000.000 de tokens. El límite de salida es de 524.288 tokens, incluido el razonamiento. MiniMax recomienda 131.072 tokens de salida para tareas exigentes, pero no establece ese valor como predeterminado.
El modo de pensamiento siempre está activado. Este modelo no admite disabled, none ni minimal como ajustes de pensamiento. Un presupuesto de salida reducido puede agotarse antes de que aparezca el texto de la respuesta. Este contrato de API no admite service_tier, entrada de audio ni salida JSON estructurada.
El cuerpo completo de la solicitud no debe superar los 64 MB. El servicio del modelo valida el uso exacto del contexto y el contenido de los archivos multimedia remotos.
Imágenes y vídeo
| Entrada | Formatos admitidos | Límite |
|---|---|---|
| Imagen | JPEG, PNG, GIF, WebP | 10 MB por imagen |
| Vídeo por URL o en línea | MP4, AVI, MOV, MKV | 50 MB por vídeo |
| Solicitud completa | Cuerpo JSON | 64 MB |
Chat usa los bloques de contenido image_url: {"url":"..."} y video_url: {"url":"..."}. Messages usa bloques de imagen/vídeo con un objeto source: {"type":"url","url":"..."} o {"type":"base64","media_type":"...","data":"..."}. Responses usa input_image o input_video, cuyo valor de URL puede ser una cadena o un objeto de opciones admitido.
detail acepta low, default y high, con default como valor predeterminado. El valor de fps del vídeo va de 0.2 a 5, con 1 como predeterminado. El campo opcional max_long_side_pixel debe ser un entero positivo cuando esté disponible en el esquema anidado.
{
"model": "MiniMax-M3.1-Flash",
"messages": [{
"role": "user",
"content": [
{"type": "text", "text": "Describe the main change in this clip."},
{"type": "video_url", "video_url": {
"url": "https://example.com/clip.mp4",
"fps": 1,
"detail": "default"
}}
]
}],
"max_completion_tokens": 2048
}Sustituye la URL de ejemplo por la de un archivo tuyo accesible. Las entradas en línea usan el tipo MIME base64 adecuado; MOV usa video/mov. Las referencias de vídeo mm_file:// existentes se transmiten sin cambios, pero este servicio no ofrece una API de carga Files. La cuenta que procesa la solicitud debe poder acceder a la referencia.
Herramientas e historial de conversación
Las herramientas de función describen acciones que tu aplicación puede realizar. Una llamada a una herramienta no demuestra que se haya ejecutado una acción externa: revisa el nombre y los argumentos, ejecuta la acción en tu aplicación y devuelve después su resultado con el ID de llamada correspondiente.
Para continuar una conversación con Chat, conserva el mensaje assistant completo, incluidos reasoning_content y tool_calls; los mensajes de herramienta requieren tool_call_id. En Messages, conserva los bloques de pensamiento, las firmas y los bloques tool_use y tool_result. En Responses, añade todos los elementos de salida devueltos antes de la siguiente entrada del usuario.
No reduzcas estos historiales al texto de las respuestas. Se conservan los esquemas arbitrarios de parámetros de función y los campos de razonamiento devueltos. La referencia oficial de Chat no define un parámetro tool_choice para este modelo.
Streaming y campos de respuesta
Establece stream: true para recibir eventos enviados por el servidor. Chat emite choices[].delta y termina con [DONE]; solicita stream_options: {"include_usage":true} para recibir los datos de uso. Messages emite eventos con nombre, como message_start, actualizaciones de bloques de contenido y message_stop. Responses emite eventos como response.output_text.delta y response.completed.
Sin streaming, Chat devuelve choices[].message, finish_reason y usage. Messages devuelve bloques de contenido, stop_reason y datos de uso. Responses devuelve elementos output, estado y datos de uso. Conserva la respuesta completa si tu aplicación necesita más información que la respuesta mostrada.
Uso y precios actuales
La tabla de precios en tiempo real muestra los dos tramos de entrada. Un total de entrada de hasta 512.000 tokens usa el primer tramo; por encima de 512.000 se aplica el segundo. El tramo seleccionado determina el precio de toda la solicitud, incluidas la salida y la caché.
| Formato | Entrada total | Salida |
|---|---|---|
| Chat | prompt_tokens incluye la entrada en caché | completion_tokens incluye el razonamiento |
| Messages | Suma input_tokens, cache_read_input_tokens y cache_creation_input_tokens | output_tokens incluye el razonamiento |
| Responses | input_tokens incluye la entrada en caché | output_tokens incluye el razonamiento |
Los tokens de lectura y escritura de caché no se cobran de nuevo como entrada ordinaria. La caché automática comprueba los prefijos repetidos que cumplen los requisitos y tienen al menos 512 tokens; no se garantizan aciertos de caché. No hace falta un marcador de caché explícito.
Las respuestas incluyen recuentos de tokens, no importes monetarios. Los registros de uso de la cuenta muestran los cargos finales. Las solicitudes fallidas no se cobran.
Errores
Si se produce un error, comprueba el campo no válido y la referencia pública de errores. El mismo ID de modelo admite los tres endpoints de texto anteriores; no se usa con un endpoint de embeddings o de Gemini.
