מה זה Vector DB?
Vector DB (או Vector Database) הוא סוג מיוחד של בסיס נתונים שנועד לאחסן, לנהל ולבצע חיפושים
יעילים על ייצוגים וקטוריים של נתונים לא-מובנים – בעיקר טקסט, תמונות, אודיו ווידאו.
וקטור הוא ייצוג מספרי של פריט מידע במרחב רב-ממדי, כך שניתן לבצע עליו חישובים מתמטיים כמו דמיון מרחבי.
מערכות אלו מתאימות במיוחד ליישומים מודרניים של למידת מכונה ובינה מלאכותית, שבהם נעשה שימוש
בהמרת טקסטים, תמונות או קבצי קול לווקטורים באמצעות מודלים כמו BERT,
CLIP, OpenAI Embeddings או Sentence Transformers.
למה Vector DB משמש?
חיפוש סמנטי (Semantic Search):
במקום לחפש מילה מסוימת, Vector DB מאפשר לחפש לפי משמעות. לדוגמה, בשאילתה “מתי כדאי לנסוע ליפן?”,
המערכת יכולה להחזיר תשובות רלוונטיות גם אם לא מופיעה בדיוק המילה “יפן” אלא “טוקיו” או “טיול בעונה החמה”.
מנועי המלצות:
בהתבסס על דמיון בין וקטורים של משתמשים, פריטים, סרטים, מוצרים וכדומה.
מערכות שאלה-תשובה (QA) מבוססות RAG:
מודלים מבוססי Retrieval-Augmented Generation (כמו ChatGPT + vector search) משלבים חיפוש וקטורי
עם תשובות טבעיות.
זיהוי תמונות/קול/וידאו:
מערכות לזיהוי תבניות יכולות להשוות בין קבצים לפי הדמיון הווקטורי ביניהם.
איתור הונאות (Fraud Detection):
ניתוח אנומליות בנתוני משתמשים לפי מיקום במרחב הווקטורי.
איך Vector DB עובד?
מערכת vector DB משתמשת באלגוריתמים ל”חיפוש קירוב לשכן הקרוב ביותר” (ANN) כדי למצוא במהירות
אילו וקטורים דומים לווקטור שאילתה נתון.
טכנולוגיות נפוצות כוללות:
FAISS (Meta)
ScaNN (Google)
HNSW (Hierarchical Navigable Small World)
IVF, PQ, LSH (שיטות לקידוד ודחיסה)
מערכות Vector DB נפוצות
| שם | תיאור | רישיון | תמיכה ב־Hybrid Search |
| Pinecone | שירות בענן בלבד, קל לשימוש | מסחרי | כן |
| Weaviate | בקוד פתוח, כולל NLP מובנה | פתוח (BSD) | כן |
| Milvus | ביצועים גבוהים מאוד | פתוח (Apache 2.0) | כן |
| Qdrant | מודרני, קל לשימוש עם REST/gRPC | פתוח | כן |
| Chroma | פשוט, בשימוש נרחב עם LangChain | פתוח | לא |
| Redis Vector | תוסף ל-Redis | פתוח | חלקית |
עלויות של Vector DB
העלויות תלויות בפרמטרים כמו נפח הנתונים, תדירות השאילתות, ואופן האירוח (On-Prem vs Cloud):
פתרונות בענן (Pinecone, Weaviate Cloud, Zilliz):
חינם: לרוב עד 1M וקטורים ו/או חיפושים מוגבלים.
בתשלום: לרוב כ־$0.10–$0.25 למיליון חיפושים או $0.05–$0.20 ל־GB אחסון חודשי.
פתרונות בקוד פתוח (Milvus, Qdrant, Weaviate):
עלות תוכנה: חינם.
עלות תשתית: תלויה ב־CPU, GPU, נפח RAM ודיסק. לדוגמה, פריסה עם 32GB RAM ו־100 מיליון וקטורים
יכולה לדרוש מספר שרתים ולעלות מאות דולרים בחודש.
שאלות ותשובות בנושא Vector DB
מהו tradeoff בין דיוק למהירות ב־Vector DB?
חיפוש ANN לא מבטיח תמיד תוצאה מדויקת כמו NN מלא (Brute Force), אך הוא מהיר משמעותית.
ניתן לכוונן פרמטרים (כמו ef, nprobe, recall) לקבלת איזון בין דיוק לביצועים.
איך מטפלים ב־vector drift (שינוי embedding עם עדכון המודל)?
יש לעקוב אחרי גרסאות embedding ולבצע Re-Indexing לפי הצורך.
ניתן לאחסן את הגרסה יחד עם הוקטור.
האם אפשר לשלב חיפוש טקסטואלי רגיל עם חיפוש וקטורי?
כן. מערכות כמו Weaviate ו־Redis מאפשרות hybrid search – שילוב בין חיפוש לפי וקטורים לחיפוש לפי מילות מפתח.
איך מתבצע סקיילינג של Vector DB עם מאות מיליוני וקטורים?
שימוש בשיטות דחיסה (Product Quantization).
פיצול נתונים ל־shards ואינדוקס מקביל.
אחסון וקטורים באחסון מהיר (RAM או SSD NVMe).
האם ניתן להשתמש ב־Vector DB עם LLMים כמו GPT?
כן. vector DB הוא מרכיב מרכזי במערכות RAG, שבהן ה־LLM ניזון ממידע רלוונטי שנשלף לפי דמיון וקטורי,
מה שמאפשר לשלב מידע פרטי (מסמכים, בסיס ידע) עם מודל שפה כללי.

