

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Pensamiento adaptativo
<a name="claude-messages-adaptive-thinking"></a>

El pensamiento adaptativo permite decidir de Claude forma dinámica cuándo y cuánto pensar en función de la complejidad de cada solicitud, en lugar de requerir un presupuesto simbólico fijo. Es compatible con Claude Fable 5.1, Claude Mythos 5.1, Claude Opus 5, Claude Sonnet 5 y otros modelos capaces de pensar. El pensamiento adaptativo genera de manera confiable un mejor rendimiento que el pensamiento extendido con un enfoque fijo. `budget_tokens` No se requiere ningún encabezado beta.

Los modelos admitidos son los siguientes:


| Modelo | ID del modelo | 
| --- | --- | 
| Claude Fable 5.1 | `anthropic.claude-fable-5-1` | 
| Claude Mythos 5.1 | `anthropic.claude-mythos-5-1` | 
| Claude Opus 5 | `anthropic.claude-opus-5` | 
| Claude Soneto 5 | `anthropic.claude-sonnet-5` | 
| Claude Mythos 5 | `anthropic.claude-mythos-5` | 
| Fábula de Claude 5 | `anthropic.claude-fable-5` | 
| Claude Opus4.7 | `anthropic.claude-opus-4-7` | 
| Vista previa de Claude Mythos | `anthropic.claude-mythos-preview` | 
| Claude Opus4.6 | `anthropic.claude-opus-4-6-v1` | 
| Claude Sonnet 4.6 | `anthropic.claude-sonnet-4-6` | 

**nota**  
Claude Fable 5.1, Claude Mythos 5.1, Claude Mythos 5, Claude Fable 5 y Claude Mythos Preview solo admiten el pensamiento adaptativo. * * El pensamiento extendido manual (`thinking.type: "enabled"`con`budget_tokens`) y el pensamiento discapacitado (`thinking.type: "disabled"`) no son compatibles con estos modelos y arrojan un error 400. `thinking.type: "adaptive"``output_config.effort`Utilícelo con para controlar la conducta mental.  
Claude OpusLa versión 4.7 apoya el pensamiento adaptativo y discapacitado. Para dejar de pensar, usa`thinking.type: "disabled"`. No se admite el pensamiento extendido manual (`thinking.type: "enabled"`con`budget_tokens`) y generará un error 400.  
`thinking.type: "enabled"`y `budget_tokens` están en desuso en las versiones Claude Opus 4.6 y Claude Sonnet 4.6 y se eliminarán en una futura versión del modelo. En su lugar, `thinking.type: "adaptive"` utilícelo con el parámetro de esfuerzo.  
Los modelos más antiguos (Claude Opus4.5Claude Sonnet 4.5, etc.) no admiten el pensamiento adaptativo y lo requieren `thinking.type: "enabled"``budget_tokens`.

**importante**  
**El pensamiento adaptativo está activado por defecto en Claude Sonnet 5 y Claude Opus 5. ** Una solicitud que omite el `thinking` campo se ejecuta con el pensamiento adaptativo. Se trata de una diferencia con respecto a Claude Sonnet 4.6, en la que la misma solicitud se ejecutaba sin pensarlo, por lo que una aplicación migrada desde Claude Sonnet 4.6 sin cambios generará resultados de pensamiento (y se facturará a los tokens de pensamiento como si se tratara de tokens de salida), aunque el cuerpo de la solicitud no cambiara.  
Para dejar de pensar por completo en estos modelos, apúntelos de forma explícita. `"thinking": {"type": "disabled"}` Omitir `thinking` este campo no desvía el pensamiento, sino que selecciona el pensamiento adaptativo. Un entorno de cliente que exprese «no pensar» como un presupuesto simbólico de pensamiento reducido o nulo tampoco lo desanima: `thinking.type: "enabled"` con no `budget_tokens` es compatible con Claude Sonnet 5 y devuelve un. `ValidationException` Solo el `disabled` tipo explícito desactiva el pensamiento.  
Porque `max_tokens` es un límite estricto en cuanto a la producción total (pensamiento más texto de respuesta), revísalo `max_tokens` para las cargas de trabajo que antes se ejecutaban sin pensar. Si utilizabas el pensamiento discapacitado en el Claude Sonnet 4.6, considera la posibilidad de utilizar el pensamiento adaptativo con un `output_config.effort` nivel inferior al del Claude Sonnet 5 en lugar de desactivarlo.

## Cómo funciona el pensamiento adaptativo
<a name="claude-messages-adaptive-thinking-how-it-works"></a>

En el modo adaptativo, Claude evalúa la complejidad de cada solicitud y decide si hay que pensar en ello y en qué medida. En el nivel de esfuerzo predeterminado (`high`), casi siempre Claude pensará. En niveles de esfuerzo más bajos, Claude puede dejar de pensar en problemas más simples.

El pensamiento adaptativo también posibilita automáticamente[Pensamiento intercalado (beta)](claude-messages-extended-thinking.md#claude-messages-extended-thinking-tool-use-interleaved). Esto significa que Claude puede pensar entre llamadas de herramientas, lo que lo hace especialmente efectivo para los flujos de trabajo de las agencias.

`thinking.type`Configúralo como `"adaptive"` en tu solicitud de API:

------
#### [ CLI ]

```
aws bedrock-runtime invoke-model \
--model-id "us.anthropic.claude-opus-4-6-v1" \
--body '{
"anthropic_version": "bedrock-2023-05-31",
"max_tokens": 16000,
"thinking": {
"type": "adaptive"
},
"messages": [
{
"role": "user",
"content": "Three players A, B, C play a game. Each has a jar with 100 balls numbered 1-100. Simultaneously, each draws one ball. A beats B if As number > Bs number (mod 100, treating 100 as 0 for comparison). Similarly for B vs C and C vs A. The overall winner is determined by majority of pairwise wins (ties broken randomly). Is there a mixed strategy Nash equilibrium where each player draws uniformly? If not, characterize the equilibrium."
}
]
}' \
--cli-binary-format raw-in-base64-out \
output.json && cat output.json | jq '.content[] | {type, thinking: .thinking[0:200], text}'
```

------
#### [ Python ]

```
import boto3
import json

bedrock_runtime = boto3.client(
    service_name='bedrock-runtime',
    region_name='us-east-2'
)

response = bedrock_runtime.invoke_model(
    modelId="us.anthropic.claude-opus-4-6-v1",
    body=json.dumps({
        "anthropic_version": "bedrock-2023-05-31",
        "max_tokens": 16000,
        "thinking": {
            "type": "adaptive"
        },
        "messages": [{
            "role": "user",
            "content": "Explain why the sum of two even numbers is always even."
        }]
    })
)

response_body = json.loads(response["body"].read())

for block in response_body["content"]:
    if block["type"] == "thinking":
        print(f"\nThinking: {block['thinking']}")
    elif block["type"] == "text":
        print(f"\nResponse: {block['text']}")
```

------
#### [ TypeScript ]

```
import { BedrockRuntimeClient, InvokeModelCommand } from "@aws-sdk/client-bedrock-runtime";

async function main() {
    const client = new BedrockRuntimeClient({});

    const command = new InvokeModelCommand({
        modelId: "us.anthropic.claude-opus-4-6-v1",
        body: JSON.stringify({
            anthropic_version: "bedrock-2023-05-31",
            max_tokens: 16000,
            thinking: {
                type: "adaptive"
            },
            messages: [{
                role: "user",
                content: "Explain why the sum of two even numbers is always even."
            }]
        })
    });

    const response = await client.send(command);
    const responseBody = JSON.parse(new TextDecoder().decode(response.body));

    for (const block of responseBody.content) {
        if (block.type === "thinking") {
            console.log(`\nThinking: ${block.thinking}`);
        } else if (block.type === "text") {
            console.log(`\nResponse: ${block.text}`);
        }
    }
}

main().catch(console.error);
```

------

## Pensamiento adaptativo con el parámetro de esfuerzo
<a name="claude-messages-adaptive-thinking-effort"></a>

Puedes combinar el pensamiento adaptativo con el parámetro de esfuerzo para determinar cuánto Claude se piensa. El nivel de esfuerzo actúa como una guía básica para Claude la asignación del pensamiento:


| Nivel de esfuerzo | Conducta de pensamiento | 
| --- | --- | 
| max | Claudesiempre piensa sin restricciones en la profundidad del pensamiento. Claude Opus Soporte para la versión 4.6, Claude Sonnet 4.6 y Claude Opus 5. max Las solicitudes que se utilizan max en modelos no compatibles devuelven un error. | 
| xhigh | Claudesiempre piensa con gran profundidad. Solo Claude Opus 5 y Claude Opus 4.6. | 
| high (predeterminado) | Claudesiempre piensa. Proporciona un razonamiento profundo sobre tareas complejas. | 
| medium | Claudeutiliza un pensamiento moderado. Puede dejar de pensar en consultas muy simples. | 
| low | Claudeminimiza el pensamiento. Deja de pensar para realizar tareas sencillas en las que la velocidad es lo más importante. | 

**importante**  
El `effort` parámetro debe colocarse dentro de un `output_config` objeto independiente en el cuerpo de la solicitud, no dentro del `thinking` objeto. `effort`Colocarlo dentro `thinking` dará como resultado un`ValidationException`.

**importante**  
**Límite de esfuerzo cuando no se puede pensar (Claude Opus 5): ** Claude Opus 5 apoya`"thinking": {"type": "disabled"}`, pero cuando no se puede pensar, `output_config.effort` se limita a. `high` Las solicitudes `xhigh` o el `max` esfuerzo combinado con una discapacidad mental devolverán un. `invalid_request_error` Este límite también se aplica al esfuerzo por turno establecido a través de un mensaje del sistema a mitad de una conversación. Para usarlo `xhigh` o `max` esforzarse, habilita el pensamiento adaptativo (opción predeterminada) u omite el `thinking` parámetro por completo.

El siguiente ejemplo muestra cómo establecer el nivel de esfuerzo al usar la InvokeModel API:

```
{
    "anthropic_version": "bedrock-2023-05-31",
    "max_tokens": 16000,
    "thinking": {
        "type": "adaptive"
    },
    "output_config": {
        "effort": "high"
    },
    "messages": [{
        "role": "user",
        "content": "Your prompt here"
    }]
}
```

## Uso del pensamiento adaptativo con la API de Converse
<a name="claude-messages-adaptive-thinking-converse"></a>

Cuando utilices la API de [ Converse](conversation-inference.md), introduce los `effort` parámetros `thinking` y. `additionalModelRequestFields` El siguiente ejemplo muestra el pensamiento adaptativo con el nivel de esfuerzo predeterminado:

```
import boto3, json

bedrock_runtime = boto3.client(service_name='bedrock-runtime', region_name='us-east-2')

response = bedrock_runtime.converse(
    modelId="us.anthropic.claude-opus-4-6-v1",
    messages=[{
        "role": "user",
        "content": [{"text": "Explain why the sum of two even numbers is always even."}]
    }],
    additionalModelRequestFields={
        "thinking": {
            "type": "adaptive"
        }
    }
)

print(json.dumps(response["output"], indent=2, default=str))
```

Para especificar un nivel de esfuerzo, añada el `effort` campo dentro de un `output_config` objeto independiente en`additionalModelRequestFields`:

```
response = bedrock_runtime.converse(
    modelId="us.anthropic.claude-opus-4-6-v1",
    messages=[{
        "role": "user",
        "content": [{"text": "What is 2 + 2?"}]
    }],
    additionalModelRequestFields={
        "thinking": {
            "type": "adaptive"
        },
        "output_config": {
            "effort": "low"
        }
    }
)
```

## Establecer el esfuerzo por turno (beta)
<a name="claude-messages-adaptive-thinking-per-turn-effort"></a>

Esta función es un servicio beta, tal y como se define en las condiciones de servicio de AWS. En Claude Fable 5.1 y Claude Mythos 5.1, puede cambiar el nivel de esfuerzo a la mitad de una conversación en lugar de configurarlo una vez para toda la solicitud. Inserte un mensaje del sistema que contenga un `output_config.effort` valor en cualquier punto de la matriz. `messages` El nuevo nivel de esfuerzo se aplica a los turnos siguientes. La solicitud devuelve 200 sin cambiar la forma de la respuesta.

Para usar el esfuerzo por turno, incluye uno de los siguientes `anthropic_beta` valores:`mid-conversation-output-config-2026-07-01`, `mid-conversation-effort-2026-08-01``per-turn-control-2026-07-01`, o`per-message-effort-2026-07-01`.

```
{
    "anthropic_version": "bedrock-2023-05-31",
    "anthropic_beta": ["mid-conversation-effort-2026-08-01"],
    "max_tokens": 16000,
    "output_config": {"effort": "high"},
    "messages": [
        {"role": "user", "content": "First question"},
        {"role": "assistant", "content": "First answer"},
        {"role": "system", "content": [], "output_config": {"effort": "low"}},
        {"role": "user", "content": "A simpler follow-up question"}
    ]
}
```

**nota**  
Sin uno de los valores beta listados (o en un modelo que no admite el esfuerzo por turno), se devuelve una solicitud que esté incluida `output_config` en un mensaje del sistema. `400 messages.N.output_config: Extra inputs are not permitted` No `task_budget` se admite el método por turno y, además, arroja un valor de 400.

## Almacenamiento en caché de peticiones
<a name="claude-messages-adaptive-thinking-prompt-caching"></a>

Las solicitudes consecutivas que utilizan el `adaptive` pensamiento preservan rápidamente los puntos de interrupción de la caché. Sin embargo, al cambiar entre los modos de `disabled` pensamiento `adaptive` y`enabled`/se rompen los puntos de interrupción de la caché de los mensajes. Las instrucciones del sistema y las definiciones de las herramientas permanecen en caché independientemente de los cambios de modo.

## Ajustar el comportamiento del pensamiento
<a name="claude-messages-adaptive-thinking-tuning"></a>

Si Claude piensas con más o menos frecuencia de la que te gustaría, puedes añadir instrucciones al mensaje del sistema:

```
Extended thinking adds latency and should only be used when it
will meaningfully improve answer quality — typically for problems
that require multi-step reasoning. When in doubt, respond directly.
```

**aviso**  
ClaudePensar con menos frecuencia puede reducir la calidad de las tareas que se benefician del razonamiento. Mida el impacto en sus cargas de trabajo específicas antes de implementar un ajuste de producción basado en las solicitudes. Considere primero la posibilidad de realizar pruebas con niveles de esfuerzo más bajos.

## Resumen del texto del conector (beta)
<a name="claude-messages-adaptive-thinking-connector-summarization"></a>

En Claude Fable 5, el texto que el modelo emite entre las llamadas a las herramientas (a veces denominado «texto del conector», por ejemplo, «Déjame comprobar ese archivo a continuación...») se resume en el servidor y se devuelve como un bloque de pensamiento en lugar de como un bloque de contenido de texto sin formato. El bloque de pensamiento usa la misma forma que cualquier otro bloque de pensamiento (texto vacío con una firma en la pantalla predeterminada). `omitted`

**Impacto en los clientes: **
+ **Forma de respuesta: ** Tool-use las respuestas de Claude Fable 5 pueden contener bloques de pensamiento adicionales, mientras que los modelos anteriores emitían texto plano entre `tool_use` bloques. No hay ningún tipo de bloque de contenido nuevo. Las respuestas finales del asistente (una vez que se haya completado el uso de la herramienta) no se ven afectadas y permanecen en texto sin formato.
+ **Multi-turn Manejo: ** Transfiera estos bloques de pensamiento sin cambios en las conversaciones de varios turnos, lo mismo que se hace con el pensamiento protegido (se valida la firma en el momento de la transferencia; se borra silenciosamente si se envía a un modelo diferente).
+ **Alcance: el resumen de los ** conectores solo se aplica cuando `tool_result` ya existe uno en la conversación. La narración antes de la primera llamada a una herramienta en una conversación nueva sigue siendo texto sin formato. Los segmentos de texto cortos pueden pasar a texto plano sin resumirse.

Esta función está habilitada en el lado del servidor para Claude Fable 5. El cliente no acepta ni se excluye.