هغه اجنټ چې کوډ لیکي یوازې هغه وخت ګټور دی چې یو څه دا کوډ په خوندي ډول وچلوي او پایله ووايي. دا لارښود دا کړۍ له پیله تر پایه جوړوي: ماډل د Python سکرېپټ لیکي، sandbox یې چلوي، او که ناکام شي، تېروتنه ماډل ته ورګرځي. بیا همدا دنده پرته له یوې کرښې کوډ، د MCP له لارې.
تاسو Python 3.8+، د EQVPS حساب ټوکن (حساب نښلول وګورئ) او د یو ماډل API کیلي ته اړتیا لرئ.
۱. لومړی د لګښت پوله وټاکئ
اجنټ پخپله sandboxونه جوړوي، نو له پیل مخکې ورته چت وټاکئ. د تجربو لپاره په ورځ دوه ډالره او په میاشت شل ډالره له اړتیا ډېر دي:
curl -X PUT https://api.eqvps.com/api/v1/eqvps/sandboxes/budget \
-H "Authorization: Bearer $EQVPS_API_KEY" -H "Content-Type: application/json" \
-d '{"daily_usd": 2, "monthly_usd": 20}'
کله چې پولې ته ورسېږي، نوي sandboxونه 429 budget_exceeded ترلاسه کوي او چلېدونکي لنډمهاله sandboxونه ړنګېږي. جزئیات په د sandbox پولې او بلینګ کې دي.
۲. دوه کتابتونونه نصب کړئ
pip install eqvps anthropic
export EQVPS_API_KEY="your-eqvps-token"
export ANTHROPIC_API_KEY="your-model-key"
بېلګه یو د ماډل چمتو کوونکی کاروي، خو هېڅ شی په هغه پورې تړلی نه دی. له ماډل سره یوازې ask() فنکشن خبرې کوي.
۳. د لیکلو، چلولو او سمولو کړۍ
دا د agent.py په نوم خوندي کړئ:
import re
import anthropic
from eqvps import Sandbox
TASK = "Count the prime numbers below 1,000,000 and print only the number."
client = anthropic.Anthropic()
def ask(messages):
msg = client.messages.create(model="claude-sonnet-5", max_tokens=2000, messages=messages)
return msg.content[0].text
def extract_code(text):
m = re.search(r"`{3}(?:python)?\n(.*?)`{3}", text, re.S)
return m.group(1) if m else text
messages = [{"role": "user", "content": "Write a Python 3 script for this task. "
"Reply with a single code block and nothing else.\n\nTask: " + TASK}]
with Sandbox.create(tariff="small", idle_timeout=120) as sb:
for attempt in range(1, 4):
reply = ask(messages)
r = sb.run(extract_code(reply), timeout=55)
print(f"attempt {attempt}: exit code {r.exit_code}")
if r.ok:
print(r.stdout.strip())
break
messages += [
{"role": "assistant", "content": reply},
{"role": "user", "content": f"The script failed with exit code {r.exit_code}.\n"
f"stderr:\n{r.stderr[-3000:]}\nFix it. Reply with a single code block."},
]
ویې چلوئ:
python3 agent.py
یو عادي اجرا attempt 1: exit code 0 او بیا 78498 چاپوي. که لومړی سکرېپټ ناکام شي، دویمه هڅه به له سمې شوې تېروتنې سره ووینئ.
هره برخه څه کوي:
Sandbox.create(..., idle_timeout=120)شاوخوا په یوه ثانیه کې یو microVM چالانوي. که ستاسو سکرېپټ په منځ کې مړ شي، sandbox بیا هم له ۲ دقیقو بېکارۍ وروسته ځان ړنګوي.sb.run(code, timeout=55)کوډ چلوي او د وتلو کوډ، stdout او stderr راګرځوي. د کوډ ماتېدل یوه عادي پایله ده نه استثنا، نو کړۍ کولی شي ماډل ته یې وښيي.r.stderr[-3000:]یوازې د تېروتنې پای لېږي. د یو لوی سکرېپټ بشپړ traceback کولی شي د ماډل ډېر شرایط ضایع کړي.- درې هڅې یوه قصدي پوله ده. هغه ماډل چې په درې هڅو کې سکرېپټ سم نه کړي، معمولاً څلورمې هڅې ته نه، بلکې د دندې ښه تشریح ته اړتیا لري.
۴. کله چې دنده له ۵۵ ثانیو ډېر وخت غواړي
یو همغږی غږ تر ډېره ۵۵ ثانیې دوام کوي. اوږد کار په شالید کې پیل کړئ او انتظار وباسئ:
task = sb.run(code, background=True)
result = task.wait(timeout=1800)
حتی که ستاسو wait خپلې وخت پولې ته ورسېږي، دنده چلېږي، او کولی شئ په sb.task(task_id) بیا ورته راشئ.
۵. همدا دنده د MCP له لارې، پرته له کوډه
که د Claude Desktop یا Cursor په څېر MCP پیرودونکی د EQVPS د MCP سرور سره کاروئ، اجنټ دمخه د sandbox وسیلې لري: create_sandbox، run_code، exec_command، upload_file، download_file او kill_sandbox. یو پرامپټ بس دی:
یو کوچنی لنډمهاله sandbox جوړ کړه. یو Python سکرېپټ ولیکه چې له 1,000,000 کم لومړني عددونه وشمېري، هلته یې وچلوه، که ناکام شو سم یې کړه، پایله راته ووایه او sandbox ړنګ کړه.
اجنټ هماغه غږونه کوي چې پورتنی سکرېپټ یې کوي. کومې وسیلې پرته له تایید اجازه ورکول خوندي دي، په د MCP ساتنې کې تشریح شوي.
دې څومره لګښت درلود
sandbox له یوې دقیقې ډېر لږ ژوندی و او د لږ تر لږه ۶۰ ثانیو له مخې بل شو: په small کې $0.00055. د ماډل غږ له sandbox ډېر لګښت لري. د نوي حساب د $1 ازموینې کریډیټ د داسې شاوخوا ۱٬۸۰۰ اجراوو لپاره بس دی.
وروسته چېرې لاړ شئ
- SDK ګام په ګام: په ۵ دقیقو کې د sandbox لپاره Python SDK یا TypeScript.
- ټول میتودونه او تېروتنې: د SDK لارښود.
- تعرفې او د ازموینې کریډیټ: د sandbox پاڼه.
تبصرې
لا تبصرې نشته. لومړی اوسئ.