feat(vwb): Améliorer outils IA et supprimer fallback statique

Backend:
- analyser_avec_ia.py: centraliser URL Ollama via os.environ.get()
- action_contracts.py: assouplir le contrat ai_analyze_text (mode texte
  sans ancre visuelle, accepter prompt ou analysis_prompt)
- intelligent_executor.py: supprimer le fallback coordonnées statiques
  quand la vision échoue — renvoyer not_found pour self-healing
- workflow.py: ajouter endpoints validate et export-training

run.sh:
- Corriger les ports (3000 → 3002) et le venv (venv_v3 → .venv)
- Lancer run_v4.sh au lieu de l'ancien run.sh

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Dom
2026-02-17 10:56:17 +01:00
parent 3ff36e3c79
commit 4c9a6d293f
5 changed files with 202 additions and 49 deletions

View File

@@ -279,10 +279,9 @@ VWB_ACTION_CONTRACTS: Dict[str, ActionContract] = {
"ai_analyze_text": ActionContract(
action_type="ai_analyze_text",
description="Analyser du texte avec IA",
required_params=["visual_anchor", "analysis_prompt"],
optional_params=["model", "output_variable"],
param_validators={"visual_anchor": lambda p: has_visual_anchor({"visual_anchor": p})}
description="Analyser du texte ou une image avec IA",
required_params=[], # prompt est vérifié manuellement (accept prompt ou analysis_prompt)
optional_params=["prompt", "analysis_prompt", "visual_anchor", "input_text", "model", "output_variable", "temperature", "timeout_ms"],
),
"db_save_data": ActionContract(