aws / aws/bedrock-agentcore-sdk-python
[FEATURE] Support offline custom dependencies for Code Interpreter sessions
- Langage dominant
- Python
- Étoiles
- 761
- Forks
- 147
- Merge moyen
- 1 j 23 h
- PR mergées (30 j)
- 7
Description
**Is your feature request related to a problem? Please describe.**
AgentCore Code Interpreter provides a fixed set of pre-installed libraries. The
SDK's `install_packages()` helper runs a normal `pip install`, which requires
access to PyPI or another package index.
Code Interpreter sessions running in an isolated VPC without NAT cannot use
this mechanism. Enabling public internet access solely to install dependencies
increases cost and weakens the sandbox's network isolation.
Code Interpreter supports mounting S3 Files and EFS through
`filesystemConfigurations`, but there is no first-class way to declare an
offline dependency bundle or initialization step. Applications must currently:
1. Mount or upload a wheelhouse.
2. Execute `pip install --no-index` manually after every session starts.
3. Configure `sys.path` and `PYTHONPATH` separately for `executeCode` and
`executeCommand`.
4. Detect initialization failures themselves before allowing agent code to run.
This creates duplicated bootstrap logic and makes session readiness ambiguous.
**Describe the solution you'd like**
Add first-class support for application-defined, offline dependencies when
creating a Code Interpreter or starting a session.
One possible API shape would be:
```python
client.start(
identifier=interpreter_id,
filesystem_configurations=[dependency_mount],
dependency_configuration={
"python": {
"requirementsPath": "/mnt/dependencies/requirements.txt",
"wheelhousePath": "/mnt/dependencies/wheels",
"offline": True,
}
},
)
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par le chemin de création des sessions Code Interpreter et l’helper install_packages() du SDK, puis comparez la manière dont filesystemConfigurations est transmis aux sessions. Le travail est terminé lorsque les applications peuvent déclarer une configuration de dépendances hors ligne, que les sessions l’initialisent sans accès à des index de paquets publics et que les échecs d’initialisation sont signalés avant l’exécution du code de l’agent.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- backend
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- Active
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100