Configuración del reasoning de GPT
Esta página explica el esfuerzo de reasoning, el resumen del reasoning y el control de la longitud de la respuesta en la familia GPT; los IDs de modelo y la configuración de los endpoints están en el resumen de la familia GPT.
GPT-5 y los modelos posteriores admiten reasoning: primero razonan internamente y después responden; es adecuado para matemáticas, código y análisis de varios pasos.
- Los valores habituales son
low,mediumyhigh; cuanto mayor el esfuerzo, más tokens de reasoning y más tiempo. Si envía un valor que el modelo no admite, se devuelve 400 y el mensaje de error enumera los valores admitidos por ese modelo. - Si no se envía
reasoning_effort, el comportamiento predeterminado varía según el modelo: por ejemplo, GPT-5.4 y GPT-6 Sol no razonan por defecto, mientras que GPT-5 sí. Si necesita reasoning, indíquelo explícitamente. - Los tokens de reasoning se facturan al precio de salida y se cuentan en
max_completion_tokens(max_output_tokensen Responses).
Resumen del reasoning
El endpoint Responses puede devolver un resumen del proceso de reasoning; Chat Completions no devuelve el contenido del reasoning:
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.ofox.io/v1", api_key=os.environ["OFOX_API_KEY"])
resp = client.responses.create(
model="openai/gpt-5.4",
reasoning={"effort": "medium", "summary": "auto"},
max_output_tokens=20000,
input="Encuentra todos los enteros positivos n menores que 50 para los que n² + n + 41 no es primo, y explica brevemente por qué.",
)
for item in resp.output:
if item.type == "reasoning":
for s in item.summary:
print("[Resumen del reasoning]", s.text)
print("[Respuesta]", resp.output_text)output puede contener varios elementos reasoning, y en algunos de ellos summary es un array vacío, así que compruébelos uno por uno al leerlos. Si el reasoning es breve, puede no haber resumen.
Controlar la longitud de la respuesta
Los modelos de la serie GPT-5 admiten verbosity en Chat Completions, con los valores low, medium y high, para controlar el nivel de detalle de la respuesta. A diferencia de max_completion_tokens, no trunca la respuesta.
Otros errores: Errores habituales.