Lesson 70 — Beginner

Sandboxed Execution for AI Agents

Agents jo code likhte hain wo kabhi bhi tumhare production process ke andar direct execute nahi hone chahiye. Is lesson mein dekhenge kyun, container jaisa sandbox kaise banta hai, filesystem/network/time kaise restrict hote hain, aur results ko safely capture karke kitna hi wapas bhejte hain.

⏱ 10 min• Beginner• Building Agents with LangGraph

In-process execution kyun khatarnaak hai

WHAT

Sandbox matlab model-generated code (Python, shell, scripts) ko alag, restricted environment mein chalana — jahan wo apni poori taakat se tumhare app, data aur secrets ko chhu hi na sake. Yehi control tumhe filesystem, network, credentials, time aur compute ki grip deta hai — blast radius kam hota hai.

WHEN

Har baar jab agent code likhe ya code tool invoke ho — analysis scripts, transformations, test runs. "Chhota sa snippet hai" excuse nahi hai.

WHERE

Code-interpreting agents, data analysis copilots, CI-jaisi autonomous jobs — kahin bhi jaan-varchhav wali execution ho rahi ho.

Golden rule: Model-generated code = untrusted code, hamesha. Jaise kisi anjaan ka script seedha server pe nahi chalaoge, waise hi model ka output bhi chalane se pehle isolate karo.

Sandbox ke options

Spectrum hai — jitna control chahiye utna ownership, jitna convenience chahiye utna service. Chhote prototype se shuru, production par isolation ki guarantee chahiye.

Decision rule: Dev/local quick runs = subprocess bhi chalega. Production + user-facing agent = container ya managed sandbox, non-negotiable.

Restrictions — filesystem, network, time, resources

import subprocess

def run_sandboxed(code, timeout=20):
    proc = subprocess.run(
        ["docker", "run", "--rm",
         "--network", "none",            # internet band by default
         "--memory", "256m", "--cpus", "0.5",   # RAM + CPU cap
         "--read-only",                  # image filesystem padho-mat
         "-v", "/tmp/sbx:/work:rw",      # sirf ek chhota kaam-wala folder
         "python:3.12-slim", "python", "-c", code],
        capture_output=True, text=True, timeout=timeout,   # tool na mar jaaye
    )
    return {
        "stdout": proc.stdout[:4000],    # sirf zaroori wapas
        "stderr": proc.stderr[:2000],
        "exit_code": proc.returncode,
    }

Output capture aur blast radius

def call_sandbox_tool(code):
    try:
        out = run_sandboxed(code, timeout=20)
    except subprocess.TimeoutExpired:
        return "code 20s mein khatam nahi hua — chhota karke try karo"
    if out["exit_code"] != 0:
        err = out["stderr"][:800]
        return f"code fail: {err}"   # model ko fix ka hint
    return {"result": out["stdout"], "files": list_files("/work")}
# agent ko stdout + zaroori files chhote format mein — na poora disk dump
Blast radius mindset: Sawaal yeh nahi "kya code sahi hai" — sawaal yeh hai "ye code galat nikla toh kya ukhad sakta hai". Jawab chhota rakho — isolation, least privilege, short-lived credentials.

Exercise

Question: Docker mein network band karne wala flag kya hai? (do shabd, "--" ke saath)

Question: Model ka likha code sabse pehle kahan chalana chahiye — in-process ya alag isolated env mein?

Question: Sandbox se output wapas bhejte waqt size limit karke kaatne ka term? (ek shabd, English)

Question: Har docker run ko fresh state dene wala cleanup flag kaunsa hai? ("--" ke saath)

Common mistakes

Desi example: Ghar ki kitchen vs restaurant ka main stove

Naya dish experiment pehle ghar ki chhoti kitchen mein karte hain — wahan galti ho toh kuch nahi gaya. Restaurant ke main stove pe seedha naye chef ko nahi dete. Sandbox wahi chhoti kitchen hai:

text
experiment: ghar (sandbox) -> test -> scale
agent code: sandbox -> verify -> (tabhi production mein deploy)
blast:       ghar jalaa? kuch nahi. restaurant jalaa? band!
Interview angle — yahan se sawaal aate hain
  • Q: Model-generated code in-process chalane ke teen risks batao.
  • Q: Ek sandboxed code runner ke non-negotiable controls ki list banao (fs, net, time, CPU, creds).
  • Q: Stdout/stderr ko agent tak kaise return karoge bina context blow-up ke?
  • Q: Blast radius kya hai aur agent system mein kaise kam karte ho?
Lesson complete?

Sandbox ka funda clear. Agla lesson — Agent Reliability, UX & Failure Recovery — mein dekhenge agents ko kaise predictable fail aur graceful recover karwate hain.

Popular courses: Data Science Course in Lucknow · AI Course in Lucknow · Python Course in Lucknow · Power BI Course · Data Analytics Course