Proceso de solicitud
Para usar la API de Claude Messages, primero puedes ir a la página de Claude Messages API y hacer clic en el botón “Acquire” para obtener las credenciales necesarias para la solicitud:
Si aún no has iniciado sesión o registrado, serás redirigido automáticamente a la página de inicio de sesión que te invita a registrarte e iniciar sesión. Después de registrarte e iniciar sesión, serás redirigido automáticamente a la página actual.
En la primera solicitud, se otorgará un crédito gratuito, lo que te permitirá usar esta API de forma gratuita.
Uso básico
La ruta de solicitud de la API de Claude Messages es/v1/messages, manteniendo la consistencia con la API oficial de Anthropic. Necesitamos proporcionar al menos tres parámetros obligatorios:
model: seleccionar el modelo de Claude a utilizar, comoclaude-opus-4-20250514,claude-sonnet-4-20250514, etc.messages: un array de mensajes de entrada, donde cada mensaje contienerole(rol) ycontent(contenido), siendorolecompatible conuseryassistant.max_tokens: número máximo de tokens de salida, utilizado para limitar la longitud de la respuesta única.
system: mensaje del sistema, utilizado para establecer el comportamiento y rol del modelo.temperature: aleatoriedad de la generación, entre 0 y 1, donde un valor mayor produce respuestas más dispersas.stream: si se utiliza respuesta en streaming, configurado comotruepara lograr un efecto de retorno palabra por palabra.stop_sequences: secuencias de parada personalizadas, el modelo dejará de generar al encontrar estos textos.top_p: parámetro de muestreo nuclear, que junto con la temperatura controla la aleatoriedad de la generación.top_k: muestreo solo de las K opciones con mayor probabilidad.tools: definición de herramientas, para permitir que el modelo llame a funciones externas.tool_choice: controla cómo el modelo utiliza las herramientas proporcionadas.
Ejemplo de cURL
Ejemplo de Python
id: identificador único del mensaje actual.type: siempre esmessage.role: siempre esassistant.content: array de contenido de respuesta, donde cada elemento contienetype(comotext) y el contenido correspondiente.model: nombre del modelo que procesó la solicitud.stop_reason: razón de la detención, los valores posibles incluyenend_turn(fin normal),max_tokens(alcanzó la longitud máxima),stop_sequence(encontró una secuencia de parada),tool_use(llamada a herramientas).stop_sequence: si se detuvo debido a una secuencia de parada personalizada, muestra el texto de la secuencia de parada coincidente.usage: estadísticas de uso de tokens, que incluyeninput_tokens(número de tokens de entrada) youtput_tokens(número de tokens de salida).
Mensaje del sistema
La API de Claude Messages admite la configuración de mensajes del sistema a través del camposystem, utilizado para definir el comportamiento, rol y contexto del modelo.
Ejemplo de Python
system, se puede controlar con precisión el rol y el comportamiento de Claude.
Respuesta en streaming
Esta interfaz también admite respuestas en streaming, configurando el parámetrostream como true para obtener un efecto de retorno paso a paso, ideal para implementar una visualización palabra por palabra en una página web.
Ejemplo de Python
event: y data:. Los tipos de eventos en streaming incluyen:
message_start: inicio del mensaje, que incluye la información básica del mensaje y el nombre del modelo.content_block_start: inicio del bloque de contenido.content_block_delta: actualización incremental del bloque de contenido, que incluye nuevos fragmentos de texto generados.content_block_stop: fin del bloque de contenido.message_delta: actualización incremental a nivel de mensaje, que incluyestop_reasony la información final deusage.message_stop: fin del mensaje.
content_block_delta que incluyen el contenido de texto generado paso a paso, y al concatenar todos los text_delta se puede obtener la respuesta completa.
Ejemplo de JavaScript
Diálogo de múltiples turnos
Si deseas integrar la función de diálogo de múltiples turnos, necesitas alternar los mensajes de los rolesuser y assistant en el array messages, incluyendo el historial de conversación anterior.
Ejemplo de Python
messages, Claude puede proporcionar respuestas precisas teniendo en cuenta el contexto.
Modelo de pensamiento profundo
Claude admite la función de Pensamiento Extendido, que permite al modelo realizar razonamientos internos antes de responder, mejorando la precisión en el manejo de problemas complejos. Para usar esta función, se debe pasar el parámetrothinking.
Ejemplo de Python
content contiene dos bloques de contenido:
type: "thinking": el proceso de pensamiento interno del modelo, mostrando los pasos de razonamiento.type: "text": el resultado final de la respuesta.
- Al usar
thinking,max_tokensdebe ser mayor quebudget_tokens, ya quebudget_tokenses el presupuesto de tokens asignado para el proceso de pensamiento. - Cuanto mayor sea
budget_tokens, mayor será el espacio para que el modelo realice un razonamiento más profundo, adecuado para manejar problemas complejos.
Modelo visual
Claude admite entradas multimodales, pudiendo procesar texto e imágenes simultáneamente. En la API de Messages, se puede utilizar la capacidad visual configurandocontent como un formato de array e incluyendo bloques de contenido de imagen.
Usando imágenes codificadas en Base64
Usando imágenes de URL
cURL 示例
image/jpeg, image/png, image/gif, image/webp.
Ejemplo de resultado de retorno:
Uso de herramientas (Tool Use)
La API de mensajes de Claude admite de forma nativa la función de llamada a herramientas, lo que permite al modelo invocar herramientas/funciones predefinidas cuando sea necesario.Ejemplo de Python
tool_use:
stop_reason es tool_use, lo que indica que el modelo necesita llamar a una herramienta. Al recibir este resultado, debe ejecutar la función de la herramienta y devolver el resultado en forma de tool_result al modelo:
Diferencias con la API de Chat Completion
Ace Data Cloud ofrece dos formatos de API de Claude, y las principales diferencias son las siguientes:| Característica | API de Mensajes (/v1/messages) | API de Chat Completion (/v1/chat/completions) |
|---|---|---|
| Formato | Formato nativo de Anthropic | Formato compatible con OpenAI |
| Prompt del sistema | Campo system independiente | Se pasa a través de messages en role: "system" |
| Estructura de respuesta | Array content (admite múltiples tipos) | Array choices (contiene message) |
| Formato de flujo | Eventos SSE (múltiples tipos de eventos) | Línea SSE data |
| Pensamiento profundo | Parámetro thinking nativo | Se activa mediante un nombre de modelo especial (como sufijo -thinking) |
| Llamada a herramientas | tools nativo + input_schema | Formato functions compatible con OpenAI |
| Estadísticas de tokens | input_tokens / output_tokens | prompt_tokens / completion_tokens |
Manejo de errores
Al llamar a la API, si se encuentra con un error, la API devolverá el código de error y la información correspondiente. Por ejemplo:400 token_mismatched: Solicitud incorrecta, posiblemente debido a parámetros faltantes o inválidos.400 api_not_implemented: Solicitud incorrecta, posiblemente debido a parámetros faltantes o inválidos.401 invalid_token: No autorizado, token de autorización inválido o faltante.429 too_many_requests: Demasiadas solicitudes, ha superado el límite de tasa.500 api_error: Error interno del servidor, algo salió mal en el servidor.

