Anthropic: Claude Opus 4.7
Claude Opus 4.7 está diseñado para ingeniería compleja y análisis de documentos e imágenes con detalles pequeños. Presta especial atención a seguir las instrucciones con precisión y comprobar el resultado.
Sobre el modelo
Esta descripción cubre las capacidades del modelo. Las entradas, salidas y opciones disponibles en Ailoot se indican a continuación para el método seleccionado.
Ingeniería cuidadosa
Anthropic desarrolla Claude Opus 4.7 para tareas de desarrollo complejas y prolongadas. Su presentación se centra en realizar el trabajo de forma secuencial, atender cuidadosamente las instrucciones y buscar cómo comprobar el propio resultado antes del mensaje final. Es adecuado para investigar problemas difíciles de código y preparar materiales profesionales que requieren una solución técnica y una presentación clara.
Opus 4.7 sigue las formulaciones literalmente. Conviene definir la tarea con límites explícitos: qué partes deben cambiarse, qué hay que comprobar y cuál debe ser el resultado. Si una condición se aplica a todo el trabajo, debe indicarse así. El fabricante también destaca notas en memoria basada en archivos para trabajos prolongados, pero leerlas y guardarlas requiere herramientas de la aplicación.
Ver diagramas densos y capturas de interfaces
El modelo recibe texto e imágenes y devuelve texto. La entrada visual admite hasta 2576 píxeles en el lado largo, aproximadamente 3,75 megapíxeles. Es útil para capturas de pantalla densas, extraer información de diagramas complejos y trabajar con referencias visuales detalladas.
Los formatos habituales de entrada visual del fabricante son JPEG/PNG/GIF/WebP, con el primer fotograma de una animación. En el análisis nativo, el lado largo es de 2576 píxeles y se utilizan 4784 tokens visuales; las imágenes grandes se reducen antes del análisis. La compatibilidad con archivos y parámetros depende del método de la aplicación.
La resolución alta ayuda a conservar detalles, pero no hace infalible la comprensión visual. La salida puede ser una explicación, una estructura de datos o código; crear o editar la propia imagen no es una capacidad de salida del modelo. Manejar una interfaz requiere herramientas que muestren la pantalla al modelo y ejecuten acciones en la aplicación.
Profundidad y volumen de la tarea
El contexto es de 1 millón de tokens y, en el modo normal, la respuesta máxima es de 128 mil tokens. Se admite razonamiento adaptativo; esta versión no ofrece extended thinking manual con budget_tokens. El nivel estándar de effort es high; también están disponibles low, medium, xhigh y max. xhigh ofrece un nivel intermedio entre high y max para trabajos prolongados de ingeniería y agentes.
Con niveles bajos de esfuerzo, el modelo limita especialmente el trabajo a lo solicitado. Para investigaciones complejas, el fabricante recomienda reservar espacio suficiente para razonamiento y respuesta. Esta versión actualiza la tokenización, por lo que un mismo volumen de texto no siempre tiene la longitud en tokens habitual de versiones anteriores.
Condiciones de trabajo
El límite fiable de sus conocimientos incorporados es enero de 2026. La investigación actualizada, el trabajo con documentos y la ejecución de código utilizan materiales y herramientas de la aplicación. Opus 4.7 tiene mecanismos de protección que pueden bloquear solicitudes de ciberseguridad prohibidas o de alto riesgo. Su atención a la comprobación es útil, pero los cambios y conclusiones finales siguen necesitando verificarse en el entorno concreto.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions claude-opus-4-7-thinking
claude-opus-4-7-thinkingPrimeros pasos
Claude Opus 4.7 está diseñado para ingeniería compleja y análisis de documentos e imágenes con detalles pequeños. Presta especial atención a seguir las instrucciones con precisión y comprobar el resultado.
- Entradas aceptadas
- Texto
- Resultados
- Texto
Disponible en Ailoot · entradas y métodos
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Tipos de entrada
text- Tipos de salida
text- Formato de salida
- json o SSE
| Campo | Tipo | Requisito | Valores y límites | Predeterminado |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObligatorio | Valores y límites claude-opus-4-7-thinking | Predeterminado— |
Campomessages | Tipomessage[] | RequisitoObligatorio | Valores y límites Número mínimo de elementos: 1 | Predeterminado— |
Campomessages[].role | Tipostring | RequisitoObligatorio | Valores y límites Depende del modelo | Predeterminado— |
Campomessages[].content | Tipostring | RequisitoOpcional | Valores y límites Se aplica cuando: Conversación textual | Predeterminado— |
Campostream | Tipoboolean | RequisitoOpcional | Valores y límites | Predeterminadofalse |
Combinaciones de materiales de entrada
Texto · Texto UTF8
messages[].content
Parámetros del método y ciclo de vida
| Parámetro | Contrato |
|---|---|
Parámetrocontent_type | Contratoapplication/json |
Parámetrorequired | Contratomodel, messages |
Parámetromaterial_types | Contratotext |
Parámetromessages | Contratomatriz de mensajes con estructura role/content |
Parámetrofile_material | Contratodocumento real en UTF-8 insertado como texto literal; no se deduce ningún ID de archivo |
Parámetrooptional_controls | Contratostream |
Parámetrocontrol_scope | ContratoConversación textual; stream es un booleano y su valor predeterminado es false. |
Parámetrooutput_modalities | Contratotext |
Parámetrohosted_operations | Contratofalse |
Parámetromultimodal_input_binding | Contratonull |
Alias de método: /chat/completions
Ciclo de vida: synchronous_or_streamed
Envía el ID exacto del modelo junto con messages.
La longitud del contexto no es un límite máximo de salida.
Un archivo de texto puede aportar texto literal; las entradas de imagen, audio u objetos de archivo requieren una vinculación exacta.
Planes
Las referencias tarifarias no añaden opciones a la solicitud. Los parámetros admitidos se indican en el método seleccionado.
- Modo rápido
- Sin especificar Cuando se selecciona el modo rápido
- Modo flex
- Sin especificar Cuando se selecciona el modo flex
- Esfuerzo máximo de razonamiento
- Sin especificar Cuando el esfuerzo máximo de razonamiento utiliza el ajuste predeterminado (default)
Tarifas de Ailoot
Precios por configuración
| Configuración | Tabla de tarifas | Cargo |
|---|---|---|
| ConfiguraciónTarifas base por token | Tabla de tarifasTarifa base | Cargo Entrada · Tokens de entrada $0.01 / 1K tokens Salida · Tokens de salida $0.05 / 1K tokens Entrada · Lectura de caché $0.001 / 1K tokens Entrada · Escritura en caché $0.0125 / 1K tokens Entrada · Escritura en caché, 1 hora — / 1K tokens |
Ailoot reserva un importe estimado antes de la solicitud. Tras obtener el resultado, liquida el cargo definitivo según el uso medido. En las respuestas en flujo, la liquidación usa el registro de uso final. Cómo funcionan la reserva y la liquidación →
Solicitudes de ejemplo
Ailoot Ultra · OpenAI Chat
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"claude-opus-4-7-thinking","messages":[{"role":"user","content":"hello"}],"stream":false}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os
if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model="claude-opus-4-7-thinking", messages=[{"role":"user","content":"hello"}], stream=False)
import base64, json
from pathlib import Path
def save_result(data, stem="result"):
# Keep every field, including usage, IDs, reasoning and tool requests.
Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
print(json.dumps(data, ensure_ascii=False, indent=2))
def save_blob(encoded, suffix, label):
raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
file = Path(stem + "-" + label + "." + ext)
file.write_bytes(raw)
print("Saved", file)
for index, block in enumerate(data.get("content") or []):
print("Content", index, json.dumps(block, ensure_ascii=False))
for choice in data.get("choices") or []:
print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
for index, item in enumerate(data.get("output") or []):
print("Output", index, json.dumps(item, ensure_ascii=False))
if item.get("type") == "image_generation_call" and item.get("result"):
save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
for ci, candidate in enumerate(data.get("candidates") or []):
for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
blob = part.get("inlineData") or part.get("inline_data")
if blob and blob.get("data"):
mime = blob.get("mimeType") or blob.get("mime_type")
suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))
save_result(result.to_dict(mode="json"))
Recibir y guardar resultados
Ailoot Ultra · OpenAI Chat
json o SSE
Conserva todos los resultados completados
Conserva todas las respuestas, archivos y partes de contenido completos recibidos.
Conserva cada alternativa y su contenido, llamadas de herramientas y razonamiento. En SSE, ensambla los fragmentos incrementales por índice de alternativa/herramienta y conserva el motivo final de terminación y el uso.
Si es necesario revisar la respuesta original
Conserva los ID de solicitud y respuesta y las cabeceras. No se proporciona una URL genérica para recuperar tareas de texto.
Campos de respuesta
| Campo | Tipo |
|---|---|
Campochoices[].index | Tipointeger |
Campochoices[].message.content | Tipostring|null |
Campochoices[].message.tool_calls | Tipotool_call[] |
Campochoices[].message.reasoning_content | Tipostring |
Campochoices[].message.reasoning_details | Tipoobject|array |
Campochoices[].finish_reason | Tipostring|null |
Campousage | Tipoobject |
Errores y siguientes pasos
| Respuesta | Condición | Siguiente paso |
|---|---|---|
Respuesta400 · invalid_request_error | CondiciónCampos obligatorios, representación del material o valor del parámetro no válidos | Siguiente pasoCorrige los campos indicados antes de una nueva solicitud de creación. |
Alias
Alias del modelo
Ailoot Ultra claude-opus-4-7-thinking
Alias de rutas de métodos
/chat/completions
ID de modelo relacionados
FAQ · Anthropic: Claude Opus 4.7
- ¿Qué entradas y resultados están disponibles?
POST /v1/chat/completions·claude-opus-4-7-thinking:text→text- ¿Qué campos utiliza la solicitud?
POST /v1/chat/completions·claude-opus-4-7-thinking:model,messages,stream- ¿Qué límites se aplican?
POST /v1/chat/completions·claude-opus-4-7-thinking:messages.min_items:1