Skip to main content
First time here? Complete the Setup guide first to install GAIA and its dependencies.
Prefer a desktop app? See GAIA Chat Desktop for the privacy-first GUI with drag-and-drop document Q&A.
Looking for the API? See the Agent SDK Reference for classes, methods, and code examples.

Quick Start

1

Install dependencies

Activate your virtual environment and install GAIA with RAG support:
2

Create a simple chat

simple_chat.py
3

Use the full SDK

full_chat.py

CLI Usage

Interactive Mode

Start a conversational chat session:
  • /resume [id] - Resume a previous conversation (or list sessions if no id)
  • /save - Save current conversation
  • /sessions - List all saved sessions
  • /reset - Clear conversation and start fresh
  • /help or /? - Show help message
  • /quit - Exit the chat session

Single Query Mode

Document Q&A (RAG)

RAG (Retrieval-Augmented Generation) enables chatting with documents — including PDF, Word (.docx), PowerPoint (.pptx), and Excel (.xlsx) — using semantic search and context retrieval.

CLI with RAG

Document Indexing Requirements: Processing PDFs and PPTX files with images requires a Vision Language Model (VLM). GAIA uses Qwen3-VL-4B-Instruct-GGUF by default for extracting text from images in documents.To download all models needed for chat (including VLM):
To see what models each agent requires: gaia download --listSee the CLI Reference for more download options.

Interactive RAG Commands

When using gaia chat with documents (via --index flag or /index command), additional commands become available:
Sessions preserve both your conversation history and indexed documents:
  • /resume [id] - Resume session with conversation and documents restored
  • /save - Save session including indexed documents
  • /sessions - List all saved sessions
  • /reset - Clear conversation and start a new session (indexed documents are preserved)
  • /index <path> - Index a document or directory (enables RAG if needed)
  • /watch <dir> - Watch directory for changes and auto-index new files
  • /list - List all currently indexed documents
  • /status - Show RAG system status (indexed files, chunks, memory usage)
  • /chunks <file> - View indexed chunks for a specific file
  • /chunk <id> - View specific chunk by ID
  • /test <query> - Test query retrieval with relevance scores
  • /dump <file|#> - Export document and chunks to markdown
  • /clear-cache - Clear RAG cache and force re-indexing
  • /search-debug - Enable detailed search debugging output

RAG Debug Mode

Enable debug mode to see detailed retrieval information:
  • Search keys generated by the LLM
  • Chunks found for each search
  • Relevance scores
  • Deduplication statistics
  • Score distributions

Chunking Strategies

Structural Chunking

Default - Fast processing

LLM-Based Semantic

More accurate context

Troubleshooting

If gaia talk fails with “No module named ‘pip’”, install dependencies manually:
  • Ensure PDF has extractable text (not scanned images)
  • Check file is not password-protected
  • Verify file is not corrupted

Dynamic Tool Loading

Off by default, doc profile only. This is the first stage of a phased rollout (Dynamic Tool Loader plan); enable it explicitly to try it.
The doc profile can load tools semantically per turn instead of showing the LLM every registered tool on every turn. A small always-on CORE set is combined with tools whose descriptions best match the conversation, which shrinks the first-turn prompt and speeds up the first reply. It activates only on the doc profile (the registered doc agent, the SDK with ChatAgentConfig(prompt_profile="doc"), or gaia eval agent --agent-type doc). Turn it on with the config field, an environment variable, or the Agent UI Settings → Dynamic Tools (Beta) toggle. The env var wins over both — when it is set, the UI toggle reflects the effective value and disables itself — which is handy for the eval harness:
It needs memory enabled (it reuses the memory embedder). If memory is off, the toggle is off, or the embedder is unreachable, the agent automatically falls back to showing all tools — so a turn never loses access to a tool it needs. See the Dynamic Tool Loader plan for the full design.

Next Steps

GAIA Chat Desktop

Privacy-first desktop app with drag-and-drop document Q&A

Agent SDK Reference

Classes, methods, and code examples

Voice Interaction

Add speech recognition and text-to-speech

CLI Reference

Explore all command-line options

Agent UI SDK Reference

Python backend API for the desktop chat application

API Server

Integrate via OpenAI-compatible API