บทนำ
ครั้งหนึ่งเพื่อนผมมีโจทย์ว่าต้องการ เครื่องมือ opensource ในการสรา้ง workflow สำหรับทำ AI หลังจาก ทำลองหา solution มาประมาณ 1 สัปดาห์เราได้พบเครื่องมือตัวนึงชื่อว่า Langflow (ก่อนจะเจอกระแสอันร้อนแรงของ n8n ทำให้ไขว้เขวไปเล่นพักนึง)
ว่าแต่ Langflow คืออะไร
ครื่องมือสร้างโฟลว์แบบภาพ (Visual Flow Builder) ที่ช่วยให้นักพัฒนาสามารถสร้างและปรับใช้แอปพลิเคชัน AI ที่ซับซ้อนได้อย่างง่ายดาย โดยไม่ต้องเขียนโค้ดจำนวนมากที่ช่วยให้การสร้างและจัดการแอปพลิเคชัน AI โดยเฉพาะอย่างยิ่งที่เกี่ยวข้องกับ LLMs และ RAG เป็นเรื่องที่เข้าถึงได้ง่ายขึ้นสำหรับนักพัฒนาและองค์กรต่างๆ ครับ
ในการใช้งาน Langflow
เราสามารถใช้งานได้ 2 รูปแบบ
1.ใช้บริการCloud Service ของ Langflow
2.ติดตั้งบนเครื่อง(Self-Host)
การติดตั้ง
การติดตั้ง Langflow เราจะดำเนินการติดตั้งผ่าน Docker เนื่องจากง่านและรวดเร็วที่สุดแล้วในขณะนี้(ส่วนวิธีการติดตั้ง Docker สามารถพบเห็นได้ตามเว็บทั่วไป) สมมติว่าติดตั้ง Docker เสร็จเรียบร้อยแล้วให้ทำการสรา้งไฟล์ docker-compose.yml แล้ว copy code ข้างล่างมาวาง
services:
langflow:
image: langflowai/langflow:latest
pull_policy: always
ports:
- "7860:7860"
depends_on:
- postgres
environment:
- LANGFLOW_DATABASE_URL=postgresql://langflow:langflow@postgres:5432/langflow
volumes:
- langflow-data:/app/langflow
postgres:
image: postgres:16
environment:
POSTGRES_USER: langflow
POSTGRES_PASSWORD: langflow
POSTGRES_DB: langflow
ports:
- "5432:5432"
volumes:
- langflow-postgres:/var/lib/postgresql/data
volumes:
langflow-postgres: {}
langflow-data: {}
จากนั้นที่ command prompt ให้ไปที่ ตำแหน่งของไฟล์ docker-compose.yml และ run คำสั่ง
docker compose up -d
คลิกที่ http://0.0.0.0:7860 ซึ่งจะเปิด web browser หน้าแรกของ Langflow ขึ้นมาให้ซึ่งแสดงว่าติดตั้ง Langflow สำเร็จ คลิกปุ่ม "Create First Flow" เพื่อเข้าใช้งาน
เริ่มใช้งาน Langflow
เมื่อเข้าใช้งาน Langflow จะแสดงหน้าแรก ซึ่งจะมี Template สำหรับสรา้ง Workflow ของ AI มาให้เลือก โดยในบทความนี้เราจะเข้าไปดูความสามารถโดยคร่าวๆ ว่าตัว Langflow สามารถทำอะไรได้บ้าง เราจึงเลือกไปที่ "Basic Prompting" ซึ่งเป็น flow เบื้องต้นเหมือนเราสร้าง ChatGpt
หมายเหตุ
เราสามารถสร้าง flow เปล่าโดยกดที่ปุ่ม "+ Blank Flow" เพื่อเริ่มสร้าง flow แบบไม่มีอะไรเลยก็ได้
หน้าหลัก
เมื่อเข้ามาหน้าหลักจะประกอบด้วย
ด้านบนสุดจะแสดงชื่อ Project ที่ทำงาน
ด้านซ้ายมือหน้าจอจะป็นส่วน Component ซึ่งทำหน้าทีในการควบคุมการทำงานของ LLM (เหมือนกัน node ใน n8n)
บริเวณกลางหน้าจอจะเป็นพื้นที่การทำงานสำหรับลากและวาง component และนำมาเชื่อมต่อกันเป็น flow
ด้านล่างซ้ายมือจะเป็นตัวควบคุมการแสดงผล(ย่อม,ขยาย,Lock เพื่อไม่ให้แก้ไข)ในพื้นที่ทำงาน
มุมขวาบน สำหรับทดสอบ flow ที่เราสร้างไว้
ทดสอบ flow ที่เราสร้างไว้
จากตัวที่เราเลือก template ที่เป็น Basic Prompting เอาไว้ที่มุมขวาบนของหน้าจอถ้าเราคลิกที่ปุ่ม "Playground"
จะแสดงหน้าจอสำหรับป้อน Prompt
การ import และ export flow
เราสามารถทำการนำเข้า (import) flow ที่เราหรือ คนอื่นสรา้งไว้ หรือส่งออก (export)โดยเลือกคลิกหน้า Save และเลือกเมนู Import หรือ Export
สรุปการใช้งาน
Langflow เป็นเครื่องมือที่ช่วยให้คุณ สร้าง LLM (Large Language Model) application ได้ด้วยวิธีลากวาง (visual programming interface) โดยใช้ LLM ในการเชื่อมต่อกันเป็น Application ในขณะที่ n8n เป็นการเชื่อมต่อบริการแต่ละตัวเพื่อสร้าง application (จริงๆ เรายังสามารถใช้ Langflow มาเชื่อมต่อ กับ n8n เพื่อสรา้งเป็น application สำหรับ AI ซึ่งอาจจะนำเสนอในภายหลัง)
Top comments (0)