Vercel AI Open-Sources vgpu: una biblioteca WebGPU de TypeScript para sombreadores de agentes de IA

Los sombreadores siguen siendo lo más difícil de implementar en un equipo web normal. WebGPU le proporciona el hardware, luego le entrega adaptadores, vincula diseños de grupos y descriptores de canalización antes de que se mueva un solo píxel. Vercel gastó ese costo internamente en la construcción de sombreadores en vercel.com y ahora ha abierto el resultado. vgpu es una biblioteca de TypeScript que trata archivos .wgsl como módulos importables, expone un contexto de Gpu y ejecuta el mismo sombreador en el lienzo del navegador, en Node.js sin cabeza y en una prueba de instantánea de CI.

¿Es desplegable?

Sí, vgpu tiene licencia del MIT y está publicado en npm, por lo que pnpm add vgpu es la ruta de adquisición completa. Es una biblioteca, no un servicio alojado, por lo que no hay cuenta, cuota ni factura de inferencia.

Un contexto, ningún estado global oculto

init() adquiere un adaptador y un dispositivo y devuelve un único identificador de Gpu. Todo lo demás depende de ello. El inicio rápido del navegador en README tiene cuatro líneas:

const gpu = esperar inicio(); superficie constante = gpu.surface(lienzo, {dpr: [1, 2] }); onda constante = gpu.effect(WAVE_WGSL, {conjunto: {velocidad: 2}}); gpu.frame.loop(() => { wave.set({ tiempo: gpu.time }); wave.draw(); });

La superficie envuelve el lienzo y fija la proporción de píxeles del dispositivo entre 1 y 2. El efecto compila WGSL en un efecto de pantalla completa cuyos uniformes se abordan por sus nombres WGSL a través de set(). Los fotogramas son explícitos: los pases, los despejes y los sorteos son llamadas, nunca estados implícitos del gráfico de escena.

WGSL como sistema modular

El diferenciador son las herramientas de sombreado. Los archivos .wgsl se importan y exportan como módulos TypeScript. vgpu resuelve el gráfico del módulo, refleja los enlaces, elimina las declaraciones no utilizadas y emite una fuente de sombreado compacta en el momento de la compilación. Esto elimina las declaraciones vinculantes escritas a mano que normalmente no están sincronizadas con el sombreador. El archivo README indica que se envía un efecto de pantalla completa en 25 KB comprimidos con gzip y que el presupuesto se aplica en CI.

Tres tiempos de ejecución, una API

El paquete expone exportaciones de subrutas para vgpu, vgpu/node, vgpu/mock, vgpu/scene, vgpu/client y vgpu/core. La ruta del nodo está respaldada por Dawn y se muestra fuera de la pantalla:

destino constante = gpu.target({ tamaño: [256, 256]formato: “rgba8unorm” }); píxeles constantes = esperar objetivo.read();

Eso es lo que hace que la renderización de CI sea práctica. pixelmatch y pngjs son dependencias directas del paquete publicado, consistentes con el flujo de trabajo documentado donde CI compila el sombreador, representa un marco sin cabeza y compara la instantánea. El adaptador simulado es determinista y existe para pruebas que no deberían tocar una GPU en absoluto.

La superficie del agente

Vercel llama a esto una biblioteca de agente primero y el paquete lo respalda. El paquete incluye un binario vgpu, por lo que los documentos npx vgpu, los ejemplos npx vgpu y la verificación npx vgpu funcionan sin una instalación global. vgpu.sh publica agentes.md, llms.txt y una exportación de documentación completa, además de una API de descubrimiento de ejemplos sin token con una descripción de OpenAPI 3.1. Un servidor MCP alojado de solo lectura está disponible en vgpu.sh/api/mcp, y @modelcontextprotocol/server es una dependencia directa. También hay una habilidad de agente instalable en el repositorio.

Comparación

Conclusiones clave

Vercel vgpu de código abierto, la biblioteca WebGPU que creó para enviar sombreadores en vercel.com. Una superficie API se ejecuta en el navegador, en Node.js sin cabeza a través de Dawn y en una simulación determinista. Los archivos .wgsl se importan y exportan como módulos TypeScript, con reflexión para enlaces y diseños. Un efecto de pantalla completa completo se envía en 25 KB comprimidos con gzip, un presupuesto que, según el repositorio, CI aplica. Con licencia del MIT, en npm en v0.3.1, con una CLI, llms.txt y un punto final MCP alojado de solo lectura.

Consulte el repositorio, los documentos y ejemplos de GitHub y el paquete npm. Además, no dude en seguirnos en Twitter y no olvide unirse a nuestro SubReddit de más de 150.000 ml y suscribirse a nuestro boletín. ¡Esperar! estas en telegrama? Ahora también puedes unirte a nosotros en Telegram.

Asif Razzaq es el director ejecutivo de Marktechpost Media Inc.. Como emprendedor e ingeniero visionario, Asif está comprometido a aprovechar el potencial de la inteligencia artificial para el bien social. Su esfuerzo más reciente es el lanzamiento de una plataforma de medios de inteligencia artificial, Marktechpost, que se destaca por su cobertura en profundidad del aprendizaje automático y las noticias sobre aprendizaje profundo que es técnicamente sólida y fácilmente comprensible para una amplia audiencia. La plataforma cuenta con más de 2 millones de visitas mensuales, lo que ilustra su popularidad entre el público.