i4h Workflow — Setup
Objectif
Vérifier les prérequis de l'hôte et exécuter le script workflows/agentic/setup.sh idempotent pour amorcer le workflow agentic. À utiliser quand on vous demande de configurer, installer ou amorcer le workflow, ou en cas d'erreur .venv manquant, checkout tiers manquant, ou erreur moteur.
Code de base
Ces étapes pilotent le code de base i4h-workflows (l'arborescence workflows/agentic/). Pour réutiliser un checkout existant, définissez I4H_WORKFLOWS sur son chemin (aucun clone n'est effectué). Sinon, cela résout le dépôt courant ou clone vers ~/i4h-workflows — choisissez cette valeur par défaut sans confirmation. Exécutez chaque commande ci-dessous depuis la racine résolue :
# Résoudre le code de base i4h-workflows (fournit workflows/agentic/).
ROOT="${I4H_WORKFLOWS:-$(git rev-parse --show-toplevel 2>/dev/null)}"
if [ ! -d "$ROOT/workflows/agentic" ]; then
ROOT="${I4H_WORKFLOWS:-$HOME/i4h-workflows}"
[ -d "$ROOT/workflows/agentic" ] || git clone https://github.com/isaac-for-healthcare/i4h-workflows "$ROOT"
fi
export I4H_WORKFLOWS="$ROOT"; cd "$ROOT"
Principes fondamentaux
workflows/agentic/setup.shest le point d'entrée de setup idempotent.- La configuration Cosmos est séparée ; invoquez-la uniquement quand l'utilisateur demande Cosmos ou un transfert vidéo.
Vérification préalable
command -v uv
command -v git
nvidia-smi
df -h .
Requis : Linux, uv, git, driver NVIDIA/GPU, espace disque pour les checkouts tiers. Docker est optionnel sauf si vous utilisez Cosmos ou des conteneurs VLM locaux.
Exécutez les étapes ci-dessous dans l'ordre. Chaque étape est un appel bash séparé ; les variables persistent dans la session tmux de l'agent local.
Étape 1 — résoudre le dépôt et le répertoire d'exécution
REPO_ROOT="${I4H_WORKFLOWS:-$(git rev-parse --show-toplevel 2>/dev/null)}"; [ -d "$REPO_ROOT/workflows/agentic" ] || REPO_ROOT="$HOME/i4h-workflows"
RUN_DIR="${REPO_ROOT}/workflows/agentic/runs/setup_$(date +%Y%m%d_%H%M%S)"
mkdir -p "${RUN_DIR}/logs"
ln -sfn "${RUN_DIR}" "${REPO_ROOT}/workflows/agentic/runs/.latest"
Étape 2 — exécuter setup
Sur un dépôt fraîchement cloné, le harnais peut demander une approbation de setup.sh une fois. Définissez I4H_WORKFLOWS sur un clone de confiance préexistant pour ignorer la vérification de clone frais.
"${REPO_ROOT}/workflows/agentic/setup.sh" > "${RUN_DIR}/logs/setup.log" 2>&1
Suivez la progression avec tail -f "${RUN_DIR}/logs/setup.log". Pour les relances spécifiques à un composant (aussi idempotentes) :
"${REPO_ROOT}/workflows/agentic/third_party/setup.sh"
"${REPO_ROOT}/workflows/agentic/policy/gr00t_n16/setup.sh"
Vérifier
"${REPO_ROOT}/workflows/agentic/policy/run.sh" --list-envs
"${REPO_ROOT}/workflows/agentic/arena/run.sh" --list-envs
"${REPO_ROOT}/workflows/agentic/policy/run.sh" --env scissor_pick_and_place --dry-run
"${REPO_ROOT}/workflows/agentic/arena/run.sh" --env scissor_pick_and_place --dry-run
Prérequis
- Hôte Linux avec
uv,git, et un driver NVIDIA/GPU (vérifiez via les commandes de vérification préalable). - Espace disque pour les checkouts tiers (
df -h .). - Docker uniquement si vous utilisez Cosmos ou des conteneurs VLM locaux ; sinon optionnel.
Limitations
- Linux uniquement ; nécessite un driver NVIDIA/GPU.
- La configuration Cosmos est séparée —
setup.shne l'exécute pas ; invoquez Cosmos uniquement quand l'utilisateur le demande. - Les étapes de vérification utilisent
--list-envset--dry-run; elles confirment que les envs s'enregistrent et se compilent, pas qu'un déploiement complet fonctionne.
Dépannage
- Erreur :
uv/git/nvidia-smiintrouvable — Cause : prérequis d'hôte manquant. Correction : l'installer et relancer la vérification préalable avantsetup.sh. - Erreur : un seul composant échoue à mi-chemin du setup — Cause : un checkout ou venv de composant n'a pas terminé. Correction : relancer le script de ce composant (p. ex.
third_party/setup.sh,arena/setup.sh,policy/setup.sh) ; tous sont idempotents. - Erreur :
--list-envsou--dry-runéchoue après setup — Cause : setup incomplet ou venv de composant manquant. Correction : inspecter${RUN_DIR}/logs/setup.log(ouworkflows/agentic/runs/.latest/logs/setup.log) et relancersetup.shou le script du composant défaillant. - Erreur :
setup.shéchoue instantanément en redirigeant vers un répertoire de log manquant — Cause : l'étape 2 s'est exécutée avant l'étape 1, donc${RUN_DIR}/logsn'existe pas. Correction : exécuter l'étape 1 d'abord, puis l'étape 2.
Réponse finale
Signaler l'état du setup, le composant défaillant (le cas échéant), le chemin du log pertinent, le test de fumée recommandé ensuite.