Yandex Cloud
Поиск
Связаться с экспертомПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
    • Cloud Interconnect
    • Cloud Backup
    • Cloud Registry
    • Yandex AI Studio
    • Compute Cloud
    • Object Storage
    • Managed Service for Kubernetes®
    • Yandex BareMetal
    • Smart Web Security
    • Security Deck
    • Managed Service for PostgreSQL
    • Managed Service for ClickHouse®
    • Monium
    • Cloud CDN
    • Network Load Balancer
    • Virtual Private Cloud
    • Cloud DNS
    • Application Load Balancer
    • Yandex Cloud Video
    • Stackland
    • Yandex Cloud Router
    • Yandex Managed Service for Trino
    • Managed Service for MySQL®
    • Managed Service for Valkey™
    • Managed Service for Apache Spark™
    • Yandex StoreDoc
    • Managed Service for OpenSearch
    • Managed Service for Apache Kafka®
    • Data Transfer
    • Yandex MPP Analytics Engine for PostgreSQL
    • Yandex Managed Service for Apache Airflow®
    • Data Processing
    • Yandex MetaData Hub
    • Managed Service for YDB
    • Managed Service for Sharded PostgreSQL
    • Managed Service for YTsaurus
    • Yandex WebSQL
    • DataLens
    • Yandex Search API
    • SpeechSense
    • SpeechKit
    • DataSphere
    • Vision OCR
    • Translate
    • Yandex Neurosupport
    • VibeCraft
    • Yandex Cloud Detection and Response
    • Yandex Identity Hub
    • Key Management Service
    • Certificate Manager
    • Yandex Lockbox
    • Audit Trails
    • SmartCaptcha
    • Cloud Desktop
    • GOST Gateway
    • Yandex SIEM
    • SourceCraft Code Assistant
    • Container Registry
    • Managed Service for GitLab
    • SourceCraft
    • Managed Service for Prometheus®
    • Cloud Functions
    • API Gateway
    • Yandex Cloud Postbox
    • Message Queue
    • Serverless Integrations
    • IoT Core
    • Data Streams
    • Serverless Containers
    • Cloud Notification Service
    • Yandex Query
    • Identity and Access Management
    • Yandex Cloud Console
    • Resource Manager
    • Yandex Cloud Billing
    • Yandex Cloud Quota Manager
    • Cloud Apps
  • Статус работы сервисов
  • Marketplace
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Yandex Cloud Trust
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»
Практические руководства
    • Все руководства
      • Интеграция генеративных моделей в Visual Studio Code в качестве ассистента для написания кода
      • Интеграция AI-аналитика данных с Data Catalog
      • Использование Yandex Managed Service for Valkey™ с модулем Search и моделей Yandex AI Studio для векторного поиска в RAG-системе

В этой статье:

  • Перед началом работы
  • Необходимые платные ресурсы
  • Подготовьте инфраструктуру
  • Подготовьте среду для тестирования
  • Подготовьте тестовые данные и загрузите их в Yandex Managed Service for Valkey™
  • Проверьте тестовые данные в Yandex Managed Service for Valkey™
  • Выполните поиск в RAG-системе
  • Удалите созданные ресурсы
  1. Построение Data Platform
  2. Использование Yandex Managed Service for Valkey™ с модулем Search и моделей Yandex AI Studio для векторного поиска в RAG-системе

Использование Yandex Managed Service for Valkey™ с модулем Search и моделей Yandex AI Studio для векторного поиска в RAG-системе

Статья создана
Yandex Cloud
Обновлена 17 сентября 2026 г.
Открыть в Markdown
  • Перед началом работы
    • Необходимые платные ресурсы
  • Подготовьте инфраструктуру
  • Подготовьте среду для тестирования
  • Подготовьте тестовые данные и загрузите их в Yandex Managed Service for Valkey™
  • Проверьте тестовые данные в Yandex Managed Service for Valkey™
  • Выполните поиск в RAG-системе
  • Удалите созданные ресурсы

RAG (Retrieval-Augmented Generation) — это подход, при котором языковая модель для ответа на запрос пользователя использует результаты поиска в базе данных.

В руководстве приведен пример RAG-системы, которая использует Yandex Managed Service for Valkey™ для хранения данных о людях и выполнения векторного поиска по ним с помощью модуля Search. Для векторизации поискового запроса и формирования ответа используются модели Yandex AI Studio. Yandex Managed Service for Valkey™ и AI Studio взаимодействуют с помощью MCP.

При обработке поискового запроса компоненты системы взаимодействуют следующим образом:

  1. Языковая модель Yandex AI Studio получает запрос пользователя и вызывает MCP-инструмент для поиска данных.
  2. MCP-инструмент преобразует запрос в эмбеддинг с помощью модели векторного представления Yandex AI Studio, а затем передает эмбеддинг в Yandex Managed Service for Valkey™.
  3. Yandex Managed Service for Valkey™ с помощью модуля Search выполняет векторный поиск и возвращает результат MCP-инструменту, который передает его языковой модели.
  4. Языковая модель анализирует найденные данные и отвечает пользователю.

Для работы с примером необходима Unix-подобная среда, а также кластер Yandex Managed Service for Valkey™ версии 9.0 или выше.

Исходный код примера RAG-системы хранится в репозитории SourceCraft.

Чтобы настроить RAG-систему, выполните следующие шаги:

  1. Подготовьте инфраструктуру.
  2. Подготовьте среду для тестирования.
  3. Подготовьте тестовые данные и загрузите их в Yandex Managed Service for Valkey™.
  4. Проверьте тестовые данные в Yandex Managed Service for Valkey™.
  5. Выполните поиск в RAG-системе.

Если созданные ресурсы вам больше не нужны, удалите их.

Перед началом работыПеред началом работы

Зарегистрируйтесь в Yandex Cloud и создайте платежный аккаунт:

  1. Перейдите в консоль управления, затем войдите в Yandex Cloud или зарегистрируйтесь.
  2. На странице Yandex Cloud Billing убедитесь, что у вас подключен платежный аккаунт, и он находится в статусе ACTIVE или TRIAL_ACTIVE. Если платежного аккаунта нет, создайте его и привяжите к нему облако.

Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура, на странице облака.

Подробнее об облаках и каталогах.

Необходимые платные ресурсыНеобходимые платные ресурсы

  • Кластер Yandex Managed Service for Valkey™: использование выделенных хостам вычислительных ресурсов, объем хранилища и резервных копий (тарифы Yandex Managed Service for Valkey™).
  • AI-ассистент: количество токенов в запросе и ответе (тарифы Yandex AI Studio). Тарификация за использование ассистента начинается с момента его включения.
  • Публичные IP-адреса, если для хостов кластера включен публичный доступ (тарифы Yandex Virtual Private Cloud).

Подготовьте инфраструктуруПодготовьте инфраструктуру

Вручную
С помощью Terraform
  1. Создайте облачную сеть с именем demo-network.

    При создании сети автоматически создаются три подсети в разных зонах доступности.

  2. В сети demo-network создайте группу безопасности valkey-sg для кластера Yandex Managed Service for Valkey™ и добавьте в группу правило для входящего трафика, которое разрешает подключение к кластеру через интернет:

    • Диапазон портов — 6380.
    • Протокол — TCP.
    • Назначение — Диапазон адресов.
    • IPv4 CIDR — 0.0.0.0/0.
  3. Создайте кластер Yandex Managed Service for Valkey™ любой подходящей конфигурации со следующими настройками:

    • Версия — 9.0 или выше.
    • Сеть — demo-network.
    • Группа безопасности — valkey-sg.
    • Поддержка TLS — включена.

    При создании кластера включите публичный доступ к хостам и добавьте модуль Search.

    Примечание

    Публичный доступ к хостам кластера нужен, если вы планируете подключаться к кластеру через интернет. Этот вариант подключения более простой, и его рекомендуется использовать для прохождения руководства. К хостам без публичного доступа тоже можно подключиться, но только с виртуальных машин Yandex Cloud, расположенных в той же облачной сети, что и кластер.

  1. Если у вас еще нет Terraform, установите его.

  2. Получите данные для аутентификации. Вы можете добавить их в переменные окружения или указать далее в файле с настройками провайдера.

  3. Настройте и инициализируйте провайдер. Чтобы не создавать конфигурационный файл с настройками провайдера вручную, скачайте его.

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

  5. Скачайте в ту же рабочую директорию файл конфигурации valkey-rag-search.tf. В этом файле описаны:

    • сеть;

    • подсети;

    • группа безопасности;

    • кластер Yandex Managed Service for Valkey™ с публичным доступом к хостам и модулем Search.

      Примечание

      Публичный доступ к хостам кластера нужен, если вы планируете подключаться к кластеру через интернет. Этот вариант подключения более простой, и его рекомендуется использовать для прохождения руководства. К хостам без публичного доступа тоже можно подключиться, но только с виртуальных машин Yandex Cloud, расположенных в той же облачной сети, что и кластер.

  6. Укажите в конфигурационном файле следующие параметры:

    • network_name — имя сети;
    • sg_name — имя группы безопасности;
    • valkey_cluster_name — имя кластера;
    • valkey_password — пароль для подключения к кластеру.
  7. Проверьте корректность файлов конфигурации Terraform с помощью команды:

    terraform validate
    

    Если в файлах конфигурации есть ошибки, Terraform на них укажет.

  8. Создайте необходимую инфраструктуру:

    1. Выполните команду для просмотра планируемых изменений:

      terraform plan
      

      Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.

    2. Если вас устраивают планируемые изменения, внесите их:

      1. Выполните команду:

        terraform apply
        
      2. Подтвердите изменение ресурсов.

      3. Дождитесь завершения операции.

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

Подготовьте среду для тестированияПодготовьте среду для тестирования

  1. Установите Python версии 3.11 или выше.

  2. Установите Git.

  3. Создайте сервисный аккаунт sa-ai и назначьте ему роль ai.languageModels.user для использования моделей Yandex AI Studio.

  4. Создайте API-ключ для сервисного аккаунта sa-ai.

  5. Создайте локальную копию репозитория SourceCraft с исходным кодом примера:

    git clone https://git@git.sourcecraft.dev/valkey/webinar-260624-rag-example.git
    
  6. Перейдите в каталог репозитория:

    cd webinar-260624-rag-example
    
  7. Подготовьте окружение примера:

    1. Установите зависимости:

      make install
      
    2. Активируйте виртуальное окружение:

      source .venv/bin/activate
      
  8. Настройте параметры доступа к Yandex Managed Service for Valkey™ и Yandex AI Studio:

    1. Создайте файл .env на основе шаблона .env.example:

      cp .env.example .env
      
    2. Откройте файл .env в текстовом редакторе, например в vim:

      vim .env
      
    3. Укажите в файле следующие параметры:

      • YDS_API_KEY — значение API-ключа.
      • YDS_FOLDER_ID — идентификатор каталога Yandex Cloud, который можно получить со списком каталогов в облаке.
      • VALKEY_USERNAME — default.
      • VALKEY_PASSWORD — пароль для подключения к кластеру Yandex Managed Service for Valkey™.

      Пример файла:

      # Yandex AI Studio credentials
      # Get an API key: https://yandex.cloud/en/docs/ai-studio/operations/get-api-key
      YDS_API_KEY=AQVN1TpRw9tkjhKtj6R0mRgmHLvMsj84********
      YDS_FOLDER_ID=b1g4unjqq856********
      
      # Valkey auth (leave empty for local unauthenticated Valkey)
      VALKEY_USERNAME=default
      VALKEY_PASSWORD=********
      
  9. Настройте параметры подключения к кластеру Yandex Managed Service for Valkey™:

    1. Откройте файл config.yaml в текстовом редакторе, например в vim:

      vim config.yaml
      
    2. В блоке valkey укажите следующие параметры:

      • host — c-<идентификатор_кластера>.rw.mdb.yandexcloud.net.

        Идентификатор кластера можно получить со списком кластеров в каталоге.

      • port — 6380.

      • db — 0.

      • ssl — true.

      Пример блока valkey:

      # Valkey connection settings
      valkey:
        host: "c-c9qlvmr5h2g9********.rw.mdb.yandexcloud.net"
        port: 6380
        db: 0
        # username + password read from .env: VALKEY_USERNAME, VALKEY_PASSWORD
        # SSL toggle for managed Valkey
        ssl: true
      

    Кроме параметров подключения к кластеру Yandex Managed Service for Valkey™, файл config.yaml также содержит настройки:

    • моделей Yandex AI Studio;
    • индекса и векторного поиска в Yandex Managed Service for Valkey™;
    • MCP-сервера;
    • оркестратора;
    • системного промпта языковой модели;
    • логирования.

    Для работы примера достаточно настроить только параметры подключения к кластеру Yandex Managed Service for Valkey™. Остальные настройки можно оставить без изменений.

Подготовьте тестовые данные и загрузите их в Yandex Managed Service for Valkey™Подготовьте тестовые данные и загрузите их в Yandex Managed Service for Valkey™

В каталоге репозитория webinar-260624-rag-example выполните следующие команды:

  1. Подготовьте файл data/people.json с тестовыми данными:

    rag-demo generate -n 10
    

    Результат:

    Wrote 10 people to data/people.json
    
  2. Загрузите тестовые данные в Yandex Managed Service for Valkey™:

    rag-demo index
    

    В кластере Yandex Managed Service for Valkey™ будет создан индекс idx_people, в который загрузятся тестовые данные.

    Результат:

      indexed person 1: Alice Smith
      indexed person 2: John Doe
      indexed person 3: Maria Garcia
      indexed person 4: Wei Zhang
      indexed person 5: James Brown
      indexed person 6: Priya Patel
      indexed person 7: Lars Nilsson
      indexed person 8: Olivia Wilson
      indexed person 9: Hassan Ali
      indexed person 10: Sophie Martin
    Loaded 10 people into index idx_people
    

Проверьте тестовые данные в Yandex Managed Service for Valkey™Проверьте тестовые данные в Yandex Managed Service for Valkey™

  1. Подключитесь к базе данных кластера Yandex Managed Service for Valkey™:

    С помощью утилиты valkey-cli
    С помощью утилиты redis-cli
    С помощью Yandex WebSQL
    1. Перейдите в директорию, куда хотите скачать дистрибутив Valkey™.

    2. Скачайте нужную версию Valkey™ и выполните сборку и установку с поддержкой TLS:

      wget https://github.com/valkey-io/valkey/archive/refs/tags/<версия>.tar.gz && \
      tar -xzvf <версия>.tar.gz && \
      cd valkey-<версия> && \
      make BUILD_TLS=yes && \
      sudo make install && \
      sudo cp ./src/valkey-cli /usr/bin/
      
    3. Получите SSL-сертификат:

      mkdir -p ~/.redis && \
      wget "https://storage.yandexcloud.net/cloud-certs/CA.pem" \
           --output-document ~/.redis/YandexInternalRootCA.crt && \
      chmod 0655 ~/.redis/YandexInternalRootCA.crt
      

      Сертификат будет сохранен в файле ~/.redis/YandexInternalRootCA.crt.

    4. Подключитесь к кластеру:

      • Для подключения к нешардированному кластеру выполните команду:

        valkey-cli \
            -h c-<идентификатор_кластера>.rw.mdb.yandexcloud.net \
            -a <пароль> \
            -p 6380 \
            --tls \
            --cacert ~/.redis/YandexInternalRootCA.crt
        

        Идентификатор кластера можно получить со списком кластеров в каталоге.

      • Для подключения к шардированному кластеру выполните команду:

        valkey-cli \
            -h <FQDN_хоста-мастера_в_нужном_шарде> \
            -c \
            -a <пароль> \
            -p 6380 \
            --tls \
            --cacert ~/.redis/YandexInternalRootCA.crt
        

        О том, как получить FQDN хоста, читайте в разделе FQDN хостов Valkey™.

    1. Установите утилиту redis-cli:

      sudo apt update && sudo apt install --yes redis-tools
      
    2. Получите SSL-сертификат:

      mkdir -p ~/.redis && \
      wget "https://storage.yandexcloud.net/cloud-certs/CA.pem" \
           --output-document ~/.redis/YandexInternalRootCA.crt && \
      chmod 0655 ~/.redis/YandexInternalRootCA.crt
      

      Сертификат будет сохранен в файле ~/.redis/YandexInternalRootCA.crt.

    3. Подключитесь к кластеру:

      • Для подключения к нешардированному кластеру выполните команду:

        redis-cli \
            -h c-<идентификатор_кластера>.rw.mdb.yandexcloud.net \
            -a <пароль> \
            -p 6380 \
            --tls \
            --cacert ~/.redis/YandexInternalRootCA.crt
        

        Идентификатор кластера можно получить со списком кластеров в каталоге.

      • Для подключения к шардированному кластеру выполните команду:

        redis-cli \
            -h <FQDN_хоста-мастера_в_нужном_шарде> \
            -c \
            -a <пароль> \
            -p 6380 \
            --tls \
            --cacert ~/.redis/YandexInternalRootCA.crt
        

        О том, как получить FQDN хоста, читайте в разделе FQDN хостов Valkey™.

    Перед подключением включите доступ к сервису Yandex WebSQL в настройках кластера.

    Чтобы подключиться к базе данных с помощью Yandex WebSQL:

    1. В консоли управления перейдите в каталог, в котором находится нужный кластер.
    2. Перейдите в сервис Yandex Managed Service for Valkey™.
    3. Нажмите на имя нужного кластера и выберите вкладку WebSQL.
    4. В правом верхнем углу страницы нажмите кнопку Перейти в WebSQL.
  2. Получите информацию об индексе idx_people:

    FT.INFO idx_people
    

    Проверьте значения параметров в выводе:

    • num_docs — 10;
    • state — ready.
  3. Получите список ключей в кластере:

    KEYS *
    

    Результат:

    1) "person:1"
    2) "person:2"
    3) "person:3"
    4) "person:4"
    5) "person:5"
    6) "person:9"
    7) "person:id_counter"
    8) "person:6"
    9) "person:7"
    10) "person:8"
    11) "person:10"
    

    Где person:id_counter — служебный ключ, в котором хранится значение счетчика идентификаторов.

  4. Просмотрите данные по ключу person:1:

    HGETALL person:1
    

Выполните поиск в RAG-системеВыполните поиск в RAG-системе

В каталоге репозитория webinar-260624-rag-example выполните следующие команды:

  1. Выполните поиск по запросу Who works with Kubernetes?:

    rag-demo ask "Who works with Kubernetes?"
    

    Результат:

    Lars Nilsson works with Kubernetes. He is a site reliability engineer in Stockholm, Sweden, responsible for keeping large Kubernetes clusters healthy.
    

    Помимо ответа модели, в выводе отображается подробная информация о выполнении запроса. Чтобы скрыть эту информацию, в файле config.yaml в блоке logging укажите console_level: "WARNING". После этого будет выводиться сокращенная информация о выполнении запроса и итоговый ответ модели.

  2. Выполните поиск по запросу Кто увлекается бегом?:

    rag-demo ask "Кто увлекается бегом?"
    

    Результат:

    Из найденных людей бегом увлекается **Wei Zhang** (38 лет, Токио, Япония) — он тренируется для участия в марафонах.
    

Удалите созданные ресурсыУдалите созданные ресурсы

Некоторые ресурсы платные. Чтобы за них не списывалась плата, удалите ресурсы, которые вы больше не будете использовать:

Вручную
С помощью Terraform

Удалите кластер Yandex Managed Service for Valkey™.

  1. В терминале перейдите в директорию с планом инфраструктуры.

    Важно

    Убедитесь, что в директории нет Terraform-манифестов с ресурсами, которые вы хотите сохранить. Terraform удаляет все ресурсы, которые были созданы с помощью манифестов в текущей директории.

  2. Удалите ресурсы:

    1. Выполните команду:

      terraform destroy
      
    2. Подтвердите удаление ресурсов и дождитесь завершения операции.

    Все ресурсы, которые были описаны в Terraform-манифестах, будут удалены.

Была ли статья полезна?

Предыдущая
Использование кластера Yandex Managed Service for Valkey™ в качестве хранилища сессий PHP
Следующая
Распределенные блокировки для «1С:Предприятия» в кластере Yandex Managed Service for Valkey™
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»