CLI de prévisualisation
Utilisez la CLI de prévisualisation de Potato pour valider les configurations YAML, inspecter les schémas d'annotation et rendre un aperçu statique de votre interface sans lancer le serveur complet.
La CLI de prévisualisation valide les configurations d'annotation et montre comment les schémas seront rendus, sans exécuter le serveur complet. C'est utile pour le prototypage rapide, le débogage et la validation en CI/CD.
Vue d'ensemble
La CLI de prévisualisation offre :
- Validation de la configuration : détectez erreurs et avertissements avant le déploiement
- Aperçu des schémas : voyez comment les schémas d'annotation seront rendus en HTML
- Détection des conflits de raccourcis : repérez les raccourcis clavier en conflit
- Plusieurs formats de sortie : résumé, HTML, JSON ou extraits de mise en page seuls
Utilisation de base
# Default summary output
python -m potato.preview_cli config.yaml
# Or using the module directly
python -m potato.preview_cli path/to/your/config.yamlFormats de sortie
Résumé (par défaut)
Affiche un résumé textuel de la configuration :
python -m potato.preview_cli config.yamlSortie :
============================================================
ANNOTATION TASK PREVIEW
============================================================
Task Name: Sentiment Annotation
Task Directory: ./my_task
Validation: PASSED
ANNOTATION SCHEMAS (2 total):
----------------------------------------
[radio] sentiment
Select the sentiment of the text...
Labels: 3
Keybindings: 3
[multiselect] topics
Select all relevant topics...
Labels: 5
Keybindings: 0
============================================================
Sortie HTML
Générez l'aperçu d'une page HTML complète :
python -m potato.preview_cli config.yaml --format html > preview.htmlOuvrez preview.html dans un navigateur pour voir le rendu de vos schémas d'annotation.
Sortie JSON
Générez une sortie JSON structurée pour un traitement programmatique :
python -m potato.preview_cli config.yaml --format jsonHTML de mise en page seule
Générez seulement l'extrait HTML du schéma d'annotation :
python -m potato.preview_cli config.yaml --layout-only > task_layout.htmlC'est utile pour l'intégrer dans des gabarits personnalisés ou pour tester le rendu d'un schéma isolément.
Options de ligne de commande
| Option | Court | Description |
|---|---|---|
--format | -f | Format de sortie : summary, html ou json |
--layout-only | -l | Ne produire que l'extrait HTML de mise en page de la tâche |
--verbose | -v | Activer la sortie détaillée/de débogage |
Validation de la configuration
La CLI de prévisualisation valide votre configuration et signale les problèmes :
Erreurs (bloquantes)
ERROR: Missing required field 'annotation_task_name'
ERROR: Must have either 'data_files' or 'data_directory'
Avertissements (non bloquants)
WARNING: No annotation schemes found in configuration
WARNING: Key '1' used by both 'schema1:Label1' and 'schema2:Label2'
Codes de sortie
0: la configuration est valide1: la configuration comporte des erreurs
Utilisez les codes de sortie dans vos pipelines CI/CD :
python -m potato.preview_cli config.yaml || echo "Config validation failed"Cas d'usage
Prototypage rapide
Itérez vite sur la conception des schémas :
# Edit config, then preview immediately
python -m potato.preview_cli config.yaml --format html > preview.html && open preview.htmlIntégration CI/CD
Validez les configurations dans votre pipeline de déploiement :
# .github/workflows/validate.yml
- name: Validate Potato Config
run: python -m potato.preview_cli configs/production.yamlDéveloppement de gabarits
Générez des extraits de mise en page pour les intégrer à des gabarits personnalisés :
python -m potato.preview_cli config.yaml --layout-only > templates/includes/schemas.htmlRéférence de l'API
Les fonctions de la CLI de prévisualisation s'utilisent aussi par programme :
from potato.preview_cli import (
load_config,
validate_config,
get_annotation_schemes,
detect_keybinding_conflicts,
generate_preview_html,
)
# Load and validate
config = load_config("config.yaml")
issues = validate_config(config)
# Extract schemes and check for conflicts
schemes = get_annotation_schemes(config)
conflicts = detect_keybinding_conflicts(schemes)
# Generate output
html = generate_preview_html(schemes)Dépannage
Erreur « Module not found »
Vérifiez que Potato est installé :
pip install potato-annotationErreurs de rendu de schéma
Si un schéma ne parvient pas à être rendu, la sortie contiendra un message d'erreur. Vérifiez que la configuration de votre schéma est complète.
Pour aller plus loin
- Bases de la configuration - Référence complète de configuration
- Schémas d'annotation - Types de schémas d'annotation
- Configuration de l'interface - Personnaliser l'interface
Pour les détails d'implémentation, voir la documentation source.