本文介紹向量索引的原理,以及在日志服務Project中配置和使用向量索引。
如需使用該功能,請提交工單申請加白。
向量索引概述
向量索引是信息檢索和機器學習中的一種技術,旨在高效地存儲和檢索高維數據(如文本、圖像、音頻等)。通過將數據(如文本)映射到高維空間的一個點,使得語義相似的文本在高維空間中距離相近。在高維空間中,每一個數據點用一個高維向量表示,每個維度代表一個特征。
距離度量:使用距離度量(如歐氏距離、余弦相似度等)來量化向量之間的相似性。
向量索引:使用數據結構(如樹形結構、哈希表等)構建索引,以提高搜索效率。例如,常見的向量索引包括HNSW,IVF等。
向量索引的優勢
日志服務是一個一站式日志數據分析平臺,解決日志數據的采集、處理、存儲、檢索分析的需求。大語言模型的興起,對自然語言的搜索需求陡增。例如對用戶問答數據,Agent和LLM的交互日志,有審計、檢索、分析的需求。 為了解決大語言模型領域的語義搜索需求,SLS推出了向量索引功能。
日志服務向量索引的優勢:一站式的向量嵌入 - 索引構建。在傳統的解決方案中,用戶需要維護向量嵌入和向量數據庫兩個系統。日志服務合二為一,用戶無需維護復雜的架構,只需要選擇嵌入模型即可。
配置向量索引
前提條件
已創建Project、標準型Logstore并完成日志采集。具體操作,請參見創建項目Project、創建Logstore和數據采集概述。
已創建全文索引和字段索引,更多信息,請參見創建索引。
操作步驟
打開查詢分析屬性,在向量索引這一列中,選擇對應的embedding模型后,自動開啟向量索引。
向量索引默認關閉,開啟向量索引后,只對新數據生效。
向量索引不支持重建索引。
模型參數解析
dashscope-embedding-v2 : 使用百煉的embedding模型,模型維度是1536。更多信息,請參見快速開始。
bge-large-zh-v1.5-q4-1: bge中文量化模型,模型維度是1024。
向量搜索語法
日志服務搜索向量,返回指定距離范圍內的數據,數據按照時間順序排序。
語法
similarity(字段名, "搜索文本") < 距離
字段名:要搜索的字段,例如msg。
搜索文本:要搜索目標文本,例如"番茄雞蛋"。
距離:距離范圍從0到1,距離越小表示越相似。0表示最相似,1表示最不相似。
使用示例
similarity("input_semantic.topic","教育") < 0.1
表示搜索input_semantic.topic
字段中跟“教育”相關,距離在0.1以內的數據。
混合檢索
向量檢索可以和關鍵字檢索混合使用,使用and
連接。例如:error and similarity("input_semantic.summary","查詢") <0.8
。
混合檢索只支持and 連接。