รัน AutoGPT บน custom OpenAI base URL
Updated 2026-07-30
AutoGPT Classic อ่าน OPENAI_API_BASE_URL จาก .env แล้วส่งตรงไปยัง OpenAI client เป็น base_url ตั้งค่าเป็น https://api.apisrouter.com/v1 ตั้ง key เดียว แล้ว traffic ของ SMART_LLM และ FAST_LLM ของ agent จะ route ผ่าน endpoint ที่วัดผลได้ตัวเดียว
คำตอบสั้น ๆ: สองบรรทัดใน .env
.env.template ของ AutoGPT Classic ระบุ OPENAI_API_BASE_URL ว่าเป็น "Custom url for the OpenAI API, useful for connecting to custom backends" และโค้ด provider เดินสายมันตรงเข้า client เลย: คลาส OpenAICredentials อ่าน api_base จากตัวแปรนั้นแล้วส่งเป็น base_url ดังนั้นการ override คือการลบ comment ออกหนึ่งบรรทัดแล้วตั้งค่า key: OPENAI_API_BASE_URL เป็น https://api.apisrouter.com/v1 และ OPENAI_API_KEY เป็น key ของ gateway มีข้อควรระวังเรื่องขอบเขตก่อนอื่นใด: สิ่งนี้ใช้กับ AutoGPT Classic ซึ่งเป็น autonomous agent ที่อยู่ใต้ classic/original_autogpt ใน repo ส่วน AutoGPT Platform ที่ใหม่กว่า (visual builder) จัดการ credential ของโมเดลต่อ block ผ่าน backend ของตัวเอง ตัวแปร environment นี้ไม่ใช่วิธีตั้งค่ามัน
OPENAI_API_BASE_URL=https://api.apisrouter.com/v1
OPENAI_API_KEY=sk-APIsRouter-...
SMART_LLM=gpt-5.4
FAST_LLM=gpt-5.4-miniAutoGPT Classic route การเรียกโมเดลอย่างไร
AutoGPT (Significant-Gravitas บน GitHub มีดาวประมาณ 185K มากที่สุดในบรรดา agent repo ที่มีอยู่) เป็นผู้บุกเบิก autonomous loop: agent วางแผน เลือก action ทำ action ประเมินผล แล้วทำซ้ำจนกว่าเป้าหมายจะสำเร็จหรืองบประมาณจะหมด Classic แบ่งการใช้โมเดลออกเป็นสองช่อง SMART_LLM แบก turn การให้เหตุผลหลักของ agent และ FAST_LLM จัดการงานที่เบากว่า ค่าเริ่มต้นอยู่ใน config เป็น enum value ที่ override ได้จาก environment กลไก routing สะอาดอย่างผิดปกติสำหรับโปรเจกต์ที่เก่าขนาดนี้: OpenAICredentials.api_base เป็น UserConfigurable จาก OPENAI_API_BASE_URL และ get_api_access_kwargs() ส่งมันให้ OpenAI client เป็น base_url ทุก request ที่ agent ยิงผ่าน provider OpenAI ไม่ว่าจะเป็น turn วางแผน การตัดสินใจใช้ tool หรือการสรุป ล้วนไปที่ host ที่ตัวแปรนั้นระบุ ข้อจำกัดที่แยก AutoGPT ออกจากเครื่องมือแบบ freeform คือ: SMART_LLM และ FAST_LLM ถูก type เป็น ModelName enum ที่ตรวจสอบกับ model registry ที่ compile ไว้ใน agent ไม่ใช่สตริงอิสระ registry ของ build ล่าสุดครอบคลุมซีรีส์ GPT-5 ถึง gpt-5.4 พร้อมตระกูล 4.1, 4o และ o-series แต่กฎที่ใช้ได้จริงคือเลือกจากชื่อที่ enum ของ checkout คุณมีจริง ๆ แล้ว gateway จะได้รับ id นั้นเป๊ะ ๆ ดังนั้น id ต้องมีอยู่ในแคตตาล็อกด้วย gpt-5.4 และ gpt-5.4-mini ตอบโจทย์ทั้งสองฝั่งวันนี้
ตั้งค่าแบบเต็ม: .env ในไดเรกทอรีที่ถูกต้อง โมเดลจาก registry
คัดลอก .env.template เป็น .env ในไดเรกทอรี classic/original_autogpt ลบ comment ออกแล้วตั้งค่าสี่ตัว แล้วรัน agent จากไดเรกทอรีนั้น .env ถูกโหลดสัมพันธ์กับ working layout ของ classic agent ดังนั้นไฟล์ที่ตั้งค่าไว้สวยงามใน root ของ repo จะไม่มีผลอะไรกับมันเลย การเลือกโมเดลคือการค้นหาใน registry ไม่ใช่การส่งผ่านตรง ๆ การตั้ง SMART_LLM เป็น id ที่ enum ไม่มีจะทำให้ validation ล้มเหลวตั้งแต่ startup ก่อนที่ request ใดจะถูกยิงออกไป ซึ่งอย่างน้อยก็ล้มเหลวแบบดัง ๆ ผลที่ตามมาคือ id ของ Claude ไม่สามารถเรียกใช้ผ่านเส้นทางนี้ได้เลย: Classic มี native Anthropic provider แยกต่างหาก (ANTHROPIC_API_KEY) สำหรับชื่อ enum เหล่านั้น และ provider นั้นไม่อ่าน OPENAI_API_BASE_URL ถ้าเป้าหมายของคุณคือ key เดียวผ่าน endpoint เดียว ให้เก็บทั้งสองช่องไว้บนชื่อ registry ของ OpenAI ที่ gateway เสิร์ฟ วินัยเรื่องงบประมาณยังคงสำคัญ autonomous loop ขึ้นชื่อเรื่องการใช้ token แบบไม่มีใครดูแล และการ reroute ไม่ได้เปลี่ยนสิ่งนั้น มันแค่ทำให้วัดผลได้ การตั้งค่างบประมาณของ Classic เองยังคุ้มค่าที่จะตั้ง และมุมมอง usage ต่อ key ให้บัญชีภายนอกต่อการรันแก่คุณ
cd classic/original_autogpt
cp .env.template .env
# edit .env:
# OPENAI_API_BASE_URL=https://api.apisrouter.com/v1
# OPENAI_API_KEY=sk-APIsRouter-...
# SMART_LLM=gpt-5.4
# FAST_LLM=gpt-5.4-mini
./autogpt.sh run # or: poetry run autogpt runเลือก SMART_LLM และ FAST_LLM
การเปรียบเทียบที่ซื่อตรงคือต่อเป้าหมาย ไม่ใช่ต่อ call: ให้ agent ทำเป้าหมายเดียวกันภายใต้ SMART_LLM สองตัวเลือก แล้วเปรียบเทียบ token รวมและคุณภาพผลลัพธ์ใน usage log autonomous agent เป็น workload เดียวที่โมเดลที่แข็งแกร่งกว่ามักชนะเรื่องต้นทุนรวมอย่างสม่ำเสมอ
- SMART_LLM คือดุลพินิจของ agent มันตัดสินว่าจะทำอะไรต่อในทุก loop iteration และการตัดสินใจที่แย่ไม่ได้แค่เสีย call เดียว แต่จะแตกกิ่งเป็น call ที่เสียเปล่าทั้งต้นไม้ gpt-5.4 คือคู่ที่แข็งแกร่งที่สุดที่ทั้ง registry และแคตตาล็อกรองรับสำหรับช่องนี้ในวันนี้
- FAST_LLM ดูดซับปริมาณงานเชิงกลไก gpt-5.4-mini เก็บ call สนับสนุนของ loop ไว้ที่เศษเสี้ยวเล็ก ๆ ของราคาช่อง smart ซึ่งสำคัญเพราะการรันแบบ autonomous คูณทุกอย่าง
- ต้านทานสิ่งล่อใจที่จะรัน FAST_LLM เป็นช่อง smart เพื่อประหยัดเงิน: autonomous loop ทบต้นคุณภาพการตัดสินใจ ดังนั้น planner ที่อ่อนแอกว่ามักมีต้นทุน token รวมมากกว่าที่ประหยัดได้ต่อ call
- ชื่อ registry เปลี่ยนไปตาม checkout หลัง pull เวอร์ชันใหม่ ให้ตรวจสอบซ้ำว่าชื่อที่คุณตั้งค่าไว้ยัง validate ผ่านอยู่ไหม การเปลี่ยนชื่อ enum จะล้มเหลวตั้งแต่ startup ด้วย error ที่ชัดเจน ซึ่งดีกว่าการตกกลับแบบเงียบ ๆ
จ่ายตามการใช้งาน · ถูกกว่าราคาทางการ
Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.
| โมเดล | ราคาทางการ | ราคาของเรา |
|---|---|---|
| GPT-5.4 | $2.50 / $15.00 per M | $2.00 / $12.00 per M |
| GPT-5.4 mini | $0.75 / $4.50 per M | $0.60 / $3.60 per M |
| GPT-5.5 | $5.00 / $30.00 per M | $4.00 / $24.00 per M |
| GPT-5.6 Sol | $5.00 / $30.00 per M | $4.00 / $24.00 per M |
รูปแบบความล้มเหลวเฉพาะของ AutoGPT
กับดักชื่อตัวแปร เครื่องมือสามตัวต่างกันใช้การสะกดสามแบบ: mem0 อ่าน OPENAI_BASE_URL, Aider อ่าน OPENAI_API_BASE และ AutoGPT Classic อ่าน OPENAI_API_BASE_URL ความเคยชินจากเครื่องมืออื่นทิ้งตัวแปรที่ผิดไว้ AutoGPT จะเมินมันอย่างเงียบ ๆ และ request ยังคงไหลไปที่ api.openai.com บน OPENAI_API_KEY ที่มีอยู่ ถ้า request ไม่ปรากฏใน usage log ของ gateway ให้ตรวจสอบตรงนี้ก่อน การปฏิเสธของ enum ตั้งแต่ startup SMART_LLM หรือ FAST_LLM ที่ตั้งเป็น id นอก registry ที่ compile ไว้จะทำให้ validation ล้มเหลวก่อน agent จะรัน นี่คือพฤติกรรมที่ถูกต้อง แต่มันทำให้คนที่มาจากเครื่องมือแบบ freeform ที่ทุกสตริงถูกส่งผ่านตรง ๆ แปลกใจ error นี้หมายความว่า "เลือกชื่อ registry" ไม่ใช่ "endpoint ล่ม" ชื่อ Claude route แบบ native ชื่อ enum ของ Anthropic จะผ่าน Anthropic provider และ ANTHROPIC_API_KEY ข้าม OPENAI_API_BASE_URL ไปเลย ถ้าคุณคาดว่าทุก request จะอยู่ใน usage log เดียวแต่เห็นแค่บางส่วน traffic ที่หายไปอยู่บน native provider path .env ที่ผิด classic agent โหลด .env ของไดเรกทอรีตัวเอง ไฟล์ที่ root ของ repo หรือ shell export ที่ถูกบัง shadow ด้วยค่า .env เก่า จะสร้างสถานะครึ่ง ๆ กลาง ๆ ที่งง เก็บค่าทั้งสี่ไว้ที่เดียว: classic/original_autogpt/.env ความคาดหวังเรื่อง Platform block ของ AutoGPT Platform จัดการ credential ใน backend ของตัวเอง การตั้งตัวแปร environment นี้ไม่ได้ reroute พวกมัน เส้นทางของหน้านี้คือของ Classic
ใครที่ route AutoGPT ผ่าน gateway
- นักพัฒนาที่ปลุก Classic กลับมาสำหรับการทดลองแบบ autonomous ที่ต้องการความหิว token อันโด่งดังของ loop นี้อยู่บนบัญชีต่อ key ที่วัดผลได้ตั้งแต่การรันแรก
- นักทดลองที่รันเป้าหมายยาวแบบไม่มีคนดูแล ซึ่งการมองเห็นต่อ request ว่า agent ทำอะไรกับงบประมาณจริง ๆ สำคัญพอ ๆ กับยอดรวม
- ทีมที่รวม endpoint เดียวข้ามเครื่องมือหลายตัว ที่ AutoGPT เป็นแค่ .env อีกไฟล์ที่ชี้ไปที่ key เดียวกัน ไม่ใช่บัญชีแยกต่างหาก
- ผู้ใช้ที่จับคู่ดุลพินิจของ gpt-5.4 กับปริมาณของ gpt-5.4-mini ราคาต่อ token โดยไม่มีการสมัครสมาชิกผูกกับช่องไหนเลย
- นักพัฒนาที่ไม่มีสิทธิ์เข้าถึงระบบเก็บเงินของ vendor รายหนึ่ง การเข้าถึงแบบเติมเงินโดยไม่ต้องใช้บัตรตัดการพึ่งพาการสมัครต่อ provider ออกไป
ตรวจสอบ endpoint และ debug การรันแรก
ยืนยันว่า gateway เสิร์ฟ id ที่คุณใส่ใน SMART_LLM และ FAST_LLM เป๊ะ ๆ agent ส่งสตริงเหล่านั้นตามตัวอักษร ลำดับการรันครั้งแรก: validation error ที่ระบุชื่อโมเดลของคุณตอน startup หมายความว่า id ไม่มีใน registry ของ build คุณ ให้เลือกชื่อ registry อื่น 401 หมายความว่า OPENAI_API_KEY ใน .env ของ classic agent เองไม่ใช่ key ของ gateway error model-not-found จาก gateway หมายความว่าชื่อ registry ที่คุณเลือกไม่มีในแคตตาล็อก ให้ปรับสองฝั่งให้ตรงกัน และการรันที่ทำงานได้แต่ไม่เคยปรากฏใน usage log หมายความว่าตัวแปร base URL สะกดผิดหรืออยู่ผิดไฟล์ และ traffic กำลังไปที่ host ค่าเริ่มต้น เมื่อ loop กำลังรัน ให้เฝ้าดูมุมมองต่อ request ระหว่างเป้าหมายแรกแทนที่จะดูหลังจากนั้น autonomous agent เผยพฤติกรรม token ของมันในไม่กี่นาทีแรก และการจับ loop ที่หลุดควบคุมได้เร็วมีค่ามากกว่าความต่างของราคาต่อ token ใด ๆ
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $OPENAI_API_KEY" | head -50คำถามที่พบบ่อย
ตัวแปร environment ตัวไหนที่ตั้งค่า custom base URL ให้ AutoGPT?
OPENAI_API_BASE_URL ใน .env ของ classic agent มีเอกสารระบุใน .env.template ว่าเป็น URL กำหนดเองสำหรับเชื่อมต่อ backend ที่ OpenAI-compatible และ provider ส่งมันให้ OpenAI client เป็น base_url สังเกตการสะกด: มันต่างจากตัวแปรที่เครื่องมืออื่นใช้
AutoGPT Classic รันโมเดล Claude ผ่าน base URL นี้ได้ไหม?
ไม่ได้ SMART_LLM และ FAST_LLM ตรวจสอบกับ model registry ที่ compile ไว้ของ AutoGPT และชื่อ Anthropic route ผ่าน native Anthropic provider แยกต่างหาก ซึ่งไม่อ่าน OPENAI_API_BASE_URL สำหรับ key เดียวผ่าน endpoint เดียว ให้เก็บทั้งสองช่องไว้บนชื่อ registry ของ OpenAI ที่ gateway เสิร์ฟ
SMART_LLM และ FAST_LLM ตั้งค่าเป็นอะไรได้บ้าง?
ชื่อจาก ModelName enum ใน checkout ของคุณ: build ล่าสุดครอบคลุมซีรีส์ GPT-5 ถึง gpt-5.4 บวกตระกูล 4.1, 4o และ o-series สตริงที่ไม่รู้จักจะ validation ล้มเหลวตั้งแต่ startup gpt-5.4 และ gpt-5.4-mini เป็นตัวเลือกที่มั่นคงซึ่งมีอยู่ทั้งใน registry และแคตตาล็อก
การตั้งค่านี้ใช้กับ AutoGPT Platform ด้วยไหม?
ไม่ใช้ Platform (ครึ่ง visual builder ของ repo) จัดการ credential ของโมเดลต่อ block ใน backend ของตัวเอง OPENAI_API_BASE_URL ตั้งค่า AutoGPT Classic ซึ่งเป็น autonomous agent ใต้ classic/original_autogpt
ฉันยังต้องมีบัญชี OpenAI อยู่ไหมเมื่อตั้งค่า base URL แล้ว?
ไม่ต้อง เมื่อ OPENAI_API_BASE_URL ชี้ไปที่ gateway แล้ว OPENAI_API_KEY จะถือ key ของ gateway และไม่มี request ใดไปที่ host ของ OpenAI ชื่อตัวแปรเป็นเรื่องประวัติศาสตร์ credential คือสิ่งที่ endpoint หลัง base URL ยอมรับ
การรัน AutoGPT หนึ่งครั้งมีค่าใช้จ่ายเท่าไหร่?
เป็น workload ที่คาดเดาได้น้อยที่สุดในรายการนี้: loop ตัดสินใจจำนวน call ของตัวเอง ดังนั้นต้นทุนขยายตามความยากของเป้าหมายและความถี่ที่ agent แก้แผนตัวเอง ตั้งค่าควบคุมงบประมาณของ agent เฝ้าดูมุมมอง usage ต่อ key แบบสดในการรันช่วงแรก และใช้ token รวมต่อเป้าหมายเป็นตัวชี้วัด