129 lines
2.5 KiB
Markdown
129 lines
2.5 KiB
Markdown
# Logs de evaluacion del RAG
|
|
|
|
**Proyecto:** Workspace de tools IA para empresas
|
|
**Modulo:** RAG
|
|
**Ultima actualizacion:** 2026-04-06
|
|
**Ultima modificacion por:** Agente tools IA para potenciar servicios empresariales
|
|
**Estado:** Implementado en codigo, pendiente de redeploy
|
|
|
|
---
|
|
|
|
## Donde se guardan
|
|
|
|
Los logs de evaluacion se guardan en `Qdrant`.
|
|
|
|
Coleccion usada:
|
|
|
|
```text
|
|
rag_eval_logs
|
|
```
|
|
|
|
Se eligio `Qdrant` porque:
|
|
|
|
- ya forma parte de la infraestructura activa del RAG
|
|
- ofrece persistencia sin depender del filesystem efimero del contenedor
|
|
- permite busqueda semantica posterior sobre las consultas o incidencias registradas
|
|
|
|
---
|
|
|
|
## Estructura del log
|
|
|
|
Cada log guarda, como minimo:
|
|
|
|
- `id`
|
|
- `trigger`: `automatic` o `manual`
|
|
- `operation`: `retrieve`, `answer` o `chat`
|
|
- `reason`
|
|
- `query`
|
|
- `mode`
|
|
- `intent`
|
|
- `model`
|
|
- `note`
|
|
- `createdAt`
|
|
- `scope`
|
|
- `usedBootstrapContext`
|
|
- `usedAdditionalRetrieve`
|
|
- `responseSummary`
|
|
- `retrievedItemsCount`
|
|
- `chunkIds`
|
|
- `documentIds`
|
|
|
|
Y ahora tambien campos de seguimiento:
|
|
|
|
- `reviewStatus`: `pending`, `in_progress`, `resolved`, `ignored`
|
|
- `severity`: `low`, `medium`, `high`
|
|
- `reviewedAt`
|
|
- `reviewedBy`
|
|
- `resolutionNote`
|
|
- `fixReference`
|
|
- `supersedesLogId`
|
|
|
|
---
|
|
|
|
## Tipos de log
|
|
|
|
### 1. Automatico
|
|
|
|
Se genera cuando el sistema detecta que:
|
|
|
|
- el contexto recuperado es insuficiente
|
|
- la respuesta deja claro que no hay suficiente contexto
|
|
|
|
Objetivo:
|
|
- detectar huecos en ingesta, chunking, embeddings, retrieval o prompting
|
|
|
|
### 2. Manual
|
|
|
|
Se genera cuando el usuario lo pide explicitamente desde el playground o por API.
|
|
|
|
En este caso la nota siempre deja constancia de que fue:
|
|
|
|
```text
|
|
Log solicitado por el usuario.
|
|
```
|
|
|
|
Y si el usuario añade una nota, se concatena a ese texto base.
|
|
|
|
---
|
|
|
|
## Seguimiento del log
|
|
|
|
El sistema ya permite marcar cada log como:
|
|
|
|
- pendiente
|
|
- en progreso
|
|
- resuelto
|
|
- ignorado
|
|
|
|
Y asociarle:
|
|
|
|
- quien lo reviso
|
|
- nota de resolucion
|
|
- referencia al fix o commit
|
|
|
|
Esto permite saber:
|
|
|
|
- que logs ya se han considerado
|
|
- cuales siguen pendientes
|
|
- cuales quedaron resueltos por una mejora concreta
|
|
- cuales se decidio ignorar conscientemente
|
|
|
|
---
|
|
|
|
## Endpoints relacionados
|
|
|
|
- `GET /logs/recent`
|
|
- `POST /logs/manual`
|
|
- `PATCH /logs/:id`
|
|
|
|
---
|
|
|
|
## Uso previsto
|
|
|
|
Estos logs estan pensados para que el usuario, este agente u otros agentes puedan revisarlos juntos y decidir mejoras del RAG de forma mas fiable.
|
|
|
|
No sustituyen una evaluacion formal completa, pero si dan una base practica para:
|
|
|
|
- detectar limitaciones reales
|
|
- priorizar correcciones
|
|
- vincular mejoras con incidencias concretas
|