เว็บสเครเปอร์ทำตามคำสั่งที่คุณเขียน เอเจนต์เบราว์เซอร์ ตัดสินใจเอง: มันดูหน้าที่เรนเดอร์แล้ว ให้เหตุผลว่าจะทำอะไรต่อ แล้วคลิก พิมพ์ และเลื่อนเบราว์เซอร์จริงเพื่อไปถึงจุดนั้น เครื่องมืออย่าง browser-use, Skyvern และ computer-use ของ Anthropic เปลี่ยน LLM ให้เป็นสิ่งที่ปฏิบัติการเบราว์เซอร์เหมือนคน — กรอกฟอร์ม เดินตามโฟลว์ อ่านผลลัพธ์ กู้คืนเมื่อเลย์เอาต์เปลี่ยน
มันทำงานได้ก็ต่อเมื่อเบราว์เซอร์รันตลอดเวลา บนแล็ปท็อปมันหยุดทันทีที่คุณปิดฝา หน้านี้ว่าด้วยการวางเอเจนต์เบราว์เซอร์บนเซิร์ฟเวอร์ ขนาดถูกต้อง เพื่อให้ปฏิบัติการตลอดวันตลอดคืน
สเครเปอร์ vs เอเจนต์ — เลือกเครื่องมือให้ถูก
ซื่อสัตย์ว่าคุณกำลังสร้างอันไหน เพราะแต่ละอันต้องการสิ่งต่างกัน:
- สเครเปอร์ (httpx, Scrapy) ดึง URL ที่รู้แล้วและดึงฟิลด์ตายตัว ตายตัว เบา ถูก ถ้านั่นคืองานของคุณ หน้าที่ถูกคือคู่มือเว็บสเครปิง — อย่าจ่ายให้เบราว์เซอร์ที่คุณไม่ต้องการ
- เอเจนต์เบราว์เซอร์ เรนเดอร์หน้าใน Chromium จริงและให้ LLM ตัดสินใจทุกการกระทำ มันจัดการไซต์ที่สเครเปอร์ทำไม่ได้ — แอปไดนามิก เลย์เอาต์คาดเดาไม่ได้ โฟลว์หลายขั้น — แลกกับเครื่องที่หนักกว่าและการเรียกโมเดลทุกขั้น
หน้านี้ว่าด้วยแบบที่สอง
เครื่องต้องการอะไรจริง ๆ
ลูปเอเจนต์เองเล็กจิ๋ว สิ่งที่กินทรัพยากรคือ เบราว์เซอร์ headless
- RAM คือข้อจำกัด Chromium headless ~300-500 MB และทุกแท็บหรือคอนเท็กซ์ที่เพิ่มบวก 100-200 MB บวกรันไทม์ของคุณ เอเจนต์หนึ่งตัวที่ขับเบราว์เซอร์หนึ่งตัวสบายบน Small ($8/เดือน — 4 vCPU, 4 GB) การรันหลายคอนเท็กซ์เบราว์เซอร์พร้อมกันดันคุณไป Medium ($12)
- ไม่มี GPU โมเดลรันที่ผู้ให้บริการของคุณ (Anthropic/OpenAI) เซิร์ฟเวอร์ทำการจัดวางและเรนเดอร์ นั่นคือ CPU และ RAM
- NAT ก็พอ เอเจนต์ทำแต่การเรียกขาออก — ไปยังไซต์ที่มันปฏิบัติการและ API ของโมเดล IP เฉพาะมีไว้สำหรับบริการขาเข้าเท่านั้น
การตั้งค่า
# Ubuntu 24.04
apt update && apt install -y python3-venv git
python3 -m venv ~/agent && source ~/agent/bin/activate
# browser-use + Chromium สำหรับ Playwright
pip install browser-use
playwright install --with-deps chromium
ลูปขั้นต่ำอ่านคีย์โมเดลจากสภาพแวดล้อม ไม่เคยฮาร์ดโค้ดในโค้ด:
# run.py
import os, asyncio
from browser_use import Agent
from browser_use.llm import ChatAnthropic
async def main():
agent = Agent(
task="Open the status page and report which services are down.",
llm=ChatAnthropic(model="claude-sonnet-4-5", api_key=os.environ["ANTHROPIC_API_KEY"]),
)
await agent.run()
asyncio.run(main())
ให้มันมีชีวิตข้ามการแครชและรีบูตด้วยเซอร์วิส systemd — แพตเทิร์นเดียวกับที่ทำให้เอเจนต์ใด ๆ รัน 24/7 ด้วย Restart=always และคีย์โมเดลใน EnvironmentFile ไม่ใช่ในยูนิต
เฝ้าดู RAM เอเจนต์เบราว์เซอร์ที่ไม่เคยปิดแท็บจะค่อย ๆ กินเครื่อง — ปิดหน้าและคอนเท็กซ์เมื่องานจบและจำกัดการทำงานพร้อมกัน Chromium ที่รั่วคือสาเหตุที่พบบ่อยที่สุดที่เอเจนต์แบบนี้ล้ม
ส่วนที่เป็นของเราจริง ๆ: เอเจนต์เช่าเครื่องของตัวเองได้
ตรงนี้ EQVPS ต่างจากโฮสต์ทั่วไป ผ่านเซิร์ฟเวอร์ MCP ของเรา เอเจนต์ลงทะเบียนได้ เติมยอดคริปโตได้ และ order_vps — สั่งเครื่องใหม่เองได้ ไม่มีคนตอนชำระเงิน ดังนั้นเอเจนต์เบราว์เซอร์ที่ต้องการสภาพแวดล้อมสะอาดสำหรับรันหนึ่งครั้งก็จัดเตรียมเซิร์ฟเวอร์เองได้ ปฏิบัติการเบราว์เซอร์ และทำลายมันเมื่อเสร็จ — ทั้งหมดจากยอดชำระล่วงหน้า
จับคู่กับการชำระคริปโตไม่ต้อง KYC แล้วทั้งลูปอยู่นอกร่องรอยตัวตนใด ๆ: อีเมลเพื่อลงทะเบียน USDC หรือ USDT เพื่อชำระ root ในราวหนึ่งนาที
ข้อจำกัดที่ซื่อสัตย์
- CPU เท่านั้น ภูมิภาคเดียว (เยอรมนี) ดีสำหรับขับเบราว์เซอร์และเรียก API ถ้าคุณต้องการ GPU หรือภูมิภาคเฉพาะ รู้ไว้ก่อน
- ค่าโมเดลแยกต่างหาก ทุกขั้นคือการเรียกโมเดล บิล API ของเอเจนต์ช่างพูดมักบดบังเซิร์ฟเวอร์ $8 เครื่องคือส่วนที่ถูก
- เคารพว่าคุณชี้มันไปที่ไหน เอเจนต์เบราว์เซอร์ล็อกอิน ส่ง และซื้อได้ ชี้มันไปเฉพาะไซต์ที่คุณมีสิทธิ์ปฏิบัติการ การละเมิด ฉ้อโกง และการปฏิเสธการให้บริการละเมิดนโยบายการใช้งานที่ยอมรับได้
ภายในนั้น เอเจนต์เบราว์เซอร์บนเซิร์ฟเวอร์ที่เปิดตลอดของตัวเองเป็นแพตเทิร์นที่มีประโยชน์จริง — มันทำงานขณะคุณหลับ เลือกแพ็กเกจ ชำระด้วยคริปโต และรันหนึ่งตัวในหนึ่งนาที ถ้างานของคุณคือการดึงข้อมูลตายตัวมากกว่าการให้เหตุผล คู่มือเว็บสเครปิง เป็นเส้นทางที่ถูกและง่ายกว่า
ความคิดเห็น
ยังไม่มีความคิดเห็น เป็นคนแรกสิ