Перейти к основному содержимому

Инициализация copywala-vdb

примечание

Исполнять сценарий необходимо от имени пользователя qdrant.

Описание сценария

Инициализация выполняется через CLI компонента copywala-vdb командой:

copywala-vdb init <agent_name>

Где agent_name – уникальное имя агента (задается самостоятельно администратором).

При первичной инициализации:

  1. Утилита copywala-vdb генерирует уникальный идентификатор agent_id.

  2. На основании agent_name и agent_id автоматически формируется значение полного уникального наименования экземпляра агента instance_name по принципу: agent_name+_+agent_id.

    Пример:

    $ copywala-vdb init TESTAGENT

    2026-05-06 14:31:53.191 [148955] INF copywala-vdb 1.3.0 (35ab33bc) compiled at 2026-05-04_11:02:27
    2026-05-06 14:31:53.191 [148955] INF copywala initialization complete: name="TESTAGENT" id="019dfd0f-04e7-7be6-9529-0d2395ab13c1"

    На основе этих данных формируется instance_name:

    TESTAGENT_019dfd0f-04e7-7be6-9529-0d2395ab13c1
Подсказка

Узнать значенияinstance_name, agent_name и agent_id можно с помощью команды copywala-vdb db info:

$ copywala-vdb db info

username: backup_user
address: http://{IP_ADDRESS}:{PORT}
version: 1.16.3
commit: "<commit_hash>"
edition: VectorDB - vector search engine based on qdrant
instance_name: TESTAGENT_019dfd0f-04e7-7be6-9529-0d2395ab13c1
collections: test_collection
cluster_info:
status: disabled
role: ""
is_voter: false
is_arbiter: false
leader: 0
peer_id: 0
peers: {}

В данном примере:

TESTAGENTagent_name_019dfd0f-04e7-7be6-9529-0d2395ab13c1agent_idinstance_name\overbrace{\underbrace{\text{TESTAGENT}}_{\mathrm{agent\_name}}\_\underbrace{\text{019dfd0f-04e7-7be6-9529-0d2395ab13c1}}_{\mathrm{agent\_id}}}^{\mathrm{instance\_name}}

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

Идентификатор сохраняется в файле /etc/pbr/pbr.agent.id (задается в copywala-vdb.yaml, параметр app.agent_id_file_path) и далее используется для однозначного распознавания конкретного экземпляра базы данных и агентского приложения. Например, все резервные копии этого экземпляра будут сохраняться в отдельной подпапке хранилища с названием, соответствующим instance_name.

Последовательность выполнения

Выполните инициализацию приложения через CLI компонента copywala-vdb командой copywala-vdb init <agent_name>.

Справка по команде copywala-vdb init

Описание:

Запускает процесс инициализации утилиты copywala-vdb.

Синтаксис:

copywala-vdb init <agent_name> [flags]

Обязательные параметры:

<agent_name> – уникальное имя агента.

Опциональные параметры:

[flags] – доступны следующие флаги:

ФлагОписание
-h|--helpПоказать справку по команде
-c|--config <path to copywala-vdb config>Использовать конфигурационный файл, отличный от файла по умолчанию: /etc/pbr/copywala-vdb.yaml

Результат

В результате выполнения команды будет выведено:

$ copywala-vdb init TESTAGENT

2026-05-06 14:31:53.191 [148955] INF copywala-vdb 1.3.0 (35ab33bc) compiled at 2026-05-04_11:02:27
2026-05-06 14:31:53.191 [148955] INF copywala initialization complete: name="TESTAGENT" id="019dfd0f-04e7-7be6-9529-0d2395ab13c1"

Исключительные сценарии

Будет выведено соответствующее сообщение для случаев:

  • Ошибка при повторной инициализации — идентификатор экземпляру уже был сгенерирован ранее:

    $ copywala-vdb init TEST_AGENT_2
    2026-05-06 16:47:13.246 [155996] INF copywala-vdb 1.3.0 (35ab33bc) compiled at 2026-05-04_11:02:27
    2026-05-06 16:47:13.246 [155996] ERR app: init app id info failed err="app id already initialized"
    2026-05-06 16:47:13.247 [155996] WRN copywala already initialized: name="TESTAGENT" id="019dfd0f-04e7-7be6-9529-0d2395ab13c1"
  • Ошибка при загрузке файла конфигурации.

  • Ошибка при инициализации логера.