| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 6385 |
| Technical Name |
search_ai |
| License | OPL-1 |
| Website | http://auraodoo.tech/ |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 6385 |
| Technical Name |
search_ai |
| License | OPL-1 |
| Website | http://auraodoo.tech/ |
Search AI by Aura Odoo Tech
Natural Language AI Search for Odoo — powered by Google Gemini
v19.0.2.0.0
Stable Release
Watch Demo Video
What is Search AI?
Transform how your team interacts with business data by enabling natural language search within Odoo. With our AI-powered assistant, users can ask intuitive questions and get precise results instantly — no filters, no domain knowledge required.
- "show me all invoices over $5,000 this month"
- "which leads don't have a salesperson assigned"
- "open sales orders from this year"
- "contacts without an email address"
- "products with price less than 10"
- "draft purchase orders from last month"
- "manufacturing orders in progress"
- "approved leave requests this month"
Key Features
Natural Language Search
Ask questions the way you think. The AI converts plain English into precise Odoo search domains automatically.
Google Gemini AI
Powered by Google Gemini models including gemini-2.5-flash, gemini-2.5-pro, gemini-2.0-flash, and gemini-2.0-flash-lite. Free API tier available.
Systray Quick Access
A persistent AI Search button in the top navigation bar for instant access from any screen in Odoo.
Direct Filter Mode
Build Odoo domain filters manually without AI. Select a model, choose fields, set conditions, and execute searches directly.
Aggregate Queries
Execute group-by and aggregation queries for summarized data. Supports count, sum, and other aggregate functions.
Smart Suggestions
Context-aware search suggestions based on installed models. Start typing and get relevant query ideas instantly.
Domain Validation
Auto-fixes field aliases, corrects typos, validates domains using Odoo's native Domain AST, and resolves date placeholders.
Secure API Key Storage
Gemini API key is stored server-side as an Odoo system parameter. It is never exposed to the browser or frontend code.
Access Rights Compliant
All search results respect Odoo's standard access control rules. Users only see records they are permitted to view.
OpenAI GPT Support
Choose between Google Gemini and OpenAI GPT models (GPT-4.1, GPT-4o, o3-mini). Switch providers anytime from Settings.
CSV Export
Export all search results or selected records to CSV with one click. Data is ready to open in Excel or Google Sheets.
Chart.js Visualizations
Visualize aggregate data with interactive Bar, Pie, and Doughnut charts. Distribution charts show field value breakdowns.
Global Multi-Model Search
Search across ALL installed Odoo models simultaneously with a single query. Results are grouped by model for easy browsing.
Record Detail Preview
Click any record row to open a rich detail preview panel showing all readable fields — without navigating away from results.
Quick Filter Presets
One-click presets per model (Draft Invoices, Confirmed Orders, Approved Leaves, etc.) — no typing needed for common searches.
Row Selection & Batch Export
Select individual rows with checkboxes and export only the selected records to CSV. Includes select-all / deselect-all controls.
Temperature Control
Fine-tune AI creativity with adjustable temperature (0.0 – 2.0). Lower values give deterministic results; higher values allow creative interpretation.
How It Works
1. User Types a Question
The user enters a natural language query such as "unpaid customer invoices from last month" in the AI Search dialog or the dedicated action page.
2. AI Parses the Query
The query is sent server-side to Google Gemini with a detailed system prompt containing installed models, field definitions, selection values, and pre-computed date references.
3. Domain Validation and Fixing
The returned domain is validated and auto-corrected: field aliases are resolved, unknown fields are dropped, operators are adjusted for field types, and the domain is optimized via Odoo's Domain AST.
4. Results Displayed
Records matching the domain are fetched via
search_read and displayed in a clean table. Each row is
clickable to
navigate directly to the Odoo record.
Setup Guide
- Visit https://aistudio.google.com/app/apikey
- Sign in with your Google account.
- Click "Create API Key" and copy it securely.
- Go to Settings → General Settings → Search AI.
- Enable "Enable AI Search Widget".
- Paste your Gemini API Key in the field.
- Select a Gemini model (default: gemini-2.5-flash).
- Set the maximum results per search (default: 20).
- Save settings.
- Click the AI Search button in the top navigation bar.
- Type your question in natural language.
- Browse results and click any row to open the record.
Supported Models
Search AI supports 18 Odoo models out of the box. Only models that are actually installed in your database are sent to the AI.
| Model | Description | Key Fields |
|---|---|---|
account.move |
Invoices, Bills, Credit Notes | name, amount_total, invoice_date, state, move_type, partner_id |
account.move.line |
Invoice Lines | name, quantity, price_unit, price_subtotal, account_id |
crm.lead |
CRM Leads and Opportunities | name, partner_name, email_from, user_id, stage_id, probability |
sale.order |
Sales Orders | name, partner_id, user_id, amount_total, state, date_order |
sale.order.line |
Sales Order Lines | product_id, product_uom_qty, price_unit, price_subtotal |
purchase.order |
Purchase Orders | name, partner_id, user_id, amount_total, state, date_order |
purchase.order.line |
Purchase Order Lines | product_id, product_qty, price_unit, price_subtotal |
res.partner |
Contacts / Customers / Vendors | name, email, phone, is_company, customer_rank, country_id, city |
product.template |
Products | name, list_price, standard_price, type, categ_id, active |
product.product |
Product Variants | name, list_price, standard_price, product_tmpl_id |
stock.picking |
Inventory Transfers / Deliveries | name, partner_id, state, scheduled_date, origin |
stock.move |
Stock Moves | name, product_id, product_uom_qty, state |
mrp.production |
Manufacturing Orders | name, product_id, product_qty, state, date_start |
project.project |
Projects | name, user_id, partner_id, date_start, state |
project.task |
Tasks | name, project_id, user_ids, stage_id, priority, date_deadline |
hr.employee |
Employees | name, job_id, department_id, work_email, active |
hr.leave |
Leave Requests | employee_id, holiday_status_id, date_from, date_to, state |
res.users |
Users | name, login, email, active, groups_id |
Configuration Options
| Setting | Description | Default |
|---|---|---|
| Enable AI Search Widget | Show or hide the AI Search button in the systray navigation bar | Enabled |
| AI Provider | Choose AI provider: Google Gemini or OpenAI (GPT) | Google Gemini |
| Gemini API Key | Your Google Gemini API key, stored securely as an Odoo system parameter | — |
| OpenAI API Key | Your OpenAI API key for GPT models, stored securely server-side | — |
| AI Model | Select which AI model to use (changes based on selected provider) | gemini-2.5-flash |
| Temperature | Controls randomness (0.0 = deterministic, 2.0 = creative). Recommended: 0.1 | 0.1 |
| Max Results per Search | Maximum number of records returned per search query | 20 |
Available AI Models
Google Gemini
| Model ID | Description |
|---|---|
gemini-2.5-flash |
Best & Fastest (Default) |
gemini-2.5-flash-lite |
Max Speed & Cost-Efficient |
gemini-2.5-pro |
Advanced Reasoning, 1M Context |
gemini-2.0-flash |
Fast, Multimodal |
gemini-2.0-flash-lite |
Lightweight, High-Frequency |
OpenAI GPT
| Model ID | Description |
|---|---|
gpt-4.1 |
Flagship, Best Overall |
gpt-4.1-mini |
Balanced Speed & Quality |
gpt-4.1-nano |
Fastest, Cost-Efficient |
gpt-4o |
Multimodal, High Intelligence |
gpt-4o-mini |
Lightweight, Fast |
o3-mini |
Advanced Reasoning |
Smart Features
Field Alias Resolution
Common field name variations are automatically resolved. For example:
status→statecustomer→partner_idsalesperson→user_idamount→amount_totalcategory→categ_id
Automatic Date Handling
The system pre-computes 17 date references and passes them to the AI:
- Today, Yesterday
- This month start/end, Last month start/end
- This quarter start/end, Last quarter start/end
- This year start/end, Last year start/end
- Last 7, 30, 90 days
Dynamic Selection Hints
Selection field values are read dynamically from installed models so the AI always uses the correct state, type, and status values for your specific Odoo setup.
Robust Error Handling
Multiple JSON parsing fallbacks, safety filter detection, rate limit handling, connection error recovery, and graceful domain fallback when execution fails.
Technical Details
- Module Name search_ai
- Version 19.0.2.0.0
- Category Productivity
- License OPL-1
- Author Aura Odoo Tech
- Odoo Version 19.0
- Odoo Dependencies base, web, mail
- Python Library requests
- Frontend Framework OWL (Odoo Web Library)
- API Protocol JSON-RPC
- External API Google Gemini REST API
- Application Yes
Support and Contact
For customization, integration assistance, or any questions about this module, please reach out to our team.
Website
auraodoo.techYouTube
@AuraodooMicrosoft Teams
Join TeamsOdoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module