Saltar al contenido principal
Adaptación profunda de la interfaz compatible con OpenAI de AIHubMix para el razonamiento, la caché y las funciones beta de Claude
Hemos mejorado la interfaz compatible con OpenAI con optimizaciones más profundas específicamente para los modelos de la serie Claude. Ahora puedes controlar el razonamiento y el caching con mayor precisión y comodidad, especialmente el razonamiento intercalado (interleaved thinking) en conversaciones multiturno, que hemos hecho más fácil de usar y permite una integración sin fricciones sin parámetros adicionales. También admite la activación de las funciones beta ofrecidas por Anthropic.

1. Razonamiento del modelo (Extended Thinking)

1.1 Ventajas del razonamiento intercalado

Cuando el razonamiento intercalado no está habilitado, el modelo realiza el razonamiento solo una vez al inicio del turno del asistente; las respuestas posteriores se generan directamente tras recibir los resultados de las herramientas, sin producir nuevos bloques de razonamiento:
Cuando el razonamiento intercalado está habilitado, el modelo inserta un nuevo bloque de razonamiento cada vez que recibe el resultado de una herramienta, formando una cadena de razonamiento:
Esto permite al modelo:
  • Realizar razonamiento secundario basado en los resultados de la herramienta, en lugar de concatenar simplemente las salidas.
  • Encadenar el razonamiento entre múltiples llamadas a herramientas, donde cada decisión se basa en el análisis del paso anterior.
Referencia: Anthropic Interleaved Thinking

1.2 Habilitar el razonamiento

Puedes habilitar el razonamiento de cuatro formas; elige cualquiera de ellas:
Prioridad (cuando se usan varios métodos): reasoning_effort > reasoning.max_tokens > reasoning.effort > sufijo -think
Valores posibles para effort: minimal / low / medium / high / xhigh

1.3 Retorno del razonamiento

El mensaje de respuesta incluirá dos nuevos campos:
  • reasoning_content: Contenido del razonamiento (cadena), para facilitar su visualización.
  • reasoning_details: Información estructurada completa sobre el razonamiento, que debe devolverse tal cual en conversaciones multiturno; la estructura interna puede diferir entre proveedores.
Ejemplo sin streaming (omitiendo campos no relacionados):
En las respuestas en streaming, el contenido del razonamiento se enviará por fragmentos mediante delta.reasoning_content y delta.reasoning_details. Para la lógica completa de concatenación en streaming, consulta el ejemplo completo a continuación.

1.4 Conservar el razonamiento en conversaciones multiturno (El razonamiento intercalado está integrado, no se necesitan parámetros adicionales)

Para permitir que el modelo continúe sus capacidades de razonamiento en conversaciones multiturno, simplemente coloca el reasoning_details previamente devuelto tal cual en el mensaje del asistente de la siguiente ronda:
AihubMix habilitará automáticamente el razonamiento intercalado cuando detecte información histórica de razonamiento en la solicitud, permitiendo que el modelo continúe el razonamiento profundo tras recibir los resultados de las llamadas a herramientas sin necesidad de parámetros adicionales.

1.5 Ejemplo completo

Los siguientes dos ejemplos muestran el proceso completo de Tool Call multiturno + razonamiento intercalado: consulta del usuario → el modelo piensa y llama a una herramienta → se inyectan los resultados de la herramienta (preservando reasoning_details) → el razonamiento intercalado del modelo da la respuesta final. Sin streaming · Razonamiento intercalado
Streaming · Razonamiento intercalado

1.6 Reglas de mapeo de la intensidad del razonamiento

Modo Effort:
  • Opus 4.6 / Sonnet 4.6 y superiores: se mapea al nivel de esfuerzo nativo de Adaptive Thinking de Anthropic.
  • Otros modelos: se calcula usando la fórmula para budget_tokens:
Mapeo del Adaptive Thinking Effort: Modo max_tokens: Se asigna directamente como el budget_tokens de Anthropic. Sufijo -think: Opus/Sonnet 4.6+ usa el razonamiento adaptativo (effort=medium); otros modelos establecen budget_tokens = min(10240, max_tokens - 1), con un max_tokens predeterminado de 4096.

2. Caché de prompts (Prompt Caching)

Puedes utilizar Prompt Caching al realizar solicitudes al modelo Claude a través de la interfaz Chat. Estableciendo puntos de corte cache_control en los mensajes, los bloques grandes de texto (como tarjetas de rol, datos de RAG, capítulos de libros, etc.) pueden almacenarse en caché para su reutilización, lo que permite que las solicitudes posteriores acierten directamente en la caché y reduzcan significativamente los costos.
Documentación oficial de Claude: Prompt Caching

2.1 Costos de caché

2.2 Modelos admitidos y longitud mínima de caché

Límite de cantidad de puntos de corte: Un máximo de 4 puntos de corte cache_control por solicitud.

2.3 TTL de la caché

Los costos de escritura para el TTL de 1 hora son mayores, pero pueden ahorrar gastos totales al reducir las reescrituras en sesiones extensas. Todos los modelos de Claude 4.5 y posteriores, de todos los proveedores (incluidos Anthropic, Amazon Bedrock y Google Vertex AI), admiten el TTL de 1 hora.

2.4 Uso

Puedes establecer puntos de corte de caché usando el campo cache_control en system, user (incluidas imágenes) y tools. Los siguientes ejemplos solo muestran la estructura clave, omitiendo grandes bloques de texto. Caché de mensajes del sistema (TTL predeterminado de 5 minutos):
Caché de mensajes del usuario (TTL de 1 hora):
Caché de mensajes con imagen:
Caché de la definición de herramientas: cache_control se coloca en el nivel superior del objeto de la herramienta (junto a type y function):

2.5 Consultar el estado de la caché

El campo usage de la respuesta devolverá claude_cache_tokens_details, que registra información detallada de la caché: Primera solicitud (creando la caché):
Solicitudes posteriores (acierto de caché):

3. Cabecera de solicitud para anthropic-beta

Puedes habilitar las funciones beta del modelo Claude mediante la cabecera HTTP anthropic-beta, que AihubMix reenviará a la API de Anthropic.

Uso

Añade anthropic-beta a la cabecera de la solicitud, con el valor del identificador de la función beta correspondiente:
Para identificadores beta específicos disponibles, consulta la documentación de la API de Anthropic.

Última actualización: 2026-06-01