עד פי 5 recall בחיפושים מסוננים: Amazon S3 Vectors מוסיפה pre-filtering לפי metadata

העדכון פותר חולשה מוכרת של חיפוש וקטורי עם סינון. עד עכשיו, S3 Vectors הפעיל את סינוני ה-metadata רק אחרי חיפוש השכנים הקרובים. כשהסינון סלקטיבי, למשל tenant אחד או תיקיית מסמכים אחת, רוב תוצאות ה-top-k נזרקו, ונשארו מעט תוצאות רלוונטיות או אף אחת. עכשיו הסינון מתבצע קודם, וחיפוש הדמיון רץ רק בתוך תת-הקבוצה שעברה אותו. לפי AWS, על סינונים סלקטיביים מתקבלים עד פי 5 יותר וקטורים תואמים.
האופרטור החדש $startsWith מסנן לפי prefix. כך קל להגביל חיפוש לנתיב, ל-prefix של URL או למזהה היררכי. דוגמאות טיפוסיות: מערכת RAG שמחפשת רק במסמכים של לקוח אחד, או agent שמחפש בתוך תיקייה מסוימת ב-repository.
בהקשר התחרותי, pre-filtering הוא סטנדרט במסדי נתונים וקטוריים ייעודיים כמו Pinecone, Weaviate ו-Qdrant, וגם בהגדרות pgvector. ההבטחה של S3 Vectors היא עלות נמוכה וסקייל של object storage, לא latency מינימלי. סגירת הפער ב-recall מורידה את אחת הסיבות המרכזיות לבחור במסד וקטורי ייעודי. יחד עם שאילתות ה-lake החדשות ב-Aurora PostgreSQL על בסיס DuckDB והתמיכה המלאה של S3 Tables ב-Iceberg V3, העדכון מראה ש-AWS מרכזת חלקים גדולים יותר משכבת הנתונים של agents בתוך S3.
הסתייגויות:
- AWS לא פרסמה נתונים על ההשפעה על latency או על עלות.
- הנתון של "עד פי 5" רלוונטי לסינונים סלקטיביים. בסינונים רחבים השינוי יהיה קטן.
- לפני שמחליפים מסד וקטורי ייעודי, כדאי להריץ benchmark על הנתונים שלכם.