@sisu-ai/tool-rag
v1.0.0
Published
Backend-agnostic RAG tools for agents.
Downloads
57
Maintainers
Readme
@sisu-ai/tool-rag
Backend-agnostic RAG tools for agents.
Exports
createRetrieveToolcreateStoreToolcreateRagTools
Type exports are re-exposed for convenience, but reusable chunking and ingestion mechanics live in @sisu-ai/rag-core.
Philosophy
@sisu-ai/tool-rag is the model-facing layer of the RAG stack.
- It is where tool schemas, names, and descriptions live.
- It stays thin by delegating the actual chunking, embeddings orchestration, and vector-store work to
@sisu-ai/rag-core. - It works with any
VectorStoreimplementation that satisfies@sisu-ai/vector-core.
Composition
@sisu-ai/tool-rag expects:
embeddingsprovider (embed(input[]) => vectors[])vectorStoreimplementation (upsert,query)
Use backend adapters such as @sisu-ai/vector-chroma or @sisu-ai/vector-vectra to provide vectorStore.
For startup seeding, chunking helpers, and developer-controlled ingestion, use @sisu-ai/rag-core directly.
How It Resolves Dependencies
You can provide dependencies in two ways:
- directly in tool options
- indirectly through
ctx.deps
That means the same tool factory works for:
- explicitly wired apps
- middleware/orchestration flows that inject dependencies into tool context
Typical Usage
import { createRagTools } from '@sisu-ai/tool-rag';
import { createChromaVectorStore } from '@sisu-ai/vector-chroma';
const vectorStore = createChromaVectorStore({ namespace: 'docs' });
const ragTools = createRagTools({
embeddings,
vectorStore,
store: {
chunkingStrategy: 'sentences',
chunkSize: 400,
overlap: 1,
},
});This gives the model:
retrieveContextfor query-text retrievalstoreContextfor communication-derived persistence
When To Use This Package
- You want the model to decide when to retrieve context.
- You want the model to store user-provided information for later retrieval.
- You want backend-agnostic RAG tools rather than provider-specific ones.
When Not To Use This Package
- You want app-controlled ingestion or retrieval without tool-calling; use
@sisu-ai/rag-core. - You want deterministic middleware composition; use
@sisu-ai/mw-rag.
Contributing
We build Sisu in the open. Contributions welcome.
Contributing Guide · Report a Bug · Request a Feature · Code of Conduct
Star on GitHub if Sisu helps you build better agents.
Quiet, determined, relentlessly useful.
