Guía de configuración de la puerta de enlace de IA de Cloudflare: centralización de los servicios de llamadas a la API de IA
Tutoriales prácticos sobre IAActualizado hace 4 meses Círculo de intercambio de inteligencia artificial 1.3K 00
Con la popularidad de los Large Language Models (LLM) y diversos servicios de IA, cada vez es más habitual que los desarrolladores integren estas capacidades en sus aplicaciones. Sin embargo, las llamadas directas como OpenAI
yHugging Face
y API de otros proveedores de servicios, lo que a menudo plantea una serie de problemas de gestión y operación y mantenimiento:
- Costes no transparentesA medida que aumenta el volumen de solicitudes de API, también lo hacen los costes asociados. Sin embargo, a menudo es difícil para los desarrolladores hacer un seguimiento preciso de qué llamadas concretas consumen más recursos y cuáles son peticiones no válidas o redundantes, lo que dificulta la optimización de costes.
- fluctuación de rendimientoTiempo de respuesta de la API: Durante los periodos de alta concurrencia, el tiempo de respuesta de la API del servicio de IA puede prolongarse, e incluso pueden producirse tiempos de espera ocasionales, lo que afecta directamente a la experiencia del usuario y a la estabilidad de la aplicación.
- Falta de control: La falta de una plataforma unificada para supervisar las métricas clave, como las funciones más utilizadas por los usuarios, los avisos (prompts) que mejor funcionan, el tipo y la frecuencia de las solicitudes erróneas, etc., hace que la optimización del servicio no esté respaldada por datos.
- Restricciones de direcciones IP y problemas de reputaciónAlgunos servicios de IA tienen restricciones o políticas estrictas sobre la dirección IP desde la que se originan las solicitudes. Iniciar una llamada utilizando una dirección IP compartida o poco fiable puede hacer que la solicitud falle o incluso afectar a la calidad del resultado del modelo.
Para hacer frente a estos retos.Cloudflare
lanzado AI Gateway
Servicio. Se trata de una capa proxy inteligente disponible gratuitamente que se sitúa entre la aplicación y el servicio de IA back-end, centrándose en la gestión, supervisión y optimización de las solicitudes de IA en lugar de realizar el propio cálculo de IA.

Cloudflare AI Gateway
El valor fundamental reside en proporcionar análisis y registros unificados, almacenamiento en caché inteligente, limitación de velocidad y reintentos automáticos. Al dirigir el tráfico de solicitudes de IA a AI Gateway
Además, los desarrolladores pueden obtener un punto de control centralizado que resuelve eficazmente los puntos conflictivos mencionados. En concreto, sus nodos de red global ayudan a actuar como relés de confianza, aliviando los problemas causados por las restricciones de direcciones IP o la ubicación geográfica.
A continuación se mostrará cómo configurar y utilizar Cloudflare AI Gateway
.
Paso 1: Crear una instancia de AI Gateway
El proceso de configuración es sencillo, siempre que se disponga de un Cloudflare
Cuenta (gratuita si aún no se ha registrado).
- Inicio de sesión en la consola de Cloudflare: Acceso
dashboard.cloudflare.com
. - Navegar a AI: Busque y haga clic en la opción "AI" del menú de la izquierda.
- Seleccione AI GatewayEn el submenú AI, haga clic en "AI Gateway".
- Creación de una pasarelaHaga clic en el botón destacado "Crear pasarela" de la página.
- Pasarelas con nombreAsigna un nombre claro a la pasarela, por ejemplo
my-app-gateway
Este nombre formará parte de la URL de los siguientes puntos finales de la API. Este nombre formará parte de la URL de los siguientes puntos finales de la API. - (Opcional) Añadir descripción: Se puede añadir información descriptiva para facilitar la gestión posterior.
- Confirmación de la creaciónUna vez que haya completado el nombre y la descripción, haga clic en Confirmar creación.
Una vez creada, el sistema muestra la página de detalles de la pasarela. La información clave es URL del punto final de la pasarela(URL del punto final de la pasarela), asegúrese de documentarlo. El formato básico es el siguiente:
https://gateway.ai.cloudflare.com/v1/<ACCOUNT_TAG>/<GATEWAY_NAME>/<PROVIDER>
<ACCOUNT_TAG>
::Cloudflare
El identificador único de la cuenta, que se rellena automáticamente.<GATEWAY_NAME>
: El nombre establecido para la pasarela en el paso anterior, por ejemplomy-app-gateway
.<PROVIDER>
el identificador del proveedor de servicios de IA de destino, por ejemplo, elopenai
,workers-ai
,huggingface
etc. Esto indicaAI Gateway
A qué servicio backend reenviar la solicitud.
Paso 2: Integrar AI Gateway en la aplicación
Este es el paso central: hay que modificar el código de la aplicación para sustituir la URL Base que accede directamente a la API del Servicio AI por la obtenida en el paso anterior. Cloudflare AI Gateway
URL.
Notas importantesURL base: sólo es necesario sustituir la parte de la URL base. La ruta de la solicitud, los parámetros de consulta, las cabeceras de la solicitud (incluida la clave de API), etc. deben permanecer sin cambios.AI Gateway
El encabezado de la solicitud que contiene la clave API se transmite de forma segura al proveedor final de servicios de IA.
Ejemplo 1: Uso del SDK de OpenAI en una aplicación Python
Suponiendo que la llamada directa original a OpenAI
El código de la API es el siguiente:
# --- 原始代码 (直接调用 OpenAI) ---
import openai
import os
# 从环境变量加载 OpenAI API Key
client = openai.OpenAI(api_key=os.environ.get("OPENAI_API_KEY"))
# 默认 base_url 指向 https://api.openai.com/v1
try:
response = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=[{"role": "user", "content": "你好,世界!"}]
)
print("OpenAI Direct Response:", response.choices[0].message.content)
except Exception as e:
print(f"Error: {e}")
Modificado por AI Gateway
Enviar solicitud:
# --- 修改后代码 (通过 Cloudflare AI Gateway) ---
import openai
import os
# Cloudflare 账户 Tag 和 网关名称 (替换为实际值)
cf_account_tag = "YOUR_CLOUDFLARE_ACCOUNT_TAG"
cf_gateway_name = "my-app-gateway"
# 构造指向 OpenAI 的 AI Gateway URL
# 注意末尾的 /openai 是提供商标识
gateway_url = f"https://gateway.ai.cloudflare.com/v1/{cf_account_tag}/{cf_gateway_name}/openai"
# OpenAI API Key 保持不变,从环境变量加载
api_key = os.environ.get("OPENAI_API_KEY")
# 核心修改:在初始化 OpenAI 客户端时传入 base_url 参数
client = openai.OpenAI(
api_key=api_key,
base_url=gateway_url # 指向 Cloudflare AI Gateway
)
try:
# 请求的模型、消息等其他参数保持不变
response = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=[{"role": "user", "content": "你好,世界!(通过 Gateway)"}]
)
print("Via AI Gateway Response:", response.choices[0].message.content)
except Exception as e:
print(f"Error hitting Gateway: {e}")
El cambio clave está en la inicialización OpenAI
Cuando se pasa al cliente el base_url
especifica el parámetro AI Gateway
URL.
Ejemplo 2: Uso de la API fetch en JavaScript (Node.js o navegador)
Suponiendo que el código original utilice fetch
llamada directa OpenAI
::
// --- 原始代码 (直接 fetch OpenAI) ---
const apiKey = process.env.OPENAI_API_KEY; // 或其他获取方式
const openAIBaseUrl = "https://api.openai.com/v1";
fetch(`${openAIBaseUrl}/chat/completions`, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${apiKey}`
},
body: JSON.stringify({
model: "gpt-3.5-turbo",
messages: [{"role": "user", "content": "Hello from fetch!"}]
})
})
.then(res => res.json())
.then(data => console.log("OpenAI Direct Fetch:", data.choices[0].message.content))
.catch(err => console.error("Error:", err));
Modificado para adoptar AI Gateway
Enviar solicitud:
// --- 修改后代码 (通过 AI Gateway fetch) ---
const apiKey = process.env.OPENAI_API_KEY;
const cfAccountTag = "YOUR_CLOUDFLARE_ACCOUNT_TAG"; // 替换为实际值
const cfGatewayName = "my-app-gateway"; // 替换为实际值
// 构造 AI Gateway URL
const gatewayBaseUrl = `https://gateway.ai.cloudflare.com/v1/${cfAccountTag}/${cfGatewayName}/openai`;
// 核心修改:替换请求 URL 的基础部分
fetch(`${gatewayBaseUrl}/chat/completions`, { // URL 指向 Gateway
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${apiKey}` // API Key 仍在 Header 中发送
},
body: JSON.stringify({ // 请求体不变
model: "gpt-3.5-turbo",
messages: [{"role": "user", "content": "Hello from fetch via Gateway!"}]
})
})
.then(res => res.json())
.then(data => console.log("Via AI Gateway Fetch:", data.choices[0].message.content))
.catch(err => console.error("Error hitting Gateway:", err));
Independientemente del lenguaje de programación o del marco utilizado (por ejemplo LangChain
, LlamaIndex
etc.), la idea básica de la integración es la misma: encontrar el lugar en el que está configurado el punto final de la API del servicio de AI o la URL base y sustituirlo por el correspondiente Cloudflare AI Gateway
URL.
Tras completar los cambios de código y desplegar la aplicación, todas las peticiones al servicio de IA de destino fluirán a través de la aplicación AI Gateway
.
Paso 3: Utilizar las funciones integradas del AI Gateway
volver (o regresar) Cloudflare
en la consola AI Gateway
página de administración, que permite observar y aprovechar las funciones que ofrece:
- AnalíticaProporciona gráficos visuales sobre métricas clave como el volumen de solicitudes, la tasa de éxito, la distribución de errores, el uso de tokens, el coste estimado, la latencia (P95/P99) y mucho más. Esto ayuda a identificar rápidamente cuellos de botella en el rendimiento y valores atípicos en los costes.
- RegistrosProporciona registros detallados de las solicitudes, registrando información como marcas de tiempo, códigos de estado, modelos de destino, metadatos parciales de solicitud/respuesta, tiempo transcurrido, estado de la caché, etc., para cada solicitud. Es una herramienta importante para la resolución de problemas y el análisis del comportamiento de los usuarios.
- Almacenamiento en cachéAlmacenamiento en caché: El almacenamiento en caché puede activarse en la página "Configuración" de la pasarela. El almacenamiento en caché puede activarse configurando los parámetros TTL (tiempo de vida)Por ejemplo, 1 hora (3600 segundos).
AI Gateway
Las respuestas a solicitudes idénticas (con idénticas palabras clave, modelos, etc.) pueden almacenarse en caché. Durante el periodo de validez del TTL, las siguientes solicitudes idénticas serán tratadas directamente por el servidorGateway
Devuelve resultados en caché, es extremadamente sensible yNo consume Token ni recursos informáticos de los proveedores de servicios de IA back-end.. Esto resulta especialmente eficaz en situaciones en las que hay solicitudes repetidas, como los contenidos generados por IA (por ejemplo, descripciones de productos), y puede reducir significativamente los costes y la latencia. - Limitación de velocidadReglas de limitación de frecuencia : Las reglas de limitación de frecuencia también pueden configurarse en la página de Configuración. Puede limitar la frecuencia de las solicitudes basándose en direcciones IP o en cabeceras de solicitud personalizadas (por ejemplo, pasando un ID de usuario o una API Key específica). Por ejemplo, puede configurar "Permitir hasta 20 solicitudes por minuto para una única dirección IP". Esto ayuda a prevenir ataques maliciosos o el uso indebido de recursos debido a errores de programación.
valor estratégico
Para los desarrolladores y equipos que necesiten integrar y gestionar uno o varios servicios de IA, la aplicaciónCloudflare AI Gateway
ofrece una solución centralizada y fácil de gestionar. No sólo resuelve los problemas de coste, rendimiento y supervisión que suelen asociarse a las llamadas directas a la API, sino que también ofrece una capa adicional de optimización y protección mediante funciones como el almacenamiento en caché y la limitación de velocidad. En lugar de que los desarrolladores construyan y mantengan por su cuenta proxies, sistemas de almacenamiento en caché y de supervisión similares, la soluciónAI Gateway
Reducción significativa de la complejidad y la carga de trabajo. A medida que se profundiza en las aplicaciones de IA, la gestión unificada con estos servicios de pasarela es fundamental para mantener la solidez del sistema, controlar los costes operativos y la flexibilidad futura para la expansión.
© declaración de copyright
El artículo está protegido por derechos de autor y no debe reproducirse sin autorización.
Artículos relacionados
Sin comentarios...