agentscope-ai / agentscope-ai/QwenPaw

Chat With Your Documents: Built-in Knowledge Base (RAG)

Abierto
#6,432 1 comentario 0 reacciones 0 asignados Ver en GitHub
enhancement
Lenguaje dominante
TypeScript
Estrellas
35k
Forks
3.1k
Merge medio
1 d 13 h
PR fusionados (30 d)
228

Descripción

# Chat With Your Documents: Built-in Knowledge Base (RAG)

## Summary

Add a built-in knowledge base: drag documents (PDF, DOCX, TXT, MD, CSV) into a workspace and have agents retrieve from them automatically when answering. This is the single most-requested capability in local AI apps today, and QwenPaw has no equivalent.

## Component(s) Affected

- [x] Core / Backend (app, agents, config, providers, utils, local_models)
- [x] Console (frontend web UI)
- [ ] Channels (DingTalk, Feishu, QQ, Discord, iMessage, etc.)
- [ ] Skills
- [ ] CLI
- [x] Documentation (website)
- [ ] Tests
- [ ] CI/CD
- [ ] Scripts / Deploy

## Problem / Motivation

Agents can only work from their conversation history and whatever tools fetch at runtime. There is no way to give an agent a private corpus — product catalogs, manuals, policies, invoices — and have it ground its answers in those documents. Every business user needs this: "answer customer questions from OUR catalog" is the first thing people try to build. Today they must bolt on an external RAG stack by hand, which defeats QwenPaw's plug-and-play appeal.

The ReMe memory layer already ships in-process and even has an (unused) embedding config — the foundation is half-built.

## Proposed Solution

- Per-agent (or shared) "Knowledge" tab in the console: drag-and-drop files, see chunk/index status.
- Ingestion pipeline: parse → chunk → embed → store. Ship a zero-config default (embedded vector store such as LanceDB/sqlite-vec) so it works out of the box, with optional connectors (pgvector, Qdrant, Milvus) for power users.
- Embeddings via the existing provider system (an Ollama/OpenAI-compatible embedding model like bge-m3), reusing `reme_light_memory_config.embedding_model_config` which already exists in agent.json.
- Retrieval automatically injected into agent context (top-k with citation of source file), plus a `search_knowledge` tool the agent can call explicitly.
- Works across all channels — a Telegram or WhatsApp agent grounded in the company's documents is a killer combination no other app offers.

## Alternatives Considered

- External RAG via MCP servers: works but requires users to install, run, and maintain a separate stack, and every retrieval costs an MCP round-trip. Built-in retrieval is faster, cheaper in tokens, and zero-setup.
- Stuffing documents into the system prompt: blows the context window and cost.

## Additional Context

The existing ReMe integration (BM25 + file store, `embedding backfill skipped: reason=embedding_disabled` in logs) suggests much of the plumbing exists and is one embedding backend away from document RAG.

## Willing to Contribute

- [ ] I am willing to open a PR for this feature (after discussion).

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Start by inspecting agent.json and the existing ReMe memory integration, especially reme_light_memory_config.embedding_model_config and the embedding-disabled log path. Map how the Console handles workspace or agent files before defining the ingestion and retrieval entry points. Done means the scope, storage choice, embedding flow, console status, citations, and cross-channel behavior are implemented and verified.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
ollama, python, sqlite
Área
ai, backend, data, documentation, frontend
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Tranquilo
Claridad
Necesita aclaración
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.