สิ่งที่คุณกำลังตั้งค่า
หากคุณมาถึงที่นี่โดยการพิมพ์ openwebui วิธีแชท n8n คุณอาจกำลังพยายามทำสองสิ่งที่เกี่ยวข้องกัน: พูดคุยกับโมเดลใน Open WebUI และเรียกโมเดลเดียวกันจากเวิร์กโฟลว์ n8n เครื่องมือทั้งสองสามารถชี้ไปที่เซิร์ฟเวอร์ใดๆ ที่ปฏิบัติตามรูปแบบการเสร็จสิ้นการแชทของ OpenAI ดังนั้นบัญชีหนึ่งบัญชีจึงครอบคลุมทั้งสองอย่าง
Open WebUI เป็นอินเทอร์เฟซแชทที่โฮสต์เอง n8n เป็นเครื่องมืออัตโนมัติเวิร์กโฟลว์ที่คุณต่อโหนดเข้าด้วยกัน API ที่อยู่เบื้องหลังนั้นเหมือนกันในกรณีแต่ละกรณี:
- Base URL:
https://api.nofilteraichat.com/v1 - รหัสโมเดล:
uncensored - การตรวจสอบสิทธิ์: ใช้หัวเรื่อง
Authorization: Bearerพร้อมคีย์ของคุณ
คุณต้องมีคีย์ก่อน หน้า คีย์ API จะแนะนำขั้นตอนการสมัครและเครดิตทดลองใช้ $0.50 แบบคลิกเดียว ซึ่งเพียงพอสำหรับการทดสอบทุกอย่างด้านล่าง
ส่วนที่หนึ่ง: Open WebUI
ตัวเลือก A: หน้าจัดการผู้ดูแลระบบ
หาก Open WebUI ทำงานอยู่แล้ว ให้เข้าสู่ระบบในฐานะผู้ดูแลระบบและไปที่ Admin Settings จากนั้น Connections เพิ่มการเชื่อมต่อ API แบบ OpenAI ใหม่ด้วยค่าเหล่านี้:
- URL:
https://api.nofilteraichat.com/v1 - Key: คีย์ API ของคุณ
- บันทึก แล้วใช้ปุ่มตรวจสอบหากเวอร์ชันของคุณมีปุ่มนี้
ชื่อเมนูอาจเปลี่ยนเล็กน้อยในแต่ละเวอร์ชัน ดังนั้นให้มองหาส่วนที่ระบุการเชื่อมต่อแบบ OpenAI หลังจากบันทึกแล้ว ให้เริ่มแชทใหม่และเปิดตัวเลือกโมเดล โมเดล uncensored ควรปรากฏขึ้น เนื่องจาก Open WebUI โหลดรายการจาก GET /v1/models
ตัวเลือก B: ตัวแปรสภาพแวดล้อมใน Docker
หากคุณเริ่มต้นใหม่ ให้ส่งค่าการตั้งค่าเมื่อเริ่มคอนเทนเนอร์:
docker run -d --name open-webui -p 3000:8080 \
-e OPENAI_API_BASE_URL="https://api.nofilteraichat.com/v1" \
-e OPENAI_API_KEY="$NOFILTER_API_KEY" \
-v open-webui:/app/backend/data \
ghcr.io/open-webui/open-webui:mainเปิด http://localhost:3000 สร้างบัญชีผู้ใช้ท้องถิ่นแรก และโมเดลจะรออยู่ในตัวเลือก โปรดทราบว่า Open WebUI จะบันทึกการตั้งค่าการเชื่อมต่อในฐานข้อมูลหลังจากการเริ่มต้นใช้งานครั้งแรก หากคุณเปลี่ยนตัวแปรในภายหลังแล้วไม่มีอะไรเกิดขึ้น ให้แก้ไขการเชื่อมต่อในแผงผู้ดูแลระบบแทน
การปรับแต่งแชท
ในการควบคุมแชท คุณสามารถตั้งค่า temperature, top_p ลำดับหยุด และพรอมต์ระบบ ค่าเหล่านี้จะถูกส่งผ่านไปยังโมเดล สำหรับงานนวนิยายและบทบาทสมมติ temperature ระหว่าง 0.7 ถึง 1.0 จะให้เนื้อเรื่องที่มีชีวิตชีวา สำหรับคำถามเชิงข้อเท็จจริง ให้ตั้งค่าให้ต่ำกว่านี้ หากโมเดลเริ่มทำซ้ำประโยค ให้เพิ่มค่าปรับความถี่เล็กน้อย
ส่วนที่สอง: n8n พร้อมโหนด OpenAI
n8n มีข้อมูลรับรอง OpenAI แบบในตัว การกำหนดค่ารวมถึงช่อง Base URL ซึ่งตั้งค่าเริ่มต้นเป็นเซิร์ฟเวอร์ทางการ เปลี่ยนค่านี้และโหนดจะเชื่อมต่อกับเอนด์พอยต์ของคุณ:
- ใน n8n สร้างข้อมูลรับรองใหม่ประเภท OpenAI
- วางคีย์ API ของคุณ
- ตั้งค่า Base URL เป็น
https://api.nofilteraichat.com/v1 - บันทึกและแนบข้อมูลรับรองกับโหนด OpenAI Chat Model หรือเวิร์กโฟลว์ AI Agent
จุดที่ต้องระวังคือช่องโมเดล โหนดบางตัวแสดงเมนูแบบเลื่อนลงที่เติมจากบัญชีรายชื่อโมเดล และบางตัวจำกัดตัวเลือกเฉพาะชื่อที่รู้จัก หากคุณไม่สามารถเลือก uncensored ได้ ให้เปลี่ยนช่องเป็นโหมด expression และพิมพ์ ID ด้วยตนเอง หากเวอร์ชัน n8n ของคุณยังปฏิเสธ ให้ใช้วิธีการ HTTP Request ในส่วนถัดไป ซึ่งไม่มีข้อจำกัดดังกล่าว
เมื่อข้อมูลรับรองทำงานได้แล้ว คุณสามารถแนบโมเดลแชทกับโหนด AI Agent และมอบเครื่องมือให้ การเรียกใช้ฟังก์ชันได้รับการสนับสนุนโดย API (tools, tool_choice และผลลัพธ์เป็น role: "tool") เช่นเดียวกับโมเดลแบบเปิดน้ำหนักอื่นๆ ให้ทดสอบเอเจนต์กับข้อมูลจริงและรักษาคำอธิบายเครื่องมือให้สั้นและตรงไปตรงมา
ส่วนที่สาม: แชทจากโหนด HTTP Request
ตัวเลือกที่คาดเดาได้มากที่สุดคือโหนด HTTP Request แบบธรรมดา มันแสดงสิ่งที่ส่งออกไปอย่างชัดเจน และใช้งานได้ในทุกเวอร์ชันของ n8n กำหนดค่าโหนดดังนี้:
- วิธี: POST
- URL:
https://api.nofilteraichat.com/v1/chat/completions - การตรวจสอบสิทธิ์: Header Auth โดยใช้ชื่อ
Authorizationและค่าBearer YOUR_KEY(เก็บเป็นข้อมูลรับรอง ไม่ใช่ในโหนด) - ส่งบอดี้: เปิด, ประเภทเนื้อหา JSON
ตั้งค่า body เป็นดังต่อไปนี้ โดยใช้ expression สำหรับข้อความผู้ใช้:
{
"model": "uncensored",
"messages": [
{ "role": "system", "content": "You are a concise story assistant for adult fiction writers." },
{ "role": "user", "content": "{{ $json.prompt }}" }
],
"temperature": 0.8,
"max_tokens": 600
}ข้อความตอบกลับอยู่ที่ choices[0].message.content ในโหนดถัดไป ให้อ่านด้วย expression {{ $json.choices[0].message.content }} การตอบกลับเดียวกันยังมีบล็อก usage ด้วย ดังนั้นคุณจึงสามารถบันทึกจำนวนโทเคนลงในสเปรดชีตหรือฐานข้อมูลได้
เวิร์กโฟลว์ทั่วไปคือการ trigger แบบ webhook โหนด HTTP นี้ และโหนดตอบกลับที่ส่งข้อความกลับ อีกแบบที่พบบ่อยคือการอ่านแถวจากสเปรดชีต สร้างร่างข้อความสำหรับแต่ละแถว แล้วเขียนผลลัพธ์กลับ คุณสามารถทดสอบคำขอภายนอก n8n ก่อนด้วย curl:
curl https://api.nofilteraichat.com/v1/chat/completions \
-H "Authorization: Bearer $NOFILTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"uncensored","messages":[{"role":"user","content":"Say hello in five words."}]}'ขีดจำกัด การทำซ้ำ และแบตช์ใน n8n
คีย์แบบเต็มอนุญาตให้ทำคำขอพร้อมกัน 8 รายการ และ 300 รายการต่อนาที; คีย์แบบทดลองอนุญาตให้ทำ 2 และ 60 n8n สามารถทำลายตัวเลขเหล่านี้ได้ง่าย เพราะโหนดจะประมวลผลทุก item ที่เข้ามาและอาจยิงคำขอเหล่านั้นอย่างรวดเร็ว
ใน HTTP Request node ให้เปิด Options และใช้ Batching: ตั้งขนาด batch เป็น 4 หรือ 6 และช่วงเวลาเป็น 1-2 วินาที ใน Node Settings ให้เปิด Retry On Fail โดยตั้งค่าจำนวนครั้งเป็น 3 ครั้งและเวลาหน่วง 5000 ms ซึ่งสอดคล้องกับพฤติกรรมของ API: เมื่อ API ถูกใช้งานหนักเกินชั่วคราวจะตอบกลับด้วย HTTP 429 พร้อม header Retry-After: 5 รหัส 429 อื่นๆ บอกขีดจำกัดที่คุณชน: rate_limited หมายถึงคำขอเกินต่อนาที, concurrency หมายถึงคำขอพร้อมกันเกิน
สตรีมมิงควรค่าแก่การกล่าวถึง คำขอแบบสตรีมมิงจะครอบครองช่อง concurrent จนกว่าสตรีมจะสิ้นสุด ใน n8n ให้ปิดสตรีมมิงใน HTTP node เนื่องจากเวิร์กโฟลว์รอคำตอบทั้งหมดอยู่แล้ว Open WebUI สตรีมมิงโดยค่าเริ่มต้น ซึ่งเหมาะสมสำหรับหน้าต่างแชท
ต้นทุนของเวิร์กโฟลว์
สมมติว่าเวิร์กโฟลว์ประมวลผล 500 แถว โดยส่ง 800 input tokens และรับ 250 output tokens สำหรับแต่ละแถว Input: 500 × 800 = 400,000 tokens ซึ่งคิดเป็น 400,000 × $0.15 / 1,000,000 = $0.06 Output: 500 × 250 = 125,000 tokens ซึ่งคิดเป็น 125,000 × $0.50 / 1,000,000 = $0.0625 การรันทั้งหมดคิดเป็น $0.1225 ประมาณ 12 เซนต์ ดู หน้าราคา เพื่อเติมเงิน
การแก้ไขปัญหา
| อาการ | สาเหตุที่เป็นไปได้ | การแก้ไข |
|---|---|---|
| Open WebUI แสดงไม่มีโมเดล | URL หรือคีย์ผิด | ใช้ base URL ที่ลงท้ายด้วย /v1; ทดสอบ GET /v1/models ด้วย curl |
| การเปลี่ยนแปลง env ของ Docker ถูกเพิกเฉย | การตั้งค่าถูกบันทึกไว้แล้ว | แก้ไขการเชื่อมต่อใน Admin Settings |
| 401 จาก n8n | ค่า header ขาดคำว่า Bearer | ค่าต้องอ่านว่า Bearer ช่องว่าง แล้วตามด้วยคีย์ |
| Open WebUI ใน Docker ไม่สามารถเข้าถึง proxy ท้องถิ่นได้ | localhost ชี้ไปยังคอนเทนเนอร์ | ใช้ที่อยู่ host ไม่ใช่ localhost |
| 429 ระหว่างลูป | item พร้อมกันมากเกินไป | จัดกลุ่มโหนด HTTP และเปิดใช้งานการลองใหม่ |
| ไม่พบโมเดล | พิมพ์ชื่อผิด | ID เดียวคือ uncensored |
จำข้อจำกัดของผลิตภัณฑ์เมื่อออกแบบ flow: แชทข้อความเท่านั้น หน้าต่างบริบท 100,000 โทเคนที่ใช้ร่วมกันระหว่างพรอมต์และคำตอบ และ body ของคำขอขนาด 8 MB ไม่มี endpoint embeddings ดังนั้นให้เก็บการค้นหาเวกเตอร์ไว้ที่บริการอื่น quickstart มีข้อมูลอ้างอิงคำขอแบบเต็ม และ integration guide ครอบคลุม front end อื่นๆ พรอมต์ที่ส่งผ่าน API ไม่ถูกนำไปใช้สำหรับการเทรน
กฎเข้มงวดใช้กับทุกเครื่องมือ: ไม่มีเนื้อหาทางเพศที่เกี่ยวข้องกับผู้เยาว์ ภายใต้การใช้งานผู้ใหญ่ที่ถูกต้องตามกฎหมาย โมเดลถูกปรับแต่งให้ตอบโดยไม่มีการปฏิเสธเนื้อหา ซึ่งเหมาะสำหรับนวนิยาย บทบาทสมมติ และแอปเพื่อนสำหรับผู้ใหญ่
