የኮድ benchmarks አንድ የማይመች ሚስጥር አላቸው፦ ሞዴልን ለማስቆጠር የጻፈውን ማሄድ ያስፈልግዎታል። በጥቂት መቶ ችግሮች ላይ ለእያንዳንዳቸው አስር መፍትሄዎች ያሉት pass@k ሩጫ በሺዎች የሚቆጠሩ አዲስ የተፈጠሩ ፕሮግራሞች ማለት ነው — ከማያውቁት ሰው ቢመጡ ደግሞ አንዱንም በcurl | bash አያሄዱም ነበር።
ብዙ ሰዎች በላፕቶፓቸው ላይ በsubprocess.run እና በጊዜ ገደብ ይጀምራሉ። ይህ የሚሰራው አንድ መፍትሄ 40 GB ፋይል እስኪጽፍ፣ ማሽኑ እስኪቆም ድረስ processes እስኪፈጥር፣ ወይም በጸጥታ የhome directoryዎን እስኪያነብ ድረስ ነው። መፍትሄው የበለጠ ብልህ የጊዜ ገደብ አይደለም። መፍትሄው መፍትሄዎቹን ግድ በማይሰጥዎ ቦታ ማሄድ ነው።
የሚሰራው አዘገጃጀት
sandbox Python 3.12፣ Node.js 22 እና bash ያለው Firecracker microVM ነው፣ በአንድ ሰከንድ ገደማ ይነሳል፣ ሲጨርሱ ይሰረዛል። ወደ ውጭ የሚወጣ ኢንተርኔት ይሰራል፣ ወደ ውስጥ የሚገባው አይሰራም፣ ውስጡም የእርስዎ የሆነ ምንም ነገር የለም።
ወጥመዱ sandboxን እንደ function ጥሪ መቁጠር ነው። እያንዳንዱ ቢያንስ ለ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 እያንዳንዱን መፍትሄ በራሱ አጭር የጊዜ ገደብ ባለው ንዑስ process ውስጥ ያሄዳል፣ እና pass፣ fail ወይም timeout ይመዘግባል። የሚያበላሽ መፍትሄ የሚገድለው የራሱን ንዑስ process ብቻ ነው እንጂ ሙሉ ሩጫውን አይደለም። አንድ መፍትሄ sandboxን ራሱን ማበላሸት ከቻለ፣ አንድ ክፍል ያጣሉ፣ sandboxን እንደገና ይፈጥራሉ፣ ይቀጥላሉ።
ፋይሎች በአንድ ዝውውር እስከ 5 MB ናቸው፣ ስለዚህ ትላልቅ የውሂብ ስብስቦችን ወደ ክፍሎች ይከፋፍሉ — ለትይዩ አሰራር ለማንኛውም የሚፈልጉት ነው።
Throughput፣ በሐቀኝነት
አንድ መለያ እስከ 20 sandboxes ሊኖረው ይችላል፣ ነገር ግን በአንድ ጊዜ የሚሄዱት 2 ትዕዛዞች ናቸው። የጀርባ ስራ እየሄደ እስካለ ድረስ ይቆጠራል። ስለዚህ ፈጣን ግምገማ ሁለት sandboxes እያንዳንዳቸው በጀርባ የራሳቸውን ክፍል ሲያስኬዱ ይመስላል — በሁለት ቦታዎች ላይ የሚጣሉ ሃያ sandboxes አይደለም።
ለተለመዱ የኮድ benchmarks ይህ ከበቂ በላይ ነው፦ አብዛኞቹ መፍትሄዎች ከአንድ ሰከንድ ባነሰ ጊዜ ያልቃሉ፣ አንድ sandbox በሰዓት በሺዎች የሚቆጠሩትን ያስኬዳል። በግዙፍ ስብስብ ላይ ብዙ ሞዴሎችን በአንድ ጊዜ መገምገም ካስፈለገዎ ጣሪያውን ይመቱታል። በዚያን ጊዜ የራስዎን መገለል የሚያሄድ VPS የተሻለ መሳሪያ ነው።
ሊያውቁት የሚገባ የCPU ደንብ
sandboxes ለአልፎ አልፎ ለሚጨምር ስራ የተገነቡ ናቸው። ከ15 ደቂቃ በላይ ከ90% በላይ CPU ላይ የሚቆይ sandbox እንደ አላግባብ መጠቀም ይቆጠራል — ጊዜያዊ sandbox ይቆማል። በፈጣን ማሄድና ውጤት በመመዝገብ መካከል የሚፈራረቁ መደበኛ ግምገማዎች ወደዚያ እንኳ አይቀርቡም። ለሰዓታት ሙሉ CPU የሚያቃጥል benchmark (ለእያንዳንዱ መፍትሄ ትልቅ ፕሮጀክት compile ማድረግ፣ የቁጥር የጭንቀት ሙከራዎች) ግን ይቀርባል። ለዚያ በወር 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 |
| ለእያንዳንዱ መፍትሄ build + ሙከራዎች | plus (2 vCPU, 4 GB) | ~3 ሰዓት | $0.40 |
እነዚህን መፍትሄዎች የሚፈጥሩት የሞዴል ጥሪዎች ከማሄዱ የበለጠ ያስከፍሉዎታል — ብዙውን ጊዜ አስር እጥፍ ገደማ።
ቁልፎችና ውጤትን የመድገም ችሎታ
harness ከsandbox ውስጥ የሞዴል API የሚጠራ ከሆነ — ለምሳሌ በLLM-as-judge ዘይቤ ለማስቆጠር — ቁልፉን እንደ sandbox የአካባቢ ተለዋዋጭ ያስተላልፉ። እሴቶቹ ተመስጥረው ይቀመጣሉ፣ በፍጹም አይመዘገቡም፣ API ደግሞ የተለዋዋጮቹን ስሞች ብቻ ይመልሳል።
ውጤቶች እንዲደገሙ፣ በharnessዎ ውስጥ የpackage ስሪቶችን ያስተካክሉ እና ከውጤቶቹ ጋር የsandbox ታሪፉን ይመዝግቡ። እያንዳንዱ sandbox ከተመሳሳይ ንጹህ image ይጀምራል፣ ይህም "በላፕቶፔ ላይ ይሰራ ነበር" የሚለውን ተለዋዋጭ ከቁጥሮችዎ ያስወግዳል። እውነቱን ለመናገር ለዚህ ብቻ እንኳ መቀየሩ ይገባዋል።
በsandbox ገጽ እና በsandbox ሰነዶች ይጀምሩ። አዲስ መለያዎች የ$1 የsandbox ጊዜ ያገኛሉ — በsmall ታሪፍ ላይ ጥቂት ሺህ መፍትሄዎች ላለው የመጀመሪያ ግምገማ ይበቃል። SDK ማጣቀሻ የጀርባ ስራዎችንና የፋይል ዝውውርን ያብራራል፣ sandbox ገደቦችና ሂሳብ ደግሞ ሙሉ የኮታ ሰንጠረዥ አለው።
ተዛማጅ፦ ለAI ወኪሎች sandbox እና በsandbox ውስጥ የኤጀንት የመጀመሪያ ስራ።
አስተያየቶች
እስካሁን አስተያየቶች የሉም። መጀመሪያ ይሁኑ።