สร้าง Chatbot ใน n8n ด้วย Ollama AI Model และ Memory Buffer จำบทสนทนา

n8n เป็นเครื่องมือ low-code workflow automation ที่ช่วยให้เราสร้าง แชทบอท โดยไม่ต้องเขียนโค้ดเยอะ ซึ่งเหมาะสำหรับงานที่ต้องใช้ AI ในการตอบข้อความอัตโนมัติ
📌 1. สิ่งที่เราจะทำ:
✅ ตั้งค่า n8n ให้รับข้อความจากผู้ใช้
✅ ใช้ AI Agent เพื่อประมวลผลคำถาม
✅ ใช้ Ollama Chat Model เพื่อสร้างคำตอบจากโมเดล Llama
✅ ใช้ Window Buffer Memory เพื่อให้บอทจำบทสนทนาได้
✅ ทดสอบระบบและ Deploy ไปใช้งาน
🛠 2. การติดตั้งและเตรียมพร้อม
2.1 ติดตั้ง n8n
ถ้ายังไม่มี n8n ติดตั้ง สามารถติดตั้งด้วย Docker หรือ npm ได้ดังนี้
✅ ติดตั้งด้วย Docker (แนะนำ)
docker run -it --rm \
-p 5678:5678 \
-v ~/.n8n:/home/node/.n8n \
n8nio/n8n
Code language: Bash (bash)
เข้าผ่านเบราว์เซอร์ที่ http://localhost:5678
✅ ติดตั้งด้วย npm (ถ้ายังไม่มี Docker)
npm install -g n8n
n8n start
Code language: Bash (bash)
2.2 ติดตั้ง Ollama และดาวน์โหลดโมเดล AI
Ollama เป็นเครื่องมือที่ให้เรารันโมเดล AI บนเครื่องโดยตรง
1️⃣ ติดตั้ง Ollama
🔹 สำหรับ Mac/Linux
curl -fsSL https://ollama.com/install.sh | sh
Code language: Bash (bash)
🔹 สำหรับ Windows
ดาวน์โหลดจาก: https://ollama.com/download
2️⃣ โหลดโมเดล Llama 3.2
ollama pull llama3:latest
Code language: Bash (bash)
3️⃣ ทดสอบว่า Ollama ทำงานได้ไหม
ollama run llama3
Code language: Bash (bash)
🧩 3. สร้าง Workflow ใน n8n
เป้าหมาย: เมื่อมีข้อความส่งเข้ามา → AI ประมวลผล → ตอบกลับพร้อมความสามารถในการจำบทสนทนา
🏗 Workflow ที่เราจะสร้าง
- “When chat message received” Node → รับข้อความจากผู้ใช้
- “AI Agent” Node → ส่งข้อความไปประมวลผลที่ Ollama
- “Ollama Chat Model” Node → สร้างคำตอบจากโมเดล AI
- “Window Buffer Memory” Node → จดจำบริบทของแชท
📌 Step 1: เพิ่มโหนด “When chat message received”
โหนดนี้จะเป็นตัวรับข้อความจากผู้ใช้
- คลิก Add Node → ค้นหา When chat message received
- ทดสอบโดยส่งข้อความมา แล้วดูว่าโหนดนี้จับข้อความได้หรือไม่
📌 Step 2: เพิ่ม “AI Agent” เพื่อประมวลผลข้อความ
โหนดนี้จะใช้ Ollama เพื่อวิเคราะห์ข้อความและเลือกโมเดล AI ที่เหมาะสม
- คลิก Add Node → ค้นหา AI Agent
- ตั้งค่า:
- Agent → Tools Agent
- Source for Prompt (User Message) → Connected Chat Trigger Node
📌 Step 3: ใช้ “Ollama Chat Model” เพื่อสร้างคำตอบ
โหนดนี้ใช้โมเดล Llama 3.2 เพื่อสร้างคำตอบจากข้อความของผู้ใช้
- คลิก Add Node → ค้นหา Ollama Chat Model
- ตั้งค่า:
- Credential to connect with → Base URL → http://127.0.0.1:11434
- Model → llama3.2:latest
📌 Step 4:เพิ่ม “Window Buffer Memory” เพื่อจำบทสนทนา
โหนดนี้จะเก็บข้อมูลบทสนทนาเพื่อให้ AI จำได้
- คลิก Add Node → ค้นหา Window Buffer Memory
- ตั้งค่า
- Session ID → Connected Chat Trigger Node
- Context Window Length → 5
✅ 4. การทดสอบแชทบอท
- ทดสอบส่งข้อความ ไปที่ช่องแชทที่ตั้งค่าไว้
- ดูว่าข้อความถูกส่งไปที่ Ollama และได้รับคำตอบกลับมาหรือไม่
- ตรวจสอบว่า Window Buffer Memory จำบริบทของบทสนทนาได้
- ถ้าเกิดปัญหาให้ดูที่ Execution Log ของ n8n
🚀 5. Deploy และนำไปใช้งานจริง
รัน n8n เป็น Background Process
n8n start
Code language: Bash (bash)
หรือใช้ Docker ให้รันเป็น Background
docker run -d -p 5678:5678 -v ~/.n8n:/home/node/.n8n n8nio/n8n
Code language: Bash (bash)
🎯 สรุป
✅ เราได้ตั้งค่า n8n ให้ทำงานร่วมกับ Ollama Chat Model
✅ ใช้ Window Buffer Memory ให้บอทสามารถจำบทสนทนาได้
✅ ทดสอบการทำงานของระบบและทำให้แชทบอทสามารถโต้ตอบได้อย่างมีประสิทธิภาพ
✅ พร้อมสำหรับการ Deploy ไปใช้งานจริง