Um único config.toml faz a CLI local do OpenAI Codex se comunicar com o GPT-5.4 da apimodels. Esta página mostra a configuração completa, as variantes de reasoning-effort, os preços e uma verificação rápida com curl.
Use wire_api = "responses" (não chat), base_url = "https://apimodels.app/api/v1", model = "gpt-5.4", e defina sua chave API na variável de ambiente. Pronto.
Abra Console no seu console e crie uma chave sk_…. Contas novas recebem $0.3 de crédito grátis.
Cole o trecho abaixo em ~/.codex/config.toml (crie o arquivo se necessário).
Exporte sua chave e depois é só executar codex.
~/.codex/config.toml
# ~/.codex/config.toml
model_provider = "apimodels"
model = "gpt-5.4"
[model_providers.apimodels]
name = "apimodels"
base_url = "https://apimodels.app/api/v1"
wire_api = "responses"
env_key = "APIMODELS_API_KEY"Shell
export APIMODELS_API_KEY="sk_…your_key…"
codex| Configuração | Valor | Por quê |
|---|---|---|
| wire_api | responses | GPT-5.4 is only served via /v1/responses upstream — chat mode won't reach it. |
| base_url | https://apimodels.app/api/v1 | O prefixo do nosso endpoint /v1 compartilhado. |
| model | gpt-5.4 | Ou com um sufixo: -low / -medium / -high / -xhigh — veja a tabela abaixo. |
| env_key | APIMODELS_API_KEY | Qualquer nome — o Codex apenas lê a variável de ambiente que você indicar. |
| model_provider | apimodels | Deve corresponder à chave da tabela [model_providers.<name>] abaixo. |
Aumente a profundidade de raciocínio adicionando um sufixo ao nome do modelo. Todos os níveis compartilham o mesmo preço por token; um esforço maior apenas gera mais reasoning_tokens (cobrados como parte dos output_tokens).
| model | reasoning.effort | Usar para |
|---|---|---|
| gpt-5.4 | none | Conclusões rápidas / de etapa única / simples |
| gpt-5.4-low | low | Raciocínio leve, programação do dia a dia |
| gpt-5.4-medium | medium | Refatorações de várias etapas, decisões de design |
| gpt-5.4-high | high | Depuração difícil, análise entre arquivos |
| gpt-5.4-xhigh | xhigh | Os problemas mais difíceis — dê a ele espaço para pensar |
Cada chamada é cobrada como usage.input_tokens + usage.output_tokens do seu saldo de apimodels. Os preços de outros modelos estão em /docs/llm.
Antes de instalar o Codex, confirme que o endpoint e sua chave funcionam com um único curl:
curl -s https://apimodels.app/api/v1/responses \
-H "Authorization: Bearer $APIMODELS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.4",
"input": "Reply with exactly: ok",
"max_output_tokens": 16
}'Resposta esperada (truncada):
{
"id": "resp_...",
"object": "response",
"model": "gpt-5.4",
"status": "completed",
"output": [{
"type": "message",
"role": "assistant",
"content": [{ "type": "output_text", "text": "ok" }]
}],
"usage": {
"input_tokens": 22,
"output_tokens": 5,
"total_tokens": 27
}
}HTTP 200 with output[0].content[0].text === "ok" means you're good to go.
Codex supports both wire_api modes, but GPT-5.4 specifically is only routed via /v1/responses upstream — /chat/completions can't reach it. Other gpt-* models (gpt-5, gpt-5.1) work with either; for those you can use wire_api = "chat" against /v1/chat/completions. For GPT-5.4 it must be responses.
| Sintoma | Causa / correção |
|---|---|
| HTTP 401 Invalid or missing API key | A variável de ambiente não foi exportada ou a chave foi desativada. Reexporte APIMODELS_API_KEY=… ou gere uma nova chave no console. |
| HTTP 400 Unknown model: gpt-5.4-foo | Apenas as cinco variantes gpt-5.4[-low/-medium/-high/-xhigh] são válidas — verifique se há erros de digitação. |
| 404 / endpoint não encontrado | Most often wire_api is set to "chat" — Codex then calls /chat/completions, which GPT-5.4 upstream doesn't serve. Set wire_api = "responses". |
| Resposta vazia ou apenas raciocínio sem texto visível | max_output_tokens muito baixo — os tokens de raciocínio consumiram o orçamento. Deixe várias centenas de tokens para high/xhigh. |
| Cobrança maior do que o esperado | output_tokens inclui reasoning_tokens — em -high / -xhigh estes podem ser várias vezes a saída visível. Escolha o menor esforço que atenda ao seu padrão de qualidade. |