Avala CLI позволяет просматривать наборы данных, создавать экспорты, управлять облачным хранилищем и многое другое — прямо из командной строки.
Установка
curl -fsSL https://avala.ai/install.sh | bash
Скрипт установки определяет вашу версию Python, устанавливает avala[cli] через pip и проверяет настройку. Требуется Python 3.9+.
Это устанавливает команду avala вместе с Click и Rich для форматированного вывода в терминале.
Аутентификация
Установите API-ключ как переменную окружения (рекомендуется):
export AVALA_API_KEY="avk_your_api_key"
Или передайте его как флаг в любой команде:
avala --api-key avk_your_api_key datasets list
Для интерактивной настройки учётных данных:
Эта команда проведёт вас через ввод API-ключа и базового URL, затем выведет команды export для добавления в профиль вашего шелла.
Глобальные опции
| Опция | Описание |
|---|
--api-key TEXT | API-ключ Avala (или переменная окружения AVALA_API_KEY). |
--base-url TEXT | Базовый URL API (или переменная окружения AVALA_BASE_URL). По умолчанию: https://api.avala.ai/api/v1. |
--help | Показать справку для любой команды. |
Команды
datasets
# List all datasets
avala datasets list
# Limit results
avala datasets list --limit 10
# Get a specific dataset
avala datasets get <uid>
Опции list:
| Опция | Описание |
|---|
--limit INTEGER | Максимальное количество возвращаемых результатов. |
Поля вывода get: UID, Name, Slug, Items, Type, Created, Updated.
projects
# List all projects
avala projects list
# Get a specific project
avala projects get <uid>
Опции list:
| Опция | Описание |
|---|
--limit INTEGER | Максимальное количество возвращаемых результатов. |
Поля вывода get: UID, Name, Status, Created, Updated.
tasks
# List all tasks
avala tasks list
# Limit results
avala tasks list --limit 50
# Get a specific task
avala tasks get <uid>
Опции list:
| Опция | Описание |
|---|
--limit INTEGER | Максимальное количество возвращаемых результатов. |
Поля вывода get: UID, Name, Type, Status, Project, Created, Updated.
exports
# List all exports
avala exports list
# Get export details
avala exports get <uid>
# Create a new export
avala exports create --project <uid>
avala exports create --dataset <uid>
Опции create:
| Опция | Описание |
|---|
--dataset TEXT | UID набора данных для экспорта. |
--project TEXT | UID проекта для экспорта. |
storage-configs
Управление подключениями к облачному хранилищу (AWS S3, Google Cloud Storage).
# List storage configurations
avala storage-configs list
# Add an S3 bucket
avala storage-configs create \
--name "Production S3" \
--provider aws_s3 \
--s3-bucket-name my-bucket \
--s3-bucket-region us-west-1 \
--s3-access-key-id $AWS_ACCESS_KEY_ID \
--s3-secret-access-key $AWS_SECRET_ACCESS_KEY
# Add a GCS bucket
avala storage-configs create \
--name "Production GCS" \
--provider gc_storage \
--gc-bucket-name my-gcs-bucket \
--gc-auth-json '{"type":"service_account",...}'
# Test a storage connection
avala storage-configs test <uid>
# Delete a storage config (prompts for confirmation)
avala storage-configs delete <uid>
Опции create:
| Опция | Описание |
|---|
--name TEXT | Имя конфигурации хранилища (обязательно). |
--provider CHOICE | aws_s3 или gc_storage (обязательно). |
Опции AWS S3:
| Опция | Описание |
|---|
--s3-bucket-name TEXT | Имя S3-бакета. |
--s3-bucket-region TEXT | Регион AWS (например, us-west-1). |
--s3-bucket-prefix TEXT | Префикс ключа объекта. |
--s3-access-key-id TEXT | AWS access key ID. |
--s3-secret-access-key TEXT | AWS secret access key. |
Опции Google Cloud Storage:
| Опция | Описание |
|---|
--gc-bucket-name TEXT | Имя GCS-бакета. |
--gc-prefix TEXT | Префикс ключа объекта. |
--gc-auth-json TEXT | JSON учётных данных сервисного аккаунта. |
agents
Управление агентами автоматизации.
# List agents
avala agents list
# Get agent details
avala agents get <uid>
# Create an agent
avala agents create \
--name "QA Bot" \
--events "task.completed,result.submitted" \
--callback-url https://example.com/hook
# Delete an agent (prompts for confirmation)
avala agents delete <uid>
# List executions for an agent
avala agents executions <uid>
# Test an agent
avala agents test <uid>
Опции create:
| Опция | Описание |
|---|
--name TEXT | Имя агента (обязательно). |
--events TEXT | Список типов событий через запятую. |
--callback-url TEXT | URL обратного вызова вебхука (HTTPS). |
--description TEXT | Описание агента. |
--project TEXT | UID проекта для ограничения области действия агента. |
--task-types TEXT | Список типов задач через запятую. |
Опции list:
| Опция | Описание |
|---|
--limit INTEGER | Максимальное количество возвращаемых результатов. |
Опции executions:
| Опция | Описание |
|---|
--limit INTEGER | Максимальное количество возвращаемых результатов. |
webhooks
Управление подписками на вебхуки.
# List webhooks
avala webhooks list
# Get webhook details
avala webhooks get <uid>
# Create a webhook
avala webhooks create \
--target-url https://example.com/webhook \
--events "task.completed,export.ready"
# Delete a webhook (prompts for confirmation)
avala webhooks delete <uid>
# Test a webhook
avala webhooks test <uid>
# List webhook deliveries
avala webhooks deliveries
Опции create:
| Опция | Описание |
|---|
--target-url TEXT | URL назначения вебхука, HTTPS (обязательно). |
--events TEXT | Список типов событий через запятую (обязательно). |
--secret TEXT | Секрет подписи HMAC (генерируется автоматически, если не указан). |
Опции list / deliveries:
| Опция | Описание |
|---|
--limit INTEGER | Максимальное количество возвращаемых результатов. |
quality-targets
Управление целями качества для проектов.
# List quality targets for a project
avala quality-targets list --project <uid>
# Get a specific quality target
avala quality-targets get --project <uid> <target_uid>
# Create a quality target
avala quality-targets create \
--project <uid> \
--name "Accuracy Target" \
--metric accuracy \
--threshold 0.95 \
--operator gte \
--severity critical
# Delete a quality target (prompts for confirmation)
avala quality-targets delete --project <uid> <target_uid>
# Evaluate all quality targets for a project
avala quality-targets evaluate --project <uid>
consensus
Управление оценкой консенсуса для проектов.
# Get consensus summary for a project
avala consensus summary --project <uid>
# List consensus scores
avala consensus scores --project <uid>
# Compute consensus scores
avala consensus compute --project <uid>
# View or update consensus config
avala consensus config --project <uid>
avala consensus config --project <uid> --iou-threshold 0.7 --min-annotations 3
inference-providers
Управление провайдерами инференса.
# List inference providers
avala inference-providers list
# Get provider details
avala inference-providers get <uid>
# Create a provider
avala inference-providers create \
--name "My SageMaker" \
--provider-type sagemaker \
--config '{"endpoint": "my-endpoint", "region": "us-east-1"}'
# Delete a provider (prompts for confirmation)
avala inference-providers delete <uid>
# Test provider connection
avala inference-providers test <uid>
auto-label
Управление заданиями автоматической разметки.
# List auto-label jobs
avala auto-label list
# Filter by project
avala auto-label list --project <uid>
# Get job details
avala auto-label get <uid>
# Create an auto-label job
avala auto-label create \
--project <uid> \
--model-type sam3 \
--confidence-threshold 0.85 \
--labels "car,truck"
# Cancel a running job (prompts for confirmation)
avala auto-label cancel <uid>
fleet
Команды fleet находятся в предварительном доступе. Описанные команды могут измениться.
Управление устройствами, записями, событиями, правилами и оповещениями парка.
# List online devices
avala fleet devices list --status online
# Register a new device
avala fleet devices register --name "robot-arm-01" --type manipulator --firmware "2.4.1"
# List recordings for a device
avala fleet recordings list --device dev_abc123 --since 7d
# Create a timeline event
avala fleet events create --recording rec_abc123 --type anomaly --label "Gripper force spike"
# List recording rules
avala fleet rules list
# List active alerts
avala fleet alerts list --status open
Интерактивный мастер настройки учётных данных CLI.
Запрашивает ваш API-ключ и базовый URL, затем выводит команды export для добавления в профиль шелла (~/.bashrc, ~/.zshrc и т.д.).
Примеры
Просмотр наборов данных и экспорт проекта
# See what datasets you have
avala datasets list
# Export annotations from a project
avala exports create --project proj_abc123
# Check export status
avala exports get exp_xyz789
Настройка облачного хранилища
# Connect an S3 bucket
avala storage-configs create \
--name "Training Data" \
--provider aws_s3 \
--s3-bucket-name ml-training-data \
--s3-bucket-region us-east-1 \
--s3-access-key-id $AWS_ACCESS_KEY_ID \
--s3-secret-access-key $AWS_SECRET_ACCESS_KEY
# Verify the connection works
avala storage-configs test sc_abc123
Использование с CI/CD
# In your CI pipeline
export AVALA_API_KEY="${AVALA_API_KEY}"
# Trigger an export and capture the UID
avala exports create --project proj_abc123
Переменные окружения
| Переменная | Описание | По умолчанию |
|---|
AVALA_API_KEY | Ваш API-ключ Avala. | Обязательно |
AVALA_BASE_URL | Переопределение базового URL API. | https://api.avala.ai/api/v1 |
Формат вывода
CLI использует Rich для форматированного вывода:
- Команды списков отображают результаты в форматированных таблицах.
- Команды get отображают детальный вид ключ-значение.
- Команды create/delete выводят сообщения подтверждения.
Цвета и форматирование автоматически отключаются при перенаправлении вывода.
CLI пока не поддерживает флаги --output json или --format. Весь вывод форматирован для чтения в терминале. Для машиночитаемого вывода используйте Python SDK или REST API напрямую.