> ## Documentation Index
> Fetch the complete documentation index at: https://agno-v2.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart

> Build a knowledge-powered agent in under 5 minutes.

Build an agent that answers questions about your documents.

## Create an Agent with Knowledge

```python knowledge_agent.py theme={null}
from agno.agent import Agent
from agno.knowledge.embedder.google import GeminiEmbedder
from agno.knowledge.knowledge import Knowledge
from agno.models.google import Gemini
from agno.vectordb.chroma import ChromaDb
from agno.vectordb.search import SearchType

# Create a knowledge base with ChromaDB
knowledge = Knowledge(
    vector_db=ChromaDb(
        collection="docs",
        path="tmp/chromadb",
        persistent_client=True,
        search_type=SearchType.hybrid,
        embedder=GeminiEmbedder(id="gemini-embedding-001"),
    ),
)

# Load content into the knowledge base
knowledge.insert(url="https://docs.agno.com/introduction.md", skip_if_exists=True)

# Create an agent that searches the knowledge base
agent = Agent(
    model=Gemini(id="gemini-3.5-flash"),
    knowledge=knowledge,
    search_knowledge=True,
    markdown=True,
)

agent.print_response("What is Agno?", stream=True)
```

## Setup

**1. Create virtual environment**

```bash Mac theme={null}
uv venv --python 3.12
source .venv/bin/activate
```

```bash Windows theme={null}
uv venv --python 3.12
.venv\Scripts\activate
```

**2. Install dependencies**

```bash theme={null}
uv pip install -U agno chromadb google-genai
```

**3. Export your API key**

```bash Mac theme={null}
export GOOGLE_API_KEY=your-google-api-key
```

```powershell Windows theme={null}
$env:GOOGLE_API_KEY = "your-google-api-key"
```

**4. Run the agent**

```bash theme={null}
python knowledge_agent.py
```

The agent searches the knowledge base, finds relevant content, and answers based on what it found.

## Load Different Content Types

**Files**

```python theme={null}
  knowledge.insert(path="docs/product-guide.pdf")
  knowledge.insert(path="data/")  # Entire directory
```

**URLs**

```python theme={null}
  knowledge.insert(url="https://example.com/docs.pdf")
```

**Text**

```python theme={null}
  knowledge.insert(text_content="Your content here...")
```

Agno detects file types automatically and uses the appropriate reader for PDFs, DOCX, CSV, Markdown, and more.

## What's Happening

1. **Insert**: Content is chunked, embedded with Gemini, and stored in ChromaDB
2. **Query**: The agent receives your question and decides to search the knowledge base using the `search_knowledge_base` tool
3. **Response**: The agent uses the retrieved content to answer, grounding its response in your data

This is **Agentic RAG**. The agent decides when to search rather than blindly injecting context on every query.

## Next Steps

> **[Agents with Knowledge](https://agno-v2.mintlify.site/knowledge/agents/overview.md)**
>
> Agentic RAG and traditional RAG

> **[Teams with Knowledge](https://agno-v2.mintlify.site/knowledge/teams/overview.md)**
>
> Shared knowledge bases for multi-agent teams

> **[Vector Stores](https://agno-v2.mintlify.site/knowledge/vector-stores/index.md)**
>
> PgVector, Pinecone, Weaviate, and more

> **[Search & Retrieval](https://agno-v2.mintlify.site/knowledge/concepts/search-and-retrieval/overview.md)**
>
> Vector, keyword, and hybrid search


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.