د کوډ بنچمارکونه یو ناخوښه راز لري: ماډل ته د نمرو ورکولو لپاره باید هغه څه وچلوئ چې لیکلي یې دي. په څو سوو پوښتنو کې د هرې لس حلونو سره pass@k چلول یعنې زرګونه تازه جوړ شوي پروګرامونه — او که له یو ناپېژندل شوي کس څخه راتلل، تاسو به یې یو هم په curl | bash نه چلاوه.
ډېری خلک په خپل لپټاپ د subprocess.run او یو وخت حد سره پیل کوي. دا تر هغه کار کوي چې یو حل 40 GB فایل ونه لیکي، تر هغه پروسې جوړې نه کړي چې ماشین ودرېږي، یا په چوپتیا ستاسو د کور ډایرکټري ونه لولي. حل یو هوښیار وخت حد نه دی. حل دا دی چې حلونه په داسې ځای کې وچلوئ چې تاسو ته پروا نه لري.
هغه تنظیم چې کار کوي
sandbox یو Firecracker microVM دی چې Python 3.12، Node.js 22 او bash لري، شاوخوا په یوه ثانیه کې چالانېږي او کله چې کار مو پای ته ورسېږي، ړنګېږي. بهر ته انټرنېټ کار کوي، دننه ته نه، او دننه یې ستاسو هېڅ شی نشته.
دام دا دی چې sandbox د فنکشن د بللو په څېر وګڼئ. د هر یوه لږ تر لږه د 60 ثانیو بیل جوړېږي او د چالانېدو لپاره یوه ثانیه نیسي، نو د هر حل لپاره یو sandbox هم ورو دی او هم بېګټې. د دې پر ځای harness دننه کېږدئ:
from eqvps import Sandbox
with Sandbox.create(tariff="standard", ttl=4 * 3600) as sb:
sb.upload("/root/harness.py", open("harness.py").read())
sb.upload("/root/samples.jsonl", open("slice_03.jsonl").read())
task = sb.exec("python3 /root/harness.py /root/samples.jsonl > /root/results.jsonl",
background=True)
task.wait(poll_interval=10)
results = sb.download_text("/root/results.jsonl")
دننه، د harness.py فایل هر حل په یوه فرعي پروسه کې د خپل لنډ وخت حد سره چلوي او pass، fail یا timeout ثبتوي. ګډوډي کوونکی حل یوازې خپله فرعي پروسه وژني، نه ټول چلول. که یو حل پخپله sandbox خراب کړي، تاسو یوه برخه له لاسه ورکوئ، sandbox بیا جوړوئ او مخ ته ځئ.
په هر لېږد کې فایلونه تر 5 MB پورې کېدای شي، نو لوی معلومات په برخو ووېشئ — کوم چې د موازي چلولو لپاره یې هسې هم غواړئ.
تروپټ، په رښتیا
یو حساب کولی شي تر 20 sandboxes ولري، خو په یو وخت کې 2 کمانډونه چلېږي. شالیدي دنده تر هغه شمېرل کېږي چې چلېږي. نو چټکه ارزونه داسې ښکاري: دوه sandboxes، چې هر یو په شالید کې خپله برخه بشپړوي — نه شل sandboxes چې پر دوو ځایونو جګړه کوي.
د عادي کوډ بنچمارکونو لپاره دا له اړتیا ډېر دی: ډېری حلونه له یوې ثانیې لږ وخت کې پای ته رسېږي، او یو sandbox په یوه ساعت کې زرګونه بشپړوي. که تاسو باید په یوه ډېره لویه مجموعه کې په یو وخت ډېر ماډلونه وارزوئ، چت ته به ورسېږئ. په هغه وخت کې هغه VPS چې خپله جلاوالی چلوي، ښه وسیله ده.
د CPU هغه قاعده چې باید یې پوه شئ
sandboxes د وقفهیي کار لپاره جوړ شوي. هغه sandbox چې له 15 دقیقو ډېر له 90٪ پورته CPU پاتې شي، ناوړه کارونه ګڼل کېږي — لنډمهاله sandbox درول کېږي. عادي ارزونې، چې د چټک چلولو او پایلو د ثبتولو ترمنځ بدلېږي، دې ته نږدې هم نه ورځي. هغه بنچمارک چې څو ساعته بشپړ CPU سوځوي (د هر حل لپاره د یوې لویې پروژې کمپایل، شمېریز فشار ټېسټونه) به ورسېږي. د دې لپاره میاشتنی VPS واخلئ: د AI agent تعرفه په 10 ډالرو 4 vCPU او 4 GB درکوي.
د یو چلولو لګښت
تاسو د تعرفې د vCPU او RAM لپاره په ثانیه پیسې ورکوئ، لږ تر لږه 60 ثانیې، له مخکې ورکړل شوي بیلانس څخه.
| کاري بار | تعرفه | وخت | اټکلي لګښت |
|---|---|---|---|
| 1,000 لنډ Python حلونه | small (0.5 vCPU, 1 GB) | ~20 دقیقې | $0.011 |
| 5,000 حلونه، numpy اجازه لري | standard (1 vCPU, 2 GB) | ~2 ساعته | $0.13 |
| د هر حل لپاره جوړول + ټېسټ | plus (2 vCPU, 4 GB) | ~3 ساعته | $0.40 |
د ماډل هغه غوښتنې چې دا حلونه جوړوي، له چلولو ډېرې ګرانې تمامېږي — معمولاً شاوخوا لس ځله.
کلیګانې او د پایلو تکرارېدل
که harness د sandbox دننه د یو ماډل API رابولي — د بېلګې په توګه د LLM-as-judge ډوله ارزونې لپاره — کلي د sandbox د چاپېریال متغیر په توګه ورکړئ. ارزښتونه کوډ شوي ساتل کېږي، هېڅکله لاګ کې نه لیکل کېږي، او API یوازې د متغیرونو نومونه بېرته ورکوي.
د دې لپاره چې پایلې تکرار شي، په harness کې د کڅوړو نسخې وټاکئ او د پایلو سره د sandbox تعرفه ثبت کړئ. هر sandbox له یوه پاک انځور څخه پیلېږي، چې ستاسو له شمېرو څخه د "زما په لپټاپ خو کار کاوه" عامل لرې کوي. رښتیا ووایو، یوازې د همدې لپاره بدلون ارزي.
له د sandbox پاڼې او د sandbox اسنادو څخه پیل وکړئ. نوي حسابونه 1 ډالر د sandbox وخت ترلاسه کوي — د small تعرفې پر سر د څو زره حلونو د لومړۍ ارزونې لپاره بس. د SDK مرجع شالیدي دندې او د فایلونو لېږد تشریح کوي، او د sandbox حدود او بیلینګ کې د کوټې بشپړ جدول دی.
اړوند: د AI اجنټانو لپاره sandbox او په sandbox کې د اجنټ لومړۍ دنده.
تبصرې
لا تبصرې نشته. لومړی اوسئ.