# Benchmarks Grok via OCI — consumo, ferramentas e custo Consolidação dos testes realizados em **14 e 15/10/2026**, com custos valorados pela lista Oracle consultada em **15/10/2026**. Todos os valores financeiros estão em **USD**, para processamento padrão, com faixas de contexto curto e longo quando aplicáveis. ## Sumário executivo **A auditoria retrospectiva com os sete IDs selecionou Grok 4.3 e Grok 4.20 non-reasoning, pelo corte operacional de 70/100.** A escolha original de Grok 4.3 e 4.20 non-reasoning foi heurística. O [pré-teste posterior de 12 perguntas por ID](screening/README.md) estabelece uma comparação uniforme e registra sua cronologia e limitações. A confirmação da segunda vaga depende do cache observado: no cenário contábil secundário sem desconto de cache, somente Grok 4.3 passa o corte. O teste não pontua qualidade factual. No lote anterior de 100 intenções, Grok 4.3 custou **US$ 0,040643 por interação**, contra **US$ 0,071787** no 4.20 non-reasoning: economia de **43,38%** entre esses dois candidatos. Esse resultado não estabelece superioridade perante todos os modelos. A comparação usou **as mesmas 100 intenções por modelo**, distribuídas entre culinária, esportes, clima e entretenimento. A tabela abaixo apresenta o custo unitário observado, incluindo os tokens consumidos durante o uso das ferramentas e a cobrança do websearch. | Indicador por interação | Grok 4.20 non-reasoning | Grok 4.3 | |---|---:|---:| | Tokens médios: entrada + saída | 49.082,23 | 21.473,81 | | Chamadas médias de websearch | 6,47 | 3,12 | | Custo médio dos tokens — USD | 0,039437 | 0,025043 | | Custo médio do websearch — USD | 0,032350 | 0,015600 | | **Custo médio total — USD** | 0,071787 | 0,040643 | O resultado é explicado pelo comportamento de execução: embora as tarifas por token dos dois candidatos sejam iguais, o Grok 4.3 fez menos buscas e processou menos contexto. Ele custou menos em **95 dos 100 pares** e apresentou mediana de resposta de **10,60 s**, ante **13,55 s** do 4.20 non-reasoning. **Investimento conhecido:** US$ 20,963443 em **294 respostas com uso**, incluindo US$ 9,458169 nas 84 respostas da auditoria. Essa etapa exigiu 91 tentativas HTTP, com sete rejeições de infraestrutura sem custo determinável por ausência de `usage`. A qualidade factual ainda não foi pontuada. ## Escopo e evidências | Etapa | Data | Chamadas | Objetivo | |---|---|---:|---| | Validação da POC | 14/10/2026 | 3 | Confirmar rotas Responses, REST público e busca com Grok 4.3 | | Matriz de compatibilidade | 14/10/2026 | 7 | Uma consulta de notícia por identificador Grok | | Benchmark pareado | 15/10/2026 | 200 | As mesmas 100 intenções em Grok 4.20 non-reasoning e Grok 4.3 | | Auditoria retrospectiva | 15/10/2026 | 84 respostas / 91 tentativas HTTP | Mesmas 12 perguntas nos sete IDs, três por tema; corte ponderado | | **Total com uso preservado** | **14–15/10/2026** | **294** | **Inventário financeiro, não uma única amostra comparável** | Os sete identificadores incluem os aliases `xai.grok-4.20-reasoning` e `xai.grok-4.20-non-reasoning`, que, na documentação consultada, apontam para as versões `0309` correspondentes. Portanto, sete identificadores testados não representam sete configurações independentes de modelo. Voice Agent e Multi-Agent não integram este estudo. As quatro etapas são contabilizadas sem sobreposição. Os erros de diagnóstico sem contadores de uso não entram no total: ausência de `usage` não é tratada como prova de custo zero. O consolidado não substitui a fatura OCI. ## Resultado financeiro consolidado ### Preços de referência Valores por **1 milhão de tokens**, exceto websearch: | Família comercial | Entrada sem cache USD | Entrada em cache USD | Saída USD | |---|---:|---:|---:| | Grok 4.20 — rubrica comercial Grok 4.2 | 1,25 | 0,20 | 2,50 | | Grok 4.3 | 1,25 | 0,20 | 2,50 | | Grok 4.6 | 2,00 | 0,50 | 6,00 | | Grok 4.7 | 2,00 | 0,50 | 6,00 | As tarifas da tabela são de contexto curto. A faixa longa dobra as tarifas da família 4.20/4.3 para 2,50/0,40/5,00 e da família 4.6/4.7 para 4,00/1,00/12,00 (entrada/cache/saída, por milhão). A aplicação observada está documentada no [adendo](screening/ADENDO-CONTABILIDADE.md). **Websearch nativo xAI via OCI: US$ 5,00 por 1.000 chamadas**, SKU `B112610`. A contabilização usa o número de chamadas tarifadas informado pelo provedor, não o número de perguntas nem uma contagem manual de eventos. Fontes: [lista de preços Oracle](https://www.oracle.com/cloud/price-list/), [preços congelados do benchmark](oracle-prices.json) e [preços complementares e faixas longas](screening/oracle-prices.json). O consolidado registra preços, datas, hashes e contadores históricos suficientes para refazer a soma. O arquivo original de preços do lote foi preservado para manter o hash do manifesto. ### Custos por etapa | Etapa | Entrada sem cache USD | Cache USD | Saída USD | Websearch USD | Total USD | |---|---|---|---|---|---| | Validação da POC | 0,023511 | 0,002534 | 0,008370 | 0,045000 | 0,079416 | | Matriz de compatibilidade | 0,091164 | 0,003290 | 0,023366 | 0,065000 | 0,182820 | | Benchmark pareado | 5,428386 | 0,501094 | 0,518558 | 4,795000 | 11,243038 | | Auditoria retrospectiva | 4,575965 | 1,239002 | 0,953202 | 2,690000 | 9,458169 | | **Total** | 10,119027 | 1,745920 | 1,503496 | 7,595000 | 20,963443 | ### Todos os identificadores testados Inventário das quatro etapas, com amostras diferentes: **as médias históricas não são ranking**. A comparação uniforme dos sete IDs está na [auditoria de seleção](screening/README.md). | Identificador OCI | Respostas | Tokens USD | Websearch USD | Total USD | Média histórica USD/interação | |---|---|---|---|---|---| | `xai.grok-4.20-0309-non-reasoning` | 13 | 0,481469 | 0,415000 | 0,896469 | 0,068959 | | `xai.grok-4.20-0309-reasoning` | 13 | 0,506283 | 0,305000 | 0,811283 | 0,062406 | | `xai.grok-4.20-non-reasoning` | 113 | 4,468418 | 3,640000 | 8,108418 | 0,071756 | | `xai.grok-4.20-reasoning` | 13 | 0,462307 | 0,290000 | 0,752307 | 0,057870 | | `xai.grok-4.3` | 116 | 2,863576 | 1,810000 | 4,673576 | 0,040289 | | `xai.grok-4.6` | 13 | 1,547842 | 0,485000 | 2,032842 | 0,156372 | | `xai.grok-4.7` | 13 | 3,038548 | 0,650000 | 3,688548 | 0,283734 | O [consolidado atual](screening/financial-consolidation.json) preserva valores completos; o [baseline de 210 respostas](financial-consolidation.json) continua intacto. Sete rejeições da auditoria sem `usage` estão fora dos custos conhecidos, sem serem tratadas como custo zero. ### Comparação controlada — 100 intenções por modelo | Modelo | Total USD | Média USD/interação | Mediana USD/interação | P95 USD/interação | Websearch USD | Mediana de tempo (s) | |---|---:|---:|---:|---:|---:|---:| | `xai.grok-4.20-non-reasoning` | 7,178728 | 0,071787 | 0,069751 | 0,094497 | 3,235000 | 13,55 | | `xai.grok-4.3` | 4,064310 | 0,040643 | 0,038978 | 0,056172 | 1,560000 | 10,60 | A economia do Grok 4.3 neste lote foi de **US$ 3,114417 (43,38%)**. O P95 é o percentil empírico pelo método de posto mais próximo; não é uma garantia de custo máximo de futuras interações. | Categoria — 25 intenções por modelo | Grok 4.20 non-reasoning USD | Grok 4.3 USD | Economia com Grok 4.3 | |---|---:|---:|---:| | Culinária | 1,676109 | 1,053508 | 37,15% | | Esportes | 1,881921 | 0,976945 | 48,09% | | Clima | 1,818597 | 0,966295 | 46,87% | | Entretenimento | 1,802101 | 1,067563 | 40,76% | ## Consumo e custo médios por interação — lote de 100 intenções As médias desta seção usam **100 interações por modelo**, sem misturar os testes pontuais anteriores. O consumo inclui todas as etapas internas reportadas no `usage` da resposta OCI; não corresponde apenas ao tamanho do prompt digitado ou ao texto final apresentado ao usuário. ### Tokens e ferramentas por interação | Métrica média por interação | Grok 4.20 non-reasoning | Grok 4.3 | |---|---:|---:| | Entrada total, cache incluído | 48.154,53 | 20.327,28 | | Entrada atendida por cache¹ | 21.976,32 | 3.078,40 | | Entrada sem cache | 26.178,21 | 17.248,88 | | Saída total, raciocínio incluído | 927,70 | 1.146,53 | | Raciocínio reportado² | 0,00 | 690,02 | | **Total: entrada + saída** | **49.082,23** | **21.473,81** | | Chamadas de websearch | 6,47 | 3,12 | ¹ Cache é parte da entrada, não consumo adicional. ² Raciocínio é parte da saída, não uma parcela somada novamente. A diferença de consumo vem principalmente do volume de contexto recuperado e do número de buscas realizadas. ### Composição do custo médio por interação | Componente — USD/interação | Grok 4.20 non-reasoning | Grok 4.3 | |---|---:|---:| | Tokens de entrada sem cache | 0,03272276 | 0,02156110 | | Tokens de entrada em cache | 0,00439526 | 0,00061568 | | Tokens de saída, incluindo raciocínio | 0,00231925 | 0,00286632 | | Chamadas de websearch | 0,03235000 | 0,01560000 | | **Total por interação** | 0,07178728 | 0,04064310 | **Leitura financeira:** menor tarifa por token não foi o fator de diferenciação, pois os dois candidatos tinham os mesmos preços. O Grok 4.3 consumiu mais tokens de saída, mas a redução de entrada e de buscas mais que compensou esse componente. Os valores são custos calculados do uso medido a preço de lista, e não valores conciliados de uma fatura. ## Metodologia ### Auditoria posterior da seleção A seleção inicial abaixo explica uma decisão histórica de escopo, sem corte equitativo entre todos os modelos. Após questionamento metodológico, foram feitas 84 novas inferências: as mesmas 12 perguntas, três por tema, nos sete IDs. Pesos, corte, gates e agrupamento de aliases foram congelados antes dessas chamadas. O [relatório da auditoria](screening/README.md) apresenta notas, variabilidade, exceções operacionais e a dupla indicada para uma próxima comparação completa. A auditoria não transforma o desenho inicial em prospectivo. ### Por que Grok 4.3 e Grok 4.20 non-reasoning receberam as 100 intenções A escolha foi feita **antes da execução do lote completo**, para responder a uma pergunta de negócio: **qual dos candidatos de menor tarifa consegue atender consultas cotidianas com busca web pelo menor custo total por interação?** Os dois já tinham demonstrado busca nativa funcionando pela OCI e estavam na mesma faixa de preço: US$ 1,25 por milhão de tokens de entrada, US$ 0,20 de cache e US$ 2,50 de saída. | Candidato | Motivo para entrar no lote completo | Hipótese avaliada | |---|---|---| | **Grok 4.3** | Era o padrão funcional da POC, já validado no REST público, e tinha a tarifa base mais baixa entre as famílias testadas, empatada com 4.20. | Medir o custo de manter o padrão da aplicação nas 100 consultas cotidianas, incluindo busca e contexto. | | **Grok 4.20 non-reasoning** | Representava a alternativa focada em respostas diretas, sem tokens de raciocínio reportados na triagem. Na amostra inicial respondeu em 3,22–3,62 s, ante 9,24 s do 4.3, com a mesma tarifa unitária. | Testar se a rapidez e a ausência de raciocínio reportado se converteriam em menor consumo e menor custo da interação completa. | A triagem inicial tinha uma consulta por identificador. Esses números justificaram uma **hipótese de seleção**, não uma conclusão sobre desempenho ou qualidade. No lote ampliado, a vantagem inicial de tempo do 4.20 non-reasoning não se repetiu na mediana, e ele fez mais buscas; é justamente esse tipo de diferença que o experimento buscava medir. Os demais identificadores permaneceram na triagem por estes critérios de escopo: - **Grok 4.6 e 4.7:** tinham tarifas superiores — US$ 2,00 de entrada, US$ 0,50 de cache e US$ 6,00 de saída por milhão de tokens. Para o primeiro comparativo de consultas cotidianas, priorizaram-se os candidatos da faixa de menor custo. Não foi testado se uma eventual melhora de qualidade desses modelos compensaria a diferença de tarifa. - **Grok 4.20 reasoning:** o recorte inicial priorizou recuperação de informação atual e resposta direta, em vez de raciocínio complexo em múltiplas etapas. A variante permaneceu como compatibilidade confirmada, sem participar da disputa financeira de 100 intenções. Isso não demonstra inadequação ou inferioridade dessa variante. - **Identificadores com e sem `0309`:** os aliases apontavam para as mesmas versões na documentação consultada. Repetir as 100 intenções nos dois nomes não acrescentaria uma configuração independente ao estudo; foi utilizado o alias `xai.grok-4.20-non-reasoning`. Portanto, a conclusão de menor custo é **entre os dois candidatos selecionados**, não um ranking geral dos sete identificadores nem uma afirmação de qualidade equivalente. ### Desenho e execução 1. **Triagem de compatibilidade:** uma consulta sobre notícia atual por identificador, executando a rota `/api/chat` em processos locais isolados via FastAPI TestClient com inferência OCI real. HTTP 200 isolado não foi suficiente para confirmar busca. Os parâmetros e o runtime dessa etapa estão na [matriz original](../evidence/grok-websearch-models.json). 2. **Conjunto pareado:** seleção prévia de 100 intenções, com 25 de cada tema. As perguntas exigem informação atual, como previsão do tempo, agenda, preços, resultados e disponibilidade. Os [prompts e hashes](intents.json) e a [lista legível](INTENCOES.md) foram congelados com referência a 15/10/2026. 3. **Envio uniforme:** o coletor do benchmark chama diretamente a Responses API OCI em `us-chicago-1`, endpoint `/v1/responses`, com payload compartilhado idêntico entre os candidatos, diferindo somente `model`. Não chama a API direta da xAI. Cada interação é independente, sem histórico de conversa. 4. **Configuração:** `tools: [{"type":"web_search"}]`, `store:false`, máximo de 2.400 tokens de saída e instrução de resposta em até 200 palavras. Temperatura e esforço de raciocínio ficam nos padrões do serviço. Há duas inferências simultâneas, pareadas por intenção e alternadas entre temas. 5. **Piloto e retomada:** as quatro primeiras intenções, uma por tema, geraram oito chamadas e integram as 200 finais. Não houve retries automáticos nem repetição do piloto. O controle de orçamento pausou após 170 chamadas; a retomada enviou somente as 30 restantes. 6. **Confirmação de busca:** exigir HTTP 200, evento `web_search_call` com ação `search` e status `completed`, fontes não vazias e citações estruturadas. Todas as 200 interações satisfizeram o critério. 7. **Auditoria:** conferir 200 chamadas únicas, 100 pares, 25 intenções por tema/modelo, hashes iguais em cada par e composição aritmética dos custos. Há zero interações com custo desconhecido no lote concluído. A cobrança por interação é calculada assim: ```text entrada sem cache = input_tokens - cached_tokens custo = (entrada sem cache × tarifa entrada + cached_tokens × tarifa cache + output_tokens × tarifa saída) / 1.000.000 + web_search_calls × 5 / 1.000 ``` `cached_tokens` é subconjunto da entrada, e `reasoning_tokens` é subconjunto da saída: nenhum deles é somado novamente. O contexto recuperado pelas ferramentas já aparece nos tokens informados pelo serviço. O contador de chamadas tarifadas é `usage.server_side_tool_usage_details.web_search_calls`; aberturas de página e eventos falhos não são tarifados por uma contagem inferida nossa. O custo é calculado por SKUs Oracle. Na auditoria posterior, `cost_in_usd_ticks` também foi usado para resolver a faixa longa por correspondência única ao cálculo dos SKUs, conforme o [adendo contábil](screening/ADENDO-CONTABILIDADE.md). O custo corresponde ao **uso medido valorado a preço de lista**, sem impostos, descontos contratuais, VM, rede ou armazenamento. As chamadas de 14/10 foram reprecificadas pela referência de 15/10 para produzir um consolidado homogêneo. Não há conciliação com faturamento ou análise de todas as possíveis despesas da conta. ## Estatísticas consolidadas de tokens e tool calls ### Inventário histórico por identificador — 294 respostas | Identificador OCI | Entrada | Cache¹ | Saída | Raciocínio² | Total de tokens | Websearch | |---|---|---|---|---|---|---| | `xai.grok-4.20-0309-non-reasoning` | 586.469 | 269.312 | 12.464 | 0 | 598.933 | 83 | | `xai.grok-4.20-0309-reasoning` | 493.766 | 188.928 | 34.980 | 25.922 | 528.746 | 61 | | `xai.grok-4.20-non-reasoning` | 5.425.184 | 2.451.328 | 104.333 | 0 | 5.529.517 | 728 | | `xai.grok-4.20-reasoning` | 423.457 | 139.392 | 31.739 | 23.469 | 455.196 | 58 | | `xai.grok-4.3` | 2.323.819 | 354.560 | 132.436 | 80.151 | 2.456.255 | 362 | | `xai.grok-4.6` | 981.041 | 449.024 | 43.216 | 35.777 | 1.024.257 | 97 | | `xai.grok-4.7` | 1.812.889 | 1.144.704 | 53.315 | 43.212 | 1.866.204 | 130 | | **Total** | 12.046.625 | 4.997.248 | 412.483 | 208.531 | 12.459.108 | 1.519 | ¹ Cache é subconjunto da entrada. ² Raciocínio é subconjunto da saída. Total = entrada + saída. ### Médias unitárias históricas — amostras diferentes Estas médias misturam etapas e não classificam os modelos. Para médias pareadas dos sete IDs, usar a [amostra uniforme de 12 perguntas](screening/README.md). | ID OCI | Respostas | Tokens/interação | Buscas/interação | USD/interação | |---|---|---|---|---| | `xai.grok-4.20-0309-non-reasoning` | 13 | 46.071,77 | 6,38 | 0,06895913 | | `xai.grok-4.20-0309-reasoning` | 13 | 40.672,77 | 4,69 | 0,06240639 | | `xai.grok-4.20-non-reasoning` | 113 | 48.933,78 | 6,44 | 0,07175591 | | `xai.grok-4.20-reasoning` | 13 | 35.015,08 | 4,46 | 0,05786978 | | `xai.grok-4.3` | 116 | 21.174,61 | 3,12 | 0,04028945 | | `xai.grok-4.6` | 13 | 78.789,00 | 7,46 | 0,15637246 | | `xai.grok-4.7` | 13 | 143.554,15 | 10,00 | 0,28373446 | ### Lote pareado isolado — 200 interações | Métrica | Grok 4.20 non-reasoning | Grok 4.3 | Total do lote | |---|---:|---:|---:| | Tokens de entrada, cache incluído | 4.815.453 | 2.032.728 | 6.848.181 | | Tokens em cache | 2.197.632 | 307.840 | 2.505.472 | | Tokens de saída, raciocínio incluído | 92.770 | 114.653 | 207.423 | | Tokens de raciocínio | 0 | 69.002 | 69.002 | | Chamadas tarifadas de websearch | 647 | 312 | 959 | | Total de tokens: entrada + saída | 4.908.223 | 2.147.381 | 7.055.604 | | Buscas tarifadas por interação, média | 6,47 | 3,12 | 4,795 | | Interações com busca confirmada | 100/100 | 100/100 | 200/200 | As **959 chamadas de busca** custaram **US$ 4,795**, ou **42,65%** do custo do lote. O Grok 4.3 realizou **51,78% menos buscas**. Embora tenha gerado mais tokens de saída, incluindo 69.002 de raciocínio, sua menor entrada e menor quantidade de buscas compensaram esse componente de custo. ## Limitações e conclusão **Corte operacional da auditoria:** Grok 4.3 e Grok 4.20 non-reasoning. A amostra confirma os dois candidatos originais segundo a regra operacional congelada. O lote anterior de 100 perguntas continua demonstrando menor custo do Grok 4.3 frente ao 4.20 non-reasoning; os demais modelos não receberam esse lote completo. O [pré-teste retrospectivo](screening/README.md) amplia a evidência para todos os sete IDs, com 12 perguntas iguais, mas não sustenta extrapolação para 100 intenções nem ranking de qualidade factual. Aliases são agrupados em cinco configurações para a seleção das vagas. Este estudo mede custo, uso de ferramentas e latência observada. Não pontua correção factual, completude, precisão de datas, cobertura das fontes ou satisfação do usuário. Mais buscas não provam maior qualidade; menos buscas não provam pior qualidade. Uma execução por intenção, cache real do serviço e conteúdo volátil da web limitam a extrapolação. Os resultados valem para os identificadores, região, endpoint, preços e datas documentados. Para uma decisão mais ampla de produto, o próximo passo é avaliar as respostas dos mesmos 100 pares com uma rubrica factual e de utilidade, antes de transformar a economia em uma conclusão de custo-benefício com qualidade equivalente. ## Arquivos e reprodução | Arquivo | Conteúdo | |---|---| | [INTENCOES.md](INTENCOES.md) / [intents.json](intents.json) | Lista de 100 intenções e prompts exatos com hashes | | [PROTOCOLO.md](PROTOCOLO.md) | Regras de execução, custos, orçamento e retomada | | [oracle-prices.json](oracle-prices.json) | Preços e SKUs congelados do lote pareado | | [Consolidado atual](screening/financial-consolidation.json) / [baseline](financial-consolidation.json) | 294 respostas com custo conhecido / histórico preservado de 210 | | [Auditoria da seleção](screening/README.md) | 12 perguntas × sete IDs, corte ponderado e resultados | | [run_benchmark.py](run_benchmark.py) | Coletor: padrão dry run; execução paga exige flags e orçamento | | [report.py](report.py) | Regenera relatório do lote a partir dos registros locais, sem inferência | | [Relatório do lote](results/comparison-2026-10-15/REPORT.md) | Custos e estatísticas por categoria | | [CSV por interação](results/comparison-2026-10-15/interactions.csv) | 200 linhas com prompts, tokens e composição de custo | | [Uso medido](results/comparison-2026-10-15/measured-usage.json) | Métricas selecionadas de cada chamada do lote | | [Resumo](results/comparison-2026-10-15/summary.json) / [hashes](results/comparison-2026-10-15/sha256.json) | Totais, manifesto e integridade dos artefatos | | [Matriz original dos sete identificadores](../evidence/grok-websearch-models.json) | Resultados dos testes pontuais de compatibilidade | Executados na raiz do repositório: ```bash # Validar o dataset sem inferência: python benchmarks/run_benchmark.py # Regenerar o relatório se os registros locais da execução estiverem presentes: python benchmarks/report.py ``` Para uma nova execução paga, consultar o [protocolo](PROTOCOLO.md), definir orçamento autorizado e usar um novo `--run-id` quando apropriado. Credenciais, respostas brutas e registros operacionais não são versionados. O consolidado agrega as evidências das etapas descritas; sua regeneração não faz inferências. A auditoria retrospectiva acrescentou 84 novas respostas, documentadas separadamente.