[Open Source] #70 - Amurex AI: Kiến trúc trợ lý cuộc họp thời gian thực với MutationObserver và WebSocket Pipeline
Việc ghi chép biên bản cuộc họp (Meeting Minutes) và tóm tắt ý chính luôn là một gánh nặng hành chính trong mọi tổ chức. Các giải pháp hiện tại thường yêu cầu bot tham gia vào phòng họp (Join as a participant), gây cảm giác thiếu tự nhiên và lo ngại về quyền riêng tư. Amurex AI xuất hiện với cách tiếp cận đột phá: một tiện ích mở rộng (Chrome Extension) hoạt động như một "người trợ lý vô hình", trực tiếp trích xuất dữ liệu từ trình duyệt mà không cần thêm bất kỳ bot nào vào cuộc gọi.
Dưới góc độ kỹ thuật, Amurex là một ví dụ mẫu mực về việc tận dụng Chrome Extension Manifest V3, MutationObserver để xử lý dữ liệu DOM thời gian thực và kiến trúc Event-driven để kết nối với các mô hình ngôn ngữ lớn (LLM).
Github: https://github.com/thepersonalaicompany/amurex
🛠️ 1. Nền tảng công nghệ: Chiếm lĩnh trình duyệt với Manifest V3
Amurex được xây dựng dựa trên các tiêu chuẩn hiện đại nhất của trình duyệt để đảm bảo hiệu suất và bảo mật:
- Lõi thực thi (Manifest V3): Sử dụng các tính năng mới nhất của Chrome để tối ưu hóa vòng đời Service Worker, giúp extension tiêu tốn cực ít tài nguyên khi không hoạt động.
- Real-time Pipeline (WebSockets): Không sử dụng REST API truyền thống cho luồng dữ liệu chính, Amurex duy trì một kết nối WebSocket (
wss://) để đẩy Transcript liên tục và nhận lại các "Gợi ý AI" ngay lập tức. - Modern UI (Side Panel API): Thay vì dùng các cửa sổ Popup dễ mất tiêu điểm, Amurex sử dụng Side Panel bản địa của Chrome, giúp trợ lý AI luôn hiển thị song song với cửa sổ họp Google Meet/Teams mà không gây cản trở.
🏗️ 2. Trụ cột kiến trúc: Cảm biến và Bộ não điều phối
Kiến trúc của Amurex được thiết kế theo mô hình Decoupled Architecture (Tách biệt thành phần):
- Sensors (Content Scripts): Đây là các đoạn mã được "tiêm" trực tiếp vào Google Meet hoặc MS Teams. Nhiệm vụ duy nhất của chúng là quan sát sự thay đổi của các node phụ đề (Captions) và trích xuất dữ liệu thô.
- Orchestrator (Background Service Worker): Đóng vai trò là bộ não điều phối trung tâm. Nó quản lý trạng thái xác thực người dùng qua Cookie, duy trì kết nối WebSocket và điều hướng dữ liệu giữa Content Scripts và UI.
- Interactive Layer (Side Panel): Thành phần tương tác trực tiếp với người dùng, nơi AI đưa ra các câu hỏi gợi ý thảo luận hoặc tóm tắt nhanh nội dung (Late Join Recap).
🔄 3. Workflow: Luồng xử lý từ Giọng nói đến Tri thức (Sequence Diagram)
Sơ đồ dưới đây mô tả cách Amurex âm thầm thu thập dữ liệu và chuyển hóa chúng thành tóm tắt cuộc họp:

⚡ 4. Các kỹ thuật "Pro-level" trong mã nguồn
- Real-time DOM Scraping thông minh: Thay vì quét toàn bộ trang web, Amurex sử dụng các CSS Selectors đặc hiệu (như
.a4cQTtrong GMeet) kết hợp vớiMutationObserver. Kỹ thuật này giúp hệ thống chỉ phản ứng khi có phụ đề mới, giảm tải CPU xuống mức tối thiểu. - Intelligent Buffering (Cơ chế đệm thông minh): Để tránh việc spam hàng nghìn request nhỏ lên server khi người dùng nói từng từ, Amurex tích hợp cơ chế đệm. Nó sẽ tự động gom các đoạn hội thoại ngắn của cùng một người nói trong một khoảng thời gian nhất định trước khi gửi đi.
- Cross-platform Normalization: Dù Google Meet và MS Teams có cấu trúc DOM hoàn toàn khác nhau, Amurex đã xây dựng một lớp chuẩn hóa dữ liệu. Điều này cho phép Backend AI xử lý một định dạng transcript duy nhất mà không cần quan tâm nguồn gốc dữ liệu.
- Auth Sync via Cookie: Hệ thống tự động đồng bộ hóa trạng thái đăng nhập giữa Extension và Web Portal thông qua
chrome.cookies API, tạo ra trải nghiệm "Single Sign-On" mượt mà cho người dùng.
⚖️ 5. So sánh chiến lược
| Tiêu chí | Amurex AI (Extension) | Otter.ai / Fireflies (Bot) | Local Recording |
|---|---|---|---|
| Sự hiện diện | Vô hình (Invisible) | Công khai (Bot tham gia phòng) | Thủ công |
| Quyền riêng tư | Cao (Xử lý qua Browser) | Trung bình (Bot ghi âm server) | Thấp (Lưu file thô) |
| Tính năng AI | Gợi ý câu hỏi Real-time | Tóm tắt sau họp | Không có |
| Chi phí | Open Source / Linh hoạt | Đắt (SaaS) | Miễn phí |
✅ Kết luận: Tại sao Amurex là hình mẫu cho kỷ nguyên AI Agent?
Amurex không chỉ là một công cụ ghi chép; nó là một bài học về cách xây dựng trợ lý AI tích hợp sâu vào quy trình làm việc hiện có. Dự án chứng minh rằng trình mở rộng trình duyệt (Extension) là một môi trường tuyệt vời để xây dựng các AI Agent có khả năng "nhìn" và "nghe" dữ liệu mà không làm gián đoạn thói quen của người dùng.
Đối với các kỹ sư phần mềm, nghiên cứu Amurex sẽ giúp bạn hiểu sâu về:
- Kỹ thuật DOM Observation trong các ứng dụng Web phức tạp.
- Cách xây dựng luồng dữ liệu WebSocket bền bỉ giữa Extension và Server.
- Tư duy thiết kế Hybrid AI (kết hợp xử lý tại Client và Cloud).
Hy vọng bản phân tích này mang lại cho bạn những ý tưởng mới về việc ứng dụng AI vào các công cụ hàng ngày. Đừng quên Upvote và Follow để theo dõi những "kỳ quan" mã nguồn tiếp theo nhé!
All rights reserved