langchain-rag

Build retrieval-augmented generation workflows that ground LLM answers in external documents.

1|Updated Jan 24, 2026
One-click install
npx skills add https://github.com/tawf-labs/zkt-hackathon --skill langchain-rag-tawf-labs
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: langchain-rag
Source: https://github.com/tawf-labs/zkt-hackathon/tree/main/.claude/skills/langchain-rag%20copy
Command: npx skills add https://github.com/tawf-labs/zkt-hackathon --skill langchain-rag-tawf-labs

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Retrieval-Augmented Generation helps you avoid hallucinations and improve answer accuracy by grounding LLM responses in relevant documents instead of relying only on the model’s internal knowledge.

Core Features & Use Cases

  • Document ingestion: Load content from PDFs, web pages, and directories to create a knowledge corpus.
  • Chunking for context: Split long documents with RecursiveCharacterTextSplitter so retrieval returns useful passages.
  • Embeddings and vector storage: Embed text and index it in vector stores like InMemory, FAISS, Chroma, or Pinecone for semantic search.
  • End-to-end retrieval and generation: Retrieve top-k relevant chunks and feed them into a chat model as context for final responses.
  • Common use case: Ask questions about a large set of internal docs (e.g., product specs or incident reports) and generate answers grounded in the most relevant sections.

Quick Start

Implement an end-to-end RAG flow by loading your documents, splitting them into chunks, embedding them, storing them in a vector store, retrieving the most relevant chunks for your query, and prompting your LLM with the retrieved context.

Frequently Asked Questions about langchain-rag

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a RAG pipeline to answer questions from my internal documents?

To build a RAG pipeline, load internal documents, split them into chunks using RecursiveCharacterTextSplitter, embed the text, and index it in a vector store. You then retrieve relevant chunks and feed them as context to an LLM for grounded response generation.

How does semantic retrieval reduce LLM hallucinations?

Semantic retrieval reduces hallucinations by grounding LLM responses in external document context. Instead of relying on the model's internal knowledge, it retrieves relevant passages from a vector store using similarity or MMR search to anchor the generated answers.

What is the best way to chunk long PDFs for vector store indexing?

The best way to chunk long PDFs for vector store indexing is using RecursiveCharacterTextSplitter. This method splits documents into smaller, useful passages, ensuring that semantic retrieval returns focused and relevant context for the LLM.

Can I use FAISS or Chroma with LangChain for document ingestion?

Yes, you can use FAISS, Chroma, Pinecone, or InMemory vector stores with LangChain. These vector stores index your embedded document chunks and provide retriever-based search to fetch the most relevant context for your queries.

Do I need a separate embedding model for indexing and querying?

Yes, you need a compatible embedding model for both indexing and querying. The same embedding model must be used to embed the document chunks during ingestion and to embed the user query during retrieval to ensure accurate semantic search results.

What are the limitations of using in-memory vector stores for retrieval?

In-memory vector stores are suitable for rapid prototyping and smaller document corpora. For large-scale internal docs, limitations include volatile storage and slower search performance, making distributed vector stores like Pinecone a better choice for persistent retrieval.