Limpia y analiza un CSV desordenado con un agente de IA
Un agente perfila un CSV con comandos reales en un sandbox e informa de duplicados, valores que faltan, formatos incorrectos y valores atípicos.
- Archivos
- Shell
- Límite de presupuesto
Mira una ejecución real
Una ejecución real del 7 oct 2026, reproducida. Modelo: openai/gpt-6-luna.
- En colapresupuesto de $0.05 reservado
- MicroVMmicroVM ready
- MicroVMworker started · shell on · web off
- Archivo
read orders.csv - Shell
$ python3 - <<'PY' import csv p='/tmp/ephemeral-run-s2TPIy/bundle/orders.csv' with open(p,newline='')… - Shell
$ python3 - <<'PY' import csv,re,datetime,collections p='/tmp/ephemeral-run-s2TPIy/bundle/orders.csv'… - MicroVMmicroVM destroyed
- Completada3 llamadas al modelo, 9,333 tokensResultado grabado (en inglés)
Verdict: Found data-quality issues in missing values, duplicates, email, casing, dates, and quantity.
Issue Count Affected data rows Suggested fix Missing customer_email1 3 Populate or explicitly mark unknown. Missing unit_price1 9 Populate or explicitly mark unknown. Duplicate full rows 2 7, 8 Remove one duplicate. Duplicate order_id2 7, 8 Confirm which order is valid; make IDs unique. Invalid email 1 4 Correct the address (e.g., add a valid domain). Inconsistent country casing 1 2 Normalize detoDE.Inconsistent status casing 1 12 Normalize Shippedtoshipped.Date not in YYYY-MM-DDformat1 5 Convert to 2026-09-02.Nonexistent date 1 14 Correct 2026-09-31to the intended valid date.Negative quantity 1 6 Verify and correct the quantity. Extreme quantity outlier ( 1000)1 15 Verify against the source order. - Worker destruido$0.006427 cobrados, $0.043573 liberados
Ejecútalo tú mismo
Abre el ejemplo en el playground con la solicitud completa ya rellenada. Se ejecuta en tu propia cuenta, dentro del presupuesto indicado, contra los mismos sistemas de ejemplo de solo lectura.
Presupuesto de este ejemplo: $0.05
Cómo funciona
El archivo es de solo lectura y el sandbox no tiene red, así que los datos se quedan donde están. El agente cuenta los problemas con el shell en lugar de estimarlos a ojo, y enumera cada incidencia con los números de fila y una corrección sugerida.
Lo que el agente puede y no puede hacer
Los permisos forman parte de la solicitud. Todo lo que no figura aquí no está disponible para la ejecución.
| Ajuste | Permitido |
|---|---|
| Conexiones | Ninguna |
| Web | Desactivado |
| Shell | Activado, dentro de la máquina sellada |
| Archivos | orders.csv (solo lectura) |
| Retención cero de datos | Desactivada: el registro se conserva 30 días |
| Presupuesto | $0.05, límite estricto |
| Tiempo límite | 120 segundos |
Las credenciales nunca entran en la máquina: un broker las añade a cada llamada y aplica los métodos indicados arriba.
El código
Esta es la solicitud exacta que envía el ejemplo. Define EPHEMERAL_API_KEY con una clave de miembro de tu organización.
curl -X POST $EPHEMERAL_URL/v1/runs \
-H "Authorization: Bearer $EPHEMERAL_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d @request.jsonArchivos de la solicitud
Se pasan en línea, así que no hay que subir nada antes. El agente ve cada uno como un archivo de solo lectura.
orders.csv
order_id,customer_email,country,order_date,quantity,unit_price,status
1001,[email protected],DE,2026-09-01,2,19.90,shipped
1002,[email protected],de,2026-09-01,1,19.90,shipped
1003,,US,2026-09-02,3,9.50,shipped
1004,carla@example,US,2026-09-02,1,49.00,delivered
1005,[email protected],FR,02/09/2026,1,49.00,delivered
1006,[email protected],FR,2026-09-03,-1,19.90,refunded
1007,[email protected],US,2026-09-03,2,9.50,shipped
1007,[email protected],US,2026-09-03,2,9.50,shipped
1008,[email protected],GB,2026-09-04,1,,shipped
1009,[email protected],JP,2026-09-04,5,19.90,delivered
1010,[email protected],DE,2026-09-05,1,19.90,shipped
1011,[email protected],US,2026-09-05,1,9.50,Shipped
1012,[email protected],KR,2026-09-06,1,49.00,delivered
1013,[email protected],US,2026-09-31,2,9.50,shipped
1014,[email protected],DE,2026-09-07,1000,19.90,shipped
1015,[email protected],FR,2026-09-08,1,19.90,delivered
1016,[email protected],GB,2026-09-08,2,49.00,delivered
1017,[email protected],US,2026-09-09,1,9.50,cancelled
1018,[email protected],DE,2026-09-09,1,19.90,delivered
1019,[email protected],US,2026-09-10,2,9.50,shipped
1020,[email protected],JP,2026-09-10,1,49.00,delivered
Cuerpo completo de la solicitud request.json
El mismo cuerpo, con los archivos en línea.
{
"prompt": "Profile orders.csv (columns: order_id, customer_email, country, order_date, quantity, unit_price, status). Use the shell (python3, awk, sort, uniq, whatever is installed) to count the problems; do not count by eye. Check duplicate rows and duplicate order_ids, missing values per column, invalid emails, inconsistent country or status casing, dates that are not YYYY-MM-DD or do not exist, negative quantities and extreme outliers. Reply in Markdown, at most 220 words: a one-line verdict, then a table of issue, count, affected row numbers (data rows, header excluded) and a suggested fix. If a check finds nothing, omit it.",
"files": [
{
"path": "orders.csv",
"content": "order_id,customer_email,country,order_date,quantity,unit_price,status\n1001,[email protected],DE,2026-09-01,2,19.90,shipped\n1002,[email protected],de,2026-09-01,1,19.90,shipped\n1003,,US,2026-09-02,3,9.50,shipped\n1004,carla@example,US,2026-09-02,1,49.00,delivered\n1005,[email protected],FR,02/09/2026,1,49.00,delivered\n1006,[email protected],FR,2026-09-03,-1,19.90,refunded\n1007,[email protected],US,2026-09-03,2,9.50,shipped\n1007,[email protected],US,2026-09-03,2,9.50,shipped\n1008,[email protected],GB,2026-09-04,1,,shipped\n1009,[email protected],JP,2026-09-04,5,19.90,delivered\n1010,[email protected],DE,2026-09-05,1,19.90,shipped\n1011,[email protected],US,2026-09-05,1,9.50,Shipped\n1012,[email protected],KR,2026-09-06,1,49.00,delivered\n1013,[email protected],US,2026-09-31,2,9.50,shipped\n1014,[email protected],DE,2026-09-07,1000,19.90,shipped\n1015,[email protected],FR,2026-09-08,1,19.90,delivered\n1016,[email protected],GB,2026-09-08,2,49.00,delivered\n1017,[email protected],US,2026-09-09,1,9.50,cancelled\n1018,[email protected],DE,2026-09-09,1,19.90,delivered\n1019,[email protected],US,2026-09-10,2,9.50,shipped\n1020,[email protected],JP,2026-09-10,1,49.00,delivered\n"
}
],
"web": false,
"shell": true,
"timeout_seconds": 120,
"max_cost_micros": 50000
}