rag-local — en el navegador

El mismo engine que rag-server.mjs, corriendo entero en tu navegador. Las colecciones son archivos .jvsb en una carpeta tuya — las mismas que usa el servidor Node.

1 · Carpeta de colecciones

ninguna carpeta elegida

Elegí la misma rag-node/collections/ que usa tu servidor y trabajás sobre las mismas colecciones. Requiere Chromium (File System Access). Hay que elegirla una vez por sesión.

2 · Modelo de embeddings

sin cargar

Primera vez: ~309 MB (embeddinggemma-300m, q8) desde Hugging Face; después queda cacheado. Sin WebGPU cae a WASM: más lento, pero anda.

3 · Colecciones

¿Primera vez? Empezá por acá.

La de ejemplo usa el corpus que ya viene en el repo: te deja algo que consultar en un clic. La plantilla es un .md válido para editar y armar la tuya. (Una colección vacía no se puede: el engine pide al menos un documento.)

Qué exige el formato OKF (si falla, te dice qué doc y por qué)
typeno vacío
title3 caracteres o más
descriptionmás de 10 caracteres
tagslista: [alfa, beta]
---
type: Nota técnica
title: Los gatos domésticos
description: Todo sobre el gato y sus costumbres.
tags: [gato, mascotas]
---

# Resumen

El gato duerme en el sofá.

4 · Consultar

5 · API worker

esperando carpeta + modelo
La API (mismo contrato REST que rag-server.mjs)
curl -X POST https://tu-proyecto.pages.dev/api/collections/ejemplo/query   -H "Authorization: Bearer $API_SECRET"   -H 'Content-Type: application/json'   -d '{"text":"diagnostico medico","k":3}'

GET    /api/collections                  lista
POST   /api/collections {name,docs}      crear
POST   /api/collections/:name/docs {docs} agregar docs (append)
PUT    /api/collections/:name/docs/:id {md} crear/editar un doc (upsert)
DELETE /api/collections/:name/docs/:id   borrar un doc
DELETE /api/collections/:name            borrar la colección
POST   /api/collections/:name/query      consultar {text,k}
GET    /api/status                       ¿hay pestaña? ¿lista?

Los vectores nunca salen de tu máquina. La consulta y los chunks que vuelven sí pasan por Cloudflare.

6 · Tu dispositivo

comprobando…