Skip to main content
This example application shows how to build a sophisticated RAG (Retrieval Augmented Generation) system that leverages search of a knowledge base with LLMs to provide deep insights into the data.

The agent can:

  • Process and understand documents from multiple sources (PDFs, websites, text files)
  • Build a searchable knowledge base using vector embeddings
  • Maintain conversation context and memory across sessions
  • Provide relevant citations and sources for its responses
  • Generate summaries and extract key insights
  • Answer follow-up questions and clarifications

The agent uses:

  • Vector similarity search for relevant document retrieval
  • Conversation memory for contextual responses
  • Citation tracking for source attribution
  • Dynamic knowledge base updates

Example queries to try:

  • “What are the key points from this document?”
  • “Can you summarize the main arguments and supporting evidence?”
  • “What are the important statistics and findings?”
  • “How does this relate to [topic X]?”
  • “What are the limitations or gaps in this analysis?”
  • “Can you explain [concept X] in more detail?”
  • “What other sources support or contradict these claims?”

Code

The complete code is available in the Agno repository.

Usage

1

Clone the repository

2

Create virtual environment

3

Install dependencies

4

Run PgVector

First, install Docker Desktop.Then run either using the helper script:
Or directly with Docker:
5

Set up API keys

We recommend using gpt-4o for optimal performance.
6

Launch the app

Open localhost:8501 to start using the Agentic RAG.
Need help? Join our Discourse community for support!