การติดตั้ง LLM ส่วนตัว: RAG ที่ใช้งานได้จริงสำหรับองค์กร

Blog

โดย Win.AI Editorial

การติดตั้ง LLM ส่วนตัวด้วยการสร้างข้อมูลที่เพิ่มขึ้นด้วยการเรียกคืนให้คำตอบที่ตรวจสอบได้และตรงตามโดเมนในขณะที่เก็บข้อมูลภายในขอบเขตของคุณ คู่มือนี้ให้เส้นทางที่กระชับและใช้งานได้จริงสำหรับทีมวิศวกรรมและผลิตภัณฑ์ ตั้งแต่การเลือกโมเดลไปจนถึงการสร้าง RAG ที่ปลอดภัย การประเมิน และการสร้างแบลนการผลิตอย่างน้อยที่สุด

เลือกโมเดลและการฝังตัวภายใต้ข้อจำกัด

เลือกโมเดลที่ตรงกับข้อจำกัดของความล่าช้า ค่าใช้จ่าย และใบอนุญาต โมเดลที่มีน้ำหนักเปิดใหม่ ๆ เช่น Leafy.dev และ PocketLLM แสดงให้เห็นถึงความหลากหลายตั้งแต่มอเดลขนาดเล็ก 7B ไปจนถึงกลุ่ม 70B โมเดลที่เล็กลงช่วยลดต้นทุนการโฮสต์และทำให้การตั้งค่าในสถานที่มีความเป็นไปได้ ในขณะที่โมเดลที่ใหญ่ขึ้นช่วยปรับปรุงการให้เหตุผลนอกกรอบ ใช้ผู้ขายเดียวกันหรือโมเดลการฝังตัวที่เข้ากันได้ L2 สำหรับการจัดทำดัชนีและเวลาทำงานเพื่อหลีกเลี่ยงการลอยตัวของเวคเตอร์ เราสังเกตว่า การคำนวณการฝังตัวล่วงหน้าสำหรับเอกสารสแตติกช่วยลดความล่าช้าในการสอบถามโดยประมาณเวลาของการส่งผ่านครั้งเดียวและทำให้การย้อนกลับทำได้ง่ายขึ้น

เก็บรักษาสตอเรจเวคเตอร์และเทคนิคด้านความเป็นส่วนตัว

สำหรับทีมจำนวนมากที่มีเวคเตอร์ต่ำกว่า 5 ล้านตัว PostgreSQL ที่ฝังตัวพร้อม pgvector เป็นค่าพื้นฐานที่ง่ายต่อการใช้งาน ในขณะที่บริการที่จัดการเช่น Pinecone, Weaviate และ Milvus แลกเปลี่ยนการดำเนินงานที่ต่ำกว่าสำหรับค่าใช้จ่ายที่สูงกว่าและฟีเจอร์ที่เฉพาะเจาะจง Inductivee และ Tensoria benchmarks อภิปรายความแตกต่างด้านการส่งข้อมูลและค่าใช้จ่ายสำหรับชุดข้อมูลเวคเตอร์ตั้งแต่ 1M ถึง 100M และแสดงให้เห็นว่าการเลือกขึ้นอยู่กับขนาดของเวคเตอร์ QPS และว่าคุณต้องการการทำซ้ำหลายภูมิภาคหรือไม่

เข้ารหัสเวคเตอร์ที่เก็บอยู่และใช้การเข้ารหัสในซองสำหรับกุญแจ ใช้ IAM ที่เข้มงวดกับสโตเรจเวคเตอร์และต้องการ mTLS สำหรับการเชื่อมต่อบริการทั้งหมด สำหรับการสร้างแบบจำลองการคุกคามและแนวทางการทดสอบสีแดง โปรดดูคู่มือความปลอดภัย LLM ของเรา คู่มือความปลอดภัย LLM หากคุณต้องการการรับประกันด้านความเป็นส่วนตัวอย่างเป็นทางการ โปรดตรวจสอบตัวเลือกความเป็นส่วนตัวที่แตกต่างและการรวมความปลอดภัยในบทช่วยสอนของเรา เทคนิคความเป็นส่วนตัวที่แตกต่าง

หนึ่งในปัญหาที่เราเจอในการปฏิบัติ คือ การตั้งค่าบัญชีบริการที่ไม่ถูกต้องซึ่งเปิดเผยข้อมูลเมตาของเวคเตอร์ ถือว่าข้อมูลเมตาเป็นสิ่งที่มีความไวสูงและล็อคไว้ภายใต้การควบคุมเดียวกันกับเวคเตอร์

วัดความเกี่ยวข้อง อาการหลอน ความล่าช้า และค่าใช้จ่าย

ใช้เมตริกการเรียกคืนเช่น Hit@k, MRR และ NDCG สำหรับผู้เรียกคืน และใช้กรอบการประเมินอ้างอิงและไม่อ้างอิงเช่น RAGEval และ RAGAS เพื่อตรวจสอบความสมบูรณ์ อาการหลอน และความไม่เกี่ยวข้อง RAGEval และ RAGAS จัดเตรียมการทดสอบเฉพาะสาขาสำหรับงานโดเมนและแนะนำการตรวจสอบ LLM เป็นผู้ตัดสินอัตโนมัติสำหรับการปรับขนาดการประเมิน ตรวจสอบสัญญาณการผลิตสามรายการ: ความแม่นยำในการเรียกคืน ความเชื่อมั่นของคำตอบ และความล่าช้าแบบหาง ในทางปฏิบัติ การเพิ่มความจำได้ของผู้เรียกคืนมักลดอาการหลอนได้อย่างมีประสิทธิภาพมากกว่าการเพิ่มขนาดโมเดล

แบลนการติดตั้งสำหรับการติดตั้ง LLM ส่วนตัว

แบลนขั้นต่ำ: การให้บริการโมเดลที่บรรจุในคอนเทนเนอร์อยู่เบื้องหลัง VPC, คลัสเตอร์สโตเรจเวคเตอร์แยกต่างหากที่มี ACL เครือข่ายที่ถูกล็อค, proxy การรับรองความถูกต้องที่ออกโทเคนที่มีอายุสั้น, และสแต็กการตรวจสอบที่บันทึก ID การเรียกคืนพร้อมคำตอบสำหรับการตรวจสอบ เริ่มต้นด้วยโมเดลที่โฮสต์ใน VPC ในภูมิภาคเดียวเพื่อความสามารถในการคาดการณ์ความล่าช้า จากนั้นเพิ่มการทำซ้ำระหว่างภูมิภาคหากจำเป็น คาดหวังค่าใช้จ่ายคงที่ที่สูงกว่าสำหรับการติดตั้งขนาดเล็ก แต่ควบคุมได้ดีกว่าและมีความเป็นส่วนตัว

ข้อกังวลที่ชัดเจนคือ นวัตกรรมของผู้ขาย บริการ LLM ที่โฮสต์บนคลาวด์จะพัฒนาได้รวดเร็วขึ้น และอาจมีราคาถูกกว่าเมื่อคุณคิดต้นทุนวิศวกรรม ฉันประเมินว่า สำหรับปริมาณการสอบถามที่หนักหน่วงที่ยั่งยืนมากกว่าหลายล้านการสอบถามต่อเดือน การคาดการณ์ที่จัดการมักจะชนะด้านต้นทุนรวม แต่สำหรับข้อมูลที่มีการควบคุมหรือตามข้อกำหนดด้านการพำนักอย่างเข้มงวด การติดตั้งแบบเอกชนเป็นตัวเลือกเดียวที่ใช้งานได้

ลองทำด้วยตัวเอง: สองคำสั่งด้านล่างแสดงให้เห็นถึงวิธีการเปิดเผยพื้นฐานและตรวจจับคำกล่าวที่ไม่ได้รับการสนับสนุน

คำสั่งนี้ขอให้โมเดลตอบคำถามโดยใช้บริบทที่ให้ไว้และระบุ ID แหล่งที่มา คาดหวังคำตอบที่กระชับและการอ้างอิงแหล่งที่มา

Given the following context snippets with ids, answer the user question and include a numbered list of the top three context ids you used and exact quoted evidence for each.
Context 1 [id=C1]: "..."
Context 2 [id=C2]: "..."
User question: "Explain X and cite the top 3 supporting snippets."

คำสั่งนี้ขอให้โมเดลระบุคำกล่าวที่ไม่ได้รับการสนับสนุนในคำตอบของตนเอง คาดหวังรายการสั้น ๆ ของคำกล่าวที่ระบุว่าได้รับการสนับสนุนหรือไม่และแสดง ID ของบริบทสนับสนุนเมื่อมี

You generated this answer. For each sentence, mark whether it is fully supported by the provided contexts and give the supporting context id or mark UNSUPPORTED.
Answer: "..."
Contexts: C1, C2, C3

เราสังเกตว่า การทดลองขนาดเล็กที่ทำซ้ำได้ด้วยพารามิเตอร์การเรียกคืนจะช่วยเพิ่มความเชื่อมั่นได้มากที่สุด ทำให้การประเมินมีความสามารถในการทำซ้ำและบันทึก ID การเรียกคืนพร้อมคำตอบสำหรับการวิเคราะห์สาเหตุที่แท้จริง

อ่านบทความอื่น ๆ

นำหน้าคนที่ชอบตามกระแส

ดูทั้งหมด
Blog

AI 2040: ซูเปอร์อัจฉริยะจะมาถึงภายในปี 2030 หรือไม่?

ปัญญาประดิษฐ์กำลังพัฒนาไปเร็วกว่าเทคโนโลยีส่วนใหญ่ที่เคยมีมา แต่คำถามที่ใหญ่ที่สุดตอนนี้คือ AI จะสามารถทำให้ตัวเองดีขึ้นได้เร็วแค่ไหน ทางเลือกคือแผนที่ 1 สำหรับการพัฒนา AI ที่ปลอดภัย.

Blog

Vera Rubin NVL72: สิ่งที่โครงสร้างพื้นฐานการฝึกอบรมรุ่นถัดไปหมายถึง

การอธิบายอย่างกระชับเกี่ยวกับ Vera Rubin NVL72: การเปลี่ยนแปลงการออกแบบในระดับราว ค่าใช้จ่ายในการดำเนินการที่แท้จริงที่คุณต้องจัดทำงบประมาณ และองค์กรใดควรซื้อหรือเช่า.

Blog

การออกแบบการทำงานร่วมกันระหว่างมนุษย์กับ AI: รูปแบบ UX ที่ใช้งานได้จริงสำหรับการส่งต่อ แหล่งที่มา และความมั่นใจ

การร่วมมือระหว่างมนุษย์กับ AI ได้ผลดีที่สุดเมื่อผลิตภัณฑ์ถือโมเดลเป็นเพื่อนร่วมทีม, ไม่ใช่เป็นผู้รู้ทุกอย่าง.

เทมเพลตสุดไวรัล

สำรวจเทมเพลต AI สุดไวรัลของเราแล้วนำไปใช้กับรูปของคุณ

สำรวจเทมเพลต