„წამობრივი ანგარიშსწორება“ ერთ-ერთი იმ ფრაზათაგანია, რომელიც სრულად ჟღერს, მაგრამ ასეთი არ არის. მის მიღმა რამდენიმე გადაწყვეტილებაა, რომლებიც ცვლის იმას, რასაც იხდით: რა იზომება, როდის იწყება და ჩერდება საათი, არის თუ არა მინიმუმი, როგორ მუშავდება ცენტის ნაწილები და როდის გადის ფული რეალურად ბალანსიდან.
ეს სტატია ჩვენს პასუხებს, გამოთვლებთან ერთად, კოდის sandbox-ებისთვის აფიქსირებს. მიზანია, რომ რამის გაშვებამდე შეძლოთ ანგარიშის ცენტამდე წინასწარ გამოთვლა და ამოიცნოთ წერტილი, სადაც წამობრივი ბილინგი თქვენი დატვირთვისთვის არასწორი მოდელია.
ერთეული: დაჯავშნილი vCPU და RAM
sandbox-ის ფასი იმ რესურსების ფასია, რომლებსაც მისი ტარიფი ჯავშნის:
- $0.040 თითო vCPU-საათზე
- $0.013 თითო GiB RAM-ზე საათში
ამიტომ small ტარიფი (0.5 vCPU, 1 GB) ღირს 0.5 × 0.040 + 1 × 0.013 = $0.033 საათში, ანუ დაახლოებით $0.0000092 წამში. ყველაზე დიდი, max (8 vCPU, 16 GB), $0.528 ღირს საათში.
ჩვენ ვზომავთ დაჯავშნას და არა მოხმარებას. sandbox, რომელიც შემდეგ ბრძანებას ელოდება, წამში იმდენივე ღირს, რამდენიც პროექტის კომპილაციისას. რეალური CPU-ს გაზომვა ქაღალდზე უფრო სამართლიანად გამოიყურებოდა, მაგრამ ფასს წინასწარ შეუცნობელს ხდის, ხოლო სიმძლავრე თქვენთვის ნებისმიერ შემთხვევაში დაკავებულია. გამავალი ტრაფიკი არ ითვლება.
საათი: შექმნიდან წაშლამდე
დროებითი sandbox ითვლება შექმნის მომენტიდან წაშლამდე. ეს მოიცავს იმ დროსაც, რომელსაც ის უმოქმედოდ ატარებს, სანამ უმოქმედობის ტაიმაუტი არ წაშლის, ნაგულისხმევად 300 წამი.
უმეტესი სიურპრიზი აქედან მოდის. ორწუთიანი სკრიპტი sandbox-ში, რომელსაც არავინ შლის, შვიდ წუთად ითვლება: ორი წუთი სამუშაო და ხუთი ტაიმაუტის მოლოდინი. გამოსავალი მოსაწყენია: წაშალეთ sandbox, როცა დაასრულებთ (SDK-ის with ბლოკი ამას თქვენ ნაცვლად აკეთებს), ან შეამცირეთ უმოქმედობის ტაიმაუტი.
მინიმუმი: 60 წამი თითო sandbox-ზე
ყოველი დროებითი sandbox თავისი სიცოცხლის მინიმუმ 60 წამად ითვლება. microVM-ის გაშვება, მისი დისკისა და ქსელის მიერთება და ყველაფრის უკან დაშლა ერთნაირი ღირს, შიგნით კოდი ერთ წამს მუშაობს თუ ორმოცდაათს.
| სიცოცხლე | ტარიფი | დათვლილი | ღირებულება |
|---|---|---|---|
| 20 წმ | small | 60 წმ | $0.00055 |
| 61 წმ | small | 61 წმ | $0.00056 |
| 10 წთ | small | 600 წმ | $0.0055 |
| 3 სთ | standard | 10 800 წმ | $0.198 |
მინიმუმი ერთხელ გამოიყენება, sandbox-ის დასრულებისას, და მხოლოდ მაშინ, თუ მისი მთლიანი სიცოცხლე 60 წამზე ნაკლები იყო. ამის ზემოთ საათობრივი ან ბრძანებობრივი დამატებითი მინიმუმი არ არსებობს.
დაგროვება და ჩამოჭრა: მიკროდოლარები და მთელი ცენტები
აი ნაწილი, რომელსაც „წამობრივი“ ჩვეულებრივ არ გეუბნებათ. sandbox-ების ჰოსტი მოხმარებას საათობრივ ინტერვალებში იწერს, თითო sandbox-ზე ერთს. წუთში ერთხელ ბილინგის ამოცანა აგროვებს დახურულ ინტერვალებს, აფასებს მათ და ბალანსიდან ჩამოჭრის.
შეფასება ხდება დოლარის მემილიონედებში. ჩამოჭრა — მთელი ცენტებით. ცენტზე ნაკლები ნაშთი თქვენს ანგარიშზე რჩება და შემდეგ ჩამოჭრას ემატება; არც sandbox-ზე და არც საათზე ზემოთ არ მრგვალდება.
მცირე მასშტაბზე ეს მნიშვნელოვანია. ასი 20-წამიანი sandbox აგროვებს 100 × $0.00055 = $0.055-ს. ჩამოგეჭრებათ ხუთი ცენტი, ნახევარი ცენტი კი შემდეგ პარტიას ელოდება. ყოველი sandbox ცენტამდე რომ დამრგვალებულიყო, იგივე სამუშაო ერთი დოლარი დაჯდებოდა.
კიდევ ორი თვისება, რომლის ცოდნაც ღირს:
- ყოველი ინტერვალი ზუსტად ერთხელ ითვლება. მოხმარების ჩანაწერი და ჩამოჭრა ერთ მონაცემთა ბაზის ტრანზაქციაში იწერება, sandbox-ისა და საათის გასაღებით. განმეორებითი გაშვება ან დაკარგული დადასტურება ორჯერ ვერ ჩამოჭრის.
- გათიშვები აყოვნებს ჩამოჭრას, მაგრამ არ კარგავს და არ აორმაგებს. თუ ბილინგის მხარე sandbox-ების ჰოსტს ვერ მიწვდება, არაფერი დასტურდება, ინტერვალები ელოდება და კავშირის აღდგენისას ითვლება.
შედეგად, დაფა შეიძლება ცოცხალ მაჩვენებელს ერთ საათამდე ჩამორჩებოდეს. ცოცხალი მაჩვენებლისთვის GET /sandboxes/{id}/usage აბრუნებს billed_usd-ს და estimated_total_usd-ს sandbox-ისთვის ამ მომენტამდე.
Persistent sandbox-ები: ყოველ დაწყებულ საათზე, ჭერით
Persistent sandbox-ები სესიებს შორის ინახავს თავის დისკს, 30 დღემდე. ისინი ითვლება ყოველ დაწყებულ საათზე: 61 წუთი ორი საათია. სანაცვლოდ, კალენდარული თვე (UTC) არასოდეს ღირს 730 საათს გამოკლებული 25%-ზე მეტი.
standard ტარიფისთვის ეს ჭერი თვეში $36.14-ია $48.18-ის ნაცვლად. სანამ persistent sandbox პაუზაზეა, საერთოდ არ ითვლება.
როცა ბალანსი ამოიწურება
ბალანსი არასოდეს ჩადის ნულს ქვემოთ. ახალი sandbox-ები უარყოფილია 402 insufficient_balance-ით. უკვე გაშვებული დროებითი sandbox-ები სრულდება უმოქმედობის ტაიმაუტზე ან TTL-ზე. Persistent-ები 24 საათის შემდეგ შევსების გარეშე პაუზაზე გადადის და თანხის დამატებისას თავად აგრძელებს. დაპაუზებული სნეპშოტები 14 დღე ინახება. ამის შემდეგ sandbox იშლება და მისი id აბრუნებს 410 sandbox_deleted-ს.
თუ AI აგენტი თქვენ ნაცვლად ქმნის sandbox-ებს, დააწესეთ დღიური და თვიური ლიმიტი. ლიმიტის მიღწევისას ბრუნდება 429 budget_exceeded განულების დროსთან ერთად — რაღაც, რაზეც პროგრამას შეუძლია რეაგირება.
სად აგებს წამობრივი ბილინგი
წამობრივი ბილინგი შესანიშნავია წამებითა და წუთებით გაზომვადი სამუშაოსთვის. რაც უფრო დიდხანს გრძელდება სამუშაო, მით უარესდება.
| დატვირთვა | წამობრივი sandbox | ალტერნატივა |
|---|---|---|
| 2-წუთიანი ტესტები | $0.0011 (small) | საათობრივად დათვლადი მანქანა მთელ საათს იღებს |
| 3-საათიანი პაკეტური ამოცანა | $0.198 (standard) | დაახლოებით იგივე |
| 24/7 მომუშავე სერვისი | $36.14/თვე (standard, persistent ჭერი) | AI agent VPS: 4 vCPU, 4 GB $10/თვე |
გადაკვეთის წერტილი დაახლოებით იქ არის, სადაც დატვირთვა დღეში რამდენიმე საათზე მეტს მუშაობს. ამის შემდეგ იხდით მოქნილობაში, რომელსაც არ იყენებთ, და თვით ნაქირავები სერვერი საათში გაცილებით იაფია. წამობრივ ბილინგზე ფიქრის სამართლიანი გზაა, მივიჩნიოთ ის სიმძლავრის დაგეგმვის არქონის ფასად და არა ფასდაკლებად.
სწრაფი შეფასების გზა
ტარიფის საათობრივი ფასი × წამები, რამდენიც sandbox იარსებებს ÷ 3600, მინიმუმ 60 წამით. დაამატეთ უმოქმედობის ტაიმაუტი, თუ თავად არ წაშლით. persistent-ებისთვის ყოველი სესია მთელ საათებამდე დაამრგვალეთ და თვიურ ჭერზე გაჩერდით.
ყველა წესი, კვოტა და ბიუჯეტის API არის sandbox-ების ლიმიტებსა და ბილინგში; ზემოთ გამოყენებული გამოძახებები — SDK-ის ცნობარში. თუ გაინტერესებთ, რეალურად რას ქირაობთ წამობრივად, Firecracker microVM მარტივ ენაზე ამას ხსნის, ხოლო რა სჭირდებათ რეალურად AI აგენტებს ინფრასტრუქტურისგან აჩვენებს, რატომ არის ბილინგის მოდელი ასეთი მნიშვნელოვანი, როცა მანქანებს პროგრამა ქმნის და არა ადამიანი.
კომენტარები
ჯერ არ არის კომენტარები. იყავით პირველი.