Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Technical
  3. AI Fields (BytesRaw) v 19.0
  4. Sales Conditions FAQ

AI Fields (BytesRaw)

by Fasil https://www.bytesraw.com , Bytesraw https://www.bytesraw.com
Odoo

$ 113.62

v 19.0 Third Party
Apps purchases are linked to your Odoo account, please sign in or sign up first.
You bought this module and need support? Click here!
  • Description
  • Manifest
  • License
●  Available for Odoo 19.0

AI Fields (BytesRaw)

Fill a field from an LLM prompt, recomputed when its inputs change

⭐ 19.0.1.0.0 📜 OPL-1 💰 89 USD 🏷️ Technical
Explore Features → Contact Support
OVERVIEW

Point a field at a prompt.
Let it keep itself filled.

AI Fields lets you point an existing text field at a prompt and have an AI agent keep it filled. A two-sentence summary on a lead, a suggested reply on a helpdesk ticket, a normalised product description, a plain-English digest of a long note — written once as a definition, then maintained automatically as the underlying record changes.

Configuration is entirely declarative: pick the model, the field to fill, the prompt, the agent, which fields the AI is allowed to see, and which fields should trigger a rewrite. No code, no custom module, no computed field to maintain.

✍️

Prompts Instead of Code

Describe what you want in plain language and choose the fields the agent gets to read. The result lands in a normal Odoo field that works everywhere fields work: list views, filters, reports and exports.

⏱️

Queued, Never Inline

A write never waits on an AI provider. Changing a trigger field marks the record stale and a scheduled job fills it moments later, so saving stays instant, a provider outage never rolls back a user’s edit, and a failure is a retry rather than a lost transaction.

🔒

Generation Runs as a Real User

Every definition names a Run As user, and the record is serialized through that user’s access rights before it reaches the model. An AI field can never become a back door to data that user could not read — while the final write is elevated, so the field gets filled even for users who cannot edit it themselves.

FEATURES

Declarative setup.
Predictable cost.

Ten behaviours designed around one principle: an AI field must never slow down a write, surprise a user, or quietly overwrite their work.

🎯

Target Any Text Field

Fill any stored, editable char, text or HTML field on any non-transient model — a native Odoo field or one you added yourself. The field picker only offers fields that can actually be written, so a misconfiguration is caught at setup rather than at runtime.

🔄

Trigger on the Fields That Matter

Choose exactly which fields should cause a rewrite. Change the customer’s description and the summary refreshes; change an unrelated internal reference and nothing is spent. Leave the trigger list empty and every write to the record queues a regeneration.

⚠️

Guardrails Built Into the Form

A field cannot trigger itself, so a definition can never loop. And if you pick a stored computed field as a trigger — which Odoo never routes through the normal write path — the form warns you immediately and tells you to trigger on the fields its computation depends on instead.

👁️

Control What the AI Sees

Fields Given to the AI decides the entire context the model receives. Binaries never reach the prompt, fields the Run As user cannot read are silently omitted, relations arrive as compact references, and long values are capped — so every generation stays cheap and safe.

🎯

Scope With a Domain

Attach a domain to the definition and only matching records are ever filled — high-value leads, tickets in a given team, products in one category. The domain is honoured both by the trigger path and by bulk backfills, so no record slips through.

🛡️

Human Edits Are Safe by Default

Overwrite Existing is off, so a field that already has a value — whether written by a person or a previous generation — is left alone. Turn it on when you want the value to be genuinely derived and always current.

📦

Backfill Existing Data

The Fill Existing Records button queues every record matching the definition, with a confirmation dialog that reminds you each one costs an LLM call. Use it once after setting up a definition to bring your existing database up to date.

🧾

A Visible Queue

Each definition shows how many records are waiting. Behind it, a queue row per record records whether the generation succeeded, failed or was skipped, and keeps the error message when something went wrong — so a bad prompt or an unreachable provider is diagnosable, not silent.

⚡

Near-Zero Cost on Ordinary Writes

The hook that queues work sits on every model but is designed to disappear on the common path: a single cached lookup of which models even have AI fields, and an immediate return for the overwhelming majority of writes that touch none.

🔁

Resilient Batch Processing

The scheduled job fills records in batches, commits after each one, and re-arms itself while work remains. One record failing on a provider hiccup never discards the ones already generated, and never stalls the queue.

CONFIGURATION

One definition per field.

Nothing generates — and nothing is billed — until you activate the scheduled action yourself.

1

Check the prerequisites

At least one tested provider under AI → Configuration → AI Providers, and an agent with connection lines.

2

Enable the scheduled action

Activate AI Fields: fill queued records under Settings → Technical → Scheduled Actions. It ships inactive.

3

Create a definition

Navigate to AI → AI Fields → New.

4

Choose the target

Pick the Model and the Field to Fill — only writable text fields are offered.

5

Write the prompt

Describe the output you want in the Prompt box.

6

Pick agent and identity

Choose the Agent that generates the text and the Run As user whose rights bound what it can see.

7

Bound context and triggers

Select Fields Given to the AI, Recompute When These Change, and optionally a Domain.

8

Decide about overwriting

Leave Overwrite Existing off to protect values already present, or turn it on for a genuinely derived field.

SCREENSHOTS

See it in action

Setting up a definition, and the result on the record.

1
Defining an AI field Target model and field, prompt, agent, run-as user, context fields, triggers and domain.
AI Field definition form with model, field, prompt, agent and trigger configuration.
2
The generated value on the record An ordinary Odoo field, filled by the agent.
A record showing a text field populated by an AI field definition.
USAGE

Three ways to put it to work

Summarize automatically, keep the spend bounded, and diagnose anything that does not fill.

WORKFLOW · 01

Summarize a Record Automatically

Give your team a one-glance summary that keeps itself up to date.

✓
Go to AI → AI Fields and click New. Name it after its purpose, for example Lead summary.
✓
Pick the Model and the Field to Fill — an existing text field, or one you added for the purpose.
✓
Write the Prompt: “Write a two-sentence summary of this lead for a sales rep, mentioning the customer, the need and the next step.”
✓
Under Fields Given to the AI, add only what the summary needs — customer, expected revenue, description, stage.
✓
Under Recompute When These Change, add the same handful of fields so the summary refreshes when they do.
✓
Save, then click Fill Existing Records to backfill what you already have.
WORKFLOW · 02

Restrict Generation to Records Worth Spending On

Keep the AI focused — and the bill predictable — by filling only the records that matter.

✓
Open the definition and click the Domain field to open the domain editor.
✓
Build the condition, for example expected revenue above a threshold, or a specific sales team.
✓
Save. Trigger-driven generations and bulk backfills both respect the domain.
✓
Check Pending on the definition to see how much work is queued at any moment.
WORKFLOW · 03

Diagnose a Field That Is Not Filling

Work out why a value has not appeared.

✓
Confirm the AI Fields: fill queued records scheduled action is active.
✓
Check that the record actually matches the definition’s Domain.
✓
If the field already had a value, remember that Overwrite Existing is off by default.
✓
If you triggered on a stored computed field, the form warned you: switch the trigger to the fields that computation depends on.
✓
Look in AI → Configuration → Tool Logs and Usage Logs to confirm the agent is reaching its provider at all.
KNOWN ISSUES

Full transparency

The current limitations, stated plainly.

⏱️

Values appear on the next scheduled run

Generation is asynchronous by design, so a value appears after the cron runs, not the moment you save. On the default 10-minute schedule, expect a short delay; shorten the interval if you need it tighter, keeping in mind that each queued record is one billable LLM call. The scheduled action ships inactive — nothing generates, and nothing is billed, until an administrator turns it on.

⚠️

Stored computed fields cannot act as triggers

Odoo does not write them through the normal write path, so a definition triggering on one would silently never fire. The form warns about this on selection; trigger on the fields the computation depends on instead.

📄

Text fields only

Only char, text and HTML fields can be filled. Numeric, date, selection and relational fields are out of scope.

💰

No per-definition budget

Cost control lives on the provider (daily token budgets) and on the definition’s domain and trigger list. A definition with no triggers and no domain queues a generation on every write to every record of that model — set both deliberately.

FAQ

Questions, answered

Quick answers to the questions buyers ask most.

Q

Why is the value not written immediately when I save?

Because an LLM call inside your write transaction would put a multi-second network round-trip on the critical path of every save, and a provider failure would roll back your edit. The record is marked stale instead and a scheduled job fills it a few moments later.

Q

Can an AI field expose data a user should not see?

No. The agent reads the record through the Run As user’s access rights, so unreadable fields are omitted from the prompt. Only the final write to the target field is elevated — which is what lets the field be filled for users who cannot edit it themselves.

Q

Will it overwrite something a person wrote?

Not unless you ask it to. Overwrite Existing is off by default, so any field that already holds a value is skipped.

Q

Can I use it on a custom field I created in Studio?

Yes. Any stored, editable text field on a non-transient model is a valid target.

Q

What happens if the provider is down when a record is queued?

That record’s queue entry is marked failed with the error message, the rest of the batch continues, and the definition’s pending count tells you what is outstanding.

Q

How much does it cost to run?

One LLM call per record filled. Keep Fields Given to the AI tight, choose triggers narrowly, and use the definition’s Domain — those three settings are what determine your spend.

CHANGELOG

Release history

A clean record of every release.

2026-07-23 · Latest release
v19.0.1.0.0
▸ Initial release: declarative AI field definitions with prompt, agent and run-as user
▸ Queued generation via a scheduled action, with per-record commits and self-re-triggering batches
▸ Trigger fields, context field selection and a record domain, honoured on both the write path and bulk backfill
▸ Self-trigger prevention and an on-selection warning for stored computed fields that can never fire
▸ Fill Existing Records backfill action and a visible pending queue with per-record error messages
Bytesraw logo

Bytesraw

Automate your success
🌐 www.bytesraw.com

🛠️ Need help?

Got a question, found a bug, or need a custom enhancement? Our support team responds within 24 hours on business days.

help@bytesraw.com →

💼 Custom development

Need this module tailored to your workflow, or a brand-new Odoo solution? Let’s talk about your project.

info@bytesraw.com →
OUR EXPERTISE
✓
Odoo Development
✓
Functional Training
✓
Community Upgradations
✓
Python & PostgreSQL
✓
Hosting Solutions
✓
Automation
✓
Security
✓
API & 3rd-Party Integrations
✓
E-commerce & POS Solutions
© 2026 Bytesraw · All rights reserved · Licensed under OPL-1
Availability
Odoo Online
Odoo.sh
On Premise
Community Apps Dependencies Show
• AI Agent (BytesRaw)
• AI Base (BytesRaw)
Lines of code 6245
Technical Name ai_fields_bytesraw
LicenseOPL-1
Websitehttps://www.bytesraw.com
Odoo 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

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author or have a question related to your purchase, please use the support page.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with