- Conflits d’expérimentation et contamination de l’environnement. Lorsqu’un agent IA essaie plusieurs solutions, les modifications de code expérimentales peuvent interférer avec le flux de travail principal du développeur ou contaminer l’environnement d’exécution actuel. Dès qu’une expérience échoue, la récupération nécessite souvent un rollback, et les pistes d’exploration précieuses ne peuvent pas être conservées.
- Incapacité à explorer plusieurs solutions en parallèle. Contraint à un seul environnement, l’agent IA ne peut tester différentes approches que séquentiellement. Ce mode sériel est non seulement inefficace, mais surtout, il limite l’étendue de l’exploration par l’IA — incapable de valider simultanément plusieurs hypothèses parallèles ou approches d’implémentation.
- Scalabilité limitée de la puissance de calcul. Face à des tâches nécessitant du « Wide-Research » (par exemple, comparer 100 solutions simultanément, générer en lot plusieurs versions d’implémentation), l’architecture à environnement unique restreint fondamentalement la capacité à paralléliser le traitement des tâches.
- Architecture d’exploration multi-chronologies : Comme un arbre de décision, l’agent IA peut partir du même état de référence et créer plusieurs copies indépendantes de sandbox, chacune explorant une piste de solution différente sans interférer avec les autres.
- Véritable capacité de calcul parallèle : En divisant les grandes tâches en sous-tâches par lots, l’agent IA peut multiplier sa puissance de calcul par des dizaines, voire des centaines, en traitant simultanément des dizaines ou des centaines de branches d’exploration.
- Environnement d’expérimentation sans risque : Les sandboxes clonés sont complètement isolés, ce qui permet à l’IA d’expérimenter librement et de tester diverses possibilités sans affecter l’environnement d’origine ni le flux de travail principal du développeur.
- Utilisation efficace des ressources : Bien que plusieurs instances de sandbox puissent être lancées simultanément, en gérant dynamiquement et en terminant rapidement les branches (instances de sandbox) qui n’ont plus de valeur, la consommation globale de ressources de calcul peut être maintenue dans une plage raisonnable.
Terminologie
- Sandbox d’origine : L’instance de sandbox d’origine qui est clonée.
- Nouveau sandbox : La nouvelle instance de sandbox créée via l’opération de clonage.
Présentation de la fonctionnalité
La fonctionnalité de clonage de sandbox prend actuellement en charge les deux scénarios suivants :- Cloner un sandbox en état Running
- Cloner un sandbox en état Paused
Clonage d’un sandbox Running
Pendant le processus de clonage :- Le sandbox d’origine sera brièvement suspendu pendant le clonage ;
- L’instance de sandbox est indisponible pendant la suspension ;
- La durée de suspension est proche du temps requis pour une seule opération de pause.
- Le statut est restauré à running ;
- L’enregistrement de pause existant sera actualisé en un nouvel enregistrement de pause, basé sur l’état actuel du sandbox ;
- Un nouvel enregistrement de modèle de snapshot est généré (pour supprimer ce modèle de snapshot, vous devez d’abord terminer à la fois le sandbox d’origine et les sandboxes clonés) ;
- Le statut est running ;
- Prêt à être utilisé immédiatement.
Clonage d’un sandbox Paused
Pendant le processus de clonage : Lorsque le sandbox d’origine est en état paused :- Le processus de clonage ne déclenchera pas le démarrage du sandbox d’origine ;
- Le sandbox d’origine reste en état paused.
- L’enregistrement de pause existant n’est pas effacé ;
- Un nouvel enregistrement de modèle de snapshot est généré (pour supprimer ce modèle de snapshot, vous devez d’abord terminer à la fois le sandbox d’origine et les sandboxes clonés) ;
- Le statut est running ;
- Prêt à être utilisé immédiatement.
Règles d’héritage des attributs du nouveau sandbox
Description des paramètres
count: Le nombre d’instances de sandbox à cloner. La valeur minimale est 1, et la valeur maximale ne doit pas dépasser la limite d’instances de sandbox exécutées simultanément de la plateforme (voir : Limite de quota des sandboxes) ;strict: Indique s’il faut cloner strictement selon le nombre spécifié dans le paramètrecount, la valeur par défaut est false.true: Si le nombre d’instances clonées avec succès est inférieur àcount, un échec de clonage est renvoyé ; les sandboxes créés avec succès seront automatiquement libérés.false: Renvoie le nombre réel d’instances de sandbox clonées avec succès.
timeout(timeoutMs) : Le délai d’expiration pour le clonage des instances de sandbox.- Si non spécifié :
- Lorsque le sandbox d’origine est en état running, il hérite de sa configuration de délai d’expiration ;
- Lorsque le sandbox d’origine est en état paused, la valeur par défaut de 5 minutes est utilisée.
- Si non spécifié :
Valeur de retour
Après une opération de clonage réussie, un objet est renvoyé contenant les propriétés suivantes :Exemples de code
Bash