Este documento explica cómo usar la API para calcular la cantidad de tokens de las llamadas de servicio a AI Search Open Platform.
Cálculo de tokens
En un modelo de lenguaje, un token es la unidad más pequeña de texto que un modelo puede procesar. Un token puede ser una palabra, una parte de una palabra, un signo de puntuación o un solo carácter. Diferentes modelos usan métodos de tokenización distintos, por lo que la cantidad de caracteres no siempre corresponde a la cantidad de tokens. Por ejemplo, en AI Search Open Platform:
"Apple"corresponde a 1 token."test case"corresponde a 3 tokensLa palabra
"OpenSearch"corresponde a dos tokens.
AI Search Open Platform mide y factura sus servicios de modelos de lenguaje de gran tamaño según la cantidad de tokens de entrada y de salida. Utilice la API de cálculo de tokens para estimar el costo potencial de una llamada de servicio.
Modelos compatibles
Puede calcular la cantidad de tokens de los modelos que se muestran a continuación.
|
Clasificación de modelos |
ID de servicio (service_id) |
|
Modelo SFT de OpenSearch |
ops-qwen-turbo |
|
Modelo Qwen |
qwen-turbo qwen-plus qwen-max |
Referencia de la API
Requisitos previos
-
Obtenga las credenciales de autenticación
AI Search Open Platform requiere una clave de API para la autenticación. Para obtener instrucciones, consulte Get an API key.
-
Obtenga el endpoint del servicio
Llame al servicio a través de la red pública o de una VPC. Para más detalles, consulte Get the service endpoint.
Notas generales
El cuerpo de la solicitud no puede superar los 8 MB.
Método de solicitud
POST
URL
{host}/v3/openapi/workspaces/{workspace_name}/text-generation/{service_id}/tokenizer
-
host: El endpoint del servicio. Llame al servicio de API a través de la red pública o mediante una VPC. Para obtener más información, consulte Obtain a service endpoint.
En la página API Keys, seleccione un espacio de trabajo de destino en la parte superior, como default workspace. En la sección access domain, encontrará public API domain y private API domain.
workspace_name: Nombre del espacio de trabajo, como default.
service_id: ID del servicio integrado, por ejemplo, ops-qwen-turbo.
Parámetros de solicitud
Parámetros de encabezado
Autenticación con clave de API
|
Parámetro |
Tipo |
Obligatorio |
Descripción |
Ejemplo |
|
Content-Type |
String |
Sí |
El formato del cuerpo de la solicitud. Establezca el valor en |
application/json |
|
Authorization |
String |
Sí |
Su clave de API. |
Bearer OS-d1**2a |
Parámetros del cuerpo
|
messages |
List |
Sí |
El historial de conversación. Cada elemento de la lista es un objeto con los campos
|
[{"role": "user", "content": "Test token calculation API"}] |
Parámetros de respuesta
|
Parámetro |
Tipo |
Descripción |
Ejemplo |
|
request_id |
String |
Un identificador único de la solicitud de API. |
310032DA-****-46CC-94D1-0FE789BAE3A7 |
|
latency |
Float/Int |
Latencia de la solicitud en milisegundos (ms). |
10 |
|
usage |
Object |
La información de medición de la llamada. |
"usage":{"input_tokens":4} |
|
usage.input_tokens |
Integer |
La cantidad de tokens del texto de entrada. |
4 |
|
result.token_ids |
List<Integer> |
Los ID de los tokens correspondientes al texto de entrada. |
[81705,5839,100768,107736] |
|
result.tokens |
List<String> |
Los tokens correspondientes al texto de entrada. |
["Test","token","calculation","API"] |
Ejemplo de solicitud de cURL
curl -XPOST -H "Content-Type:application/json" \
"http://****-shanghai.opensearch.aliyuncs.com/v3/openapi/workspaces/default/text-generation/ops-qwen-turbo/tokenizer" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"messages":[
{
"role":"user",
"content":"Test token calculation API"
}
]}'
Ejemplos de respuesta
Ejemplo de respuesta correcta
{
"request_id":"9d197d47-d6b5-****-964e-12b893c47a8b",
"latency":11,
"usage":{
"input_tokens":4
},
"result":{
"token_ids":[81705,5839,100768,107736],
"tokens":["Test","token","calculation","API"]
}
}
Ejemplo de respuesta de error
Si se produce un error, la respuesta incluye los campos code y message para explicar el error.
{
"request_id":"388476DB-C4D4-****-A7A6-7594F92885FA",
"latency":0,
"code":"InvalidParameter",
"message":"Messages must be end with role[user]."
}
Códigos de estado
Para más información, consulte status code description de AI Search Open Platform.