AdvancedDassault ENOVIA (on-prem)Private AI layer / MQL / 3DSpace

How to add AI to ENOVIA and on-prem 3DEXPERIENCE

Question
how to add AI to ENOVIA on-prem

Also searched as

  • ENOVIA AI integration without cloud
  • ENOVIA MQL query for AI assistant
  • 3DEXPERIENCE on-prem private LLM
  • chat with ENOVIA data on-premises

Short answer

Read ENOVIA data through supported interfaces: MQL and the Java API (matrix.db.Context, JPOs) on the kernel, or the 3DSpace web services where deployed, always in the context of the asking user's person and security context. Serve an open-weight model on local GPUs and index documents locally, so Dassault's role and policy model keeps deciding what is visible.

Applies to: ENOVIA V6 and on-prem 3DEXPERIENCE (R20xx releases) with Oracle or SQL Server. Cloud 3DEXPERIENCE on Dassault's platform follows a different path.

Reference build for a private AI layer on ENOVIA

  1. 1List question classes: part, document and engineering item lookup, structure and where-used, lifecycle state and policy, change actions, and content Q and A over attached documents.
  2. 2Choose the interface per class. Use JPOs or Java API reads for custom schema, and the 3DSpace web services for standard modelers where they are deployed and secured on your platform.
  3. 3Build a tool server with named read actions that open a Context for the asking user, run bounded MQL or API calls and return structured results with object ids.
  4. 4Extract text from document files held in ENOVIA file stores via a worker, store type, name, revision, policy and state with every chunk, and keep an access marker.
  5. 5Serve a local open-weight model with vLLM, local embeddings and a local vector index. No outbound route from the model host.
  6. 6Carry the user's identity and security context into every call. Log all tool calls and the bus object ids returned.
  7. 7Phase in read-only Q and A first, then drafted change actions and review summaries, then supported lifecycle promotes and creates after approval.

Data access paths in ENOVIA

ENOVIA's kernel stores business objects (types, names, revisions), relationships, attributes, policies with states, and person, role and security context definitions. The native query language is MQL, and the Java API exposes the same model through classes such as matrix.db.Context and BusinessObject. Custom behaviour is usually written as Java Program Objects (JPOs) invoked by the kernel.

Do not read the underlying Oracle or SQL Server tables directly. The storage layout is internal to the kernel and bypasses access rules. On 3DEXPERIENCE platforms, the 3DSpace web services provide REST access to standard modelers behind 3DPassport authentication, and 3DSearch can provide index driven retrieval where deployed.

temp query bus Part * * where "current==Released" limit 50 select id name revision description current dump |;
// Java sketch: open a context as the asking user and run a bounded MQL read
Context ctx = new Context(serverUrl);
ctx.setUser(userName);
ctx.connect();
String out = MqlUtil.mqlCommand(ctx, "temp query bus Part A-10045 * select id revision current dump |");

Reference architecture

Place the components in the same enclave as the ENOVIA application server: a tool server using the Java API or web services, a document extraction worker, a vector index, a GPU host and an audit store. Optionally use a reporting copy of the database for aggregate questions you have validated against MQL results, since schema meaning depends on your data model customisation.

Change feeds are not standard. Plan scheduled re-indexing by modification date per type, plus triggers or event hooks for lifecycle promotions if your team already maintains triggers for integrations. In an air-gapped site everything, including weights and packages, enters by controlled media.

Permissions, security contexts and write-back

ENOVIA authorises users by person, role, organisation and project in a security context, then applies policy state access, ownership and any ABAC style rules your implementation adds. Opening a Context for the real user with the right security context makes the kernel enforce this, which is why the tool server must not use a shared administrator login.

For writes, use the same Java API or web service operations the applications use: create a change action, add a note, or promote a state through supported calls so triggers and policy checks fire. Show the user the exact payload, run under their identity, and log the resulting object. Do not let the model run raw MQL that modifies objects.

Sizing, limits and honest trade-offs

A pilot for 25 to 60 engineers typically fits one to two GPUs of 48 to 80 GB. Wider rollout to several hundred named users plans two to four GPUs, separate CPU capacity for extraction, and an index of tens of GB for a few hundred thousand documents. Treat these as planning ranges and validate with a concurrency test.

Limits: heavy customisation means object names and attributes differ per site, so tool actions must be written against your model. Geometry and simulation data are not readable by a text model. If your users are already on cloud 3DEXPERIENCE and can use Dassault's own assistants, those may be enough; the private layer pays off when the platform is on-prem and the data cannot leave.

Try it here, free

ENOVIA Private AI Layer Blueprint Generator

Open full tool

Create a shareable plan for adding a private AI assistant to on-prem ENOVIA or 3DEXPERIENCE using MQL, the Java API or 3DSpace web services.

Common pitfalls

  • !Using one super-user Context for the integration and losing per-user security.
  • !Running free-form MQL composed by the model. Offer parameterised, read-only actions.
  • !Ignoring policy and state when quoting content, so an In Work revision looks like a released one.
  • !Querying kernel tables directly. Their layout is internal and bypasses access control.
  • !Assuming type and attribute names from a demo database. Production models are customised.
  • !Forgetting that triggers run on writes. Test write actions in a non-production environment first.

How an ERP-grounded AI assistant handles this

A grounded assistant on ENOVIA answers 'which released parts are affected by this change action' by running bounded reads as the user and presenting the objects with state and revision. Netray builds this as a private layer with local models, mirrored security and an audit log, delivered with Dassault-skilled partners where the data model is heavily customised.

Frequently asked questions

MQL, JPO or web services: which should I use?

Use web services for standard modelers if they are deployed and secured on your platform, and MQL or JPOs for custom schema and exact control. Whichever you pick, wrap it in a named action in the tool server and keep it read-only.

Does this apply to cloud 3DEXPERIENCE?

Not directly. This design targets on-prem ENOVIA and 3DEXPERIENCE where you operate the servers and control the data boundary. Cloud deployments have different APIs, tenancy and data residency questions.

How are security contexts handled?

The tool server opens a Context for the real user with the matching security context, so the kernel applies its normal checks. Indexed chunks hold type, policy and state, and are re-verified by a live read before display.

Can the assistant promote lifecycle states?

Only as a proposed action that the user approves, executed through supported calls under their identity so triggers and checks fire. Autonomous promotion is not recommended for controlled design data.

Related

Advanced

How to add AI to Teamcenter on-prem without moving your PLM data

Run an open-weight model on your own GPUs, expose a small set of read-only Teamcenter actions through a tool server that calls the Teamcenter SOA web services as the asking user, and index documents and datasets locally. Teamcenter's Access Manager keeps deciding who sees what, so the assistant cannot show a user anything their own session could not open.

Advanced

How to add AI to Autodesk Vault on-prem using the Vault API

Use the Vault web services API to read files, properties, items and change orders as the asking user, extract document text through the Job Processor or a service, and serve an open-weight model on your own hardware. Vault's roles, folder access control and lifecycle state security stay in force because every read goes through the server.

How-to

How to send a Windchill BOM to your ERP

Release the BOM from Windchill on an approved change, not on demand. Use PTC's Enterprise Systems Integration (ESI) for a managed release to SAP or Oracle-class ERPs, or build the feed on Windchill REST Services (OData) for other targets. Map part, structure, revision and effectivity explicitly, and make the ERP response visible back in Windchill.

Advanced

How to add a private AI layer to Infor LX / BPCS on-prem

BPCS and Infor LX run on IBM i with their data in Db2 for i, in files that carry short coded names by module. A private AI layer reads those files through read-only SQL views over a replica, indexes documents and attachments separately, exposes approved queries through a tool server, and serves an open-weight model on local GPUs. Writes, if any, go through the supported transaction programs with human approval.

Advanced

How to add a private AI layer to Infor System21 on-prem

System21 runs on IBM i with its business data in Db2 for i. The practical private AI pattern is a read-only replica or extract, SQL views that give files readable names, a retrieval index over documents, a tool server of approved queries, and a locally served open-weight model. User visibility is carried over from System21 security and company set-up, and writes only go through its supported entry points after approval.

Advanced

How to add a private AI layer to Infor EAM on-prem

On-prem Infor EAM stores its data in an Oracle or SQL Server schema whose tables use the R5 prefix, and it exposes web services for supported access. A private AI layer reads equipment, work order and parts data through read-only views on a reporting copy, indexes failure notes and manuals for retrieval, mirrors EAM organisation security, and serves an open-weight model locally. Work orders created or changed by the assistant go through EAM's web services after a person approves.

AI for ERP

A Private LLM Grounded on Your ERP Data

How a private LLM answers questions on your ERP data: RAG plus text-to-SQL, role-based permissions inherited from the ERP, and where each fits.

AI for ERP

AI Agents for ERP, Running On-Prem

A practical guide to on-prem AI agents for ERP: what they can safely automate, where human approval belongs, and how to design the guardrails.

AI for ERP

On-Prem AI for ERP in Aerospace, Defense, and Electronics Manufacturing

A hub guide to on-prem AI across SAP, Infor LN, Costpoint, IFS, and Oracle EBS for aerospace, defense, and electronics manufacturers under ITAR, CMMC, and AS9100.

Stuck on Dassault ENOVIA (on-prem)?

Talk to engineers who work inside Dassault ENOVIA (on-prem) every week, and who build private AI that answers these questions from your own ERP data.