Exécution de code

De nombreuses tâches d'agent, telles que les calculs financiers et les workflows de science des données, nécessitent qu'un agent génère et exécute du code. L'exécution de code permet à votre agent d'exécuter du code dans un environnement de bac à sable sécurisé, isolé et géré.

Voici quelques fonctionnalités de l'exécution de code :

  • Les bacs à sable peuvent être créés et exécuter du code en moins d'une seconde.

  • Les bacs à sable acceptent les entrées et sorties de fichiers jusqu'à 100 Mo pour l'ensemble de la requête ou de la réponse.

  • Les bacs à sable conservent leur état d'exécution (mémoire) pendant 14 jours maximum. Ce paramètre valeur TTL (Time To Live) est configurable.

Vous n'avez pas besoin de déployer votre agent sur Agent Platform pour utiliser l'exécution de code. Votre agent peut s'exécuter n'importe où, même en local.

L'exécution de code fonctionne avec n'importe quel framework d'agent et n'importe quel modèle génératif.

Voici les principales opérations à effectuer pour utiliser un bac à sable d'exécution de code :

  • Créer un bac à sable : crée un espace sécurisé et isolé pour exécuter du code non approuvé ou potentiellement dangereux. Cette isolation réduit les risques de sécurité en empêchant le code de toucher les ressources, les fichiers ou le réseau de votre système. Un bac à sable est essentiel lorsque vous devez exécuter du code en toute sécurité, par exemple pour les agents de science des données, les scripts d'orchestration ou lors des tests de développement. Le bac à sable offre un système de fichiers limité et aucun accès réseau.

  • Obtenir un bac à sable : affiche la configuration et l'état d'un bac à sable d'exécution de code spécifique. Vous pouvez vérifier des détails tels que son état actuel (par exemple, en cours d'exécution ou arrêté) et sa valeur TTL (Time To Live). Cela vous permet de suivre vos bacs à sable et de vérifier leur état avant ou après l'exécution du code.

  • Lister les bacs à sable : répertorie tous les bacs à sable d'exécution de code de votre projet. Vous pouvez filtrer les résultats selon des critères tels que l'état ou le type de bac à sable. Cela vous permet de vérifier, de surveiller et de gérer de nombreux bacs à sable dans votre projet.

  • Exécuter du code : envoie votre code ainsi que tous les fichiers d'entrée requis au bac à sable pour une exécution sécurisée. La réponse inclut les résultats, tels que la sortie standard (stdout), l'erreur standard (stderr) et tous les fichiers générés par le code. Le bac à sable peut également conserver un état, ce qui permet aux appels suivants Execute Code de s'appuyer sur les appels précédents. Cela est essentiel pour les sessions interactives ou les tâches complexes qui nécessitent que l'environnement conserve l'état sur plusieurs exécutions de code.

Bibliothèques prises en charge

Le bac à sable d'exécution de code inclut les bibliothèques suivantes. Vous ne pouvez pas installer vos propres bibliothèques.

attrs==25.3.0
chess==1.11.2
contourpy==1.3.1
fpdf==1.7.2
geopandas==1.0.1
imageio==2.37.0
jinja2==3.1.6
joblib==1.4.2
jsonschema==4.23.0
jsonschema-specifications==2024.10.1
lxml==5.3.1
matplotlib==3.10.1
mpmath==1.3.0
numpy==2.1.3
opencv-python==4.11.0.86
openpyxl==3.1.5
ortools==9.14.6206
packaging==24.0
pandas==2.2.3
pillow==11.1.0
plotly==6.1.2
protobuf==6.31.1
PyPDF2==3.0.1
pylatex==1.4.2
pyparsing==3.2.1
python-dateutil==2.9.0.post0
python-docx==1.1.2
python-pptx==1.0.2
reportlab==4.3.1
scikit-learn==1.6.1
scipy==1.15.2
seaborn==0.13.2
six==1.17.0
striprtf==0.0.28
sympy==1.13.3
tabulate==0.9.0
tensorflow==2.20.0
toolz==1.0.0
xlrd==2.0.1
XlsxWriter==3.2.0

Étape suivante