Skip to main content
Manufacturing AI Work-Instruction Copilot

Setting up Manufacturing AI Work-Instruction Copilot: a worked example from start to finish

To get Manufacturing AI Work-Instruction Copilot running, you create an AI provider with the AI Provider Setup wizard, fill in the settings under Generation & Caching and Data & Privacy, review the Prompt Templates and learn to read the states on each record. In the first week you check the connection status, the AI Cost (Estimated) list and which instructions are awaiting approval. Below we walk through it with a made-up company, step by step.

FlexigoTech · Editor in charge: Víctor Gómez · Updated 4 November 2026

Key facts

Versions
Odoo 17, 18 and 19
Checked
in the module's source code, version 19.0 · against the sources linked at the end
Reading time
5 min

Before you start: versions and what you will touch

Manufacturing AI Work-Instruction Copilot is published on Odoo Apps for Odoo 17.0, 18.0 and 19.0. On all three listings it costs €49 excluding VAT, a one-off payment per version.

Setting it up takes you through four screens: the AI Provider Setup wizard, the module settings, the Prompt Templates list and the AI Work Instructions › AI Providers list. Then, during the first week, AI Work Instructions › Reporting › AI Cost (Estimated) and the state fields on the records come into play. If you would like an overview of the menus and records first, see how the module works under the bonnet.

The case: Albera Machining sets up the copilot

Example Illustrative case: the company and its figures are made up to explain the flow.

Albera Machining is a made-up company that produces machined parts and runs Odoo 18. Marta, its production manager, has installed the module and wants it ready so her team can review the first work instructions. This is the order she follows.

Step one: create the AI provider

Marta opens the AI Provider Setup dialog. She types a name in Name, chooses Ollama (self-hosted) in Provider Type, fills in Model Name (it arrives empty, with placeholder text) and checks Api Url, which points to localhost. She clicks Create Provider.

Sequence of the AI Provider Setup wizard, the module settings, the Prompt Templates list and the AI Providers list
From creating the provider to seeing it listed: wizard, settings, sector templates and providers with zero costs

The provider shows up under AI Work Instructions › AI Providers. In Marta's database there are two rows, one for OpenAI and one called Ollama Local, both of type Ollama (self-hosted).

AI Providers list with two providers of type Ollama self-hosted and zero costs
AI Work Instructions › AI Providers with two providers and every cost still at zero

The module defines a connection status, connection_status, with three values: Unknown, OK and Error. Marta does not consider this step done until she sees OK.

Step two: the module settings

On the settings screen, the module groups its options under Generation & Caching and Data & Privacy. These are the fields, with their label and technical name:

  • AI Cache TTL (days) (mai_cache_ttl_days), a whole number of days.
  • Pre-Generation Batch Size (mai_pregen_batch), a whole number.
  • Output Content Filter (mai_content_filter_enabled), a tick box.
  • Q&A Retention (days) (mai_retention_days), a whole number of days.
  • Training Cleanup (days) (mai_training_retention_days), a whole number of days.
  • Max Attachment Size (MB) (mai_max_attachment_mb), a whole number.
  • Structured JSON Logs (mai_json_logs), a tick box.

Marta does not make the numbers up on the spot: she agrees the retention days with whoever handles data protection in the company, and the maximum attachment size with whoever prepares the drawings and documents. She ticks Output Content Filter and turns on Structured JSON Logs because her IT team asked for it.

Step three: review the prompt templates

In the Prompt Templates list she finds six sector templates: Assembly, Chemical, Food & Beverage, General, Machining and Packaging. The list has columns for label, default, version and active. As Albera does machining, Marta looks at Machining and uses those columns to check which template is marked as default and which are active.

The states Marta will see on each record

The module works with several state fields. We list them with their values as the module defines them; this page does not assume any transitions the code does not describe.

  • Pre-generation (ai_pre_generation_state): Not Started, Queued, Generated and Error.
  • Instruction status (ai_instruction_status): Not Generated, Draft, Pending Approval, Approved and Locked.
  • Approval (state): Pending Approval and Approved.
  • Another state field, with more values: Draft, Pending Approval, Approved, Locked and Replaced.

What matters for Marta is telling the fields apart: Replaced only exists in the last one, and Queued and Generated belong to the pre-generation field, not to the instruction status. If someone on her team says 'it is approved', she asks which field they saw it in.

What Marta checks in the first week

With the module in use, Marta sets aside a few minutes each morning for these checks:

  • The connection status: if it shows Error or stays on Unknown, she notes it down before generating anything else.
  • Records with ai_pre_generation_state on Error or still on Queued.
  • Instructions on Pending Approval, so someone with technical judgement can review them.
  • The AI Work Instructions › Reporting › AI Cost (Estimated) list, where for now she only sees her two providers with costs at zero.
  • The values of Pre-Generation Batch Size and Max Attachment Size (MB), in case she wants to adjust them in light of what she has learnt.
AI Cost Estimated list with the two providers and monthly and total costs at zero
AI Cost (Estimated) in the first week: the two providers and costs at zero, with no usage records yet

She also opens the Manufacturing AI GDPR dialog to see what it asks for before she needs it. She sees the Mode field on Data Subject Access (export), the Data Subject and Limit to Work Order fields, and the Run and Close buttons. She does not run anything: she just gets familiar with it.

Manufacturing AI GDPR dialog with Mode on Data Subject Access export and the Run and Close buttons
The Manufacturing AI GDPR dialog with Data Subject and Limit to Work Order left blank, no records yet

When something does not add up and a warning appears, Marta turns to the module's error messages explained one by one.

What to take from the case

Setup is tidier if you keep three things separate: the AI provider, the settings and the templates. Each lives on its own screen and can be reviewed on its own.

The numbers in the settings are not purely technical choices: the days in Q&A Retention (days) and Training Cleanup (days) are worth agreeing with whoever is responsible for data in your company.

And the states: the module has more than one state field, with values that repeat (Pending Approval, Approved). Knowing which field you are looking at avoids misunderstandings within the team.

How FlexigoTech can help

At FlexigoTech we implement Odoo 17, 18, 19 and 20 and build bespoke connectors and integrations. If you would like support setting up the copilot or adapting it to your shop floor, you will find the details on the module page at flexigotech.com and on its Odoo Apps listing.

Keep reading

How Manufacturing AI Work-Instruction Copilot works inside OdooMenus, scheduled actions and models of Manufacturing AI Work-Instruction Copilot in Odoo 17, 18 and 19, explained question by question with their real names.Manufacturing AI Work-Instruction Copilot errors: what they mean and what to doWhat each error message in Manufacturing AI Work-Instruction Copilot for Odoo means, when it appears and what to do, quoting the module's exact text.Setting up EU Digital Services Act Compliance Suite in Odoo: a case from start to finishA worked case for setting up EU Digital Services Act Compliance Suite in Odoo: key fields, the states each record uses and what to check in week one.
Checked in the module's source code (version 19.0) and the linked sources

Sources