agentskit.js

@agentskit/rag — for agents

Plug-and-play RAG. Chunking + ingest + retrieve + rerank + hybrid + six document loaders.

#Install

npm install @agentskit/rag

#Primary exports

  • createRAG({ embed, store, chunkSize, chunkOverlap, topK, threshold })ingest(docs) + retrieve(request) + search(query).
  • chunkText({ chunkSize, chunkOverlap, split }) — lower-level splitter.
  • createRerankedRetriever(base, { candidatePool, topK, rerank }) — pluggable reranker (BM25 default). See RAG reranking.
  • createHybridRetriever(base, { vectorWeight, bm25Weight }) — vector + BM25 hybrid.
  • bm25Score, bm25Rerank — standalone helpers.
  • voyageReranker(config) — Voyage AI reranker.
  • jinaReranker(config) — Jina AI reranker.

#Document loaders

  • loadUrl, loadGitHubFile, loadGitHubTree, loadNotionPage, loadConfluencePage, loadGoogleDriveFile, loadPdf (BYO parser). See Doc loaders.
  • Cloud storage: loadS3, loadGcs, loadDropbox, loadOneDrive.

#Minimal example

import { createRAG, loadGitHubTree } from '@agentskit/rag'
import { fileVectorMemory } from '@agentskit/memory'
import { openaiEmbedder } from '@agentskit/adapters'

const rag = createRAG({
  embed: openaiEmbedder({ apiKey }),
  store: fileVectorMemory({ path: './kb.json' }),
})

await rag.ingest(await loadGitHubTree('org', 'repo', { token }))
const hits = await rag.search('onboarding flow')

#Source

Explore nearby

✎ Edit this page on GitHub·Found a problem? Open an issue →·How to contribute →

On this page