Passer au contenu principal
Le CLI Avala vous permet de lister les jeux de données, créer des exports, gérer le stockage cloud et plus encore — directement depuis la ligne de commande.

Installation

curl -fsSL https://avala.ai/install.sh | bash
Le script d’installation detecte votre version de Python, installe avala[cli] via pip et verifie la configuration. Necessite Python 3.9+. Ceci installe la commande avala ainsi que Click et Rich pour un affichage formate dans le terminal.

Authentification

Définissez votre clé API comme variable d’environnement (recommandé) :
export AVALA_API_KEY="avk_your_api_key"
Ou passez-la comme option sur n’importe quelle commande :
avala --api-key avk_your_api_key datasets list
Pour configurer les identifiants de manière interactive :
avala configure
Ceci vous guide dans la saisie de votre clé API et de l’URL de base, puis affiche les instructions export à ajouter à votre profil shell.

Options globales

OptionDescription
--api-key TEXTClé API Avala (ou définissez la variable d’env AVALA_API_KEY).
--base-url TEXTURL de base de l’API (ou définissez la variable d’env AVALA_BASE_URL). Défaut : https://api.avala.ai/api/v1.
--helpAffiche l’aide pour n’importe quelle commande.

Commandes

datasets

# List all datasets
avala datasets list

# Limit results
avala datasets list --limit 10

# Get a specific dataset
avala datasets get <uid>
Options de list :
OptionDescription
--limit INTEGERNombre maximum de résultats à retourner.
Champs de sortie de get : UID, Name, Slug, Items, Type, Created, Updated.

projects

# List all projects
avala projects list

# Get a specific project
avala projects get <uid>
Options de list :
OptionDescription
--limit INTEGERNombre maximum de résultats à retourner.
Champs de sortie de 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>
Options de list :
OptionDescription
--limit INTEGERNombre maximum de résultats à retourner.
Champs de sortie de 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>
Options de create :
OptionDescription
--dataset TEXTUID du jeu de données à exporter.
--project TEXTUID du projet à exporter.

storage-configs

Gérez les connexions de stockage cloud (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>
Options de create :
OptionDescription
--name TEXTNom de la configuration de stockage (requis).
--provider CHOICEaws_s3 ou gc_storage (requis).
Options AWS S3 :
OptionDescription
--s3-bucket-name TEXTNom du bucket S3.
--s3-bucket-region TEXTRégion AWS (par ex., us-west-1).
--s3-bucket-prefix TEXTPréfixe de clé d’objet.
--s3-access-key-id TEXTID de clé d’accès AWS.
--s3-secret-access-key TEXTClé d’accès secrète AWS.
Options Google Cloud Storage :
OptionDescription
--gc-bucket-name TEXTNom du bucket GCS.
--gc-prefix TEXTPréfixe de clé d’objet.
--gc-auth-json TEXTIdentifiants JSON du compte de service.

agents

Gérez les agents d’automatisation.
# 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>
Options de create :
OptionDescription
--name TEXTNom de l’agent (requis).
--events TEXTListe de types d’événements séparés par des virgules.
--callback-url TEXTURL de callback webhook (HTTPS).
--description TEXTDescription de l’agent.
--project TEXTUID du projet pour limiter la portée de l’agent.
--task-types TEXTListe de types de tâches séparés par des virgules.
Options de list :
OptionDescription
--limit INTEGERNombre maximum de résultats à retourner.
Options de executions :
OptionDescription
--limit INTEGERNombre maximum de résultats à retourner.

webhooks

Gérez les abonnements webhook.
# 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
Options de create :
OptionDescription
--target-url TEXTURL cible du webhook, HTTPS (requis).
--events TEXTListe de types d’événements séparés par des virgules (requis).
--secret TEXTSecret de signature HMAC (généré automatiquement si omis).
Options de list / deliveries :
OptionDescription
--limit INTEGERNombre maximum de résultats à retourner.

quality-targets

Gérez les objectifs de qualité pour les projets.
# 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>
Options de create :
OptionDescription
--project TEXTUID du projet (requis).
--name TEXTNom de l’objectif (requis).
--metric TEXTMétrique à surveiller (requis).
--threshold FLOATValeur de seuil (requis).
--operator TEXTOpérateur de comparaison (gt, lt, gte, lte).
--severity CHOICESévérité de l’alerte : warning ou critical.
Options de list :
OptionDescription
--project TEXTUID du projet (requis).
--limit INTEGERNombre maximum de résultats à retourner.

consensus

Gérez le scoring de consensus pour les projets.
# 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
Options de summary / scores / compute :
OptionDescription
--project TEXTUID du projet (requis).
Options de scores :
OptionDescription
--limit INTEGERNombre maximum de résultats à retourner.
Options de config (passez n’importe lequel pour mettre à jour, omettez tous pour voir) :
OptionDescription
--project TEXTUID du projet (requis).
--iou-threshold FLOATSeuil IoU (0.0-1.0).
--min-agreement-ratio FLOATRatio d’accord minimum (0.0-1.0).
--min-annotations INTEGERNombre minimum d’annotations requises.

inference-providers

Gérez les fournisseurs d’inférence.
# 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>
Options de create :
OptionDescription
--name TEXTNom du fournisseur (requis).
--provider-type CHOICEhttp ou sagemaker (requis).
--config TEXTConfiguration du fournisseur en chaîne JSON (requis).
--description TEXTDescription du fournisseur.
--project TEXTUID du projet pour limiter la portée du fournisseur.
Options de list :
OptionDescription
--limit INTEGERNombre maximum de résultats à retourner.

auto-label

Gérez les jobs d’auto-étiquetage.
# 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>
Options de create :
OptionDescription
--project TEXTUID du projet (requis).
--model-type CHOICEModèle d’inférence : sam3 ou yolo.
--confidence-threshold FLOATConfiance minimum (0.0-1.0).
--labels TEXTListe d’étiquettes séparées par des virgules à filtrer.
--dry-runExécuter l’inférence sans sauvegarder les résultats.
Options de list :
OptionDescription
--project TEXTFiltrer par UID de projet.
--limit INTEGERNombre maximum de résultats à retourner.

fleet

Les commandes fleet sont en aperçu. Les commandes décrites ici peuvent changer.
Gérez les appareils de flotte, enregistrements, événements, règles et alertes.
# 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
Options de devices list :
OptionDescription
--status CHOICEFiltrer par statut : online, offline, maintenance.
--type TEXTFiltrer par type d’appareil.
--limit INTEGERNombre maximum de résultats à retourner.
Options de recordings list :
OptionDescription
--device TEXTFiltrer par UID d’appareil.
--since TEXTEnregistrements des N derniers jours (par ex., 7d, 30d).
--status CHOICEFiltrer par statut : uploading, processing, ready, error, archived.
--limit INTEGERNombre maximum de résultats à retourner.
Options de alerts list :
OptionDescription
--status CHOICEFiltrer par statut : open, acknowledged, resolved.
--severity CHOICEFiltrer par sévérité : info, warning, error, critical.
--limit INTEGERNombre maximum de résultats à retourner.

configure

Assistant de configuration interactif pour les identifiants CLI.
avala configure
Vous demande votre clé API et l’URL de base, puis affiche les commandes export à ajouter à votre profil shell (~/.bashrc, ~/.zshrc, etc.).

Exemples

Lister les jeux de données et exporter un projet

# 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

Configurer le stockage cloud

# 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

Utilisation avec 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

Variables d’environnement

VariableDescriptionDéfaut
AVALA_API_KEYVotre clé API Avala.Requis
AVALA_BASE_URLRemplacement de l’URL de base de l’API.https://api.avala.ai/api/v1

Format de sortie

Le CLI utilise Rich pour un affichage formaté :
  • Les commandes list affichent les résultats dans des tableaux formatés.
  • Les commandes get affichent une vue détaillée clé-valeur.
  • Les commandes create/delete affichent des messages de confirmation.
Les couleurs et le formatage sont automatiquement désactivés lorsque la sortie est redirigée.
Le CLI ne supporte pas encore les options --output json ou --format. Toute la sortie est formatée pour la lisibilité dans le terminal. Pour une sortie lisible par machine, utilisez directement le Python SDK ou la REST API.