Odoo RAG Chatbot System
A Retrieval-Augmented Generation (RAG) AI system that enables users to query Odoo-stored documents via natural language. Designed for accuracy, scalability, and real-time synchronization, it delivers grounded, context-aware answers while reducing manual searches and support requests.
Client
Compose Digital
Service
AI Product Strategy & Ownership
Date
June 2025
Project Overview
Many organizations store critical knowledge inside Odoo (documents, attachments, internal files), but accessing that information usually requires manual searching, navigation, or support requests. This project aimed to unlock that knowledge through natural language, allowing users to simply ask questions and receive accurate, context-aware answers.
I designed and delivered an AI-powered Retrieval-Augmented Generation (RAG) chatbot that enables users to chat directly with Odoo-stored documents, while ensuring data accuracy, scalability, and maintainability.
Problem Statement
Knowledge was fragmented across Odoo documents and difficult to retrieve quickly.
Users relied on manual searches or support teams to find information.
Traditional chatbots failed due to hallucinations or lack of document grounding.
Document updates were frequent, requiring reliable synchronization with the AI system.
Solution
I built a RAG-based conversational system tightly integrated with Odoo, designed around automation, accuracy, and real-world usage.
The solution:
Ingests and indexes Odoo documents automatically
Retrieves only relevant, context-specific content
Generates grounded responses based strictly on retrieved data
Stays synchronized with document updates and deletions
The result is a chatbot that behaves less like a generic assistant and more like a knowledge interface for Odoo.
System Architecture & Approach
The system was designed as a modular, event-driven pipeline:
Document ingestion from Odoo (attachments, files, updates)
Automated processing workflows triggered via webhooks
Vector embedding and storage in a dedicated vector database
Contextual retrieval based on user queries
LLM-based response generation grounded in retrieved content
Cleanup and re-sync logic to handle document changes reliably
Special care was taken to:
Avoid stale embeddings
Prevent irrelevant context injection
Balance latency, accuracy, and cost
Key Responsibilities
Designed the end-to-end RAG architecture for Odoo document querying
Built automated ingestion and synchronization workflows using n8n
Defined the vector database schema and embedding strategy
Implemented contextual retrieval logic to improve answer relevance
Designed conversational UX logic to guide users toward clear, answerable queries
Integrated webhook-based triggers for document updates and cleanup
Conducted performance benchmarking and retrieval quality testing
Tuned chunking, embeddings, and prompts to reduce hallucinations
Technologies Used
Odoo — document source and business system
n8n — workflow automation and orchestration
Supabase Vector — vector storage and similarity search
OpenAI / Gemini — embeddings and response generation
Python — processing, validation, and testing logic
Webhooks — real-time synchronization triggers
Challenges & Learnings
Ensuring data freshness was more critical than model choice
Poor chunking quickly degraded answer quality
RAG systems require strong retrieval discipline to avoid hallucinations
Automation and cleanup workflows are essential for production readiness
This project reinforced that RAG is a systems problem, not just an LLM problem.
Outcome & Impact
Enabled instant access to Odoo knowledge through natural language
Reduced reliance on manual searches and support requests
Delivered a scalable foundation that can be extended to new document types
Provided a production-ready RAG pattern reusable across other systems



