← Về trang chủ

Mô hình Tự sửa lỗi (Evaluator-Optimizer) trong n8n

Có một "nỗi đau" kinh điển mà hầu như ai làm AI Automation với n8n cũng từng nếm trải:

Xây workflow trích xuất thông tin khách hàng từ tin nhắn để lưu vào Google Sheets hoặc CRM. Chạy thử 10 tin nhắn mẫu thì mượt mà cả 10. Nhưng đến khi cho chạy thật 500 khách/ngày, cứ thỉnh thoảng n8n lại báo đỏ rực:

  • Lúc thì AI hứng lên bọc thêm json làm node sau bị lỗi JSON.parse.
  • Lúc thì khách nhắn thiếu số điện thoại, AI tự ý bịa ra một số giả hoặc bỏ trống trường dữ liệu, khiến node CRM báo lỗi "Missing required field".
  • Lúc thì format ngày tháng bị nhảy từ DD/MM/YYYY sang tiếng Anh.

Trước đây, cách xử lý bản năng của mình là quay lại chỉnh System Prompt: Viết thêm 5 dòng dặn dò, in hoa, đe dọa "Cấm tuyệt đối thêm markdown, bắt buộc phải có số điện thoại...". Nhưng sự thật là: Không có câu lệnh prompt nào đảm bảo 100% độ chính xác khi chạy ở quy mô lớn.

Đến năm 2026, cách làm chuẩn trong kỹ thuật xây dựng AI Agent là áp dụng mô hình "Evaluator-Optimizer" (Tạo sinh - Kiểm định - Tự sửa lỗi) ngay trong n8n:

  1. Bước 1 - Generator (AI Agent): Giữ câu lệnh prompt cực kỳ ngắn gọn, chỉ tập trung đọc hiểu tin nhắn và trích xuất dữ liệu thô.
  2. Bước 2 - Evaluator (Node Code JavaScript): Dùng một đoạn code JS nhẹ nhàng để kiểm tra tính hợp lệ:
  • Cú pháp có đúng chuẩn JSON không?
  • Đã có đủ các trường bắt buộc (Họ tên, SĐT, Địa chỉ) chưa?
  • Số điện thoại có đủ 10 chữ số hợp lệ của Việt Nam không?
  1. Bước 3 - Feedback Loop (Tự sửa lỗi):
  • Nếu dữ liệu ĐẠT CHUẨN: Đẩy thẳng sang Google Sheets / CRM / Webhook.
  • Nếu dữ liệu LỖI: Node code sẽ tổng hợp chính xác lỗi (ví dụ: "Lỗi: Thiếu trường so_dien_thoai") và gửi ngược lại cho AI Agent với yêu cầu: "Dữ liệu vừa tạo bị lỗi này, hãy đọc lại tin nhắn gốc và bổ sung". Giới hạn tối đa 2 lần thử.

Nhờ có vòng lặp kiểm định bằng Code kết hợp phản hồi tự động:

  • Tỷ lệ hoàn thành workflow tăng từ ~82% lên 99.9%.
  • Không bao giờ bị nghẽn hệ thống vì dữ liệu rác hay lỗi cú pháp.
  • Tiết kiệm token đáng kể vì không cần nhồi nhét prompt cầu xin dài dòng.

Sơ đồ kiến trúc và đoạn code JS kiểm tra dữ liệu mình để chi tiết trong ảnh và phần bình luận nhé.

Anh em đang xử lý lỗi dữ liệu của AI bằng cách viết dài prompt hay đã có bộ lọc kiểm định riêng?

Bình luận

Đoạn code mẫu cho Node Evaluator (Code Node JS) trong n8n:

📄 JAVASCRIPT
const item = $input.first().json;
let rawText = item.output || item.text || "";
let errors = [];
let parsedData = null;

// 1. Tách chuỗi JSON nếu AI vô tình bọc markdown
rawText = rawText.replace(/```json/g, "").replace(/```/g, "").trim();

try {
  parsedData = JSON.parse(rawText);
} catch (e) {
  errors.push("Lỗi cú pháp: Không thể parse thành JSON hợp lệ.");
}

if (parsedData) {
  if (!parsedData.ho_ten) errors.push("Thiếu trường: ho_ten");
  if (!parsedData.so_dien_thoai || !/^(0|\+84)[3|5|7|8|9][0-9]{8}$/.test(parsedData.so_dien_thoai.replace(/\s/g, ''))) {
    errors.push("Lỗi: Số điện thoại không hợp lệ hoặc bị thiếu.");
  }
}

const retryCount = item.retryCount || 0;
const isValid = errors.length === 0;

return {
  json: {
    isValid: isValid,
    data: parsedData,
    errors: errors.join("; "),
    retryCount: retryCount + 1,
    canRetry: !isValid && retryCount < 2
  }
};

Sau node này, bạn dùng node If: Nếu isValid == true thì đi tiếp; nếu canRetry == true thì bắn lại cho AI kèm biến errors; nếu thử quá 2 lần mà vẫn lỗi thì gửi cảnh báo Telegram cho nhân viên hỗ trợ.

Mẫu câu lệnh phản hồi (Feedback Prompt) khi AI sinh dữ liệu sai: "Dữ liệu bạn vừa trích xuất chưa đạt chuẩn vì các lỗi sau: {{ $json.errors }}. Hãy đọc lại tin nhắn gốc của khách hàng: '{{ $node['Webhook'].json.body.message }}' và sửa lại dữ liệu đúng định dạng JSON chuẩn."

Chỉ với 2 dòng phản hồi ngắn gọn kèm đúng nguyên nhân lỗi, các model như GPT-4.1, Claude 3.7 hay DeepSeek-V3 có thể tự sửa đúng 100% ngay ở lần thử thứ 2.

Gợi ý phần cứng tối ưu để tự host n8n & Local AI Agent tại nhà:

Cộng đồng AI Automation: Facebook: https://www.facebook.com/groups/1668350474264397 Zalo: https://zalo.me/g/wspol24zm6ckrwzvstc5 📚 Khoá học: Combo AI Automation System + OpenClaw Agentic System: https://aiauto.salekit.store/product/combo-khoa-hoc-ai-automation-system-va-openclaw-agentic-system?ref=tyauto AI Automation Coaching: https://aiauto.salekit.store/product/khoa-hoc-ai-automation-coaching?ref=tyauto 2 tài liệu tham khảo cho người muốn học sâu hơn: OpenClaw Agentic System: https://aiauto.unica.vn/openclaw/?ref=tyauto AI Automation: https://aiauto.unica.vn/?ref=tyauto Lưu ý minh bạch: Đây là các link affiliate. Nếu bạn đăng ký qua link, mình có thể nhận hoa hồng giới thiệu. Hãy xem kỹ nội dung chương trình, học phí, lịch học và chính sách của đơn vị cung cấp trước khi quyết định.

🎮
Đề xuất phần cứng Local AI

Gigabyte RTX 5060 Ti Windforce MAX OC 16GB

Card đồ họa tối ưu chi phí tốt nhất để tự host Local LLMs (DeepSeek, Llama 3) và chạy n8n mượt mà tại nhà.

🛒 Xem trên Shopee
✅ Đã sao chép đoạn code JS vào clipboard!