Qdrant คืออะไร และวิธีติดตั้งบน Cloud Server
Qdrant คือฐานข้อมูลเวกเตอร์ที่ใช้ค้นหาข้อมูลตามความหมายแทนการจับคู่คำ เป็นองค์ประกอบหลักของระบบตอบคำถามจากเอกสารและระบบแนะนำที่ใช้โมเดล AI
- หมวดหมู่
- AI, Machine Learning และ LLM
- ติดตั้งบนเซิร์ฟเวอร์เองได้
- ได้
- สเปกเริ่มต้นที่แนะนำ
- 2 vCPU · RAM 4 GB
- ไลเซนส์
- Apache License 2.0 (โอเพนซอร์ส)
- เว็บทางการ
- เปิดเว็บไซต์
- ISO/IEC 27001
- ISO 22301
- ISO 20000-1
- CSA-STAR
Data Center ในไทย มาตรฐาน TIA-942 Tier 3+ ข้อมูลอยู่ในประเทศไทย
Qdrant คืออะไร
การค้นหาแบบเดิมจับคู่คำที่ตรงกัน จึงหาไม่เจอเมื่อผู้ใช้ถามด้วยคำที่ต่างจากในเอกสารแม้ความหมายเหมือนกัน การค้นหาตามความหมายแก้ปัญหานี้โดยแปลงข้อความเป็นตัวเลขที่สะท้อนความหมายแล้วหาสิ่งที่ใกล้เคียงที่สุด
Qdrant เก็บตัวเลขเหล่านี้และค้นหาสิ่งที่ใกล้เคียงได้เร็วแม้มีข้อมูลจำนวนมาก พร้อมกรองด้วยเงื่อนไขเพิ่มเติมได้ เช่น ค้นเฉพาะเอกสารของแผนกหนึ่งหรือช่วงเวลาหนึ่ง
การใช้งานที่พบบ่อยที่สุดคือระบบตอบคำถามจากเอกสารขององค์กร โดยแปลงเอกสารเก็บไว้ล่วงหน้า แล้วเมื่อมีคำถามก็ดึงส่วนที่เกี่ยวข้องมาประกอบให้โมเดลภาษาตอบ ซึ่งทำให้คำตอบอ้างอิงจากข้อมูลจริง
ความสามารถเด่นของ Qdrant
ค้นหาตามความหมาย
หาเอกสารที่เกี่ยวข้องได้แม้ใช้คำต่างจากในเอกสาร
กรองด้วยเงื่อนไขเพิ่มเติม
จำกัดผลลัพธ์ตามแผนก ช่วงเวลา หรือสิทธิ์การเข้าถึง
ทำงานเร็วแม้ข้อมูลมาก
ออกแบบมาเพื่อค้นหาเวกเตอร์จำนวนมหาศาลโดยเฉพาะ
ติดตั้งง่ายและใช้ทรัพยากรคุ้ม
รันเป็นคอนเทนเนอร์เดียวได้และมีหน้าจอสำหรับสำรวจข้อมูล
มี API ที่ใช้ง่าย
เชื่อมกับไลบรารีงาน AI ที่ใช้กันทั่วไปได้ทันที
ใช้ Qdrant ทำอะไรได้บ้าง
- ระบบตอบคำถามจากคู่มือและเอกสารขององค์กร
- ระบบค้นหาสินค้าที่เข้าใจความหมายของคำค้น
- ระบบแนะนำเนื้อหาจากความคล้ายของพฤติกรรมผู้ใช้
- การค้นหาเอกสารที่คล้ายกันในฐานข้อมูลขนาดใหญ่
สเปก Cloud Server ที่แนะนำ
| ระดับการใช้งาน | vCPU | RAM | Disk |
|---|---|---|---|
| เริ่มต้นเอกสารไม่มากหรือระบบทดลอง | 2 vCPU | 4 GB | NVMe 40 GB |
| แนะนำเอกสารระดับหลักแสนชิ้น ยิ่ง RAM มากยิ่งค้นหาเร็ว | 4 vCPU | 16 GB | NVMe 200 GB |
| ข้อมูลมากเวกเตอร์หลายล้านรายการ | 8 vCPU ขึ้นไป | 32 GB ขึ้นไป | NVMe 500 GB ขึ้นไป |
ดูราคาตามสเปกได้ที่ ราคา Cloud Compute หรือให้ทีมงานช่วยประเมินสเปกจากปริมาณผู้ใช้จริงของคุณ
วิธีติดตั้ง Qdrant บน Cloud Server ของ THAI DATA CLOUD
ขั้นตอนด้านล่างใช้กับ Cloud Server ที่เพิ่งสร้างใหม่จากหน้าจัดการของ THAI DATA CLOUD ได้ทันที ถ้าไม่สะดวกทำเอง ทีมวิศวกรของเราติดตั้งและตั้งค่าให้ฟรีสำหรับลูกค้า Cloud Server
สิ่งที่ต้องเตรียม
- Docker หรือแพ็กเกจของระบบปฏิบัติการ
- RAM มากพอสำหรับดัชนีของข้อมูลที่เก็บ
- โมเดลสำหรับแปลงข้อความเป็นเวกเตอร์
- วง Private Network ระหว่างแอปกับฐานข้อมูล
ทดสอบบน Ubuntu Server 24.04 LTS ที่ติดตั้ง Docker แล้ว
- 1
รัน Qdrant
docker run -d --name qdrant \ -p 10.10.0.70:6333:6333 \ -v /srv/qdrant:/qdrant/storage \ -e QDRANT__SERVICE__API_KEY=ChangeThisStrongApiKey \ --restart unless-stopped \ qdrant/qdrant - 2
ตรวจว่าบริการทำงาน
curl -H "api-key: ChangeThisStrongApiKey" http://10.10.0.70:6333/collections - 3
สร้างคอลเลกชันสำหรับเก็บเอกสาร
ต้องกำหนดจำนวนมิติให้ตรงกับโมเดลที่ใช้แปลงข้อความ ถ้าไม่ตรงจะเพิ่มข้อมูลไม่ได้
curl -X PUT http://10.10.0.70:6333/collections/docs \ -H "api-key: ChangeThisStrongApiKey" \ -H "Content-Type: application/json" \ -d '{"vectors": {"size": 768, "distance": "Cosine"}}' - 4
เพิ่มเอกสารเข้าฐานข้อมูล
ฝั่งแอปแปลงข้อความเป็นเวกเตอร์ด้วยโมเดลที่เลือก แล้วส่งเข้ามาพร้อมข้อมูลประกอบสำหรับใช้กรองภายหลัง
from qdrant_client import QdrantClient from qdrant_client.models import PointStruct client = QdrantClient(url="http://10.10.0.70:6333", api_key="ChangeThisStrongApiKey") client.upsert(collection_name="docs", points=[ PointStruct(id=1, vector=embedding, payload={"dept": "hr", "title": "ระเบียบการลา"}), ]) - 5
ค้นหาพร้อมกรองเงื่อนไข
hits = client.query_points( collection_name="docs", query=question_embedding, query_filter={"must": [{"key": "dept", "match": {"value": "hr"}}]}, limit=5, ) - 6
ตั้งการสำรองข้อมูล
ตั้งให้สร้างสแนปช็อตของคอลเลกชันตามรอบและส่งไปเก็บที่ Object Storage เพราะการสร้างเวกเตอร์ใหม่ทั้งหมดใช้เวลาและค่าใช้จ่ายสูง
จำนวนมิติของเวกเตอร์ต้องตรงกับโมเดลที่ใช้แปลงข้อความเสมอ ถ้าเปลี่ยนโมเดลภายหลังต้องสร้างคอลเลกชันใหม่และแปลงเอกสารทั้งหมดอีกครั้ง
พอร์ตที่ต้องเปิดบน Firewall
| พอร์ต | โปรโตคอล | ใช้ทำอะไร |
|---|---|---|
| 6333 | TCP | API และหน้าจอ (เปิดเฉพาะวงภายใน) |
| 6334 | TCP | การเชื่อมต่อแบบ gRPC สำหรับประสิทธิภาพสูง |
สิ่งที่ควรทำต่อหลังติดตั้งเสร็จ
- ตั้งคีย์สำหรับเรียกใช้ API และไม่เปิดพอร์ตสู่อินเทอร์เน็ต
- ให้แอปเข้าถึงผ่าน Private Network เท่านั้น
- ระวังไม่เก็บข้อมูลส่วนบุคคลในข้อมูลประกอบโดยไม่จำเป็น
- สำรองสแนปช็อตของคอลเลกชันตามรอบ
ทำไมควรรัน Qdrant บน Cloud Server ของ THAI DATA CLOUD
Data Center ในประเทศไทย มาตรฐาน ISO/IEC 27001 และ ISO 22301 พร้อมทีมวิศวกรคนไทยดูแลตลอด 24 ชั่วโมง
รันในวง Private Network เดียวกับแอปและเซิร์ฟเวอร์โมเดล ทำให้ค้นหาได้เร็วและข้อมูลไม่ออกนอกองค์กร
เพิ่ม RAM ได้เมื่อจำนวนเอกสารโตขึ้น ซึ่งเป็นตัวแปรสำคัญที่สุดของความเร็ว
เก็บสแนปช็อตไว้บน Object Storage ในไทยเพื่อกู้คืนได้เร็ว
คำถามที่พบบ่อยเกี่ยวกับ Qdrant
Qdrant ต่างจาก Milvus อย่างไร
Qdrant ติดตั้งง่ายกว่ามากเพราะเป็นบริการเดียวและใช้ทรัพยากรคุ้ม เหมาะกับระบบขนาดเล็กถึงกลาง ส่วน Milvus ออกแบบมาสำหรับข้อมูลระดับพันล้านเวกเตอร์และแยกส่วนประกอบชัดเจน แต่ซับซ้อนกว่าในการดูแล
จำเป็นต้องใช้ฐานข้อมูลเวกเตอร์แยกไหม
ระบบขนาดเล็กใช้ส่วนขยายของ PostgreSQL ได้และดูแลง่ายกว่าเพราะไม่ต้องเพิ่มระบบใหม่ แต่เมื่อเอกสารมีจำนวนมากและต้องการความเร็ว ฐานข้อมูลเวกเตอร์เฉพาะทางจะให้ผลดีกว่าชัดเจน
ใช้กับภาษาไทยได้ไหม
ได้ โดยขึ้นกับโมเดลที่ใช้แปลงข้อความเป็นเวกเตอร์ ควรเลือกโมเดลที่รองรับภาษาไทยหรือรองรับหลายภาษา แล้วทดสอบกับคำถามจริงของผู้ใช้เพื่อดูว่าผลการค้นหาตรงหรือไม่
ทางเลือกอื่นที่คล้ายกับ Qdrant
แอปอื่นในหมวด AI, Machine Learning และ LLM
บริการของ THAI DATA CLOUD ที่เกี่ยวข้อง
ให้เราติดตั้ง Qdrant ให้ฟรี บน Cloud Server ในไทย
แจ้งความต้องการสั้น ๆ ทีมวิศวกรจะช่วยประเมินสเปก ติดตั้ง และตั้งค่าความปลอดภัยให้พร้อมใช้งาน ปรึกษาฟรี ไม่มีข้อผูกมัด