−25%

cho Windows trả theo năm, đến 31/10. Xem các gói

EQVPS
Bắt đầu

Sandbox cho agent AI: chạy code không đáng tin trong microVM khởi động trong một giây

Tác tử của bạn viết ra mã chưa từng chạy. Sandbox trên Firecracker microVM cho đoạn mã đó một máy Linux dùng một lần, không truy cập được máy chủ, khóa hay mạng của bạn — khởi động trong khoảng một giây, tính tiền theo giây.

Tác tử nào viết mã thì sớm muộn cũng phải chạy nó. Đó là lý do tồn tại của loại tác tử này — và cũng là phần khiến người ta lo. Mô hình vừa sinh ra một script mà chính nó chưa từng chạy: cài những gói chẳng ai kiểm tra và đụng vào những tệp chẳng ai liệt kê. Chạy thứ đó cạnh khóa SSH và tệp .env production của bạn là một ván cược bạn đặt nhiều lần mỗi ngày.

Sandbox khiến ván cược đó trở nên rẻ. Đoạn mã có một máy Linux riêng trong vài giây hoặc vài phút, rồi máy biến mất.

Tác tử nhận được gì

Mỗi sandbox là một Firecracker microVM: kernel riêng, hệ thống tệp riêng, không gian tên mạng riêng. Nó không phải container dùng chung kernel với bạn, cũng không phải một thư mục trên máy chủ của bạn. Nó khởi động trong khoảng một giây, điều này quan trọng khi tác tử tạo một sandbox cho mỗi tác vụ thay vì mỗi ngày một cái.

Bên trong có Python 3.12 kèm pip, Node.js 22 kèm npm, bash, git và curl. Internet chiều ra hoạt động — tác tử có thể chạy pip install pandas hoặc clone một repo. Chiều vào thì không: không cổng mở, không SSH. Lệnh, tệp và đầu ra đều đi qua API của chúng tôi, và đó là cánh cửa duy nhất.

Ba cách kết nối:

  • MCP — nếu tác tử của bạn sống trong Claude, Cursor, Cline hay bất kỳ client nào hỗ trợ MCP, nó sẽ có công cụ sandbox bên cạnh công cụ VPS. Bạn không cần viết mã.
  • SDK Python hoặc TypeScript — pip install eqvps hoặc npm i @eqvps/sdk, sau đó tạo, chạy, xóa.
  • REST thuần — mô tả trong tài liệu sandbox và đặc tả OpenAPI.

Một vòng lặp tối giản bằng Python:

from eqvps import Sandbox

with Sandbox.create(tariff="small") as sb:
    sb.upload("/root/task.py", agent_generated_code)
    result = sb.exec("python3 /root/task.py", timeout=55)
    print(result.exit_code, result.stdout[-2000:])
# the sandbox is deleted here, also if anything above raised

Mã thoát khác 0 trả về như một kết quả bình thường, không phải ngoại lệ. Đúng thứ bạn cần khi tác tử phải đọc traceback rồi thử lại.

Những trường hợp nguy hiểm và chuyện gì xảy ra với chúng

Một gói độc hại hoặc đơn giản là hỏng. Nó chạy trong một VM không chứa gì của bạn. Xóa sandbox là nó biến mất.

Bí mật. Đừng đặt khóa API chính của bạn vào mã do tác tử viết. Nếu tác vụ thật sự cần khóa, hãy truyền nó dưới dạng biến môi trường của sandbox: giá trị được lưu mã hóa, không bao giờ ghi vào log, và API chỉ trả về tên biến.

Vòng lặp vô tận. Mỗi lệnh dừng sau 55 giây, trừ khi bạn chạy nó dưới dạng tác vụ nền. Sandbox tạm thời nhàn rỗi sẽ tự xóa sau thời gian chờ (mặc định 5 phút). Hạn mức chi tiêu ngày hoặc tháng sẽ chặn việc tạo sandbox mới khi tác tử đã tiêu đủ cho hôm nay.

Rò rỉ dữ liệu. Ở đây phải nói thẳng: Internet chiều ra luôn mở, vì thiếu nó pip install không chạy. Sandbox bảo vệ máy của bạn; nó không ngăn mã gửi ra Internet mọi thứ mà mã đọc được bên trong sandbox. Nên quy tắc rất đơn giản: chỉ đưa vào sandbox những gì bạn chấp nhận mất.

Chọn gói

GóivCPU / RAMMỗi giờPhù hợp cho
micro0.25 / 512 MB$0.0165script chạy một lần, kiểm tra dữ liệu
small0.5 / 1 GB$0.033phần lớn mã của tác tử, pip install
standard1 / 2 GB$0.066pandas, bộ kiểm thử
plus2 / 4 GB$0.132cài đặt nặng (torch), build

Tính tiền theo giây, tối thiểu 60 giây, từ cùng số dư trả trước với VPS của chúng tôi. Một tác vụ điển hình của tác tử — tạo, cài hai gói, chạy, xóa — xong trong chưa đầy một phút trên small, nên bị tính mức tối thiểu 60 giây: khoảng $0.0006. Thật lòng mà nói, với tác tử chạy mã vài trăm lần mỗi ngày, hóa đơn sandbox là dòng nhỏ nhất trong ngân sách; token LLM đắt hơn nhiều.

Khi nào sandbox không phải công cụ phù hợp

Nếu tác tử cần phục vụ thứ gì đó — một ứng dụng web, bộ nhận webhook, một bot lắng nghe tin nhắn — sandbox không làm được, vì từ bên ngoài không gì chạm tới nó. Một dịch vụ cần chạy hàng tháng trời cũng vậy. Đó là việc của VPS: xem VPS cho tác tử AI. Cách chia phổ biến: tác tử sống trên một VPS nhỏ và tạo sandbox cho mỗi đoạn mã nó chưa từng thấy.

Giới hạn còn lại là tính toán nặng kéo dài. Một sandbox giữ CPU ở mức tối đa hơn 15 phút bị coi là lạm dụng, nên các tác vụ tính toán dài nên chạy trên máy chủ thuê theo tháng.

Bắt đầu

Tạo tài khoản, lấy token và chạy sandbox đầu tiên — hướng dẫn kết nối đi qua từng bước, và tài khoản mới được $1 thời gian sandbox để dùng thử. Sau đó trỏ tác tử tới trang sandbox hoặc các công cụ MCP, và để nó phá thoải mái ở nơi phá hỏng không tốn đồng nào.

Từng bước: tác vụ agent đầu tiên trong sandbox. Liên quan: chạy test CI tách biệt, đánh giá LLM và review code và kiểm tra PR.

Sẵn sàng triển khai? Thanh toán bằng crypto, không KYC — trực tuyến trong khoảng một phút.

Triển khai ngay →

FAQ

Sao không chạy mã của tác tử ngay trên máy chủ của tôi?

Vì chính tác tử cũng không biết mã đó làm gì. Một gói pip có script cài đặt độc hại, một vòng lặp làm đầy ổ đĩa, một lệnh đọc ~/.ssh — trên máy của bạn, mỗi thứ đều chạm được tới khóa và dữ liệu. Trong sandbox, tệ nhất chỉ là một sandbox hỏng mà bạn xóa đi.

Bên trong sandbox có gì?

Linux với Python 3.12 và pip, Node.js 22 và npm, bash, git và curl. Internet chiều ra hoạt động, nên pip install, npm install và git clone đều ổn. Không có cổng chiều vào, không có SSH — lệnh và tệp đi qua API, SDK hoặc MCP.

Một lệnh được chạy bao lâu?

Tối đa 55 giây mỗi lần gọi. Việc gì lâu hơn — script huấn luyện, bộ kiểm thử dài — sẽ chạy dưới dạng tác vụ nền và bạn đọc dần đầu ra. Tác vụ có thể chạy chừng nào sandbox còn sống (tối đa 24 giờ với sandbox tạm thời).

Chi phí bao nhiêu?

Bạn trả cho vCPU và RAM của gói theo giây, tối thiểu 60 giây. Gói nhỏ nhất (micro) là $0.0165 mỗi giờ; small, đủ cho phần lớn mã của tác tử, là $0.033. Tiền trừ từ cùng số dư trả trước với VPS, và tài khoản mới được $1 thời gian sandbox để dùng thử.

Tác tử có tự tạo sandbox được không?

Được. Qua MCP, tác tử nhận trực tiếp các công cụ sandbox; từ mã thì chỉ ba dòng với SDK Python hoặc TypeScript. Bạn có thể đặt hạn mức chi tiêu theo ngày hoặc tháng để một tác tử bị kẹt vòng lặp không đốt hết số dư.

Bình luận

Chưa có bình luận nào. Hãy là người đầu tiên.

Để lại bình luận

Bình luận được kiểm duyệt trước khi hiển thị.