Kong AI Gateway
Kong AI Gateway — это набор функций, построенных на основе Kong Gateway, разработанный для того, чтобы помочь разработчикам и организациям быстро и безопасно внедрять возможности искусственного интеллекта. Он предоставляет стандартизированный API-уровень, позволяющий клиентам использовать несколько сервисов ИИ из одной и той же клиентской кодовой базы.
Включить мониторинг
Убедитесь, что плагин Kong Prometheus включен и предоставляет метрики AI LLM.
Kubernetes
Для мониторинга вашего кластера следуйте руководству по настройке Ключ-АСТРОМ в Kubernetes.
После этого добавьте следующие аннотации к вашим развертываниям Kong:
metrics.astromkey.com/scrape: "true"metrics.astromkey.com/port: "8100"
OpenTelemetry Collector
Для развертывания коллектора следуйте инструкциям по установке OpenTelemetry Collector. При следующей конфигурации коллектор будет собирать метрики AI LLM каждые 10 секунд с конечной точки kong-metrics.kong:8100.
| receivers:
prometheus: config: scrape_configs: - job_name: kong scrape_interval: 10s honor_labels: false static_configs: - targets: - kong-metrics.kong:8100 processors: cumulativetodelta: max_staleness: 25h extensions: health_check: exporters: otlphttp: endpoint: ${env:DT_ENDPOINT} headers: Authorization: "Api-Token ${env:DT_API_TOKEN}" service: extensions: [health_check] metrics: receivers: [prometheus] processors: [cumulativetodelta] exporters: [otlphttp] |
Kong не предоставляет встроенную функцию сбора метрик kong-metrics, поэтому вам необходимо создать её с помощью следующего определения сервиса:
| apiVersion: v1
kind: Service metadata: name: kong-metrics namespace: kong spec: type: ClusterIP ports: - name: metrics port: 8100 targetPort: 8100 protocol: TCP selector: app.kubernetes.io/name: kong app.kubernetes.io/instance: kong |
Spans
Для GenAI Spans доступны следующие атрибуты.
| Атрибут | Тип | Описание |
|---|---|---|
gen_ai.completion.0.content
|
string | Полный ответ, полученный от модели GenAI. |
gen_ai.completion.0.content_filter_results
|
string | Результаты фильтрации ответа, полученного от модели GenAI. |
gen_ai.completion.0.finish_reason
|
string | Причина, по которой модель GenAI перестала выпускать токены. |
gen_ai.completion.0.role
|
string | Роль, используемая моделью GenAI. |
gen_ai.openai.api_base
|
string | Адрес сервера GenAI. |
gen_ai.openai.api_version
|
string | Версия API GenAI. |
gen_ai.openai.system_fingerprint
|
string | Отпечаток пальца ответа, сгенерированного моделью GenAI. |
gen_ai.prompt.0.content
|
string | Полный текст запроса, отправленного модели GenAI. |
gen_ai.prompt.0.role
|
string | Настройка роли для запроса GenAI. |
gen_ai.prompt.prompt_filter_results
|
string | Результаты фильтрации запроса, отправленного модели GenAI. |
gen_ai.request.max_tokens
|
integer | Максимальное количество токенов, которое модель генерирует для запроса. |
gen_ai.request.model
|
string | Название модели GenAI, к которой направляется запрос. |
gen_ai.request.temperature
|
double | Температурный параметр для запроса GenAI. |
gen_ai.request.top_p
|
double | Параметр выборки top_p для запроса GenAI. |
gen_ai.response.model
|
string | Название модели, которая сгенерировала ответ. |
gen_ai.system
|
string | Продукт GenAI, идентифицированный с помощью клиентского или серверного программного обеспечения. |
gen_ai.usage.completion_tokens
|
integer | Количество токенов, использованных в ответе GenAI (завершение). |
gen_ai.usage.prompt_tokens
|
integer | Количество токенов, использованных во входных данных GenAI (подсказке). |
llm.request.type
|
string | Тип выполняемой операции. |
Метрики
После выполнения описанных выше шагов станут доступны следующие метрики:
| Метрическая система | Тип | Единица | Описание |
|---|---|---|---|
ai_llm_requests_total
|
counter | integer | Общее количество запросов ИИ на одного поставщика ИИ в Kong. |
ai_llm_cost_total
|
counter | integer | Стоимость запросов ИИ на один поставщик ИИ/кэш в Kong |
ai_llm_provider_latency_ms_bucket
|
histogram | ms | Задержки ИИ на одного поставщика ИИ в Kong |
ai_llm_tokens_total
|
counter | integer | Общее количество токенов ИИ на один поставщик ИИ/кэш в Kong |
ai_cache_fetch_latency
|
histogram | ms | Задержки кэширования ИИ для каждого поставщика ИИ/базы данных в Kong. |
ai_cache_embeddings_latency
|
histogram | ms | Задержки встраивания кэша ИИ для каждого поставщика ИИ/базы данных в Kong. |
ai_llm_provider_latency
|
histogram | ms | Задержки поставщиков ИИ для каждого поставщика ИИ/базы данных в Kong. |
Кроме того, предоставляются следующие метрики.
| Метрическая система | Тип | Единица | Описание |
|---|---|---|---|
gen_ai.client.generation.choices
|
counter | none
|
Количество вариантов выбора, возвращаемых в результате выполнения запроса на завершение чата. |
gen_ai.client.operation.duration
|
histogram | s
|
Продолжительность работы GenAI. |
gen_ai.client.token.usage
|
histogram | none
|
Количество используемых входных и выходных токенов. |
llm.openai.embeddings.vector_size
|
counter | none
|
Размер возвращаемого вектора. |