Виправлення спостережуваності AI у Mastra

OpenTelemetry — це стандарт для моніторингу сучасних систем. Традиційні трасування працюють для більшості програмного забезпечення. Вони не справляються з AI-додатками.

Коли ви створюєте AI, вам потрібні конкретні відповіді: • Яка модель згенерувала результат? • Якого провайдера ви використовували? • Скільки токенів було спожито? • Яка модель ембедінгу обробила ваші документи? • Якою була вартість операції?

Ці питання є найважливішими в системах Retrieval-Augmented Generation (RAG).

Працюючи над Mastra, я виявив прогалину в спостережуваності RAG embedding. Mastra експортувала метадані для багатьох завдань AI, але RAG embedding spans не мали стандартних атрибутів.

Інструменти спостережуваності бачили операцію ембедінгу. Але вони не розуміли контексту. Вони пропускали деталі моделі, інформацію про провайдера та використання токенів.

Конвеєр (pipeline) RAG складається з таких етапів: • Документи • Чанкінг (розбиття на фрагменти) • Модель ембедінгу • Векторна база даних • Пошук за схожістю • Генерація через LLM

Етап ембедінгу є критично важливим. Якщо тут бракує даних, налагодження продуктивності стає складним завданням.

OpenTelemetry використовує семантичні конвенції для створення спільної мови. Замість того, щоб кожен інструмент використовував власні назви, усі дотримуються одного стандарту. Це дозволяє інструментам зчитувати такі атрибути, як: • gen_ai.system • gen_ai.request.model • gen_ai.usage.input_tokens

Я надіслав pull request, щоб привести дані Mastra RAG embedding у відповідність до цих стандартів OpenTelemetry.

Робота включала: • Експорт метаданих моделі ембедінгу • Експорт інформації про провайдера • Мапінг метрик використання токенів • Узгодження атрибутів із глобальними стандартами

Це дозволяє системам спостережуваності розуміти ембедінги без написання спеціального коду.

Продуктивні AI-системи потребують видимості. Вам потрібно знати, яка модель спричиняє затримку (latency) або який провайдер є найдорожчим. Стандартизована телеметрія надає ці відповіді автоматично.

Open source дає чудовий урок. Не кожен хороший внесок додає нову функцію. Іноді найкраща робота полягає в тому, щоб зробити існуючі системи простішими для моніторингу та експлуатації.

Якщо ви будуєте AI-інфраструктуру, не ігноруйте спостережуваність. Найкращі AI-системи — це ті, що піддаються спостереженню.

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