Text
We need to answer in Spanish. Provide pros and cons of Cloudflare Workers vs Node (presumably Node.js runtime). Compare performance, cost, scalability, ecosystem, limitations, cold starts, etc. Also mention differences in programming model, environment (V8 isolates vs full OS), durability, storage, debugging, vendor lock-in. Provide bullet points. Possibly mention alternative like Cloudflare Pages Functions, Deno. Provide recommendations. Use clear sections.
## Cloudflare Workers vs. Node.js
### (¿Qué hay que tener en cuenta al decidir entre ambos?)
| Aspecto | **Cloudflare Workers** | **Node.js (ejecución propia o en un IaaS/PaaS)** |
|---|---|---|
| **Modelo de ejecución** | *Serverless* en la red de borde de Cloudflare. Cada petición se ejecuta en una **Isolate V8** (máquina virtual ligera) con un tiempo máximo de **30 s** (hasta 50 s en “Durable Objects”). | *Proceso* o contenedor tradicional. Puedes ejecutar Node 24/20+ en cualquier servidor, VM o contenedor Docker. No hay límite de tiempo (salvo el que imponga tu propio load‑balancer). |
| **Latencia** | **Muy baja** para usuarios que ya están cerca de un POP de Cloudflare (≈ 10‑30 ms de ida y vuelta). | La latencia depende de la ubicación del datacenter y de la distancia del cliente; normalmente es mayor que la de un edge‑worker. |
| **Escalabilidad** | Escala **automáticamente** a millones de peticiones simultáneas sin que tú gestiones clústeres, auto‑scaling o balanceo. | Necesitas diseñar y provisionar auto‑escalado (K8s, ECS, Cloud Run, etc.) o aceptar límites de tu instancia. |
| **Coste** | **Pago por uso**: 0,5 USD por millón de solicitudes en el plan “Workers Bundled”; el plan gratuito incluye 100 k req/día y 10 M ms de CPU. No pagas por infraestructura o por tiempo inactivo. | Coste de la infraestructura (VM, contenedor, serverless) + datos de salida. Si tu carga es constante y alta, a veces resulta más barato en un servidor dedicado, pero la facturación suele ser más compleja. |
| **Tiempo de arranque (cold‑start)** | **Prácticamente nulo**: las Isolates se “precargan” y reutilizan; cold‑start < 5 ms en la mayoría de los casos. | En plataformas serverless (AWS Lambda, Cloud Run) el cold‑start puede estar entre 100 ms y varios segundos; en servidores dedicados es cero, pero pagas por el tiempo que el proceso está activo. |
| **Entorno de ejecución** | - V8 Isolate con **solo** APIs de Web/Fetch, `crypto`, `Cache`, `Durable Objects`, `KV`, `R2`, `Workers AI`, etc.<br>- No hay acceso a **sistema de archivos**, sockets TCP/UDP, procesos hijo, ni a la mayoría de módulos nativos (`fs`, `net`, `child_process`).<br>- Código empaquetado (bundled) con **esbuild**, **wrangler**, **npm** (pero solo paquetes que no dependan de APIs nativas). | - Node.js completo: acceso a **fs**, `net`, `child_process`, `cluster`, módulos nativos, cualquier paquete npm.<br>- Puedes usar bases de datos tradicionales, sockets websockets, procesos en background, etc. |
| **Persistencia y estado** | - **KV** (key‑value de latencia alta, ideal para caché).<br>- **Durable Objects** (estado consistente y bajo‑latencia por objeto).<br>- **R2** (object storage S3‑compatible).<br>- **Workers AI** (modelos de IA). | - Puedes conectar cualquier base de datos (Postgres, MySQL, Mongo, Redis, etc.) y usar sistemas de cache locales o externos. |
| **Depuración / Testing** | - Herramientas: `wrangler dev` (emulación local), `miniflare`, Cloudflare Dashboard (logs, tracing).<br>- Depuración en vivo limitada a logs y a la consola del dashboard. | - Depuración completa con VS Code, `node --inspect`, breakpoints, profilers, logs, APMs. |
| **Control de versiones y CI/CD** | - Deploy con `wrangler publish` o GitHub Actions integradas.<br>- Cada worker es un artefacto pequeño (KB‑MB). | - Pipeline tradicional (Docker, Helm, CI, CD). Puedes versionar imágenes, usar canary, blue‑green, etc. |
| **Vendor lock‑in** | - Código depende de la **API de Workers** y de los servicios de Cloudflare (KV, R2, Durable Objects). Migrar a otro provider implica re‑escribir esas partes. | - Node es **agnóstico**: puedes mover tu aplicación entre proveedores o a on‑premises sin cambios significativos. |
| **Límites y cuotas** | - CPU: 10 ms (free) / 50 ms (paid) por solicitud.<br>- Memoria: 128 MiB (hasta 256 MiB en Workers Premium).<br>- Tamaño del bundle: 1 MiB (gzip) en plan gratuito, 10 MiB en paid.<br>- Conexiones salientes: 1000 conexiones concurrentes por worker. | - Prácticamente sin límites (solo los que imponga tu infraestructura). |
| **Casos de uso típicos** | - Edge‑caching / CDN custom.<br>- Reescritura de URLs, redirecciones, A/B testing.<br>- Auth / JWT validation en el borde.<br>- API “gateway” ultra‑ligero.<br>- Webhooks de latencia crítica.<br>- Funciones de IA en el edge. | - Aplicaciones web completas (Express, Nest, Fastify, Next.js, etc.).<br>- APIs con lógica compleja, acceso a base de datos, procesamiento de archivos, streams largos, websockets persistentes.<br>- Jobs en background, workers de colas, microservicios con estado. |
---
## ✅ Pros de Cloudflare Workers
| # | Ventaja | Por qué importa |
|---|---|---|
| 1 | **Latencia mínima** | El código se ejecuta en el POP más cercano al cliente; ideal para personalizar la caché, autenticación o lógica de routing sin volver al origen. |
| 2 | **Sin servidor que administrar** | No configuras VMs, contenedores, autoscaling ni balanceadores. |
| 3 | **Cold‑start casi inexistente** | Responde en milisegundos incluso después de periodos de inactividad. |
| 4 | **Coste predecible y bajo para tráfico esporádico** | Pago por millón de requests; el plan gratuito cubre muchas pruebas y proyectos pequeños. |
| 5 | **Seguridad “edge‑first”** | Cada worker está aislado en su propia Isolate, no comparte filesystem ni puertos. |
| 6 | **Integración nativa con la red de Cloudflare** | KV, R2, Durable Objects, Workers AI, Cloudflare Images, etc., están disponibles con una sola llamada HTTP/Fetch. |
| 7 | **Escalado instantáneo** | Puedes pasar de 0 a millones de RPS sin configuración previa. |
| 8 | **Herramientas de desarrollo ligeras** | `wrangler`, `miniflare`, preview en el dashboard. |
| 9 | **Soporte para Web Standards** | Usa `fetch`, `Request`, `Response`, `Headers`, `ReadableStream`, etc., tal como en el navegador, lo que facilita portar código front‑end. |
|10| **Modelo de precios simple** | No pagas por “instancia” ni por “tiempo de ejecución”, solo por número de invocaciones y por recursos extra (KV, R2). |
---
## ❌ Contras de Cloudflare Workers
| # | Desventaja | Impacto |
|---|---|---|
| 1 | **Entorno limitado** | No puedes usar módulos nativos (`fs`, `net`, `child_process`) ni librerías que requieran compilación C/C++. |
| 2 | **Restricciones de tiempo y memoria** | 30‑50 s de CPU y 128‑256 MiB de RAM pueden ser insuficientes para procesos intensivos o streams largos. |
| 3 | **Dependencia de la infraestructura de Cloudflare** | Cambiar de proveedor implica re‑escribir lógica que usa KV, R2, Durable Objects, etc. |
| 4 | **Persistencia “a nivel de edge”** | KV tiene latencia de milisegundos pero no garantiza consistencia inmediata; Durable Objects son más consistentes, pero están pensados para datos pequeños (< 1 MiB por objeto). |
| 5 | **Herramientas de depuración más básicas** | No hay debugger paso‑a‑paso en producción; dependes de logs y de `wrangler dev`. |
| 6 | **Cuota de bundle y de llamadas externas** | El tamaño del script está limitado; si tu app necesita muchos paquetes, tendrás que hacer tree‑shaking o usar `npm` con cuidado. |
| 7 | **Limitaciones de red** | No puedes abrir sockets arbitrarios (TCP/UDP), lo que impide, por ejemplo, conectarte directamente a una base de datos PostgreSQL a través de TCP; debes pasar por HTTP(s) a un API. |
| 8 | **Modelo de pricing para tráfico alto** | Cuando el tráfico supera varios cientos de millones de requests/mes, el costo por request puede superar a una instancia EC2 dedicada. |
| 9 | **Control de versiones de runtime** | Cloudflare controla la versión de V8; no puedes elegir Node‑compatible features que no estén soportadas (aunque el entorno es básicamente V8 2023). |
|10| **Escalado de conexiones persistentes** | No es adecuado para websockets de larga duración; solo se soportan conexiones breves vía `fetch`. |
---
## 📊 Cuándo elegir **Workers** y cuándo quedarte con **Node**
| Caso de uso | Recomendación |
|---|---|
| **Personalizar la caché CDN** (rewrites, edge‑auth, A/B test) | **Workers** – latencia mínima y fácil de desplegar. |
| **API de “gateway” ligera** que solo orquesta peticiones a micro‑servicios internos | **Workers** (puedes usar `fetch` para llamar a tus backend). |
| **Autenticación y autorización en el borde** (JWT, OAuth, Cloudflare Access) | **Workers** – validas token antes de que llegue al origen. |
| **Procesamiento de archivos grandes** (transcoding, zip, PDF) | **Node** (requiere más RAM/CPU y acceso a sistema de archivos). |
| **WebSockets o Server‑Sent Events** de larga duración | **Node** (puedes mantener conexiones persistentes). |
| **Acceso a bases de datos relacionales** (Postgres, MySQL) con consultas complejas | **Node** (aunque puedes usar un “proxy” HTTP, suele ser menos eficiente). |
| **Tareas en background / colas** (workers de larga ejecución, cron jobs) | **Node** (usando Bull, RabbitMQ, Cloud Tasks, etc.). |
| **Aplicaciones monolíticas o full‑stack** (Next.js, Nest, Express) | **Node** (más librerías, SSR, etc.). |
| **Prototipos rápidos / pruebas de concepto** con bajo tráfico | **Workers** (plan gratuito, despliegue en minutos). |
| **Cumplimiento de normativas que requieren control total del entorno** (p.ej. datos que no pueden salir de una VPC) | **Node** (puedes ejecutar dentro de una red privada). |
---
## 🛠️ Buenas prácticas si decides usar **Cloudflare Workers**
1. **Mantén el bundle pequeño**
- Usa `esbuild`/`wrangler` con `--minify` y `tree-shake`.
- Prefiere dependencias “pure‑JS” (sin binarios).
2. **Aprovecha los recursos nativos de Cloudflare**
- `Cache API` para almacenar respuestas HTTP.
- `KV` para configuraciones y datos que pueden tolerar latencia.
- `Durable Objects` para contadores, sesiones o datos que requieran consistencia.
3. **Controla la latencia de llamadas externas**
- Usa `fetch` con `cf` options (e.g., `cf: { cacheTtl: 60 }`).
- Implementa **retries** y **circuit breaker** en el cliente HTTP para evitar que una caída de backend bloquee tus workers.
4. **Monitorea con logs estructurados**
- `console.log(JSON.stringify({event: 'request', url: request.url, status: response.status}))`
- Usa **Cloudflare Logs** + un SIEM (Splunk, Elastic) o exporta a `Logpush`.
5. **Gestión de errores y timeouts**
- Limita `fetch` a < 10 s para evitar llegar al límite de CPU.
- Usa `Promise.race([fetch(...), timeoutPromise])`.
6. **Seguridad**
- No expongas secretos en el código; usa **Secrets** de Workers (`wrangler secret put`).
- Habilita **CORS** y **Content‑Security‑Policy** según corresponda.
7. **Versionado y despliegue continuo**
- Usa `wrangler publish --env prod` y mantén entornos (`dev`, `staging`, `prod`).
- Integra con GitHub Actions: `wrangler publish --branch ${{ github.ref_name }}`.
---
## 📚 Recursos útiles
| Tipo | Enlace |
|---|---|
| **Documentación oficial| ID | Metric | Value | Tags | Time |
|---|---|---|---|---|
| Key | Value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| No tags found | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ID | Model |
|---|---|
¿Cuáles son los pros y contras de Cloudflare Workers frente a Node?
| ID | Metric | Value | Tags | Time | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| No feedback found | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ID | Model |
|---|---|
| 019e7eba-2bfc-7ea0-ad32-26dbfd8bd428 | groq::openai/gpt-oss-120b |