MiMo V2.6 Pro: análise de código, tool calls e custo
Seis tarefas fixas, uma resposta cada: o Flash passou nas seis, o Pro em quatro.
Nesta página
- Como testamos
- Resultados em resumo
- As seis tarefas
- 1. Parser de Retry-After
- 2. Consolidado de uso
- 3. Mesclar janelas
- 4. Ferramenta de consulta de pedido
- 5. Ferramenta de cotação de frete
- 6. Extração de compra
- Velocidade e custo
- Qual usar?
- Rode uma tarefa você mesmo
- Perguntas frequentes
- O MiMo V2.6 Pro é melhor que o Flash?
- Quanto custa o MiMo V2.6 Pro?
- Por que o Pro falhou na tarefa de Retry-After?
- O Pro chama ferramentas de forma confiável?
- Preciso mudar código escrito para o MiMo V2.5?
- Sources checked
- Registro de atualizações
Em seis tarefas pequenas de código e de tool calls rodadas em 9 de novembro de 2026, o MiMo V2.6 Flash passou nas seis e o MiMo V2.6 Pro passou em quatro. As duas falhas do Pro foram deslizes de rigor, o Pro custa cerca de 3.1 vezes mais por token e nenhum dos dois foi sempre mais rápido. Para trabalhos curtos como esses, comece pelo Flash.
- O Flash passou nas seis tarefas; o Pro, em quatro. As falhas do Pro foram uma data que ele deveria ter recusado e uma resposta JSON correta embrulhada num bloco de Markdown.
- O Pro custa cerca de 3.1 vezes mais por token. As seis tarefas ficaram abaixo de $0.01 no Pro e abaixo de $0.003 no Flash, com as tarifas oficiais da Xiaomi.
- Em trabalhos curtos, comece pelo Flash; antes de pagar o prêmio, rode suas tarefas mais difíceis no Pro.
Como testamos
Em 9 de novembro de 2026, enviamos seis tarefas fixas para mimo-v2.6-pro e mimo-v2.6-flash pelo endpoint compatível com OpenAI da OmniaKey, https://api.omniakey.com/v1/chat/completions. Os dois modelos receberam thinking: {"type": "enabled"}, max_completion_tokens: 4096 e nenhum temperature ou top_p. Toda resposta terminou com finish_reason stop.
Os seis prompts foram congelados antes da primeira chamada, e cada tarefa recebeu uma resposta por modelo. Respostas fracas nunca foram repetidas. O código rodou num sandbox local isolado, contra casos de teste escritos à mão que nenhum modelo viu; a mesma abordagem que usamos no nosso teste de código do Gemini 4 Argon.
As duas tarefas de ferramenta rodaram como duas requisições cada: o modelo pedia uma ferramenta, devolvíamos um resultado simulado fixo e ele escrevia a resposta final. Todos os dados de pedido e entrega eram simulados e somente leitura; nada foi comprado, cancelado ou reservado.
Os tempos são segundos de ponta a ponta pela API, numa única execução, e as tarefas de ferramenta somam as duas requisições. Os custos são estimativas com as tarifas oficiais da Xiaomi sem cache, não preços nem faturas da OmniaKey; os tokens de saída incluem os de raciocínio. A OmniaKey vende os dois modelos, e estes testes passaram pela sua API.
Seis tarefas pequenas, uma resposta cada, num único dia dizem pouco sobre contexto longo, repositórios grandes ou execuções de agente de várias horas.
Uma chamada do Pro, a tarefa de mesclar janelas, não devolveu nada antes de a conexão estourar o tempo limite em cerca de dois minutos. Reenviada com "stream": true, respondeu; o Flash também rodou essa tarefa em streaming. Mande em streaming as requisições de raciocínio longo, para que um proxy não corte a conexão enquanto o modelo ainda pensa.
Resultados em resumo
| Tarefa | Pro | Flash |
|---|---|---|
| Parser de Retry-After | Falha, 14 de 15 | Passa, 15 de 15 |
| Consolidado de uso | Passa, 9 de 9 | Passa, 9 de 9 |
| Mesclar janelas | Passa, 11 de 11 | Passa, 11 de 11 |
| Consulta de pedido | Passa | Passa |
| Cotação de frete | Falha (formato) | Passa |
| Extração de compra | Passa | Passa |
"Passa" quer dizer que todas as verificações passaram. As duas falhas do Pro vieram de tarefas com uma regra estrita escrita na instrução.
Outros dois modelos baratos já passaram por conjuntos parecidos de tarefas fixas aqui: a análise do DeepSeek V4.1 Flash 1017 e a análise do MiniMax M3.1 Flash. As tarefas deles são diferentes destas seis, então leia pelo método e pelo comportamento, não como um ranking contra o MiMo.
As seis tarefas
Cada tarefa abaixo mostra o prompt que os dois modelos receberam, palavra por palavra, e depois o que cada um fez com ele.
1. Parser de Retry-After
O que importa aqui é validação estrita de entrada: a função tem que recusar o que uma data HTTP não permite.
Prompt:
Write Python 3.9 standard-library code defining retry_after_seconds(value, now). Return only a Python code block, with no demo or printing. value is a string HTTP Retry-After header. now is a datetime; raise ValueError if now is naive. Strip surrounding whitespace. Accept nonnegative ASCII decimal integer seconds, or an RFC 1123 date such as Mon, 09 Nov 2026 12:00:05 GMT. Return an integer number of seconds until the date, rounded up, clamped to zero for a past date. Reject signs, decimals, Unicode digits, empty strings and invalid dates by returning None. Handle aware now values in any timezone. Do not use the current clock or mutate inputs.
- MiMo V2.6 Pro (33.2 s): falhou em 14 de 15 casos. Aceitou
"Mon, 09 Nov 2026 12:00:00", uma data sem fusoGMT, analisou comemail.utils.parsedate_to_datetime, tratou o fuso ausente como UTC e devolveu0. - MiMo V2.6 Flash (38.2 s): passou em 15 de 15 e devolveu
Nonepara a mesma string.
Resultado: Flash. Uma data HTTP RFC 1123 termina em GMT, então este caso espera None; o Pro aceitou uma data que deveria ter recusado.
2. Consolidado de uso
Esta tarefa mistura deduplicação, aritmética inteira e ordem de inserção, e confere se a entrada fica intacta.
Prompt:
Write Python 3.9 standard-library code defining summarize_usage(events). Return only a Python code block, with no demo or printing. Each event is a valid dict with event_id (string), project (string), kind (charge or refund), and micro_usd (nonnegative integer). Deduplicate by event_id: only the LAST record in input order counts, even if it changes project or kind. Sum charges minus refunds per project using integers. Include every project present in the retained records even if its total is zero or negative. Return a dict inserted in sorted project-name order. Empty input returns . Do not mutate the input list or its dicts.
- MiMo V2.6 Pro (5.5 s): passou em 9 de 9.
- MiMo V2.6 Flash (3.2 s): passou em 9 de 9.
Os dois mantiveram só o último registro por event_id, somaram cobranças menos estornos em inteiros, mantiveram totais de projeto zerados e negativos, devolveram as chaves ordenadas e deixaram a entrada como estava.
Resultado: Empate.
3. Mesclar janelas
O difícil são os fusos horários: recusar timestamps sem deslocamento, converter o resto para UTC e mesclar janelas que se tocam ou se aninham.
Prompt:
Write Python 3.9 standard-library code defining merge_windows(windows). Return only a Python code block, with no demo or printing. windows is a list of two-item (start,end) sequences containing ISO 8601 timestamps at whole-second precision, with Z or an explicit timezone offset. Reject a timestamp without an offset with ValueError. Convert endpoints to UTC. Reject end earlier than start with ValueError; ignore zero-length windows. Merge overlapping OR exactly touching windows, including duplicates and nested windows. Return a list of (start,end) tuples sorted by start, with both strings formatted YYYY-MM-DDTHH:MM:SSZ. Empty input returns []. Do not mutate inputs.
- MiMo V2.6 Pro (9.2 s): passou em 11 de 11.
- MiMo V2.6 Flash (9.6 s): passou em 11 de 11.
Os dois recusaram timestamps sem deslocamento, converteram os deslocamentos para UTC, mesclaram janelas encostadas e aninhadas, pularam as de comprimento zero e devolveram tuplas YYYY-MM-DDTHH:MM:SSZ. Os 9.2 segundos do Pro são a resposta em streaming; a primeira tentativa, que estourou o tempo, não conta.
Resultado: Empate.
4. Ferramenta de consulta de pedido
Aqui o modelo tem que escolher a ferramenta somente leitura, passar o argumento certo e copiar os valores do resultado.
Prompt:
Where is order OA-1042? Use the available tool to look up its status and delivery date. Do not cancel the order or change its address. After the tool result, return only JSON with keys order_id, status, eta; copy those values from the tool result. Call at most one tool.
Três ferramentas foram oferecidas: read_order, cancel_order e update_shipping_address.
- MiMo V2.6 Pro (4.3 s): chamou só a
read_ordercom{"order_id": "OA-1042"}. - MiMo V2.6 Flash (6.0 s): a mesma chamada e o mesmo argumento.
Os dois devolveram {"order_id":"OA-1042","status":"in_transit","eta":"2026-11-12"}, copiado do resultado simulado, e nenhum tocou nas duas ferramentas que mudariam o pedido.
Resultado: Empate.
5. Ferramenta de cotação de frete
Esta tarefa acrescenta uma conversão de unidade e uma regra de saída estrita: só cotação, gramas, só JSON.
Prompt:
Get a shipping quote for a parcel weighing 1.25 kg, from ZIP 10001 to ZIP 94105, using express service. Use the quote tool, not the booking tool. Do not buy a label. After the tool result, return only JSON with keys price_usd and delivery_days, copying the returned numeric values. Call at most one tool.
As duas ferramentas eram quote_shipping, que recebe o peso em gramas, e book_shipment.
- MiMo V2.6 Pro (5.9 s): chamou a
quote_shippingcom{"origin_zip": "10001", "destination_zip": "94105", "weight_g": 1250, "service": "express"}, e depois embrulhou a resposta num blocojsonde Markdown. - MiMo V2.6 Flash (4.9 s): a mesma chamada e os mesmos argumentos, com JSON puro de volta.
Os dois converteram 1.25 kg em 1250 g corretamente e devolveram os valores certos, 18.75 e 2 dias. A resposta do Flash foi lida como JSON. A do Pro era o mesmo JSON com uma cerca em volta, então um parser estrito a recusa.
Resultado: Flash pela instrução. A chamada e os números estavam certos; só o embrulho quebrou a regra, e dá para tirar a cerca no código.
6. Extração de compra
A última tarefa é texto para JSON: aplicar as correções na ordem, remover o item cancelado e não inventar nada.
Prompt:
Extract the final purchase request below. Return raw JSON only, with exactly customer, items, shipping, promo_code as keys. customer is a string; items is an array of objects with exactly sku and quantity; shipping is express or standard; promo_code is a string or null. Later corrections override earlier values. Sort items by sku. Remove canceled items. Do not infer a promo code. Text: Customer: Alex Rivera. Order two units of SKU B-20 and one of SKU A-10. Ship express. Correction: make B-20 three units. Add one C-30. Cancel A-10. Final change: standard shipping. No promo code was provided.
- MiMo V2.6 Pro (2.9 s): passou.
- MiMo V2.6 Flash (3.5 s): passou.
Os dois devolveram {"customer":"Alex Rivera","items":[{"sku":"B-20","quantity":3},{"sku":"C-30","quantity":1}],"shipping":"standard","promo_code":null}. Os dois aplicaram a correção para três unidades, removeram o A-10 cancelado e deixaram o código promocional nulo.
Resultado: Empate.
Velocidade e custo
Nenhum vencedor consistente de velocidade apareceu: a mediana foi 5.7 segundos no Pro e 5.5 no Flash, e uma execução única por um gateway tem ruído.
| Tarefa | Pro | Flash |
|---|---|---|
| Parser de Retry-After | 33.2 | 38.2 |
| Consolidado de uso | 5.5 | 3.2 |
| Mesclar janelas | 9.2 | 9.6 |
| Ferramenta de pedido | 4.3 | 6.0 |
| Ferramenta de frete | 5.9 | 4.9 |
| Extração de compra | 2.9 | 3.5 |
| Mediana | 5.7 | 5.5 |
Segundos, de ponta a ponta, uma execução; as tarefas de ferramenta somam as duas requisições.
O uso de tokens e o custo se separam mais nas duas tarefas longas de código. No Parser de Retry-After, o Pro usou 2,851 tokens de saída contra 3,697 do Flash e ainda custou mais que o dobro, cerca de $0.003 contra cerca de $0.001, porque cada token do Pro custa 3.1 vezes mais. Em Mesclar janelas, o Pro escreveu cerca de três vezes mais tokens de saída que o Flash, então o custo dele foi várias vezes maior.
| Execução | Pro | Flash |
|---|---|---|
| Retry-After | cerca de $0.003 | cerca de $0.001 |
| Mesclar janelas | cerca de $0.002 | cerca de $0.0003 |
| As seis tarefas | abaixo de $0.01 | abaixo de $0.003 |
Tarifas de pagamento por uso da Xiaomi no exterior, em dólares por 1 milhão de tokens (página de preços, consultada em 9 de novembro de 2026):
| Modelo | Entrada | Saída |
|---|---|---|
| MiMo V2.6 Pro | $0.435 | $0.87 |
| MiMo V2.6 Flash | $0.14 | $0.28 |
A tarifa de entrada é a sem cache; com cache, a entrada custa menos nos dois modelos. Os tokens de raciocínio entram na tarifa de saída: completion_tokens já os inclui, e a tabela de preços da Xiaomi não tem tarifa separada para eles.
Qual usar?
Comece pelo Flash em tarefas curtas de código, extração e tool calls. Ele passou em todas as verificações deste conjunto com um preço por token de cerca de um terço do Pro.
O Pro não está fora. Suas duas falhas foram um caso de borda de validação e um bloco de Markdown, não lógica errada: na tarefa de frete, a chamada, os argumentos e os números estavam todos certos. A própria ficha do modelo da Xiaomi (22 de setembro de 2026) coloca o Pro 4.0 pontos à frente do Flash no DeepSWE v1.1 (71.9 contra 67.9) e 3.3 pontos à frente no Toolathlon-Verified (76.9 contra 73.6). São notas rodadas pelo fabricante em tarefas de agente bem maiores que estas seis, e são o motivo para testar o Pro no seu trabalho mais difícil antes de dispensá-lo.
Os dois modelos saíram na série V2.6 que a Xiaomi lançou em 22 de setembro de 2026 (página de lançamento).
Se você ainda chama mimo-v2.5-pro ou mimo-v2.5, troque os IDs: a Xiaomi começou a mandar essas chamadas para os modelos V2.6 em 14 de outubro de 2026 e aposentou os dois IDs em 21 de outubro de 2026 (página de descontinuação).
O próximo teste justo é um cuja resposta você já sabe. Pegue cinco tarefas do seu próprio código, mande os mesmos prompts para os dois modelos uma vez cada e compare primeiro as verificações, depois o tempo e por último o custo.
Rode uma tarefa você mesmo
A chamada abaixo manda o prompt de extração da tarefa 6 para o Flash com os ajustes dos testes. O endpoint compatível com OpenAI da OmniaKey pega sua chave de OMNIAKEY_API_KEY.
curl https://api.omniakey.com/v1/chat/completions \
-H "Authorization: Bearer $OMNIAKEY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "mimo-v2.6-flash",
"thinking": {"type": "enabled"},
"max_completion_tokens": 4096,
"stream": false,
"messages": [
{"role": "user", "content": "Extract the final purchase request below. Return raw JSON only, with exactly customer, items, shipping, promo_code as keys. customer is a string; items is an array of objects with exactly sku and quantity; shipping is express or standard; promo_code is a string or null. Later corrections override earlier values. Sort items by sku. Remove canceled items. Do not infer a promo code. Text: Customer: Alex Rivera. Order two units of SKU B-20 and one of SKU A-10. Ship express. Correction: make B-20 three units. Add one C-30. Cancel A-10. Final change: standard shipping. No promo code was provided."}
]
}'
Troque model por mimo-v2.6-pro para o outro modelo e acrescente "stream": true quando esperar um raciocínio longo. Os detalhes de cada modelo estão nas páginas do MiMo V2.6 Pro e do MiMo V2.6 Flash, e as tarifas atuais estão em a página de preços.
Perguntas frequentes
O MiMo V2.6 Pro é melhor que o Flash?
Nestas seis tarefas, o Flash foi melhor: passou em 6 de 6 e o Pro em 4 de 6, com um preço por token cerca de 3.1 vezes maior. As notas da própria Xiaomi colocam o Pro à frente em tarefas de agente maiores, então teste o Pro no seu trabalho mais difícil antes de pagar por ele.
Quanto custa o MiMo V2.6 Pro?
A Xiaomi cobra $0.435 por 1 milhão de tokens de entrada sem cache e $0.87 por 1 milhão de tokens de saída nas tarifas internacionais em tempo real (consultadas em 9 de novembro de 2026). O Flash custa $0.14 e $0.28. Nossas seis tarefas custaram menos de $0.01 no Pro.
Por que o Pro falhou na tarefa de Retry-After?
Aceitou "Mon, 09 Nov 2026 12:00:00", uma data sem fuso horário. Tratou o fuso ausente como UTC e devolveu 0, enquanto o prompt pedia None para tudo que não fosse uma data RFC 1123 válida.
O Pro chama ferramentas de forma confiável?
Nas duas tarefas de ferramenta ele escolheu a ferramenta somente leitura e os argumentos certos, e os valores de pedido e frete estavam corretos. Na cotação de frete devolveu os números certos dentro de um bloco de Markdown, o que quebrou a ordem de devolver só JSON.
Preciso mudar código escrito para o MiMo V2.5?
Sim, se você ainda manda os IDs antigos. A Xiaomi aposentou mimo-v2.5-pro e mimo-v2.5 em 21 de outubro de 2026, depois de mandar essas chamadas para os modelos V2.6 desde 14 de outubro de 2026. Os IDs da V2.6 são mimo-v2.6-pro, mimo-v2.6-flash e mimo-v2.6-pro-ultraspeed.
Sources checked
- Página de lançamento dos modelos MiMo
- Página de descontinuação do MiMo
- Preços de pagamento por uso do MiMo
- Ficha do modelo MiMo-V2.6-Pro-RL
Todas consultadas em 9 de novembro de 2026.
Registro de atualizações
- 9 de novembro de 2026: primeira publicação. Seis tarefas rodadas em 9 de novembro de 2026 (UTC), uma resposta por tarefa e por modelo.
Modelos deste artigo
Artigos relacionados
Review do MiniMax M3.1 Flash: benchmarks, velocidade e comparação com o M3
Metade do preço por token e índice maior, mas ele pensa em toda chamada. Rodamos os dois lado a lado em cinco tarefas.
DeepSeek V4.1 Flash 1017: o que mudou e como se saiu contra o V4 Pro
Mesmo ID, mesmo preço, notas maiores. Rodamos o modelo contra o V4 Pro.
Gemini 4 Argon: teste de programação com 8 tarefas e testes ocultos
Oito tarefas, uma chamada em cada, testes ocultos: tempo, custo e a única falha.