Puoi fornire file al tuo agente caricandoli tramite l'API Files e montandoli nel contenitore della sessione.
Tutte le richieste all'API Managed Agents richiedono l'intestazione beta managed-agents-2026-04-01. L'SDK imposta automaticamente l'intestazione beta.
Per prima cosa, carica un file utilizzando l'API Files:
file = client.beta.files.upload(file=Path("data.csv"))
print(f"File ID: {file.id}")Monta i file caricati nel contenitore aggiungendoli all'array resources quando crei una sessione:
Il mount_path è facoltativo, ma assicurati che il file caricato abbia un nome descrittivo in modo che l'agente sappia cosa sta cercando.
session = client.beta.sessions.create(
agent=agent.id,
environment_id=environment.id,
resources=[
{
"type": "file",
"file_id": file.id,
"mount_path": "/workspace/data.csv",
},
],
)Verrà creato un nuovo file_id che fa riferimento all'istanza del file nella sessione. Queste copie non contano rispetto ai tuoi limiti di archiviazione.
Monta più file aggiungendo voci all'array resources:
resources = [
{"type": "file", "file_id": "file_abc123", "mount_path": "/workspace/data.csv"},
{"type": "file", "file_id": "file_def456", "mount_path": "/workspace/config.json"},
{"type": "file", "file_id": "file_ghi789", "mount_path": "/workspace/src/main.py"},
]È supportato un massimo di 100 file per sessione.
Puoi aggiungere o rimuovere file da una sessione dopo la creazione utilizzando l'API delle risorse della sessione. Ogni risorsa ha un id restituito quando viene aggiunta (o elencata), che usi per le eliminazioni.
resource = client.beta.sessions.resources.add(
session.id,
type="file",
file_id=file.id,
)
print(resource.id) # "sesrsc_01ABC..."Elenca tutte le risorse in una sessione con resources.list. Per rimuovere un file, chiama resources.delete con l'ID della risorsa:
listed = client.beta.sessions.resources.list(session.id)
for entry in listed.data:
print(entry.id, entry.type)
client.beta.sessions.resources.delete(resource.id, session_id=session.id)Utilizza l'API Files per elencare i file con ambito a una sessione e scaricarli.
# List files associated with a session
files = client.beta.files.list(
scope_id="sesn_abc123",
betas=["managed-agents-2026-04-01"],
)
for f in files:
print(f.id, f.filename)
# Download a file
content = client.beta.files.download(files.data[0].id)
content.write_to_file("output.txt")L'agente può lavorare con qualsiasi tipo di file, inclusi:
.py, .js, .ts, .go, .rs, ecc.).csv, .json, .xml, .yaml).txt, .md).zip, .tar.gz) - l'agente può estrarli usando bashI file montati nel contenitore sono copie di sola lettura. L'agente può leggerli ma non può modificare il file caricato originale. Per lavorare con versioni modificate, l'agente scrive in nuovi percorsi all'interno del contenitore.
/)Was this page helpful?