The real reason generic AI doesn't fit factories isn't that "the model isn't powerful enough" — it's that "factory data is scattered, rules are messy, and no one outside the team understands the sign-off logic." Nox-Lumen Mfg doesn't bet on AGI. Instead, it makes "machines can sign off, wrong orders get intercepted" the core loop for engineering procurement businesses.
Why a "Dual System" Rather Than Two Separate Tools
The chain from inquiry to production in engineering procurement naturally has two segments: drawing review → quotation. The inputs and outputs of these two segments are tightly coupled:
- The "structured window/door list" output from drawing review is exactly the input for quotation
- "Client preferences" for the same client are used by both segments
- The "red hard-stop" from the drawing engineer must be able to block the quotation system from accepting the order
If the two segments are separate tools, the interface is manually transferred, and wrong orders will still flow from drawing review to quotation, and from quotation to the factory. If both segments are modules in the same platform, they're automatically linked through file + state contracts, and wrong orders are intercepted at the source.
Drawing Review System: Free Engineers from "Flipping Through Drawings"
One-Line Description
Machine does the initial review; engineer does the final review. Frees drawing review engineers from "going through each drawing to verify dimensions/quantities/glass/hardware" — they only review the critical issues the machine flags. Client preferences and error patterns accumulate as reusable assets.
The system never replaces an engineer's sign-off. It never "acts on its own initiative" — it only asks questions; it never suggests values.
Core Capabilities (M1–M10)
Multi-Source Document Parsing
| File Type | Processing | Fallback on Failure |
|---|---|---|
| Drawing PDF (vector / scanned) | Parse by view per page | OCR for scanned pages |
| Window/door schedule xlsx / PDF | Table structure recognition + cell extraction | Cell-level OCR |
| Specification docx | Paragraph + client default value recognition | — |
| Client attachment PDF | Content classification (contract / node / hardware brand) | — |
| Mobile photo / handwritten | Vision model recognition + low confidence annotation | Flagged as "pending manual review" |
Key design: Every extracted field carries source + confidence. Low-confidence fields don't enter the main results directly — they require manual confirmation by sales / engineer. Never guess values on low-quality input.
Multi-View Reconciliation
| Field Type | Tolerance | Level When Inconsistent |
|---|---|---|
| Width / height (mm) | ±10mm or ±0.5% (whichever is larger) | 🔴 Red (numbers directly affect cost/manufacturing) |
| Quantity | Must be equal | 🔴 Red |
| Series / profile system | Must match after synonym normalization | 🔴 Red |
| Glass / color / finish | Must match after synonym normalization | 🟡 Yellow |
| Opening direction | String must match | 🟡 Yellow |
| Installation node reference | Referenced ID must exist in drawings | 🟡 Yellow |
| Naming style | Record only | 🔵 Blue |
Every reconciliation issue must list all source values + evidence pointers (which cell / which page, which region) + cropped image evidence.
Three-Layer Rule Library
| Layer | Content | Maintained By | Example |
|---|---|---|---|
| L1 Global Required | Fields required for any window/door | System built-in | Series / width / height / quantity / glass / opening |
| L2 Regional Standards | Country/system-specific requirements | System built-in (by region) | AS 2047 wind resistance, GB 50189 thermal, EN 14351 CE |
| L3 Client-Specific | Client contract / preferences | Project manager maintains in system | "All glass for Client X must be LowE+Argon" |
Every rule is visible and auditable: trigger conditions, severity, violation message, source. Client/project-level rules entered once, applied forever.
Issue Classification and Hard Gates
| Level | Meaning | Default Action | Who Can Release |
|---|---|---|---|
| 🔴 Red (Critical) | Number / quantity / series mismatch, or safety standard not met | Forced block — prohibited from entering quotation / production until resolved | Engineer sign-off |
| 🟡 Yellow (Important) | Glass / color / finish missing or inconsistent | Default block; can be waived (must provide reason) | Sales manager or engineer |
| 🔵 Blue (Info) | Naming style, non-critical inferable fields | Record only, no interruption | — |
Hard constraint: The system never allows a project with unresolved red issues to flow to quotation / production.
Quotation System: Turn 2,000 Historical Quotes into Searchable Assets
One-Line Description
Give sales reps a project-level composite $/m² recommendation (including add-ons), guaranteed not to lose money, aligned with similar historical projects. Transform 2,000 scattered historical quotes into a system-searchable knowledge asset.
The system never replaces sales rep judgment. It never builds factory BOM — factory ¥ is a black box input; the system doesn't replicate or intervene in factory internal cost calculations.
Project Tier Classifier
Projects are classified into 5 tiers by total square meters. Each tier learns independently to prevent large/small project strategies from contaminating each other:
| Tier | Range | Typical Scenario |
|---|---|---|
| XS | < 50 m² | Single-unit renovation |
| S | 50–200 m² | Small residential |
| M | 200–800 m² | Standard residential / townhouse |
| L | 800–3,000 m² | Large residential / small commercial |
| XL | > 3,000 m² | Large commercial / project collection |
Historical Memory Store
| Dimension | Design |
|---|---|
| Storage capacity | 2,000 historical projects (one-time bulk import) + every new quote |
| Retrieval method | Semantic search (project location / client type / glass configuration / hardware brand) + tier filter |
| Neighbor count | Returns 3–5 most similar projects per query, with $/m² and deal outcome |
| Historical influence | Neighbors' $/m² serves as recommended price anchor; combined with tier coefficient and breakeven constraint |
Recommended Price Engine
Every recommended number is traceable to:
- Factory rows (which BOM lines)
- Tier (XS/S/M/L/XL)
- Coefficient source (client type, add-ons, market adjustment)
- Historical neighbors (specific project IDs)
Breakeven Constraint
| Item | Content |
|---|---|
| Formula | Floor = total factory cost × (1 + minimum margin rate) |
| Minimum margin rate | Differentiated by project tier / client type; set by business owner |
| Hard constraint | Any quote (recommended price, negotiation floor) never goes below the floor |
| Exception alert | Sales rep quotes below floor outside the system → Lark alert |
See Quotation Solution.
Dual-System Hard Contract Integration
| Contract | Content | Mandatory |
|---|---|---|
| Review status | "Review Passed" / "Under Review" / "Rejected" | Quotation system checks at entry; not passed → forced rejection |
| Structured list schema | All fields complete for each window/door | Missing fields → quotation system rejects |
| Source tags | Each field tagged with source + confidence | Quotation system separately prompts sales to confirm low-confidence fields |
| Client preference reference | Both systems use the same client preference library | Preferences accumulated during drawing review are immediately usable in quotation |
See Dual-System Hard Contract Integration.
Shared Historical Memory Store
Both systems share one client-isolated memory store:
| Dimension | Who Writes | Who Reads |
|---|---|---|
| Client preferences (e.g., "Client X defaults to LowE+Argon") | Drawing review | Drawing review (auto-inject into new projects) + Quotation (identify similar projects) |
| Error patterns (e.g., "hardware alias missed") | Drawing review + Quotation | Drawing review (early warning) + Quotation (flag low confidence) |
| Historical neighbors | Quotation | Quotation (recommended price anchor) |
| Negotiation floor distribution | Quotation | Quotation (negotiation hints) |
| Waiver reasons | Drawing review | Drawing review (rule evolution input) |
How to Get Started (Dual System Doesn't Need to Go Live Simultaneously)
Although dual-system integration works best, both systems are decoupled through file + state contracts and can go live independently:
| Scenario | Choice |
|---|---|
| Already have quotation capability, want to fix drawing review bottleneck | Only buy Drawing Review → output standard Excel list, quote using current process |
| Already have drawing review capability, want to fix inconsistent quotes | Only buy Quotation System → sales manually input window/door list |
| Both pain points present | Dual-system combination with hard contract integration |
| Want to validate in small steps | Start with Drawing Review (smaller impact) → add Quotation after it runs smoothly |
Recommended Implementation Sequence
Total duration: 10–11 weeks — nearly the same as a single system (shared P0 + parallel implementation).
FAQ
Q: Our drawings are in German / French — can the system parse them? A: Yes. OCR + multilingual model handles them. Accuracy depends on drawing quality. We recommend running 20 samples as a baseline during P1.
Q: We already have an ERP / MRP system — can this integrate? A: Yes. The structured list from approved drawings can interface with ERP via API / file export (SAP / Odoo / UFIDA / Kingdee / custom builds all supported).
Q: Can it run fully on-premises, inside the factory network? A: Yes. L1 parsing can run fully locally; LLM uses the customer's intranet LLM endpoint. See Private Deployment.
Q: Who maintains the client preference library? A: Project managers maintain it in the system (there's a "Client Preference Management" module in the UI). Bulk import from Excel / email is also supported.
Full cases + contract design + memory store architecture at docs/solutions/manufacturing.
Written by
Nox-Lumen Tech-team
Published
May 14, 2026