После нескольких пропущенных релизов в нашем блоге мы вернулись с 0.5.12! Как всегда, исправлено несколько ошибок и добавлено несколько функций в сервис персонализированного ранжирования Metarank. Давайте посмотрим глубже, что изменилось.

Поля ранжирования по элементам

В предыдущих версиях Metarank вы могли указать в поле relevancy в запросе ранжирования значение, полученное от вашей поисковой системы первого уровня: оценка из поисковых систем терминов OpenSearch/ElasticSearch, косинусное сходство из векторных поисковых систем Pinecone/qdrant. или любой другой балл.

Однако этот формат не может поддерживать несколько механизмов поиска, когда у вас есть результаты, полученные как из поиска по терминам, так и из векторного поиска, например.

В версии 0.5.12 вы можете передать параметр fields в событии ранжирования и указать несколько оценок релевантности, которые могут использоваться вашей моделью машинного обучения при персонализации результатов.

Событие ранжирования и базовые модели машинного обучения поддерживают отсутствующие значения для оценки релевантности, поэтому, если у вас нет оценки релевантности для некоторых элементов, вы все равно можете включить их в событие, не проходя оценку.

Улучшенная поддержка Redis

Начиная с версии 0.5.9 мы улучшили поддержку постоянства Redis. Поддержка TLS была добавлена ​​в 0.5.10 вместе с конфигурацией тайм-аута.

В этом выпуске мы добавили возможность указать ваши учетные данные аутентификации Redis через переменные среды METARANK_REDIS_USERиMETARANK_REDIS_PASSWORD соответственно.

Благодаря последним изменениям вы полностью подготовлены для использования GitOps при развертывании Metarank, поскольку вы можете хранить всю конфигурацию, связанную с Metarank, в Git.

Метрики Прометея

При запуске любой службы в производственной среде важно анализировать показатели приложения, чтобы понять его работоспособность и производительность.

Prometheus стал стандартным инструментом для выставления метрик приложения, которые может потреблять Grafana. И пока мы готовим стандартную информационную панель Metarank Grafana, вы уже можете использовать маршрут /metrics, предоставляемый Metarank, для создания собственных информационных панелей.

Вот пример вывода Prometheus от Metarank:

> GET /metrics HTTP/1.1
> Host: localhost:8080
> User-Agent: curl/7.86.0
> Accept: */*
> 
< HTTP/1.1 200 OK
< Date: Mon, 28 Nov 2022 13:30:41 GMT
< Transfer-Encoding: chunked
< 
# HELP metarank_feedback_events_total Number of feedback events received
# TYPE metarank_feedback_events_total counter
metarank_feedback_events_total 58441.0
# HELP metarank_rank_requests_total Number of /rank requests
# TYPE metarank_rank_requests_total counter
metarank_rank_requests_total{model="xgboost",} 5.0
# HELP metarank_rank_latency_seconds rank endpoint latency
# TYPE metarank_rank_latency_seconds summary
metarank_rank_latency_seconds{model="xgboost",quantile="0.5",} 0.011451508
metarank_rank_latency_seconds{model="xgboost",quantile="0.8",} 0.014340056
metarank_rank_latency_seconds{model="xgboost",quantile="0.9",} 0.119447575
metarank_rank_latency_seconds{model="xgboost",quantile="0.95",} 0.119447575
metarank_rank_latency_seconds{model="xgboost",quantile="0.98",} 0.119447575
metarank_rank_latency_seconds{model="xgboost",quantile="0.99",} 0.119447575

Разные улучшения

Теперь можно вручную указать стратегию разделения для обучения модели. Доступны параметры random , time и hold_last, которые дают вам еще больший контроль над созданием и проверкой модели машинного обучения.

И как всегда, несколько ошибок здесь и там были исправлены!

Что дальше?

Следите за новостями от нашей команды и дайте нам знать, если у вас есть какие-либо вопросы или проблемы в нашем канале Slack.

Мы также обеспечиваем полную адаптацию и постоянную корпоративную поддержку для Metarank. "Свяжитесь с нами для более подробной информации.