saber: catalogo de awesome lists en el RAG

- awesome.py parsea awesome lists (markdown y RST): limpia enlaces y badges,
  agrupa cada categoria en un fragmento, y etiqueta fuente + licencia.
- indexa.py las incluye; en el indice PUBLICO solo entran las redistribuibles:
  awesome (sindresorhus, CC0) y awesome-selfhosted (CC BY-SA 3.0). awesome-hacking
  (sin licencia) se indexa solo en el indice personal si se clona en CODERS.
- saber-publico.jsonl pasa a 699 entradas (glosario + conocimiento + catalogo).
- ATRIBUCION.md acredita fuentes y licencias; docs/rag.md lo documenta.
This commit is contained in:
sito 2026-08-16 18:55:35 +02:00
parent 9fa0a40edf
commit 43335d329f
5 changed files with 500 additions and 6 deletions

View file

@ -92,7 +92,8 @@ forma de medirlo— sí está; el corpus lo pone cada quien con sus notas.
| El eval (`enriquece/eval_set.jsonl`) | **sí** |
| El glosario de tareas de Linux en castellano (`glosario.py`) | **sí** (genérico) |
| **El pack de metodología y manuales** (`saber/conocimiento/`) | **sí** — limpio y genérico |
| **El índice público pre-construido** (`datos/saber-publico.jsonl`) | **sí** — glosario + pack, con vectores |
| **El catálogo de *awesome lists*** (`saber/awesome.py`) | **sí** — solo lo redistribuible (CC0, CC BY-SA), ver [ATRIBUCION](../ATRIBUCION.md) |
| **El índice público pre-construido** (`datos/saber-publico.jsonl`) | **sí** — glosario + pack + catálogo, con vectores |
| El índice personal (`saber.jsonl`) y sus copias | **no** — los apuntes indexados |
| El diario (`diario.jsonl`) | **no** — las conversaciones |
| Lo derivado (`cosecha.jsonl`, `sintesis.jsonl`) | **no** — salen de los apuntes |
@ -105,3 +106,15 @@ los **manuales** de las herramientas que no traen man page (`saber/conocimiento/
propias notas y las *man pages* de su máquina, corre `indexa.py` y pasa a usar su
índice personal. Los apuntes privados del usuario (su `saber.jsonl`, su diario)
siguen fuera; el pack los complementa.
## El catálogo: awesome lists
Para el "¿qué existe para hacer X?" —no cómo, sino qué herramienta o software hay—
`awesome.py` indexa *awesome lists* curadas: parsea sus listas (markdown y
reStructuredText), las limpia de enlaces y badges, y agrupa cada categoría en un
fragmento ("Analytics: GoatCounter — …, Plausible — …"). Cada fuente lleva su
licencia: al índice **público** solo van las redistribuibles —`awesome`
(sindresorhus, CC0) y `awesome-selfhosted` (CC BY-SA 3.0, con atribución en
[ATRIBUCION.md](../ATRIBUCION.md))—. `awesome-hacking`, sin licencia explícita, se
indexa solo en el índice **personal** si se clona en `~/COFRE/CODERS/`. Para
ampliar el catálogo, se clona otra lista ahí y se reindexa.