โซลูชัน · เอเจนต์เขียนโค้ด
VPS for OpenHands ภาษาไทย: VPS สำหรับ OpenHands
OpenHands คือเอเจนต์เขียนโค้ดอัตโนมัติ: ให้ repository และงาน แล้วมันจะแก้ไข รัน ทดสอบ และเปิด pull request เอง โดยใช้โมเดลที่คุณเลือกผ่าน API key README ของโปรเจกต์ระบุว่าวิธีที่ทรงพลังที่สุดในการรันคือบนเซิร์ฟเวอร์ในคลาวด์ และคำเตือนของโปรเจกต์ระบุว่าเอเจนต์มีสิทธิ์เข้าถึงเครื่องที่รันอยู่อย่างเต็มที่ ทั้งสองข้อชี้ไปที่คำตอบเดียวกัน: เครื่องที่ไม่ใช่แล็ปท็อปของใคร คู่มือเซิร์ฟเวอร์ของโปรเจกต์ระบุว่า 2 vCPU และ 4 GB เพียงพอสำหรับผู้ใช้หนึ่งคน BD-8 ราคา $12.90 ต่อเดือนให้สเปกสองเท่าในราคาต่ำกว่าเครื่อง 4 GB ที่อื่น
สิ่งที่ต้องใช้
ซอฟต์แวร์ตามเอกสาร ขนาดระบุแหล่งที่มา
ซอฟต์แวร์และแนวทางด้านความปลอดภัยมาจากเอกสารของโปรเจกต์เอง หากโปรเจกต์ไม่ได้เผยแพร่ข้อมูลฮาร์ดแวร์ ขนาดจะระบุว่าเป็นตัวเลขของใคร
จาก README, SELF_HOSTING.md และเอกสารของ OpenHands
- “2 vCPU / 4 GB RAM เพียงพอสำหรับผู้ใช้คนเดียว” (คู่มือ VM ของโปรเจกต์) เอกสารระบุว่าต้องการ “โปรเซสเซอร์รุ่นใหม่และ RAM อย่างน้อย 4GB”
- การติดตั้ง: Node.js 24 ขึ้นไปและ uv จากนั้น
npx @openhands/agent-canvas --publicคำสั่งเดียวจะเริ่ม agent server, automation backend และเว็บแอปหลัง ingress บน 127.0.0.1:8000 - ตั้งค่า
LOCAL_BACKEND_API_KEYก่อนเริ่มครั้งแรก: ในโหมด public ทุกการเรียก API ต้องแนบคีย์นี้ และเว็บแอปจะขอคีย์ก่อนสิ่งอื่นใด ปิดไฟร์วอลล์ทุกอย่างยกเว้น SSH ก่อน คู่มือระบุให้ทำก่อนที่เอเจนต์จะรันเป็นครั้งแรก - API key จากผู้ให้บริการโมเดล: เอกสารระบุว่า OpenHands ต้องใช้สำหรับโมเดลส่วนใหญ่ Docker ไม่บังคับ และจำเป็นเฉพาะเมื่อคุณต้องการแยกแต่ละบทสนทนาไว้ในคอนเทนเนอร์ของตัวเอง ไม่ต้องใช้ GPU เว้นแต่คุณโฮสต์โมเดลเอง
ขนาด (ตัวเลขของโปรเจกต์ ตามด้วยของเรา)
| ปริมาณงาน | vCPU | RAM |
|---|---|---|
| ผู้ใช้หนึ่งคน โมเดลแบบโฮสต์ เอเจนต์บนโฮสต์ (ทางการ)ตัวเลขตามคู่มือเอง agent server รันบนเครื่องโดยตรง ดังนั้นตัวเครื่องจึงเป็น sandbox | 2 | 4 GB |
| ผู้ใช้หนึ่งหรือสองคน sandbox ของ Docker ต่อหนึ่งบทสนทนาของเรา แต่ละบทสนทนาได้คอนเทนเนอร์ของตัวเอง การติดตั้ง dependency การ build และชุดทดสอบรันภายในคอนเทนเนอร์เหล่านั้น | 4 | 8 GB |
| เซิร์ฟเวอร์เอเจนต์ที่ใช้ร่วมกันในทีม หลายเอเจนต์พร้อมกันของเรา เอเจนต์หลายตัวทำงานคู่ขนานบนหลาย repository แต่ละตัวคอมไพล์บางอย่างอยู่ | 8 | 24 GB |
แพ็กเกจที่เหมาะสม
5 เครื่อง ราคาปัจจุบัน
เครื่องที่เหมาะและถูกที่สุดก่อน ราคาเป็นราคาวันนี้ ต่อเดือน อ่านจากแค็ตตาล็อก
- BD-8$12.90/เดือน
4 vCPU · 8 GB · ดิสก์ 100 GB · 32 TB
ถูกที่สุดที่มีพื้นที่สำหรับ build และทดสอบ. 4 vCPU, 8 GB, 100 GB และปริมาณรับส่งข้อมูล 32 TB ในราคาต่ำกว่าเครื่อง 4 GB ที่อื่น เป็นสองเท่าของตัวเลขในคู่มือ ชุดทดสอบจะได้ประโยชน์จากจำนวนคอร์
- U2-4-40$14.90/เดือน
2 vCPU · 4 GB · ดิสก์ 40 GB · Unmetered
ตรงตามตัวเลขในคู่มือ ไม่นับปริมาณทราฟฟิก อิสตันบูล. 2 vCPU / 4 GB / 40 GB ผู้ใช้หนึ่งคน โมเดลแบบโฮสต์ เอเจนต์รันบนโฮสต์ ทราฟฟิกไม่นับปริมาณสำหรับการโคลนและติดตั้งแพ็กเกจ
- BD-24$31.90/เดือน
8 vCPU · 24 GB · ดิสก์ 300 GB · 32 TB
8 vCPU / 24 GB สำหรับเซิร์ฟเวอร์เอเจนต์ของทีม. หลายเอเจนต์พร้อมกัน sandbox ของ Docker และ automation backend ที่รันตามกำหนดเวลา
- C2-4-80$37.90/เดือน
2 vCPU · 4 GB · ดิสก์ 80 GB · 3 TB
ตัวเลขตามคู่มือ ในหลายสิบเมือง. 2 vCPU / 4 GB / 80 GB เลือกเพราะเมือง และใช้ทีละหนึ่งบทสนทนา
- C4-8-160$75.90/เดือน
4 vCPU · 8 GB · ดิสก์ 160 GB · 3 TB
4 vCPU / 8 GB / 160 GB ในหลายสิบเมือง. ขนาดที่สบายพร้อมดิสก์สำหรับ checkout จำนวนมากและอิมเมจ Docker
ยังไม่มีพรีเซ็ตเริ่มต้นสำหรับ OpenHands: การติดตั้งคือห้าขั้นตอนด้านล่างที่คุณพิมพ์เอง ตามลำดับที่คู่มือของโปรเจกต์ระบุ ไฟร์วอลล์ก่อน คีย์ที่สอง เอเจนต์ที่สาม
การติดตั้ง
ห้าขั้นตอน ตามลำดับที่คู่มือของ OpenHands ระบุ
คู่มือระบุชัดเจนว่าไฟร์วอลล์ต้องมาก่อนการเริ่มครั้งแรก เพราะ agent server เข้าถึงเครื่องได้อย่างอิสระ และมีเพียงไฟร์วอลล์กับคีย์เท่านั้นที่กั้นระหว่างมันกับคนแปลกหน้า
- ไฟร์วอลล์ก่อน
ufw allow OpenSSH && ufw --force enableไม่เปิดขาเข้าใดๆ ยกเว้น SSH ingress (8000), agent server (18000), automation backend (18001) และ static server (3001) ต้องไม่สามารถเข้าถึงได้จากภายนอก คู่มือระบุไว้ด้วยถ้อยคำนั้น - Node.js 24 และ uv
apt-get install -y curl git curl -fsSL https://deb.nodesource.com/setup_24.x | bash - && apt-get install -y nodejs curl -LsSf https://astral.sh/uv/install.sh | shuv ใช้รัน agent server คู่มือติดตั้งด้วยตัวติดตั้งบรรทัดเดียวจาก astral.sh - สร้างคีย์ แล้วเริ่มในโหมด public
export LOCAL_BACKEND_API_KEY=$(openssl rand -base64 32); echo $LOCAL_BACKEND_API_KEY npx @openhands/agent-canvas --publicคัดลอกคีย์เก็บไว้ในที่ปลอดภัยก่อนดำเนินการต่อ โหมด public หมายความว่าเว็บแอปจะขอคีย์นี้จากคุณ สำหรับการใช้งานระยะยาว ใช้ systemd unit ของคู่มือที่/etc/systemd/system/agent-canvas.serviceโดยใส่Environment=LOCAL_BACKEND_API_KEY=…ไว้ จากนั้นsystemctl enable --now agent-canvas - เข้าถึงผ่าน SSH แล้วเพิ่มโมเดล
ssh -N -L 8000:127.0.0.1:8000 root@your-serverจากนั้นเปิด http://127.0.0.1:8000 วางคีย์ แล้วไปที่ Settings: เลือกผู้ให้บริการ LLM และโมเดล แล้ววาง API key ของผู้ให้บริการนั้น เริ่มบทสนทนาบน repository - โดเมน (ไม่บังคับ) ชี้ A record มาที่เซิร์ฟเวอร์ เปิดพอร์ต 80 และ 443,
apt-get install -y nginx certbot python3-certbot-nginxและใช้บล็อก nginx ของคู่มือที่พร็อกซีไปยัง 127.0.0.1:8000 พร้อมเฮดเดอร์ WebSocketcertbot --nginx -d canvas.example.com --redirectจะออกใบรับรองให้ หากต้องเปิด 443 สู่สาธารณะ คู่มือระบุว่าคีย์คือแนวป้องกันหลักของคุณ ดังนั้นควรใช้คีย์ที่ยาวและเก็บเป็นความลับ
พูดกันตรง ๆ
สิ่งที่เราจะซื้อจริงๆ
คู่มือระบุว่า 2 vCPU และ 4 GB เพียงพอสำหรับผู้ใช้หนึ่งคน ซื้อเครื่อง 8 GB ที่ราคาต่ำกว่าเครื่อง 4 GB แล้วปล่อยให้เอเจนต์คอมไพล์งาน
สำหรับเอเจนต์เขียนโค้ดของผู้ใช้หนึ่งคน
BD-8 · $12.90/เดือน
4 vCPU, 8 GB และ 100 GB ในราคา $12.90: เพียงพอสำหรับเซิร์ฟเวอร์เอเจนต์ รีโพสิทอรีที่เช็กเอาต์ไว้จำนวนหนึ่ง dependency ทั้งหมดของมัน และชุดทดสอบที่รันอยู่ขณะที่คุณดู โดยยังเหลือหน่วยความจำหากคุณเปิดใช้ Docker sandbox โมเดลอยู่ที่อื่น อยู่หลัง API key ดังนั้นเครื่องนี้ไม่ต้องใช้ GPU เลย และค่าใช้จ่ายที่สำคัญคือของผู้ให้บริการโมเดล C2-4-80 ในราคา $37.90 ตรงกับตัวเลขในคู่มือพอดีและมีให้บริการในหลายสิบเมือง หากเมืองสำคัญกว่าจำนวนคอร์
คำถาม