Nguồn: groundcover Blog
Tóm tắt
OpenTelemetry (OTel) được quảng bá rộng rãi như chuẩn thống nhất cho GenAI observability, nhưng thực tế khi xây dựng normalizer thu thập telemetry từ nhiều SDK và LLM provider khác nhau, groundcover phát hiện ra rằng “chuẩn” này còn rất phân mảnh. Mỗi SDK — dù tuân thủ OTel GenAI semantic conventions — phát ra attributes với tên khác nhau, cấu trúc khác nhau và quirks riêng của từng provider.
Groundcover đã xây dựng một normalizer trong nhiều tuần để ingests GenAI spans từ mọi SDK instrumentation chính và tạo ra một canonical view thống nhất cho mọi loại AI data: model, token counts, costs, messages và tool calls. Công việc này đòi hỏi giải quyết nhiều vấn đề như naming conflicts (cùng một concept nhưng tên attribute khác nhau giữa các SDK), structural mismatches (đôi khi là nested object, đôi khi là flat attributes), và provider-specific quirks không được document.
Kết quả thực tế là “chuẩn” OTel GenAI hoạt động như một recommendation hơn là một specification nghiêm ngặt. Điều này có nghĩa là bất kỳ hệ thống nào muốn hỗ trợ nhiều AI SDK/provider phải tự xây dựng normalization layer riêng. Groundcover hy vọng những phát hiện này giúp cộng đồng nhận ra khoảng cách giữa lý tưởng chuẩn hóa và thực tế hiện tại.
Bài viết này là phần 1 của series, tập trung vào việc mô tả scope của vấn đề. Các phần tiếp theo sẽ đi sâu vào các naming conflicts và structural mismatches cụ thể mà groundcover gặp phải trong quá trình xây dựng.