GET /v1/limits informa el panorama completo en una sola llamada.
Sus propias claves no tienen un límite de gasto
No establecemos un límite de solicitudes ni un tope mensual. Usted no tiene un saldo que agotar. Consulte precios y facturación. Se aplica un límite. Su organización ejecuta un número fijo de flex races a la vez. Superado ese número, ejecutamos la solicitud en el nivel estándar. Usted pierde el descuento, no la respuesta. El informe llama a ese númeroown_keys.flex_race_slots.
Qué pueden agotar las claves gestionadas (Managed Keys)
Una revisión de riesgo puede pausar las solicitudes gestionadas además de esas cuatro. Devuelve
account_under_review. Sus propias rutas de clave siguen funcionando.
Cuatro límites más cubren a cada organización. Tres cuentan las solicitudes por minuto de una organización, de una clave y de una dirección IP. El cuarto cuenta los intentos de autenticación fallidos desde una dirección IP. También rechazamos un cuerpo de más de 50,000,000 bytes como request_too_large.
El informe nombra cada límite por minuto con su ventana y su alcance. Omite el número, porque Cloudflare cuenta cada uno en cada ubicación donde opera y un solo número no sería un presupuesto contra el cual planificar. En su lugar, espere los segundos indicados en Retry-After.
Dos encabezados de respuesta informan su gasto
Una respuesta de claves propias los incluye una vez que sus rutas se resuelven, y una respuesta gestionada los incluye desde la retención del saldo. Tres respuestas no tienen ninguno de los encabezados: una que rechazamos antes, el catálogo de modelos y una solicitud gestionada cuyo saldo no pudimos leer. Omitimos los encabezados en lugar de adivinar.
Leemos ambos al admitir esta solicitud. El número cubre lo que le quedaba antes de que esta solicitud liquidara su propio costo.
Un número negativo significa que rechazamos cada solicitud gestionada. Añadir dinero repara un saldo negativo. Un remanente diario negativo se recupera a la próxima medianoche UTC o con un límite elevado, nunca con una recarga.
Lea estos encabezados en el tráfico que ya envía. Consultar el endpoint antes de cada solicitud cuesta un viaje de ida y vuelta y no le dice más de lo que ya hizo el encabezado.
El endpoint de límites
GET /v1/limits toma su clave de FlexInference. Informa los límites bajo los cuales opera su organización. Lee los registros que admiten sus solicitudes, por lo que nunca reclama espacio que rechazaríamos. Nunca almacenamos en caché la respuesta.
Los últimos tres campos explican por qué su número de concurrencia y su límite diario se leen como lo hacen. Una organización exenta no tiene un límite que explicar, por lo que los tres se leen como
null.
Un saldo en pausa informa la pausa en lugar de un número. Ninguna cifra positiva puede interpretarse entonces como permiso para enviar.
Estos números se mantienen en as_of y no prometen nada sobre su próxima solicitud. Otra solicitud los mueve, al igual que una liquidación, una recarga o un reembolso.
Una clave faltante o incorrecta devuelve 401 con invalid_api_key. Cuando no podemos leer uno de estos registros, el endpoint devuelve 503 con limits_unavailable. Se niega a entregarle una cifra en caché, lo que podría reclamar espacio que su próxima solicitud no obtendría. Las solicitudes siguen funcionando de cualquier manera.
Costo dentro de un stream
Una respuesta que no transmitió (stream) informa su costo dos veces, en el encabezadox-flexinference-cost y en el bloque usage.cost. Una respuesta transmitida no puede usar el encabezado, porque enviamos los encabezados antes de que exista la respuesta y no conocemos el costo en ese momento.
Envíe include_cost: true para mover el costo dentro del stream.
usage.routing se encuentra junto a él y nombra la ruta que ejecutó la solicitud.
/v1/chat/completions hace que el marco de uso sea opcional en OpenAI. Envíe "stream_options": {"include_usage": true} también. Sin él, el costo no tiene un marco donde ir.
Una solicitud gestionada informa lo que el proveedor nos cobró. Una solicitud de claves propias informa el precio de lista del proveedor en el nivel que la ejecutó. Una solicitud que no podemos cotizar no informa ningún cost en absoluto. Lea un bloque faltante como nada que informar, no como cero.
Dos encabezados de enrutamiento vienen en cada respuesta de cualquier manera. Son x-flexinference-served-provider y x-flexinference-routing-reason. Un llamador de streaming que omite include_cost aún ve qué ruta ejecutó la solicitud y por qué. Consulte lectura del resultado.
include_cost nunca llega al proveedor. Lo eliminamos del cuerpo antes de reenviar la solicitud.