从 Rubrix 迁移#

如果您已经运行了 Rubrix 服务器并希望升级到新的 Argilla 服务器,本指南将帮助您理解并过渡到 Argilla。

Python 模块和命令#

模块现在称为 argilla 而不是 rubrix,但代码的其余部分仍然完全兼容,因此如果您必须升级某些代码库,您只需替换行

import rubrix...

使用新的模块名称

import argilla...

等效地,要启动服务器

argilla server start

代替

python -m rubrix

环境变量#

所有环境变量都已从使用前缀 RUBRIX_ 更改为使用前缀 ARGILLA_

.. warning:: 从 1.13.0 版本开始,已移除对非前缀环境变量的支持。所有环境变量都必须以 ARGILLA_ 为前缀。

从 Rubrix 配置新 Argilla 服务器的最佳方法是复制 Rubrix 和 Argilla 实例的所有 ENV 变量。如果需要版本回滚,这将简化操作。

新的 Elasticsearch 索引命名约定#

Argilla 还为 Elasticsearch 中存储的索引引入了新的命名约定。

对于包含所有已创建数据集的索引模式,新命名空间是 ar.datasets,而不是 .rubrix.datasets-v0

对于包含数据集记录的索引,新命名约定是 ar.dataset.<dataset_id>,而不是 .rubrix.dataset.<datset_id>.records-v0

启用迁移过程#

默认情况下,新的 Argilla 服务器不会检查是否存在先前 Rubrix 实例的数据集。

如果您希望新的 Argilla 服务器检测到以前的 Rubrix 数据集,并使它们可以在您的 Argilla 服务器实例中访问,您可以在启动 Argilla 服务器之前像这样设置 ARGILLA_ENABLE_MIGRATION

ARGILLA_ENABLE_MIGRATION=1 argilla server start

这将获取 Rubrix 实例 .rubrix.datasetsw-v0 索引中包含的信息,并将信息复制到新的 ar.datasets 索引中。

然后,对于每个旧的 rubrix 索引,将使用新的命名约定格式创建一个别名。

这将允许您从新的 Argilla 服务器处理以前的 Rubrix 数据集,而无需复制信息,并且仍然可以看到来自以前 Rubrix 服务器的更改。

此迁移开关可以帮助您更逐步地过渡到 Argilla。

:warning: 从 argilla 创建的新数据集在旧的 rubrix 实例中不可见。

🚒 我们很乐意在此迁移过程中为您提供支持。最简单的方法是通过 Slack 社区 联系我们或打开 GitHub 问题

旧版本的 Rubrix#

如果您需要访问旧的 Rubrix 文档,可以访问此链接