Установка программного обеспечения SpeechSense Hybrid
Модуль SpeechSense Hybrid разворачивается с помощью Helm-чарта, который устанавливает верхнеуровневые компоненты и микросервисы.
- Микросервисы
- Архитектура микросервисов
- Helm-чарт микросервисов
- Переменные среды для запуска сервисов
- Дополнительные компоненты
Микросервисы
classifiersConnector— хранит пользовательские классификаторы. Переводит задачу на расчет классификаторов по тексту диалога в формат, понятный сервису классификации.lobby— операции с пространствами, проектами и подключениями.talkRouter— ставит задачи алгоритмам, сохраняет текущее состояние диалога.speechkitConnector— переводит общую задачу на транскрибацию в формат, понятный для SpeechKit Hybrid.userCustomization.talkStatistics— рассчитывает статистики диалогов.summarizationConnector— запрашивает суммаризацию у YandexGPT.embeddingConnector— рассчитывает эмбеддинги по тексту. Хранит эмбеддинги диалога.talkSearch— поиск диалогов.talkReports— составление отчетов.gptConnector.iamAgent.keycloak.dataUI.
Архитектура микросервисов
Архитектура микросервисов и их взаимодействие изображены на следующей диаграмме.
Helm-чарт микросервисов
Данный helm-чарт устанавливает верхнеуровневые компоненты из поставки модуля SpeechSense Hybrid.
Пререквизиты к установке микросервисов
Для установки helm-чарта должны быть выполнены следующие условия:
-
Развернут YandexGPT (входит в поставку). Есть сетевая доступность с использованием TLS до эндпоинта прокси-сервиса для маршрутизации запросов к моделям.
-
Развернут SpeechKit Hybrid (входит в поставку). Есть сетевая доступность с использованием TLS до эндпоинта прокси-сервиса для маршрутизации запросов к STT-бэкенду.
-
Развернут кластер PostgreSQL 15 с объемом свободного места 256 ГБ SSD, процессорными мощностями 12 vCPU, оперативной памятью 48 ГБ RAM.
Рекомендуется сделать отказоустойчивую децентрализованную конфигурацию кластера в трех разных сетевых зонах. В кластере созданы базы данных
talk-analytics,talk-classifiers,user-customizations,talk-speechkitиgpt-db. Создан пользовательpg-admin. Пользователю выделены права владельца пяти созданных баз данных. -
Развернут кластер PostgreSQL 16.2 с объемом свободного места 10 ТБ SSD, процессорными мощностями 12 vCPU, оперативной памятью 48 ГБ RAM.
Рекомендуется сделать отказоустойчивую децентрализованную конфигурацию кластера в трех разных сетевых зонах. В кластере созданы базы данных
talk-db,summarization-dbиembedding-db. Создан пользовательtalk-db-user. Пользователю выделены права владельца пяти созданных баз данных. -
Развернуто s3-совместимое хранилище. В хранилище созданы бакеты
talks-s3-bucketс ограничением занятого места 30 ТБ и неограниченным временем жизни объектов иexport-talks-s3-bucketс ограничением занятого места 1 ТБ и ограничением времени жизни объекта1 день. Для сетевого хранилища заданы CORS-правила:{ allowed_headers = ["*"] allowed_methods = ["PUT"] allowed_origins = ["<URL портала SpeechSense>"] expose_headers = [] max_age_seconds = 0 } -
Развернут кластер Apache Kafka® версии не ниже 3.3 из 6 рабочих нод с тремя нодами ZooKeeper.
Конфигурация:
- Рабочие ноды: процессорные мощности 12 vCPU, 48 ГБ RAM, 360 ГБ SSD.
- Ноды ZooKeeper: процессорные мощности 2 vCPU, 8 ГБ RAM, 360 ГБ SSD.
- Фактор репликации —
3, число партиций топиков по умолчанию —15.
В Apache Kafka® должны быть предварительно созданы следующие топики:
talk-analytics.task.newtalk-analytics.transcribe.intalk-analytics.transcribe.outtalk-analytics.simple-audio-analyser.intalk-analytics.simple-audio-analyser.outtalk-analytics.points.intalk-analytics.points.outtalk-analytics.summarization.intalk-analytics.summarization.outtalk-analytics.classifiers.intalk-analytics.classifiers.outtalk-analytics.talk.updatedtalk-analytics.topology.eventstalk-analytics.classifiers.updatetalk-analytics.embedding.intalk-analytics.embedding.outtalk-analytics.statistics.intalk-analytics.statistics.outtalk-analytics.translate.intalk-analytics.translate.out
Данные топики можно создать с помощью утилит командной строки для работы с Apache Kafka®. Например, с использованием следующего bash-скрипта:
#!/bin/bash set -e set -u if ${KAFKA_HOME}/bin/kafka-cluster.sh cluster-id --bootstrap-server "${BOOTSTRAP_SERVER}"; then ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.task.new' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.transcribe.in' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.transcribe.out' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.simple-audio-analyser.in' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.simple-audio-analyser.out' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.points.in' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.points.out' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.summarization.in' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.summarization.out' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.classifiers.in' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.classifiers.out' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.talk.updated' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.topology.events' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.classifiers.update' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.embedding.in' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.embedding.out' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.statistics.in' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.statistics.out' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.translate.in' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 ${KAFKA_HOME}/bin/kafka-topics.sh --create --topic 'talk-analytics.translate.out' --bootstrap-server "${BOOTSTRAP_SERVER}" --partitions 15 --replication-factor 3 else exit 1 fi -
Развернут кластер OpenSearch версии не ниже 2.12 из 3 data-нод, 3 нод с ролью
managerи одной ноды с рольюdashboard.Рекомендуется сделать отказоустойчивую децентрализованную конфигурацию кластера с data-нодами и manager-нодами в трех разных сетевых зонах.
Конфигурация:
- Data-ноды: 24 vCPU, 96 ГБ RAM и 1 ТБ SSD.
- Manager-ноды: 4 vCPU, 16 ГБ RAM, 16 ГБ SSD.
- Dashboard-ноды: 4 vCPU, 16 ГБ RAM, 16 ГБ SSD.
-
Развернут кластер ClickHouse® версии не ниже 25.3 из 3 шардов и 3 нод ZooKeeper.
Рекомендуется сделать отказоустойчивую децентрализованную конфигурацию кластера в трех разных сетевых зонах.
Конфигурация:
- Шарды: 64 vCPU, 256 ГБ RAM, 1 ТБ SSD.
- Ноды ZooKeeper: 8 vCPU, 32 ГБ RAM, 16 ГБ SSD.
-
Развернут кластер Kubernetes с версией мастер-узла и рабочих узлов не ниже 1.32.
Рекомендуется сделать отказоустойчивую децентрализованную конфигурацию кластера в трех разных сетевых зонах. Требуется создать 24 рабочих узла.
Конфигурация:
- Мастер-узел: 2 vCPU и 8 ГБ RAM.
- Группа узлов: 28 vCPU, 56 ГБ RAM, 64 ГБ HDD.
- CIDR кластера задать как
10.20.0.0/16, CIDR сервисов — как10.21.0.0/16.
Требуется наличие сетевого доступа между всеми ресурсами и кластером Kubernetes. При использовании TLS-соединения требуется наличие клиентского сертификата для доступа к ресурсу.
Требуется доступ от кластера Kubernetes до Container Registry с образами микросервисов.
Порядок установки Helm-чарта
Кластер Kubernetes может находиться в закрытом контуре сети, но должен иметь публичный IP-адрес в данном контуре. Кроме того, предполагается наличие возможности задать DNS-имена для публичных IP-адресов в данном контуре. Например, с помощью локального DNS-сервера в закрытой подсети.
Установка выполняется с компьютера с настроенной утилитой kubectl, утилитой helm и сетевым доступом к кластеру Kubernetes.
-
Установите helm-чарт ProjectContour:
helm repo add projectcontour https://projectcontour.io/helm-chart helm repo updatehelm install contour projectcontour/contour -n projectcontour --create-namespaceПроверка корректной установки:
kubectl get svc -n projectcontour- сервис
envoyдолжен быть доступен через LoadBalancer.
- сервис
-
Актуализируйте секреты в файле
values.sample.yamlв секцииglobal.secrets:Название секрета Описание PG_USERNAME Имя пользователя PostgreSQL PG_PASSWORD Пароль пользователя PostgreSQL KAFKA_USERNAME Имя пользователя Apache Kafka® KAFKA_PASSWORD Пароль пользователя Apache Kafka® S3_ACCESS_KEY Ключ доступа к S3 S3_SECRET_KEY Приватный ключ доступа к S3 CLICKHOUSE_USERNAME Имя пользователя ClickHouse® CLICKHOUSE_PASSWORD Пароль пользователя ClickHouse® OPENSEARCH_USERNAME Имя пользователя OpenSearch OPENSEARCH_PASSWORD Пароль пользователя OpenSearch KC_BOOTSTRAP_ADMIN_USERNAME Имя администратора Keycloak KC_BOOTSTRAP_ADMIN_PASSWORD Пароль администратора Keycloak keycloak_service_client-id Имя клиента Keycloak keycloak_service_client-secret Секрет клиента Keycloak KEYCLOAK_OIDC_SECRET Секрет OIDC Keycloak API_KEY API-ключ сервисного аккаунта -
Заполните параметры в файле
values.sample.yaml:Полный путь к параметру Описание Пример значения global.crLink ссылка на Container Registry cr.yandex/crp838mmkhvh5r1ajfeoglobal.env.spring_cloud_stream_kafka_binder_brokers строка подключения к брокерам Apache Kafka® kafka-0.kafka-headless-srv.ta-resources.svc.cluster.local:9092,kafka-1.kafka-headless-srv.ta-resources.svc.cluster.local:9092,kafka-2.kafka-headless-srv.ta-resources.svc.cluster.local:9092global.env.spring_cloud_stream_kafka_binder_configuration_security_protocol протокол подключения к брокерам Apache Kafka® PLAINTEXTglobal.env.spring_datasource_hikari_data-source-properties_ssl использовать ли SSL-подключение к PostgreSQL trueglobal.env.spring_datasource_hikari_data-source-properties_sslmode уровень SSL-подключения к PostgreSQL requireglobal.env.s3_storage_endpoint эндпоинт S3 https://s3.example.comglobal.env.security_serviceAccountToken api-ключ сервисного аккаунта YT*****************************************Q==services.classifiersConnector.env.classifiers_host хост API-метода лемматизации YandexGPT lemmatization-backend.speechkit.svc.cluster.localservices.classifiersConnector.env.classifiers_port порт API-метода лемматизации YandexGPT 17004services.classifiersConnector.env.spring_datasource_url jdbc-строка подключения к БД talk-classifiers jdbc:postgresql://postgres-srv.ta-resources.svc.cluster.local:5432/talk-classifiersservices.lobby.env.spring_datasource_url jdbc-строка подключения к БД talk-analytics PostgreSQL jdbc:postgresql://postgres-srv.ta-resources.svc.cluster.local:5432/talk-analyticsservices.talkRouter.env.spring_datasource_url jdbc-строка подключения к БД talk-db PostgreSQL jdbc:postgresql://postgres-srv.ta-resources.svc.cluster.local:5432/talk-dbservices.speechkitConnector.env.speechkit_stt_host Хост эндпоинта прокси SpeechKit Hybrid api-proxy-stt.speechkit.svc.cluster.localservices.speechkitConnector.env.speechkit_stt_port Порт эндпоинта прокси SpeechKit Hybrid 8443services.speechkitConnector.env.operation_host Хост эндпоинта прокси SpeechKit Hybrid api-proxy-stt.speechkit.svc.cluster.localservices.speechkitConnector.env.operation_port Порт эндпоинта прокси SpeechKit Hybrid 8443services.speechkitConnector.env.spring_datasource_url jdbc-строка подключения к БД talk-speechkit PostgreSQL jdbc:postgresql://postgres-srv.ta-resources.svc.cluster.local:5432/talk-speechkitservices.userCustomization.env.spring_datasource_url jdbc-строка подключения к БД user-customizations PostgreSQL jdbc:postgresql://postgres-srv.ta-resources.svc.cluster.local:5432/user-customizationsservices.summarizationConnector.env.operation_host Хост эндпоинта прокси YandexGPT fm-api-proxy.yagpt.svc.cluster.localservices.summarizationConnector.env.operation_port Порт эндпоинта прокси YandexGPT 8443services.summarizationConnector.env.gpt_host Хост эндпоинта прокси YandexGPT fm-api-proxy.yagpt.svc.cluster.localservices.summarizationConnector.env.gpt_port Порт эндпоинта прокси YandexGPT 8443services.summarizationConnector.env.spring_datasource_url jdbc-строка подключения к БД summarization-db PostgreSQL jdbc:postgresql://postgres-srv.ta-resources.svc.cluster.local:5432/summarization-dbservices.embeddingConnector.env.spring_datasource_url jdbc-строка подключения к БД embedding-db PostgreSQL jdbc:postgresql://postgres-srv.ta-resources.svc.cluster.local:5432/embedding-dbservices.embeddingConnector.env.gpt_host Хост эндпоинта прокси YandexGPT fm-api-proxy.yagpt.svc.cluster.localservices.embeddingConnector.env.gpt_port Порт эндпоинта прокси YandexGPT 8443services.talkSearch.env.opensearch_hosts Эндпоинт кластера OpenSearch opensearch-cluster.opensearch.svc.cluster.local:9200services.talkSearch.env.OPENSEARCH_ENDPOINT Эндпоинт кластера OpenSearch opensearch-cluster.opensearch.svc.cluster.local:9200services.talkReports.env.clickhouse_url jdbc-строка подключения к кластеру ClickHouse® jdbc:clickhouse://clickhouse-service.clickhouse.svc.cluster.local:8123/?distributed_directory_monitor_batch_inserts=1iamAgentKeycloak.env.keycloak_server-url URL Keycloak https://keycloak.example.comkeycloak.env.KC_HOSTNAME URL Keycloak keycloak.example.comkeycloak.env.KC_DB_URL jdbc-строка подключения к БД Keycloak PostgreSQL jdbc:postgresql://postgres-srv.ta-resources.svc.cluster.local:5432/keycloak?targetServerType=masterdataUI.env.BACKEND_PATH URL сетевого балансировщика ProjectContour envoy.example.comdataUI.env.KEYCLOAK_OIDC_BASE_URL URL UI SpeechSense Hybrid https://speechsense.example.comdataUI.env.KEYCLOAK_OIDC_ISSUER_BASE_URL URL настроек получения опций от Keycloak https://keycloak.example.com/realms/speechsense -
Сохраните файл
values.sample.yamlпод именемvalues.yamlи установите helm-чарт микросервисов SpeechSense Hybrid:cp ./services-helm/values.sample.yaml ./services-helm/values.yaml helm upgrade --install talk-analytics-services ./services-helm --namespace ta-services --create-namespace
Переменные среды для запуска сервисов
Общие переменные среды
Данные переменные пробрасываются во все микросервисы SpeechSense Hybrid.
|
Параметр |
Значение |
Комментарий |
|
|
|
Профиль для Spring Boot. |
|
|
|
Адреса брокеров Kafka. |
|
|
|
Протокол подключения к брокерам Kafka — PLAINTEXT/SSL. |
|
|
|
Пароль хранилища сертификатов, у нас он зашит в константу |
|
|
|
Путь к файлу с цепочкой сертификатов для grpc-метода микросервиса. Одинаковый для всех микросервисов SpeechSense Hybrid. |
|
|
|
Путь к файлу с приватным ключом сертификата для grpc-метода микросервиса. Одинаковый для всех микросервисов SpeechSense Hybrid. |
|
|
|
Имя хоста с IAM-агентом, определяется через внутренний DNS кластера k8s. |
|
|
|
Порт входящих соединений к IAM-агенту. |
|
|
|
Используется ли SSL при подключении к БД PostgreSQL. |
|
|
|
Режим подключения SSL для БД PostgreSQL. |
|
|
|
Использовать ли механизм подкладывания сертификатов. |
|
|
|
Механизм подкладывания сертификатов: путь, по которому выкладываются директории с сертификатами и их типом в файле |
|
|
|
URL s3-эндпоинта, содержащего бакет для загрузки файлов и бакет для выгрузки отчетов. |
|
|
|
Хост и порт сервиса lobby. Большинство микросервисов перенаправляют запросы на lobby. |
Параметры сервисов по умолчанию
Ряд параметров имеет значение по умолчанию, заданное в настройках микросервиса. Значение по умолчанию можно переопределить, задав его явным образом через переменную среды контейнера сервиса.
В таблице ниже приведены параметры по умолчанию для всех микросервисов. Параметры по умолчанию для индивидуальных сервисов приведены в соответствующих им разделах.
|
Параметр |
Значение по умолчанию |
Комментарий |
|
|
|
Опция |
|
|
|
|
|
|
|
Отключение |
|
|
|
Включение аутентификации и авторизации. |
|
|
|
Межсервисное взаимодействие системы по gRPC будет защищенным по TLS. |
|
|
|
Включена ли безопасность проверки иерархии сущностей системы организация-пространство-проект. |
Секреты микросервисов
В кластере k8s создается один секрет global-secrets со всеми секретами из файла values.yaml. В микросервисы передаются требуемые секреты как переменные среды. Полный список секретов:
|
Секрет |
Описание |
В каких микросервисах используется |
|
|
Имя пользователя БД PostgreSQL. |
|
|
|
Пароль пользователя БД PostgreSQL. |
|
|
|
Имя пользователя Apache Kafka®. |
|
|
|
Пароль пользователя Apache Kafka®. |
|
|
|
Ключ доступа к S3. |
|
|
|
Секретный ключ доступа к S3. |
|
|
|
Имя пользователя ClickHouse®. |
|
|
|
Пароль пользователя ClickHouse®. |
|
|
|
Имя пользователя OpenSearch. |
|
|
|
Пароль пользователя OpenSearch. |
|
|
|
Логин администратора keycloak. |
|
|
|
Пароль администратора keycloak. |
|
|
|
Уникальное имя приложения в keycloak, в нашем случае |
|
|
|
Секрет приложения в keycloak. |
|
|
|
Секрет от oidc client. |
|
|
|
API-ключ сервисного аккаунта SpeechSense Hybrid. |
|
classifiersConnector
Переменные среды для запуска
|
Параметр |
Значение |
Комментарий |
|
|
|
Хост метода лемматизации SpeechKit Hybrid. |
|
|
|
Порт метода лемматизации SpeechKit Hybrid. |
|
|
|
Адрес сервиса над микросервисом эмбеддинг-коннектора, разрешается через DNS кластера k8s. |
|
|
|
Порт сервиса над микросервисом эмбеддинг-коннектора. |
|
|
|
Адрес сервиса над микросервисом отчетов, разрешается через DNS кластера k8s. |
|
|
|
Порт сервиса над микросервисом отчетов. |
|
|
|
Jdbc-строка подключения к выделенной базе данных в БД PostgreSQL. |
|
|
|
Параметры запуска JVM-микросервиса. |
Переменные по умолчанию
|
Параметр |
Значение |
Комментарий |
|
|
|
Количество партиций топика |
|
|
|
Количество партиций топика |
lobby
Переменные среды для запуска
|
Параметр |
Значение |
Комментарий |
|
|
|
Имя хоста с IAM-агентом, определяется через внутренний DNS кластера k8s. |
|
|
|
Порт хоста с IAM-агентом. |
|
|
|
Имя сервиса для управления правами пользователей. |
|
|
|
Номер порта сервиса для управления правами пользователей. |
|
|
|
Jdbc-строка подключения к выделенной базе данных в БД PostgreSQL. |
|
|
|
Параметры запуска JVM-микросервиса. |
|
|
|
Имя выделенного бакета с диалогами в S3. |
|
|
|
Эндпоинт сервиса над микросервисом классификаторов, разрешается через DNS кластера k8s. |
|
|
|
Эндпоинт сервиса над микросервисом роутера, разрешается через DNS кластера k8s. |
Переменные по умолчанию
|
Параметр |
Значение |
Комментарий |
|
|
|
Включение авторизации с использованием IAM. |
|
|
|
Включение безопасности микросервиса. |
|
|
|
Межсервисное взаимодействие системы по gRPC будет защищенным по TLS. |
|
|
|
Взаимодействие с сервисом управления правами пользователей с использованием TLS. |
|
|
|
Включение механизма управления правами пользователей. |
|
|
|
Максимальный размер входящего сообщения в байтах для gRPC-сервиса. |
|
|
|
Максимальное число одновременных соединений к gRPC-сервису. |
|
|
|
Максимальный размер метаданного типа |
|
|
|
Число партиций в топике. |
talkRouter
Переменные среды для запуска
|
Параметр |
Значение |
Комментарий |
|
|
|
Эндпоинт сервиса над микросервисом лобби, разрешается через DNS кластера k8s. |
|
|
|
Эндпоинт сервиса квот. |
|
|
|
Jdbc-строка подключения к выделенной базе данных в БД PostgreSQL. |
|
|
|
Параметры запуска JVM-микросервиса. |
Переменные по умолчанию
|
Параметр |
Значение |
Комментарий |
|
|
|
Опция микросервиса по работе с Apache Kafka® — максимальное число записей, возвращаемых методом |
|
|
|
Опция микросервиса по работе с Apache Kafka® — максимальный промежуток времени в миллисекундах между вызовами метода |
|
|
|
Опция микросервиса по работе с Apache Kafka® — получать только актуальные записи при вызове метода |
|
|
|
Временной интервал пересчета необработанных диалогов. |
|
|
|
Максимальное число диалогов, по превышению которых не запускается пересчет. |
|
|
|
Количество партиций топика |
|
|
|
Количество партиций топика |
|
|
|
Количество партиций топика |
|
|
|
Количество партиций топика |
|
|
|
Количество партиций топика |
|
|
|
Количество партиций топика |
|
|
|
Количество партиций топика |
|
|
|
Количество партиций топика |
|
|
|
Количество партиций топика. |
|
|
|
Количество партиций топика. |
speechkitConnector
Переменные среды для запуска
|
Параметр |
Значение |
Комментарий |
|
|
|
Хост сервиса SpeechKit Hybrid. |
|
|
|
Порт сервиса SpeechKit Hybrid. |
|
|
|
Имя модели SpeechKit Hybrid. |
|
|
|
Хост сервиса операций SpeechKit Hybrid. |
|
|
|
Порт сервиса операций SpeechKit Hybrid. |
|
|
|
Порт для ручки сервиса классификации. |
|
|
|
Jdbc-строка подключения к выделенной базе данных в БД PostgreSQL. |
|
|
|
Имя выделенного бакета с диалогами в S3. |
|
|
|
Параметры запуска JVM-микросервиса. |
|
|
|
Эндпоинт сервиса над микросервисом lobby, разрешается через DNS кластера k8s. |
Переменные по умолчанию
|
Параметр |
Значение |
Комментарий |
|
|
|
Количество сообщений, считываемое за один раз из Apache Kafka®. |
|
|
|
Опция микросервиса по работе с Apache Kafka® — максимальный промежуток времени в миллисекундах между вызовами метода |
|
|
|
Опции библиотеки |
|
|
|
Опции библиотеки |
|
|
|
Опции библиотеки |
|
|
|
Опции библиотеки |
|
|
|
Количество партиций топика |
userCustomization
Переменные среды для запуска
|
Параметр |
Значение |
Комментарий |
|
|
|
Jdbc-строка подключения к выделенной базе данных в БД PostgreSQL. |
|
|
|
Параметры запуска JVM-микросервиса. |
Переменные по умолчанию
|
Параметр |
Значение |
Комментарий |
|
|
|
Префиксы идентификаторов для создаваемых настроек отображения интерфейса пользователя. |
talkStatistics
Переменные среды для запуска
|
Параметр |
Значение |
Комментарий |
|
|
|
Параметры запуска JVM-микросервиса. |
Переменные по умолчанию
|
Параметр |
Значение |
Комментарий |
|
|
|
Число партиций в топике. |
summarizationConnector
Переменные среды для запуска
|
Параметр |
Значение |
Комментарий |
|
|
|
Хост сервиса YandexGPT. |
|
|
|
Порт сервиса YandexGPT. |
|
|
|
Хост сервиса операций YandexGPT. |
|
|
|
Порт сервиса операций YandexGPT. |
|
|
|
Строка с адресом используемой модели. |
|
`JAVA_TOOL_OPTIONS`` |
|
Параметры запуска JVM-микросервиса. |
|
`spring_datasource_url`` |
|
Jdbc-строка подключения к выделенной базе данных в БД PostgreSQL. |
Переменные по умолчанию
|
Параметр |
Значение |
Комментарий |
|
|
|
Максимальный размер сообщения для суммаризации. |
|
|
|
Желаемая "температура" запроса. |
|
|
|
Размер батча, считываемого из Apache Kafka®. |
|
|
|
Опция микросервиса по работе с Apache Kafka® — максимальный промежуток времени в миллисекундах между вызовами метода |
|
|
|
Опции библиотеки |
|
|
|
Опции библиотеки |
|
|
|
Число партиций в топике. |
embeddingConnector
Переменные среды для запуска
|
Параметр |
Значение |
Комментарий |
|
|
|
Jdbc-строка подключения к выделенной базе данных в БД PostgreSQL. |
|
|
|
Хост сервиса эмбеддингов. |
|
|
|
Порт сервиса эмбеддингов. |
|
|
|
Строка с адресом используемой модели YandexGPT5. |
|
|
|
Строка с адресом используемой модели YandexGPT5. |
|
|
|
Параметры запуска JVM-микросервиса. |
Переменные по умолчанию
|
Параметр |
Значение |
Комментарий |
|
|
|
Максимальный размер сообщения для суммаризации. |
|
|
|
Желаемая "температура" запроса. |
|
|
|
Размер батча, считываемого из Apache Kafka®. Детали внутренней реализации. |
|
|
|
Опция микросервиса по работе с Apache Kafka® — максимальный промежуток времени в миллисекундах между вызовами метода |
|
|
|
Опции библиотеки |
|
|
|
Опции библиотеки |
|
|
|
Таймаут времени обработки сообщений. |
|
|
|
Число партиций в топике. |
talkSearch
Переменные среды для запуска
|
Параметр |
Значение |
Комментарий |
|
|
|
Адрес сервиса OpenSearch. |
|
|
|
Адрес сервиса OpenSearch. |
|
|
|
Параметры запуска JVM-микросервиса. |
|
|
|
Имя бакета в S3 для экспорта отчетов. |
Переменные по умолчанию
|
Параметр |
Значение |
Комментарий |
|
|
|
Опция микросервиса по работе с Apache Kafka® — максимальное число записей, возвращаемых методом |
|
|
|
Опция микросервиса по работе с Apache Kafka® — максимальный промежуток времени в миллисекундах между вызовами метода |
|
|
|
Максимальный размер входящего сообщения в байтах для gRPC-сервиса. |
talkReports
Переменные среды для запуска
|
Параметр |
Значение |
Комментарий |
|
|
|
Параметры запуска JVM-микросервиса. |
|
|
|
Jdbc-строка подключения к выделенной базе данных в БД ClickHouse®. |
|
|
|
Хост сервиса над микросервисом эмбеддинг-коннектора, разрешается через DNS кластера k8s. |
|
|
|
Порт сервиса над микросервисом эмбеддинг-коннектора. |
|
|
|
Хост сервиса над микросервисом суммаризации, разрешается через DNS кластера k8s. |
|
|
|
Порт сервиса над микросервисом суммаризации. |
iamAgent
Переменные среды для запуска
|
Параметр |
Значение |
Комментарий |
|
|
|
Порт grpc-сервиса iam-агента. |
|
|
|
URL сервиса keycloak. |
|
|
|
Требуется ли SSL при подключении к keycloak. |
|
|
|
Имя realm keycloak выделенного для SpeechSense Hybrid. |
|
|
|
ID корневой организации SpeechSense. |
|
|
|
Сертификат gRPC-сервиса IAM-агента. |
|
|
|
Приватный ключ gRPC-сервиса IAM-агента. |
|
|
|
Включать ли reflection на gRPC-сервисе IAM-агента. |
|
|
|
Параметры запуска JVM-микросервиса. |
|
|
|
Уровень логирования приложения — DEBUG. |
keycloak
Переменные среды для запуска
|
Параметр |
Значение |
Комментарий |
|
|
|
Какой заголовок ставит балансер при проксировании. Подробнее в документации |
|
|
|
Включить отдачу health-чеков. |
|
|
|
Включить HTTP (по умолчанию работает только HTTPS). |
|
|
|
Имя хоста keycloak (например, |
|
|
|
Вендор СУБД. Подробнее в документации |
|
|
|
JDBC URL. |
|
|
|
Какой стек использовать для взаимодействия узлов кластера и обнаружения узлов. |
|
|
|
Куда будут писаться логи. Подробнее в документации |
|
|
|
Уровень логирования. |
|
|
|
Дополнительные параметры JVM для keycloak. |
dataUI
Переменные среды для запуска
|
Параметр |
Значение |
Комментарий |
|
|
|
Путь к бэкенду. |
|
|
|
Путь к CA-сертификату HTTP Proxy envoy. |
|
|
|
Длинная строка для генерации cookie. |
|
|
|
Длинная строка для генерации csrf-токена. |
|
|
|
Путь к файлу с дополнительными сертификатами keycloak, бэкенда и S3 для NodeJS. Несколько сертификатов конкатенируются в одном файле. |
|
|
|
Адрес развернутого KeyCloak. |
|
|
|
Адрес развернутого фронтенда. |
|
|
|
Секрет из KeyCloak, находится в realm>clients>credentials |
|
|
|
|
|
|
|
Realm KeyCloak, конкатенируется с KEYCLOAK_OIDC_BASE_URL |
|
|
|
Длинная строка для генерации cookie. |
|
|
|
Сервисный аккаунт с правами администратора, от имени которого будет происходить листинг пользователей KeyCloak. |
|
|
Пароль от сервисного аккаунта с правами администратора, связан с |
|
|
|
|
ID клиента с которым будет заходить сервисный аккаунт. |
Дополнительные компоненты
Помимо helm-чарта в составе модуля SpeechSense Hybrid поставляются специальные версии компонентов YandexGPT и SpeechKit Hybrid, необходимые для работы ПО. В ходе развертывания они устанавливаются в кластере Kubernetes.