# RAG Agent with Qdrant and Ollama This repository contains a minimal but fully‑functional example of an AI agent that uses **Qdrant** as a local vector store, **Ollama** for embeddings and a local LLM, and **LangChain** for the agent logic. ## Features * **Semantic search** – `search_knowledge_base` tool queries the vector store. * **Document ingestion** – `add_to_knowledge_base` tool splits text into chunks and stores them. * **Interactive CLI** – simple command line interface for adding documents, searching and chatting with the agent. * **Modular design** – vector store, tools and agent logic are separated into distinct modules. ## Setup ```bash # 1. Install Ollama models ollama pull llama3 ollama pull nomic-embed-text # 2. Install Python dependencies pip install -r requirements.txt # 3. Start Qdrant (Docker recommended) # docker run -p 6333:6333 qdrant/qdrant ``` ## Usage ```bash python -m workspace.task-6a02e23da6fe2e4ac16acf65.cli ``` The CLI accepts the following commands: * `/add ` – add a new document. After the title you will be prompted to paste the content; finish with a line containing only `END`. * `/search <query>` – perform a semantic search. * `/quit` – exit. Anything else is forwarded to the agent. ## Project structure ``` workspace/ ├── task-6a02e23da6fe2e4ac16acf65/ │ ├── agent.py # Agent and tool definitions │ ├── cli.py # Interactive command line interface │ ├── vector_store.py # Qdrant + Ollama wrapper │ ├── requirements.txt │ └── README.md ```