𝗙𝗶𝘅𝗶𝗻𝗴 𝗔𝗜 𝗢𝗯𝘀𝗲𝗿𝘃𝗮𝗯𝗶𝗹𝗶𝘁𝘆 𝗶𝗻 𝗠𝗮𝘀𝘁𝗿𝗮

OpenTelemetry là tiêu chuẩn để giám sát các hệ thống hiện đại. Các vết (traces) truyền thống hoạt động tốt với hầu hết các phần mềm, nhưng chúng lại thất bại đối với các ứng dụng AI.

Khi bạn xây dựng AI, bạn cần những câu trả lời cụ thể: • Mô hình nào đã tạo ra đầu ra? • Bạn đã sử dụng nhà cung cấp nào? • Bạn đã tiêu thụ bao nhiêu token? • Mô hình embedding nào đã xử lý tài liệu của bạn? • Chi phí của thao tác đó là bao nhiêu?

Những câu hỏi này quan trọng nhất trong các hệ thống Retrieval-Augmented Generation (RAG).

Trong quá trình đóng góp cho Mastra, tôi đã phát hiện ra một lỗ hổng trong khả năng quan sát (observability) RAG embedding. Mastra đã xuất metadata cho nhiều tác vụ AI, nhưng các span của RAG embedding lại thiếu các thuộc tính tiêu chuẩn.

Các công cụ quan sát có thể thấy thao tác embedding, nhưng chúng không hiểu được ngữ cảnh. Chúng bỏ lỡ các chi tiết về mô hình, thông tin nhà cung cấp và mức độ sử dụng token.

Một pipeline RAG tuân theo các bước sau: • Tài liệu (Documents) • Chia nhỏ (Chunking) • Mô hình Embedding (Embedding Model) • Cơ sở dữ liệu Vector (Vector Database) • Tìm kiếm tương đồng (Similarity Search) • Tạo nội dung bằng LLM (LLM Generation)

Giai đoạn embedding là cực kỳ quan trọng. Nếu thiếu dữ liệu ở đây, việc gỡ lỗi hiệu suất sẽ trở nên rất khó khăn.

OpenTelemetry sử dụng các quy ước ngữ nghĩa (semantic conventions) để tạo ra một ngôn ngữ chung. Thay vì mỗi công cụ sử dụng các tên tùy chỉnh, mọi người đều tuân theo một tiêu chuẩn duy nhất. Điều này cho phép các công cụ đọc được các thuộc tính như: • gen_ai.systemgen_ai.request.modelgen_ai.usage.input_tokens

Tôi đã gửi một pull request để ánh xạ dữ liệu RAG embedding của Mastra sang các tiêu chuẩn OpenTelemetry này.

Công việc bao gồm: • Xuất metadata của mô hình embedding • Xuất thông tin nhà cung cấp • Ánh xạ các chỉ số sử dụng token • Đồng bộ hóa các thuộc tính với các tiêu chuẩn toàn cầu

Điều này cho phép các hệ thống quan sát hiểu được các embedding mà không cần mã tùy chỉnh.

Các hệ thống AI trong môi trường production cần khả năng hiển thị (visibility). Bạn cần biết mô hình nào gây ra độ trễ hoặc nhà cung cấp nào tốn kém nhất. Telemetry được tiêu chuẩn hóa sẽ cung cấp những câu trả lời này một cách tự động.

Mã nguồn mở dạy cho chúng ta một bài học lớn. Không phải mọi đóng góp tốt đều là thêm một tính năng mới. Đôi khi, những công việc tốt nhất là làm cho các hệ thống hiện có trở nên dễ giám sát và vận hành hơn.

Nếu bạn xây dựng hạ tầng AI, đừng bỏ qua khả năng quan sát. Những hệ thống AI tốt nhất là những hệ thống có thể quan sát được.

Source: https://dev.to/akash_santra_3c96613546c6/fixing-ai-observability-how-i-added-genai-semantic-support-for-rag-embedding-spans-in-mastra-4db9

Optional learning community: https://t.me/GyaanSetuAi