

From RAG to Agents: Making Smart AI Assistants (LLM Zoomcamp bonus module)
A hands-on workshop on turning retrieval-augmented generation into agentic AI flows - Alexey Grigorev
Description:
Retrieval-Augmented Generation (RAG) is a common approach for building AI assistants, but most implementations stop at a single search + answer pattern. In this practical workshop, we go a step further.
You'll learn how to make RAG pipelines more agentic: enabling decision-making, tool use, multi-step reasoning, and real-time interaction with users. We’ll build step by step, from simple retrieval to agent-powered assistants capable of asking follow-up questions, running tool calls, and updating their own knowledge base.
What we’ll cover:
Build a basic RAG pipeline: Implement search + prompt + LLM logic using course FAQs
Add agentic behavior
Let the assistant decide when to search or answer
Introduce state, reasoning, and multi-step flows
Implement agentic search
Iterate over multiple search queries
Use search history and reasoning to refine results
Use OpenAI function calling
Add tool support: search and FAQ updates
Maintain interaction history and responses
Build a working assistant
Organize your logic with chat_assistant.py
Interact with a live, modular AI assistant
Explore PydanticAI
Define tools with type hints and docstrings
Run your assistant in a fully typed agent framework
What you’ll get:
A working RAG-based AI assistant that can:
Search FAQs
Decide when to act
Ask follow-up questions
Add entries to its own knowledge base
Everything runs in Jupyter with Python. You can follow along with GitHub Codespaces or use your own environment.
About the Speaker:
Alexey Grigorev is the creator of DataTalks.Club and instructor of the popular Zoomcamp series. He designs and teaches practical AI/ML workflows used by thousands of learners globally. In this workshop, Alexey brings his hands-on teaching style to the emerging field of agentic LLMs, helping you build useful assistants from scratch.
DataTalks.Club is the place to talk about data. Join our slack community!