agentic_huge_data_base / wiki
页面 Argilla · 6.4 服务端配置·DeepWiki 中文全文译文

6.4 · 服务端配置(Server Configuration)

人工复核与反馈数据 · 聚焦本章的模块关系、源码依据与实现要点。

项目Argilla 章节6.4 状态全文译文 模块安装与启动、认证、权限与安全、存储与持久化、测试、发布与运维
源码线索
  • docs/_source/_common/tabs/argilla_install_python.md
  • docs/_source/community/contributing.md
  • docs/_source/community/developer_docs.md
  • docs/_source/community/migration-rubrix.md
  • docs/_source/getting_started/installation/deployments/docker.md
  • docs/_source/getting_started/installation/deployments/docker_compose.md
  • docs/_source/getting_started/installation/deployments/python.md
  • docs/_source/reference/cli.md
  • docs/_source/reference/notebooks.rst
  • docs/migration-rubrix.md
模块标签
  • 安装与启动
  • 认证、权限与安全
  • 存储与持久化
  • 测试、发布与运维
  • 检索、召回与索引

章节正文

服务端配置

服务器配置

相关源文件

以下文件为本 Wiki 页面的生成提供了上下文:

  • docs/_source/_common/tabs/argilla_install_python.md
  • docs/_source/community/contributing.md
  • docs/_source/community/developer_docs.md
  • docs/_source/community/migration-rubrix.md
  • docs/_source/getting_started/installation/deployments/docker.md
  • docs/_source/getting_started/installation/deployments/docker_compose.md
  • docs/_source/getting_started/installation/deployments/python.md
  • docs/_source/reference/cli.md
  • docs/_source/reference/notebooks.rst
  • docs/migration-rubrix.md
  • docs/template.ipynb

本文档详细介绍了 Argilla 服务器的配置选项。它说明了如何通过环境变量和命令行参数来配置服务器的行为、数据库连接、认证以及其他设置。

概述

Argilla 服务器是核心组件,负责管理数据、协调标注工作流,并提供 Python SDK 和前端 UI 所使用的 API 端点。它连接到三个主要的数据存储:

  1. 关系型数据库(SQLite 或 PostgreSQL),用于存储用户信息、工作区数据和数据集元数据
  2. 向量数据库(Elasticsearch 或 OpenSearch),用于存储记录并执行向量搜索
  3. Redis,用于管理后台作业

配置主要通过带有 ARGILLA_ 前缀的环境变量来应用,但某些设置也可以通过命令行参数指定。

服务器架构与配置

下图展示了配置如何应用到 Argilla 服务器及其数据存储:

Argilla · 服务器架构与配置 · 图 1
Argilla · 服务器架构与配置 · 图 1

来源:docs/_source/community/developer_docs.md:14-27docs/_source/getting_started/installation/deployments/docker.md:19-42

基本服务器配置

服务器主机与端口

以下环境变量控制服务器绑定的主机和端口:

环境变量描述默认值
ARGILLA_HOST绑定的主机0.0.0.0
ARGILLA_PORT绑定的端口6900

这些设置也可以在启动服务器时通过命令行参数指定:

argilla server start --host 127.0.0.1 --port 8000
访问日志

可以使用 --access-log--no-access-log 命令行参数启用或禁用服务器访问日志:

argilla server start --no-access-log  # 禁用访问日志

来源:docs/_source/reference/cli.md:181-186

数据库配置

Argilla 使用关系型数据库来存储元数据、用户信息和标注数据。它支持 SQLite(默认)和 PostgreSQL。

主目录

以下环境变量控制 Argilla 主目录的位置,该目录用于存储配置文件和默认的 SQLite 数据库:

环境变量描述默认值
ARGILLA_HOME_PATHArgilla 主目录的路径~/.argilla
SQLite 配置(默认)

SQLite 是默认数据库,只需极少的配置。以下环境变量控制 SQLite 的配置:

环境变量描述默认值
ARGILLA_DATABASE_URLSQLite 数据库的 URLsqlite:///$ARGILLA_HOME_PATH/argilla.db
PostgreSQL 配置

要使用 PostgreSQL 替代 SQLite,请将 ARGILLA_DATABASE_URL 环境变量设置为 PostgreSQL 连接字符串:

export ARGILLA_DATABASE_URL=postgresql://用户名:密码@主机:端口/数据库

请注意,你需要安装 PostgreSQL 的额外依赖才能使用:

pip install argilla[postgresql]

来源:docs/_source/community/developer_docs.md:295-301docs/_source/getting_started/installation/deployments/python.md:16

向量数据库配置

Argilla 支持 Elasticsearch(版本 >=8.5)和 OpenSearch(版本 >=2.4)作为向量数据库,用于存储记录并执行向量搜索。

Argilla · 向量数据库配置 · 图 2
Argilla · 向量数据库配置 · 图 2

来源:docs/_source/community/developer_docs.md:284-290

向量数据库连接

以下环境变量控制向量数据库的连接:

环境变量描述默认值
ARGILLA_ELASTICSEARCHElasticsearch/OpenSearch 服务器的 URLhttp://localhost:9200
向量数据库认证

以下环境变量控制向量数据库的认证:

环境变量描述默认值
ARGILLA_ELASTICSEARCH_USER认证用户名
ARGILLA_ELASTICSEARCH_PASSWORD认证密码
ARGILLA_ELASTICSEARCH_API_KEY认证的 API 密钥(替代用户名/密码)
向量数据库 SSL/TLS

以下环境变量控制向量数据库连接的 SSL/TLS 配置:

环境变量描述默认值
ARGILLA_ELASTICSEARCH_SSL_VERIFY是否验证 SSL 证书True
ARGILLA_ELASTICSEARCH_CA_PATHSSL 验证的 CA 证书路径

来源:docs/_source/getting_started/installation/deployments/docker.md:62-66

Redis 配置

Argilla 使用 Redis 来管理后台作业和任务队列。以下环境变量控制 Redis 的配置:

环境变量描述默认值
ARGILLA_REDIS_URLRedis 服务器的 URLredis://localhost:6379/0

来源:docs/_source/community/developer_docs.md:23

认证与安全

Argilla 使用 JWT(JSON Web 令牌)进行认证。以下环境变量控制用于令牌生成和验证的密钥:

环境变量描述默认值
ARGILLA_AUTH_SECRET_KEYJWT 令牌生成的密钥

你可以使用以下命令生成一个安全的密钥:

openssl rand -hex 32

来源:docs/_source/getting_started/installation/deployments/docker_compose.md:17

日志配置

Argilla 使用标准的 Python 日志系统。以下环境变量控制日志级别:

环境变量描述默认值
ARGILLA_LOG_LEVEL日志级别(DEBUG、INFO、WARNING、ERROR、CRITICAL)INFO

访问日志可以在启动服务器时通过 --access-log--no-access-log 命令行参数启用或禁用。

其他配置选项

遥测

Argilla 会收集匿名的遥测数据以帮助改进产品。可以禁用此功能:

环境变量描述默认值
ARGILLA_TELEMETRY_ENABLED是否启用遥测true

来源:docs/_source/getting_started/installation/deployments/docker.md:70docs/_source/getting_started/installation/deployments/docker_compose.md:48

从 Rubrix 迁移

如果你正在从 Rubrix(Argilla 的旧版本)迁移,可以启用迁移功能:

环境变量描述默认值
ARGILLA_ENABLE_MIGRATION启用从 Rubrix 的迁移(设置为 1 以启用)0

来源:docs/_source/community/migration-rubrix.md:48-55

配置关系图

下图展示了 Argilla 服务器中的数据流和配置依赖关系:

Argilla · 配置关系图 · 图 3
Argilla · 配置关系图 · 图 3

来源:docs/_source/community/developer_docs.md:30-40

配置示例

基本开发配置
# 基本服务器配置
export ARGILLA_HOST=127.0.0.1
export ARGILLA_PORT=6900

# 使用默认的 SQLite 数据库
export ARGILLA_HOME_PATH=~/.argilla
export ARGILLA_DATABASE_URL=sqlite:///$ARGILLA_HOME_PATH/argilla.db

# 连接到本地 Elasticsearch 实例
export ARGILLA_ELASTICSEARCH=http://localhost:9200

# 设置认证密钥
export ARGILLA_AUTH_SECRET_KEY=$(openssl rand -hex 32)

# 开发环境设置日志级别为 DEBUG
export ARGILLA_LOG_LEVEL=DEBUG

# 启动服务器
argilla server start
使用 PostgreSQL 和 OpenSearch 的生产配置
# 基本服务器配置
export ARGILLA_HOST=0.0.0.0
export ARGILLA_PORT=6900

# 使用 PostgreSQL 作为数据库
export ARGILLA_DATABASE_URL=postgresql://用户名:密码@postgres:5432/argilla

# 连接带认证的 OpenSearch
export ARGILLA_ELASTICSEARCH=https://opensearch:9200
export ARGILLA_ELASTICSEARCH_USER=admin
export ARGILLA_ELASTICSEARCH_PASSWORD=admin
export ARGILLA_ELASTICSEARCH_SSL_VERIFY=true

# 连接 Redis 用于后台作业
export ARGILLA_REDIS_URL=redis://redis:6379/0

# 设置安全的认证密钥
export ARGILLA_AUTH_SECRET_KEY=你的安全密钥

# 设置日志级别为 WARNING 以减少日志量
export ARGILLA_LOG_LEVEL=WARNING

# 禁用遥测以保护隐私
export ARGILLA_TELEMETRY_ENABLED=false

# 启动服务器,不记录访问日志
argilla server start --no-access-log

来源:docs/_source/getting_started/installation/deployments/docker.md:52-68docs/_source/getting_started/installation/deployments/docker_compose.md:55-101

相关页面

有关部署选项的更多信息,请参阅:

有关使用 Argilla CLI 的更多信息,请参阅 CLI 参考