Qué es Workers AI
Cloudflare Workers AI es un servicio que permite ejecutar modelos de IA en la red edge de Cloudflare. Realiza inferencia de IA con baja latencia y procesa datos sin enviarlos a la nube.
Modelos compatibles
Generación de texto (LLM)
| Modelo | Características |
|---|
| Llama 3 8B | Propósito general, alto rendimiento |
| Mistral 7B | Rápido, eficiente |
| Gemma 7B | Desarrollado por Google, ligero |
| Phi-2 | Desarrollado por Microsoft, compacto |
Imagen y visión
| Modelo | Uso |
|---|
| Stable Diffusion XL | Generación de imágenes |
| LLaVA | Comprensión de imágenes |
| CLIP | Clasificación de imágenes |
Audio
| Modelo | Uso |
|---|
| Whisper | Reconocimiento de voz |
| TTS | Texto a voz |
Uso básico
Generación de texto
export default {
async fetch(request: Request, env: Env): Promise<Response> {
const response = await env.AI.run('@cf/meta/llama-3-8b-instruct', {
messages: [
{ role: 'system', content: 'Eres un asistente amable.' },
{ role: 'user', content: 'Dime 3 ventajas de TypeScript' }
]
});
return Response.json(response);
}
};
Respuesta en streaming
export default {
async fetch(request: Request, env: Env): Promise<Response> {
const stream = await env.AI.run('@cf/meta/llama-3-8b-instruct', {
messages: [
{ role: 'user', content: 'Explica el futuro de la IA' }
],
stream: true
});
return new Response(stream, {
headers: { 'content-type': 'text/event-stream' }
});
}
};
Generación de imágenes
export default {
async fetch(request: Request, env: Env): Promise<Response> {
const response = await env.AI.run('@cf/stabilityai/stable-diffusion-xl-base-1.0', {
prompt: 'A futuristic city with flying cars, cyberpunk style',
num_steps: 20
});
return new Response(response, {
headers: { 'content-type': 'image/png' }
});
}
};
Análisis de imágenes
export default {
async fetch(request: Request, env: Env): Promise<Response> {
const imageData = await request.arrayBuffer();
const response = await env.AI.run('@cf/llava-hf/llava-1.5-7b-hf', {
image: [...new Uint8Array(imageData)],
prompt: '¿Qué hay en esta imagen?',
max_tokens: 512
});
return Response.json(response);
}
};
Reconocimiento de voz
export default {
async fetch(request: Request, env: Env): Promise<Response> {
const audioData = await request.arrayBuffer();
const response = await env.AI.run('@cf/openai/whisper', {
audio: [...new Uint8Array(audioData)]
});
return Response.json({
text: response.text,
language: response.detected_language
});
}
};
Integración con Vectorize
export default {
async fetch(request: Request, env: Env): Promise<Response> {
const question = await request.text();
const embedding = await env.AI.run('@cf/baai/bge-base-en-v1.5', {
text: question
});
const matches = await env.VECTORIZE.query(embedding.data[0], {
topK: 3
});
const context = matches.map(m => m.metadata.text).join('\n');
const response = await env.AI.run('@cf/meta/llama-3-8b-instruct', {
messages: [
{ role: 'system', content: `Responde usando el siguiente contexto:\n${context}` },
{ role: 'user', content: question }
]
});
return Response.json(response);
}
};
Estructura de precios
Pago por uso:
- Generación de texto: $0.011 / 1,000 neurons
- Generación de imágenes: $0.01 / imagen
- Reconocimiento de voz: $0.01 / minuto
Nivel gratuito:
- Hasta 10,000 neurons por día gratis
Despliegue
[ai]
binding = "AI"
npx wrangler deploy
Casos de uso
✓ Chatbots
✓ Generación de contenido
✓ Pipeline de procesamiento de imágenes
✓ Transcripción de audio
✓ Generación Aumentada por Recuperación (RAG)
✓ Moderación de contenido
Resumen
Cloudflare Workers AI es una plataforma potente que permite ejecutar inferencia de IA en el edge. Con baja latencia, distribución global y API simple, facilita el desarrollo de aplicaciones de IA.
← Volver a la lista