How AI Transforms COI Management: A Real Factory Use Case (Hybrid Rasa + LangChain)
Managing COIs (Certificates of Inspection) inside a factory is usually a slow and manual process. QC staff search for customers, check lot numbers, look up QC results, generate Excel files, and manually send reports.
At Simplico, we built a Hybrid AI Assistant powered by Rasa (structured conversational control) + LangChain (agentic reasoning + SQL tools + RAG) to automate these workflows using a simple chat interface.
In this article, we walk through a real end-to-end use case from our Factory Automation POC and show the full system architecture diagram behind it.
🧠 System Architecture (Hybrid Rasa + LangChain)
Before jumping into the story, here is the architecture that powers the COI AI assistant:
┌─────────────────────────────┐
│ Factory Staff │
│ (QC, Engineer, Sales, Admin) │
└──────────────┬───────────────┘
│
▼
┌─────────────────────────────┐
│ Web Chat UI │
│ (Browser, LINE, Slack, etc.)│
└──────────────┬───────────────┘
│
▼
┌────────────────────────────────────┐
│ AI Gateway Layer │
│ Routes messages to Rasa/LangChain │
└───────┬────────────────────────────┘
│
┌──────────────────┼───────────────────┐
│ │ │
▼ ▼ ▼
┌────────────────┐ ┌───────────────────┐ ┌───────────────────────┐
│ Rasa NLU + │ │ LangChain RAG │ │ LangChain Agent │
│ Dialogue Core │ │ Document Search │ │ Tools + Reasoning │
└────────────────┘ │ (Manual, SOPs) │ └───────────────────────┘
│ └───────────────────┘ │
│ │
▼ ▼
┌──────────────────────────┐ ┌────────────────────────────────┐
│ Rasa Custom Actions │ │ Agent Toolsets │
│ (Python logic, routing) │ │ - SQL Query Tool │
│ - Entity disambiguation │ │ - COI XLSX Generator Tool │
│ - User selection logic │ │ - Lot Lookup Tool │
└───────────────┬──────────┘ │ - Product Data Tool │
│ └───────────────┬────────────────┘
▼ ▼
┌────────────────────────────────┐ ┌──────────────────────────────────┐
│ COI / QC Database │ │ Document & Vector Store │
│ (Customers, Products, Lots, │ │ (Manuals, SOPs, Embeddings) │
│ Test Results, History, etc.) │ │ FAISS / PGVector │
└────────────────────────────────┘ └──────────────────────────────────┘
This hybrid model combines the safety of structured dialog with the intelligence of agentic AI—making it perfect for real factory environments.
🔍 1. Searching Customer Data with Natural Conversation
Instead of browsing menus, the staff simply types:
User:
“Show me data of Toyota”
The AI instantly looks up the COI database.
Since factories often have multiple similar customers, the assistant clarifies:
AI:
“I found multiple customers named ‘Toyota’.
Please choose one:
- Toyota Motor
- Toyota Thailand
- Toyota Industrial Asia
- Toyota Logistics Service”
This disambiguation is generated by LangChain SQL tools but controlled safely by Rasa dialogue rules.
The user chooses:
User:
“2”
AI:
“You selected Toyota Thailand.
Here is the customer profile:
- Customer Code: C-TH-112
- Total COIs issued: 243
- Active product codes: 18
- Address: Samut Prakan, Thailand”
🧾 2. Generating a COI File
Now the user requests a COI.
User:
“Create COI for lot 123-456A”
AI performs:
- Lot lookup
- QC result check
- Template loading
- XLSX generation
- Upload to COI storage
AI:
“✔ Lot found
✔ QC: Passed
✔ Using template: COI_Template_v3.xlsx
Generating COI…”
After 2 seconds:
AI:
“Your COI is ready:
📄 Toyota_Thailand_COI_123-456A.xlsx
Download: s3://coi/Toyota_Thailand_COI_123-456A.xlsx”
The entire COI workflow—normally 5–10 minutes—finishes instantly.
📦 3. Listing Lots Under a Product Code
User:
“List lot numbers for product code P-9981”
AI:
“Here are the lots for P-9981:
- 123-456A — Completed
- 123-456B — Awaiting QC
- 123-457A — Completed
- 123-458C — Testing
- 123-460A — Completed (Pending COI)
Would you like to see any lot?”
User:
“Okay”
AI:
“Please choose 1–5.”
🏭 4. Inspecting Lot Data
User:
“1”
The AI returns a full QC + production summary:
Product
- Code: P-9981
- Name: Aluminum Housing
QC Results
- Hardness: 88.5 HRC
- Chemical Composition: OK
- Dimension: Passed
- Visual: No defects
Production
- Machine: CNC Line #2
- Date: 2025-01-14
- Operator Team: B
- Cycle Time: 2.8 minutes
Then the AI asks:
“Would you like to generate the COI, export to Excel, or compare with other lots?”
📘 5. Retrieving SOPs Through RAG
User:
“Show SOP for this product.”
AI (via RAG search):
“Here are the SOP steps for P-9981:
- Visual inspection
- Measure dimensions (±0.05 mm)
- Hardness test (85–90 HRC)
- XRF analysis
- COI preparation”
Everything comes directly from the factory’s SOP documents using vector embeddings + LangChain.
📊 6. Summarizing COI History
User:
“Summarize COI history for Toyota Thailand.”
AI:
COI Summary – Last 90 Days
- Total COIs: 62
- QC Pass Rate: 98.3%
- Delayed COIs: 2
- Main product: P-9981
“Would you like this as PDF, Excel, or email?”
🚀 Final Thoughts
This use case shows how a Hybrid Rasa + LangChain AI Assistant can transform COI workflows:
- Natural conversation instead of complex UI
- Automatic COI generation
- Fast lot lookup
- Instant QC insights
- One-click SOP retrieval
- Summary reports on demand
It’s not just a chatbot—it’s an intelligent bridge connecting people, data, QC history, manuals, and COI documents into one seamless experience.
This POC proves that AI can save time, reduce errors, and unlock new productivity for factories of any size.
Get in Touch with us
Related Posts
- The Accounting Software Your Firm Uses Is Built for Your Clients, Not for You
- 2026年本地大模型(Local LLM)硬件选型实用指南
- Choosing Hardware for Local LLMs in 2026: A Practical Sizing Guide
- Why Your Finance Team Spends 40% of Their Week on Work AI Can Now Do
- 用纯开源方案搭建生产级 SOC:Wazuh + DFIR-IRIS + 自研集成层实战记录
- How We Built a Real Security Operations Center With Open-Source Tools
- FarmScript:我们如何从零设计一门农业IoT领域特定语言
- FarmScript: How We Designed a Programming Language for Chanthaburi Durian Farmers
- 智慧农业项目为何止步于试点阶段
- Why Smart Farming Projects Fail Before They Leave the Pilot Stage
- ERP项目为何总是超支、延期,最终令人失望
- ERP Projects: Why They Cost More, Take Longer, and Disappoint More Than Expected
- AI Security in Production: What Enterprise Teams Must Know in 2026
- 弹性无人机蜂群设计:具备安全通信的无领导者容错网状网络
- Designing Resilient Drone Swarms: Leaderless-Tolerant Mesh Networks with Secure Communications
- NumPy广播规则详解:为什么`(3,)`和`(3,1)`行为不同——以及它何时会悄悄给出错误答案
- NumPy Broadcasting Rules: Why `(3,)` and `(3,1)` Behave Differently — and When It Silently Gives Wrong Answers
- 关键基础设施遭受攻击:从乌克兰电网战争看工业IT/OT安全
- Critical Infrastructure Under Fire: What IT/OT Security Teams Can Learn from Ukraine’s Energy Grid
- LM Studio代码开发的系统提示词工程:`temperature`、`context_length`与`stop`词详解













