在 Colab 中打开  在 GitHub 上查看 Notebook

配置 UsersWorkspaces#

本教程是系列教程的一部分,我们将在此系列教程中了解 FeedbackDataset。在此步骤中,我们将展示如何配置 UsersWorkspaces。如果您需要更多背景信息,请查阅用户管理工作区管理

workflow

目录#

  1. 配置用户

    1. 当前活动用户

    2. 创建用户

    3. 更新用户

  2. 结论

运行 Argilla#

对于本教程,您需要运行 Argilla 服务器。部署和运行 Argilla 有两个主要选项

在 Hugging Face Spaces 上部署 Argilla: 如果您想使用外部 Notebook(例如,Google Colab)运行教程,并且您在 Hugging Face 上拥有帐户,则只需单击几下即可在 Spaces 上部署 Argilla

deploy on spaces

有关配置部署的详细信息,请查看官方 Hugging Face Hub 指南

使用 Argilla 的快速入门 Docker 镜像启动 Argilla:如果您想在本地计算机上运行 Argilla,则建议使用此选项。请注意,此选项仅允许您在本地运行教程,而不能与外部 Notebook 服务一起运行。

有关部署选项的更多信息,请查看文档的“部署”部分。

提示

本教程是 Jupyter Notebook。有两种运行它的选项

  • 使用此页面顶部的“在 Colab 中打开”按钮。此选项允许您直接在 Google Colab 上运行 Notebook。不要忘记将运行时类型更改为 GPU,以加快模型训练和推理速度。

  • 通过单击页面顶部的“查看源代码”链接下载 .ipynb 文件。此选项允许您下载 Notebook 并在本地计算机上或您选择的 Jupyter Notebook 工具上运行它。

首先,让我们安装我们的依赖项并导入必要的库

[ ]:
!pip install "argilla[server]"
[1]:
import argilla as rg
from argilla._constants import DEFAULT_API_KEY

为了运行此 Notebook,我们将需要一些凭据才能从 Argilla 和 🤗hub 推送和加载数据集,让我们在以下单元格中设置它们

[54]:
# Argilla credentials
api_url = "https://#:6900" # "https://<YOUR-HF-SPACE>.hf.space"
api_key = DEFAULT_API_KEY # admin.apikey
hf_token = None # not used in this tutorial

登录到 Argilla

[ ]:
rg.init(
    api_url=api_url,
    api_key=api_key
)

或者,我们可以使用 CLI 运行 argilla login 命令,并在那里传递 api_urlapi_key

[ ]:
!python -m argilla login --api-url {api_url} --api-key {api_key}

启用遥测#

我们从您与我们的教程互动的方式中获得宝贵的见解。为了改进自身,为您提供最合适的内容,使用以下代码行将帮助我们了解本教程是否有效地为您服务。虽然这是完全匿名的,但如果您愿意,可以选择跳过此步骤。有关更多信息,请查看遥测页面。

[ ]:
try:
    from argilla.utils.telemetry import tutorial_running
    tutorial_running()
except ImportError:
    print("Telemetry is introduced in Argilla 1.20.0 and not found in the current installation. Skipping telemetry.")

配置 Users#

当前活动 User#

在本教程中,我们将首先探索我们在初始化期间配置的当前活动用户。我们可以使用我们的 Python 客户端或 CLI 来执行此操作。

[14]:
user = rg.User.me()
user
[14]:
User(id=f3cc0d01-5129-41a6-a722-6c51b097abd0, username=argilla, role=owner, api_key=argilla.apikey, first_name=, last_name=None, inserted_at=2023-10-28 11:26:52.618074, updated_at=2023-10-28 11:26:52.618074)
[13]:
!python -m argilla whoami
╭─ Current User ───────────────────────────────────────────────────────────────╮
                                                                              
 Username: argilla                                                         
 Role: owner                                                               
 First name:                                                               
 Last name: None                                                           
 API Key: argilla.apikey                                                   
 Workspaces: ['argilla', 'awesome-argilla-datasets']                       
╰──────────────────────────────────────────────────────────────────────────────╯

正如我们所见,我们已登录到名为 argilla 的默认 User,它具有 owner 角色。此 role 允许创建新的 Users 和配置工作区。

创建 User#

接下来,我们将创建两个新用户,角色分别为 adminannotator,以配置我们的第一个小型团队。为了方便和可重现性,我们将它们称为 adminannotator,并将它们的 password 设置为默认的 argilla.apikey。它们的 api_key 将根据安全标准随机生成。我们将首先使用我们的 Python 客户端创建 admin 用户。

[ ]:
try:
    user = rg.User.from_name("admin")
except Exception:
    user = rg.User.create(
        username="admin",
        password=api_key,
        role="admin",
    )
user
[ ]:
!python -m argilla users create --username owner --role owner --password {api_key}

更新 User#

目前,我们只能更新 User 角色,并且只能使用 CLI 完成此操作。

[55]:
!python -m argilla server database users update owner --role admin
User with username 'owner' does not exists in database. Skipping...

现在,让我们快速改回它,以避免在我们的组织中出现错误的访问权限。

[ ]:
list(rg.User.list())
[58]:
!python -m argilla server database users update owner --role owner
User with username 'owner' does not exists in database. Skipping...

结论#

在本教程中,我们创建了一些 Argilla UsersWorkspaces,并创建了一些标注团队配置。

如果您需要更多背景信息,请查阅用户管理工作区管理

或者,您可以转到下一步并创建一个 FeedbackDataset