当前位置: 首页>后端>正文

向量数据库(第 1 部分):每个数据库有何不同?

鍦?023骞翠笂鍗婂勾锛屼笌鍚戦噺鏁版嵁搴撶浉鍏崇殑钀ラ攢锛堜笉骞哥殑鏄紝鏈変簺鏄倰浣滐級闈炲父澶氾紝濡傛灉浣犳鍦ㄩ槄璇昏繖绡囨枃绔狅紝浣犲彲鑳藉ソ濂囦负浠€涔堝瓨鍦ㄨ繖涔堝绉嶇被鐨勫悜閲忔暟鎹簱锛屽畠浠箣闂存湁浣曚笉鍚屻€備粠鐞嗚涓婅锛屽悜閲忔暟鎹簱閮藉湪鍋氬悓鏍风殑浜嬫儏锛堝畠浠敮鎸佷竴绯诲垪闇€瑕佽涔夋悳绱㈢殑搴旂敤绋嬪簭锛夛紝閭d箞濡備綍寮€濮嬪舰鎴愬瀹冧滑鐨勬槑鏅虹湅娉曞憿锛燄煠?鍦ㄦ湰鏂囦腑锛屾垜灏嗗敖鍙兘浠ヨ瑙夋柟寮忕獊鍑哄悇绉嶅悜閲忔暟鎹簱涔嬮棿鐨勫樊寮傘€傛垜杩樺皢寮鸿皟鎴戣繘琛屾瘮杈冪殑鐗瑰畾缁村害锛屼互鎻愪緵鏇村叏闈㈢殑瑙嗚銆?/p>

杩欎箞澶氶€夋嫨!馃く

鍦ㄨ繃鍘荤殑鍑犱釜鏈堥噷锛屾垜涓€鐩村湪鐮旂┒涓嶅悓鐨勫悜閲忔暟鎹簱鍙婂叾鍐呴儴缁撴瀯锛屽苟閫氳繃瀹冧滑鐨凱ython API杩涜浜や簰锛屾垜鍙戠幇浜嗕互涓嬪父瑙侀棶棰橈細 姣忎釜鏁版嵁搴撲緵搴斿晢閮戒細鎺ㄩ攢鑷繁鐨勮兘鍔涳紙褰撶劧锛夛紝鍚屾椂璐綆绔炰簤瀵规墜锛屽洜姝ゆ牴鎹瀵熺偣涓嶅悓锛屽緢瀹规槗寰楀嚭鏈夊亸瑙佺殑瑙傜偣銆傚競鍦轰笂鏈夊緢澶氬悜閲忔暟鎹簱渚涘簲鍟嗭紝闇€瑕侀槄璇诲涓潵婧愮殑鍐呭鎵嶈兘杩炴帴鍚勭淇℃伅锛屼簡瑙f暣涓鍩熶互鍙婂瓨鍦ㄧ殑搴曞眰鎶€鏈€傚湪杩涜鍚戦噺鎼滅储鏃讹紝闇€瑕佽€冭檻寰堝鏉冭 锛?/p>

  • 娣峰悎鎼滅储杩樻槸鍏抽敭璇嶆悳绱紵鍏抽敭璇?鍚戦噺鎼滅储鐨勬贩鍚堟柟寮忓彲浠ヨ幏寰楁渶浣崇粨鏋滐紝姣忎釜鍚戦噺鏁版嵁搴撲緵搴斿晢閮芥剰璇嗗埌浜嗚繖涓€鐐癸紝骞舵彁渚涗簡鑷繁鐨勫畾鍒舵贩鍚堟悳绱㈣В鍐虫柟妗堛€?/p>

  • 鏈湴閮ㄧ讲杩樻槸浜戝師鐢燂紵寰堝渚涘簲鍟嗗皢鈥滀簯鍘熺敓鈥濅綔涓哄崠鐐癸紝濂藉儚鍩虹璁炬柦鏄笘鐣屼笂鏈€澶х殑鐥涚偣锛屼絾鏄暱鏈熸潵鐪嬶紝鏈湴閮ㄧ讲鍙兘鏇寸粡娴庯紝鍥犳鏇存湁鏁堛€?/p>

  • 寮€婧愯繕鏄畬鍏ㄦ墭绠★紵澶у鏁颁緵搴斿晢鍦ㄤ竴涓彲鐢ㄦ簮浠g爜鎴栧紑婧愪唬鐮佸熀纭€涓婃瀯寤猴紝灞曠ず浜嗕粬浠殑搴曞眰鏂规硶璁猴紝鐒跺悗閫氳繃瀹屽叏鎵樼鐨凷aaS鏉ュ疄鐜伴儴缃插拰鍩虹璁炬柦鐨勭泩鍒┿€備粛鐒跺彲浠ヨ嚜琛屾墭绠″緢澶氭暟鎹簱锛屼絾杩欓渶瑕侀澶栫殑浜哄姏鍜屽唴閮ㄦ妧鑳借姹傘€?/p>

鎴戞鍦ㄤ娇鐢ㄤ竴涓繍琛屼腑鐨勭數瀛愯〃鏍兼潵璺熻釜涓嶅悓鐨勫悜閲忔暟鎹簱渚涘簲鍟嗭紝璁板綍鍏抽敭鐨勭壒寰佸拰閲岀▼纰戙€傚彲鑳借繕鏈夊緢澶氭垜娌℃湁娉ㄦ剰鍒扮殑锛屾墍浠ヨ鍦ㄨ瘎璁轰腑鍛婅瘔鎴戯紒

姣旇緝鍚勭鍚戦噺鏁版嵁搴?/strong>

鎴嚦2023骞?鏈堬紝鎴戞鍦ㄧ爺绌?涓笓涓哄悜閲忔暟鎹簱鑰屾瀯寤虹殑浜у搧锛屼互鍙?涓皢鍚戦噺鎼滅储浣滀负棰濆鍔熻兘娣诲姞鐨勭幇鏈変骇鍝併€?/p>

鎬婚儴鎵€鍦ㄥ湴鍜岀粡璐?/p>

鏆備笖涓嶈€冭檻鐜版湁鐨勪緵搴斿晢锛堝嵆宸插缓绔嬬殑渚涘簲鍟嗭級锛屾垜浠彲浠ュ紑濮嬭窡韪瘡涓悜閲忔暟鎹簱鍒濆垱浼佷笟鐨勮瀺璧勯噷绋嬬銆?/p>

鍏徃 鎬婚儴 铻嶈祫
Weaviate 闃垮鏂壒涓?/td> 6800涓囩編鍏傿杞?/td>
Qdrant 鏌忔灄 1100涓囩編鍏冪瀛愯疆
Pinecone 鏃ч噾灞?/td> 1.38浜跨編鍏傿杞?/td>
Milvus/Zilliz 绾㈡湪鍩?/td> 1.13浜跨編鍏傿杞?/td>
Chroma 鏃ч噾灞?/td> 2000涓囩編鍏冪瀛愯疆
LanceDB 鏃ч噾灞?/td> 椋庨櫓鎶曡祫
Vespa 鍗扮瀹夌撼娉㈠埄鏂?/td> 闆呰檸
Vald 涓滀含 闆呰檸鏃ユ湰

鏄剧劧锛屽綋娑夊強鍒板悜閲忔暟鎹簱鏃讹紝鍔犲埄绂忓凹浜氬窞鐨勬咕鍖烘椿鍔ㄩ潪甯告椿璺冿紒姝ゅ锛岃瀺璧勫拰浼板€间箣闂村瓨鍦ㄥ緢澶х殑宸紓锛屽緢鏄庢樉鏁版嵁搴撶殑鑳藉姏涓庡叾铻嶈祫閲戦涔嬮棿涓嶅瓨鍦ㄧ浉鍏虫€с€?/p>

缂栫▼璇█鐨勯€夋嫨

濡備粖锛屽揩閫熴€佸搷搴旇繀鎹蜂笖鍙墿灞曠殑鏁版嵁搴撻€氬父浣跨敤鐜颁唬璇█濡侴olang鎴朢ust缂栧啓銆傚湪涓撲负鍚戦噺鏁版嵁搴撹€屾瀯寤虹殑渚涘簲鍟嗕腑锛屽敮涓€浣跨敤Java鏋勫缓鐨勬槸Vespa銆侰hroma鐩墠鏄竴涓狿ython/TypeScript鍖呰鍣紝鍩轰簬C++鏋勫缓鐨凮LAP鏁版嵁搴揅lickhouse鍜屽紑婧愬悜閲忕储寮旽NSWLib銆?/p>

向量数据库(第 1 部分):每个数据库有何不同?,第1张

鏈夎叮鐨勬槸锛孭inecone鍜孡anceDB鐨勫簳灞傚瓨鍌ㄦ牸寮忛兘鏄娇鐢≧ust浠庡ご寮€濮嬮噸鍐欑殑锛屽敖绠″畠浠渶鍒濇槸鐢–++缂栧啓鐨勩€傛樉鐒讹紝瓒婃潵瓒婂鐨勬暟鎹簱绀惧尯姝e湪鎷ユ姳Rust 馃挭锛?/p>

鏃堕棿绾?/strong>

姣忎釜鍚戦噺鏁版嵁搴撳瓨鍦ㄥ闀挎椂闂翠簡锛?/p>

向量数据库(第 1 部分):每个数据库有何不同?,第2张

Vespa鏄渶鏃╁湪褰撴椂涓诲鐨勫熀浜嶣M25鍏抽敭璇嶆悳绱㈢畻娉曟梺杈瑰紩鍏ュ悜閲忕浉浼兼€ф悳绱㈢殑渚涘簲鍟嗕箣涓€锛堟湁瓒g殑浜嬪疄锛歏espa鐨凣itHub浠撳簱鐜板湪宸茬粡鏈夎繎7.5涓囨鎻愪氦馃く锛夈€俉eaviate绱ч殢鍏跺悗锛屽湪2018骞村簳鎺ㄥ嚭浜嗕竴涓紑婧愮殑涓撶敤鍚戦噺鎼滅储鏁版嵁搴擄紝鍒?019骞达紝鎴戜滑寮€濮嬬湅鍒版洿澶氱殑绔炰簤鑰呰繘鍏ヨ繖涓鍩燂紝鍏朵腑鍖呮嫭寮€婧愮殑Milvus銆傞渶瑕佹敞鎰忕殑鏄紝鏃堕棿绾夸腑杩樻樉绀轰簡Zilliz锛屼絾瀹冩病鏈夊崟鐙垪鍑猴紝鍥犱负瀹冩槸Milvus鐨勶紙鍟嗕笟锛夋瘝鍏徃锛屽苟鎻愪緵鍩轰簬Milvus鏋勫缓鐨勫畬鍏ㄦ墭绠$殑浜戣В鍐虫柟妗堛€傚湪2021骞达紝鍙堟湁涓夊鏂扮殑渚涘簲鍟嗚繘鍏ヤ簡杩欎釜棰嗗煙锛歏ald銆丵drant鍜孭inecone銆傝€孍lasticsearch銆丷edis鍜孭ostgreSQL绛夌幇鏈変緵搴斿晢鍦ㄦ涔嬪墠鏄庢樉缂哄腑锛屽苟涓旂洿鍒?022骞村強浠ュ悗鎵嶅紑濮嬫彁渚涘悜閲忔悳绱紝姣斾汉浠鏈熺殑瑕佹櫄寰楀銆?/p>

婧愪唬鐮佸彲鐢ㄦ€?/strong>

鍦ㄥ垪鍑虹殑鎵€鏈夐€夐」涓紝鍙湁涓€涓槸瀹屽叏闂簮鐨勶細Pinecone銆俍illiz涔熸槸涓€涓棴婧愮殑瀹屽叏鎵樼鐨勫晢涓氳В鍐虫柟妗堬紝浣嗗畠瀹屽叏寤虹珛鍦∕ilvus涔嬩笂锛屽彲浠ョ湅浣滄槸Milvus鐨勬瘝鍏徃銆傚叾浠栨墍鏈夐€夐」鑷冲皯鍦ㄤ唬鐮佸簱鏂归潰鏄簮浠g爜鍙敤鐨勶紝鍏蜂綋鐨勮鍙瘉鍐冲畾浜嗕唬鐮佺殑鍙鍙€т互鍙婂浣曢儴缃层€?/p>

向量数据库(第 1 部分):每个数据库有何不同?,第3张

浣滀负寮€鍙戣€咃紝鎴戝彂鐜板湪姣忎釜鐩稿叧鏁版嵁搴撶殑寮€婧怗itHub浠撳簱涓窡韪棶棰樸€丳R鍜屽彂甯冨彲浠ュ緢濂藉湴浜嗚В璺嚎鍥句腑鐨勪紭鍏堜簨椤瑰拰瑙e喅鏂规銆侴itHub涓婄殑鏄熸槦鏁伴噺猸愶笍鏄」鐩彈鍒扮ぞ鍖哄叧娉ㄧ▼搴︾殑鑹ソ鎸囨爣锛屼絾娌℃湁浠€涔堟瘮涓汉缁忛獙鏇撮噸瑕侊紝鎵€浠ユ垜鎬绘槸灏藉彲鑳藉湴灏濊瘯浣跨敤灏藉彲鑳藉鐨勫紑婧愭暟鎹簱銆?/p>

鎵樼鏂规硶

鏁版嵁搴撲緵搴斿晢鎻愪緵鐨勫吀鍨嬫墭绠℃柟娉曞寘鎷嚜鎵樼锛堟湰鍦伴儴缃诧級鍜屾墭绠?浜戝師鐢燂紝涓よ€呴兘閬靛惊瀹㈡埛绔?鏈嶅姟鍣ㄦ灦鏋勩€傜涓夌杈冩柊鐨勯€夋嫨鏄祵鍏ュ紡妯″紡锛屽叾涓暟鎹簱鏈韩涓庡簲鐢ㄧ▼搴忎唬鐮佺揣瀵嗚€﹀悎锛屼互鏃犳湇鍔″櫒鐨勬柟寮忚繍琛屻€傜洰鍓嶏紝鍙湁Chroma鍜孡anceDB鍙敤浣滃祵鍏ュ紡鏁版嵁搴撱€?/p>

向量数据库(第 1 部分):每个数据库有何不同?,第4张

鍦ㄥ浘琛ㄤ腑锛屽湀鍑虹殑閮ㄥ垎鐗瑰埆鏈夎叮锛?Chroma璇曞浘鏋勫缓涓€涓叏鑳界殑瑙e喅鏂规锛屽叿鏈夊祵鍏ュ紡妯″紡锛堥粯璁ゆā寮忥級锛屼竴涓伒寰鎴风-鏈嶅姟鍣ㄦ灦鏋勭殑鎵樼浜戝師鐢熸湇鍔″櫒锛屼互鍙婁竴涓湪浜戜笂瀹炵幇鏃犳湇鍔″櫒璁$畻鐨勪簯鎵樼鍒嗗竷寮忕郴缁熴€侺anceDB鏄洰鍓嶆渶骞磋交鐨勫悜閲忔暟鎹簱锛屽畠鏈夌潃闆勫績鍕冨媰鐨勭洰鏍囷紝鍗虫彁渚涗竴涓祵鍏ュ紡鐨勫妯℃€丄I鏁版嵁搴擄紝閰嶅涓€涓畬鍏ㄦ墭绠$殑浜戣В鍐虫柟妗堬紝鍏锋湁鍒嗗竷寮忔棤鏈嶅姟鍣ㄨ绠楃幆澧冦€傝鏁版嵁搴撲緷璧栦簬Lance鏁版嵁鏍煎紡锛岃繖鏄竴绉嶇幇浠g殑鍒楀紡鏍煎紡锛屽彲蹇€熼珮鏁堝湴杩涜鍚戦噺鎿嶄綔鍜屾満鍣ㄥ涔犵殑鏌ユ壘銆?/p>

绱㈠紩鏂规硶

澶у鏁颁緵搴斿晢浣跨敤娣峰悎鍚戦噺鎼滅储鏂规硶锛屼互涓嶅悓鐨勬柟寮忓皢鍏抽敭璇嶆悳绱㈠拰鍚戦噺鎼滅储鐩哥粨鍚堛€傜劧鑰岋紝姣忎釜鏁版嵁搴撲娇鐢ㄧ殑搴曞眰鍚戦噺绱㈠紩鍙兘鏈夊緢澶х殑宸紓銆?/p>

向量数据库(第 1 部分):每个数据库有何不同?,第5张

缁濆ぇ澶氭暟鏁版嵁搴撲緵搴斿晢閫夋嫨鑷繁瀹氬埗瀹炵幇HNSW锛圚ierarchical Navigable Small-World graphs锛夌畻娉曘€傚皢鍚戦噺绱㈠紩鎸佷箙鍖栧埌纾佺洏涓婃鍦ㄨ繀閫熸垚涓轰竴涓噸瑕佺洰鏍囷紝浠ュ鐞嗚秴杩囧唴瀛樺ぇ灏忕殑鏁版嵁闆嗐€?019骞寸殑NeurIPS璁烘枃涓粙缁嶇殑DiskANN绠楁硶鏄剧ず锛屽畠鏈夋綔鍔涙垚涓哄湪鏁板崄浜挎暟鎹偣涓婅繘琛岀鐩樻悳绱㈢殑鏈€蹇畻娉曘€傚凡缁忓疄鐜颁簡鑷繁鐗堟湰鐨凞iskANN锛堟垨姝e湪绉瀬瀹炵幇锛夌殑鏁版嵁搴擄紝濡侻ilvus銆乄eaviate鍜孡anceDB锛屽湪杩欎釜棰嗗煙鍊煎緱鍏虫敞銆傚湪鏈妭涓紝鎴戝皢鍒楀嚭涓€浜涘叧閿鐐逛互鍙婃瘡涓暟鎹簱鐨勪紭缂虹偣銆傚叾涓竴浜涙槸鎴戦€氳繃鍚勭閫斿緞锛堝崥瀹€佹挱瀹€佺爺绌惰鏂囥€佷笌鐢ㄦ埛/鍚堜綔鑰呯殑瀵硅瘽浠ュ強鎴戣嚜宸辩殑浠g爜锛夎幏寰楃殑鐭ユ儏鎰忚銆?***

Pinecone

浼樼偣锛氶潪甯稿鏄撲笂鎵嬶紙鏃犻渶鎵樼璐熸媴锛屽畬鍏ㄤ簯鍘熺敓锛夛紝涓嶉渶瑕佺敤鎴蜂簡瑙e悜閲忓寲鎴栧悜閲忕储寮曠殑浠讳綍鐭ヨ瘑銆傛牴鎹粬浠殑鏂囨。锛堜篃闈炲父濂斤級锛屽畠鍙槸宸ヤ綔銆?缂虹偣锛氬畬鍏ㄤ笓鏈夛紝鏃犳硶浜嗚В鍏跺唴閮ㄨ繍浣滃拰璺嚎鍥撅紝闄ら潪鑳藉鍦℅itHub涓婅窡韪粬浠殑杩涘睍銆傛澶栵紝鏌愪簺鐢ㄦ埛鐨勭粡楠岀獊鏄句簡渚濊禆瀹屽叏澶栭儴鐨勭涓夋柟鎵樼鏈嶅姟浠ュ強寮€鍙戣€呭湪鏁版嵁搴撹缃拰杩愯鏂归潰瀹屽叏缂轰箯鎺у埗鐨勫嵄闄┿€備粠闀胯繙鏉ョ湅锛屼緷璧栧畬鍏ㄦ墭绠$殑闂簮瑙e喅鏂规鐨勬垚鏈奖鍝嶅彲鑳芥槸鏄捐憲鐨勶紝鑰冭檻鍒板瓨鍦ㄥぇ閲忕殑寮€婧愩€佽嚜鎵樼鐨勬浛浠f柟妗堛€?鎴戠殑鐪嬫硶锛氬湪2020-21骞达紝褰撳悜閲忔暟鎹簱杩樹笉澶负浜烘墍鐭ユ椂锛孭inecone鍦ㄦ彁渚涙柟渚跨殑寮€鍙戣€呭姛鑳芥柟闈㈤鍏堜簬鍏朵粬渚涘簲鍟嗐€傚揩杩涘埌2023骞达紝鍧︾巼鍦拌锛孭inecone鐜板湪鎻愪緵鐨勫姛鑳藉叾浠栦緵搴斿晢涔熸湁锛岃€屼笖澶у鏁板叾浠栦緵搴斿晢鑷冲皯鎻愪緵鑷墭绠°€佹墭绠℃垨宓屽叆寮忔ā寮忥紝鏇翠笉鐢ㄨ浠栦滑鐨勭畻娉曞拰搴曞眰鎶€鏈殑婧愪唬鐮佸鏈€缁堢敤鎴锋槸閫忔槑鐨勪簡銆?/p>

Weaviate

浼樼偣锛氫护浜烘儕鍙圭殑鏂囨。锛堝寘鎷妧鏈粏鑺傚拰鎸佺画瀹為獙锛夛紝Weaviate浼间箮涓撴敞浜庢瀯寤烘渶濂界殑寮€鍙戣€呬綋楠岋紝骞朵笖閫氳繃Docker闈炲父瀹规槗涓婃墜銆傚湪鏌ヨ鏂归潰锛屽畠鑳藉蹇€熶骇鐢熶簹姣绾х殑鎼滅储缁撴灉锛屽苟鎻愪緵鍏抽敭瀛楀拰鍚戦噺鎼滅储鍔熻兘銆?缂虹偣锛氱敱浜嶹eaviate鏄娇鐢℅olang鏋勫缓鐨勶紝鍙墿灞曟€ф槸閫氳繃Kubernetes瀹炵幇鐨勶紝杩欑鏂规硶鍦ㄦ暟鎹彉寰楅潪甯稿ぇ鏃堕渶瑕佸ぇ閲忕殑鍩虹璁炬柦璧勬簮锛堜笌Milvus绫讳技锛夈€俉eaviate鐨勫畬鍏ㄦ墭绠℃湇鍔$殑闀挎湡鎴愭湰褰卞搷灏氫笉娓呮锛屽彲鑳介渶瑕佸皢鍏舵€ц兘涓庡叾浠栧熀浜嶳ust鐨勬浛浠f柟妗堬紙濡俀drant鍜孡anceDB锛夎繘琛屾瘮杈冿紙灏界鏃堕棿灏嗗憡璇夋垜浠摢绉嶆柟娉曞湪鏈€鍏锋垚鏈晥鐩婄殑鏂瑰紡涓嬫墿灞曞緱鏇村ソ锛夈€?鎴戠殑鐪嬫硶锛歐eaviate鎷ユ湁涓€涓己澶х殑鐢ㄦ埛绀惧尯锛屽紑鍙戝洟闃熸鍦ㄧН鏋佸睍绀烘瀬闄愬彲鎵╁睍鎬э紙鏁板崈浜夸釜鍚戦噺锛夛紝鍥犳瀹冧技涔庨潰鍚戠殑鐩爣甯傚満鏄嫢鏈夊ぇ閲忔暟鎹苟甯屾湜杩涜鍚戦噺鎼滅储鐨勫ぇ鍨嬩紒涓氥€傚畠鎻愪緵鍏抽敭瀛楁悳绱㈠拰鍚戦噺鎼滅储锛屽苟涓斿叿鏈夊己澶х殑娣峰悎鎼滅储鍔熻兘锛屽彲浠ラ€傜敤浜庡悇绉嶇敤渚嬶紝鐩存帴涓嶦lasticsearch绛夋枃妗f暟鎹簱绔炰簤銆俉eaviate杩樼Н鏋佸叧娉ㄦ暟鎹瀛﹀拰鏈哄櫒瀛︿範锛岄€氳繃鍚戦噺鏁版嵁搴撳皢鍏舵墿灞曞埌浼犵粺鎼滅储鍜屾绱㈠簲鐢ㄧ▼搴忎箣澶栫殑棰嗗煙銆?/p>

Qdrant

浼樼偣锛氳櫧鐒禥drant姣擶eaviate鏇存柊锛屼絾瀹冧篃鏈夊緢濂界殑鏂囨。锛屽彲浠ュ府鍔╁紑鍙戜汉鍛橀€氳繃Docker杞绘澗涓婃墜銆傚畠瀹屽叏浣跨敤Rust鏋勫缓锛屾彁渚涗簡寮€鍙戜汉鍛樺彲浠ラ€氳繃鍏禦ust銆丳ython鍜孏olang瀹㈡埛绔闂殑API锛岃繖浜涙槸鐩墠鍚庣寮€鍙戜汉鍛樻渶甯哥敤鐨勮瑷€銆傜敱浜嶳ust鐨勫己澶ф€ц兘锛屽畠鐨勮祫婧愬埄鐢ㄤ技涔庢瘮浣跨敤Golang鏋勫缓鐨勬浛浠e搧浣庯紙鑷冲皯鍦ㄦ垜鐨勭粡楠屼腑鏄姝わ級銆傜洰鍓嶏紝瀹冮€氳繃鍒嗗尯鍜孯aft鍏辫瘑鍗忚瀹炵幇鍙墿灞曟€э紝杩欐槸鏁版嵁搴撻鍩熺殑鏍囧噯鍋氭硶銆?缂虹偣锛氫綔涓虹浉瀵硅緝鏂扮殑宸ュ叿锛孮drant鍦ㄦ煡璇㈢敤鎴风晫闈㈢瓑鏂归潰涓€鐩村湪杩庡ご璧朵笂Weaviate鍜孧ilvus绛夌珵浜夊鎵嬶紝灏界杩欎釜宸窛鍦ㄦ瘡涓柊鐗堟湰涓兘鍦ㄨ繀閫熺缉灏忋€?鎴戠殑鐪嬫硶锛氭垜璁や负Qdrant鏈夋湜鎴愪负璁稿鍏徃棣栭€夌殑鐭㈤噺鎼滅储鍚庣锛岃繖浜涘叕鍙稿笇鏈涙渶澶ч檺搴﹀湴闄嶄綆鍩虹璁炬柦鎴愭湰锛屽苟鍒╃敤鐜颁唬缂栫▼璇█Rust鐨勫己澶у姛鑳姐€傚湪鎾板啓鏈枃鏃讹紝娣峰悎鎼滅储灏氭湭鍙敤锛屼絾鏍规嵁浠栦滑鐨勮矾绾垮浘锛屾鍦ㄧН鏋佸紑鍙戜腑銆傛澶栵紝Qdrant涓嶆柇鍙戝竷鏈夊叧濡備綍浼樺寲鍏禜NSW瀹炵幇锛堝唴瀛樺拰纾佺洏涓婄殑瀹炵幇锛夌殑鏇存柊锛岃繖灏嗘瀬澶у湴甯姪瀹炵幇鍏堕暱鏈熺殑鎼滅储鍑嗙‘鎬у拰鍙墿灞曟€х洰鏍囥€傚緢鏄庢樉锛孮drant鐨勭敤鎴风ぞ鍖烘鍦ㄨ繀閫熷闀匡紙鏈夎叮鐨勬槸锛屾瘮Weaviate鐨勫闀块€熷害鏇村揩锛夛紝鏍规嵁鍏禛itHub鐨勬槦鏍囧巻鍙茶褰曪紒涔熻鍏ㄤ笘鐣岄兘瀵筊ust鎰熷埌鍏村锛熸棤璁哄浣曪紝鍦ㄦ垜鐪嬫潵锛屽湪Qdrant涓婃瀯寤哄簲鐢ㄦ槸闈炲父鏈夎叮鐨勷煒€銆?/p>

Milvus/Zilliz

浼樼偣锛氫綔涓哄悜閲忔暟鎹簱鐢熸€佺郴缁熶腑瀛樺湪鏃堕棿杈冮暱鐨勬暟鎹簱锛孧ilvus闈炲父鎴愮啛锛屽苟鎻愪緵浜嗚澶氬悜閲忕储寮曠殑閫夐」銆傚畠瀹屽叏浣跨敤Golang鏋勫缓锛屽叿鏈夋瀬寮虹殑鍙墿灞曟€с€傛埅鑷?023骞达紝瀹冩槸鍞竴涓€涓彁渚涘彲宸ヤ綔鐨凞iskANN瀹炵幇鐨勪富瑕佷緵搴斿晢锛屾嵁璇磋繖鏄鐩樹笂鏈€楂樻晥鐨勫悜閲忕储寮曘€傜己鐐癸細鍦ㄦ垜鐪嬫潵锛孧ilvus浼间箮鏄竴涓皢鍙墿灞曟€ч棶棰樿В鍐冲緱闈炲父褰诲簳鐨勮В鍐虫柟妗?瀹冮€氳繃浠g悊銆佽礋杞藉潎琛″櫒銆佹秷鎭唬鐞嗐€並afka鍜孠ubernetes鐨勭粍鍚堝疄鐜颁簡楂樺害鍙墿灞曟€э紝杩欎娇寰楁暣涓郴缁熷彉寰楅潪甯稿鏉傚拰璧勬簮瀵嗛泦銆傚鎴风API锛堜緥濡侾ython锛変篃涓嶅儚Weaviate鍜孮drant绛夎緝鏂扮殑鏁版嵁搴撻偅鏍锋槗璇绘垨鐩磋锛屽悗鑰呮洿娉ㄩ噸寮€鍙戣€呬綋楠屻€傛垜鐨勭湅娉曪細寰堟槑鏄撅紝Milvus鐨勬瀯寤虹悊蹇垫槸涓轰簡瀹炵幇瀵瑰悜閲忕储寮曠殑澶ц妯″彲鎵╁睍鎬э紝鑰屽湪璁稿鎯呭喌涓嬶紝褰撴暟鎹殑澶у皬涓嶆槸澶ぇ鏃讹紝Milvus鍙兘浼氭樉寰楄繃浜庡鏉傘€傚浜庢洿闈欐€佸拰涓嶉绻佺殑澶ц妯℃儏鍐碉紝Qdrant鎴朩eaviate绛夋浛浠f柟妗堝彲鑳芥洿渚垮疁涓旀洿蹇€熷湴鎶曞叆鐢熶骇銆?/p>

Chroma

浼樼偣锛欳hroma涓哄紑鍙戜汉鍛樻彁渚涗簡鏂逛究鐨凱ython/JavaScript鎺ュ彛锛屽彲浠ュ揩閫熷惎鍔ㄥ悜閲忓瓨鍌ㄣ€傚畠鏄競鍦轰笂绗竴涓粯璁ゆ彁渚涘祵鍏ユā寮忕殑鍚戦噺鏁版嵁搴擄紝鍏朵腑鏁版嵁搴撳拰搴旂敤灞傜揣瀵嗛泦鎴愶紝浣垮紑鍙戜汉鍛樿兘澶熷揩閫熸瀯寤恒€佸師鍨嬭璁″拰灞曠ず浠栦滑鐨勯」鐩€?缂虹偣锛氫笌鍏朵粬涓撻棬鏋勫缓鐨勪緵搴斿晢涓嶅悓锛孋hroma涓昏鏄竴涓洿缁曠幇鏈夌殑OLAP鏁版嵁搴擄紙Clickhouse锛夊拰鐜版湁鐨勫紑婧愬悜閲忔悳绱㈠疄鐜帮紙hnswlib锛夌殑Python/TypeScript灏佽銆傜洰鍓嶏紙鎴嚦2023骞?鏈堬級锛屽畠娌℃湁瀹炵幇鑷繁鐨勫瓨鍌ㄥ眰銆?鎴戠殑鐪嬫硶锛氬悜閲忔暟鎹簱甯傚満姝e湪蹇€熷彂灞曪紝Chroma浼间箮鍊惧悜浜庨噰鍙栤€滅瓑寰呰鏈涒€濈殑绛栫暐锛屾槸涓烘暟涓嶅鐨勬棬鍦ㄦ彁渚涘绉嶆墭绠¢€夐」鐨勪緵搴斿晢涔嬩竴锛氭棤鏈嶅姟鍣?宓屽叆寮忋€佽嚜鎵樼锛堝鎴风-鏈嶅姟鍣級鍜屼簯鍘熺敓鍒嗗竷寮廠aaS瑙e喅鏂规锛屽彲鑳藉悓鏃舵敮鎸佸祵鍏ュ紡鍜屽鎴风-鏈嶅姟鍣ㄦā寮忋€傛牴鎹粬浠殑璺嚎鍥撅紝Chroma鐨勬湇鍔″櫒瀹炵幇姝e湪杩涜涓€侰hroma甯︽潵鐨勫彟涓€涓湁瓒g殑鍒涙柊棰嗗煙鏄噺鍖栤€滄煡璇㈢浉鍏虫€р€濓紝鍗宠繑鍥炵粨鏋滀笌鐢ㄦ埛杈撳叆鏌ヨ鐨勬帴杩戠▼搴︺€傚湪浠栦滑鐨勮矾绾垮浘涓繕鍒楀嚭浜嗗彲瑙嗗寲宓屽叆绌洪棿锛岃繖鏄竴涓垱鏂伴鍩燂紝鍙互浣挎暟鎹簱鍦ㄦ悳绱箣澶栫殑璁稿搴旂敤涓娇鐢ㄣ€傜劧鑰岋紝浠庨暱杩滄潵鐪嬶紝鎴戜滑杩樻病鏈夌湅鍒板祵鍏ュ紡鏁版嵁搴撴灦鏋勫湪鍚戦噺鎼滅储棰嗗煙鎴愬姛瀹炵幇鍟嗕笟鍖栵紝鍥犳瀹冪殑鍙戝睍锛堜互鍙婁笅闈㈡弿杩扮殑LanceDB锛夊皢鏄竴涓湁瓒g殑瑙傚療瀵硅薄锛?/p>

LanceDB

浼樼偣锛歀anceDB涓撲负澶氭ā鎬佹暟鎹紙鍥惧儚銆侀煶棰戙€佹枃鏈級鐨勫垎甯冨紡绱㈠紩鍜屾悳绱㈣€岃璁★紝鏋勫缓鍦↙ance鏁版嵁鏍煎紡涔嬩笂锛岃繖鏄竴绉嶅垱鏂扮殑銆佺敤浜庢満鍣ㄥ涔犵殑鏂板瀷鍒楀紡鏁版嵁鏍煎紡銆備笌Chroma涓€鏍凤紝LanceDB浣跨敤宓屽叆寮忋€佹棤鏈嶅姟鍣ㄦ灦鏋勶紝骞朵笖瀹屽叏浣跨敤Rust浠庡ご寮€濮嬫瀯寤猴紝鍥犳涓嶲drant涓€璧凤紝杩欐槸浠呮湁鐨勫彟涓€涓埄鐢≧ust鐨勯€熷害銆佸唴瀛樺畨鍏ㄦ€у拰鐩稿杈冧綆璧勬簮鍒╃敤鐜囩殑涓昏鍚戦噺鏁版嵁搴撲緵搴斿晢銆?缂虹偣锛歀anceDB鏄竴涓潪甯稿勾杞荤殑鏁版嵁搴擄紝鍥犳璁稿鍔熻兘姝e湪绉瀬寮€鍙戜腑锛屽苟涓旂敱浜庡伐绋嬪洟闃熻妯¤緝灏忥紝鍔熻兘鐨勪紭鍏堢骇鎺掑簭灏嗘槸涓€涓寫鎴樸€?鎴戠殑鐪嬫硶锛氭垜璁や负鍦ㄦ墍鏈夌殑鍚戦噺鏁版嵁搴撲腑锛孡anceDB涓庡叾浠栨暟鎹簱鐨勫尯鍒渶澶с€傝繖涓昏鏄洜涓哄畠鍦ㄦ暟鎹瓨鍌ㄥ眰锛堜娇鐢↙ance锛屼竴绉嶆瘮parquet鏇村揩閫熺殑鏂板瀷鍒楀紡鏍煎紡锛屼笓涓洪潪甯搁珮鏁堢殑鏌ユ壘鑰岃璁★級鍜屽熀纭€鏋舵瀯灞傞潰杩涜浜嗗垱鏂?閫氳繃浣跨敤鏃犳湇鍔″櫒鏋舵瀯銆傚洜姝わ紝澶уぇ鍑忓皯浜嗚澶氬熀纭€鏋舵瀯鐨勫鏉傛€э紝鏋佸ぇ鍦板鍔犱簡寮€鍙戜汉鍛樻瀯寤虹洿鎺ヨ繛鎺ュ埌鏁版嵁婀栫殑鍒嗗竷寮忚涔夋悳绱㈠簲鐢ㄧ▼搴忕殑鑷敱鍜岃兘鍔涖€?/p>

Vespa

浼樼偣锛氭彁渚涗簡鏈€鈥滀紒涓氱骇灏辩华鈥濈殑娣峰悎鎼滅储鑳藉姏锛屽皢鍏抽敭瀛楁悳绱㈠拰鑷畾涔夊悜閲忔悳绱笌HNSW鐩哥粨鍚堛€傚敖绠″叾浠栦緵搴斿晢濡俉eaviate涔熸彁渚涘叧閿瓧鍜屽悜閲忔悳绱紝浣哣espa鏄渶鏃╂帹鍑鸿繖绉嶅姛鑳界殑渚涘簲鍟嗕箣涓€锛岃繖缁欎粬浠冻澶熺殑鏃堕棿鏉ヤ紭鍖栧叾鍔熻兘锛屼娇鍏跺揩閫熴€佸噯纭拰鍙墿灞曘€?缂虹偣锛氫笌浣跨敤鎬ц兘瀵煎悜璇█锛堝Go鎴朢ust锛夌紪鍐欑殑鏇寸幇浠g殑鏇夸唬鏂规鐩告瘮锛屽紑鍙戜汉鍛樹綋楠屼笉澶熸祦鐣咃紝杩欐槸鐢变簬搴旂敤灞傛槸鐢↗ava缂栧啓鐨勩€傛澶栵紝鐩村埌鏈€杩戯紝瀹冨苟娌℃湁鎻愪緵闈炲父绠€鍗曠殑璁剧疆鍜屾媶闄ゅ紑鍙戝疄渚嬬殑鏂规硶锛屼緥濡傞€氳繃Docker鍜孠ubernetes銆?鎴戠殑鐪嬫硶锛歏espa纭疄鎻愪緵浜嗛潪甯稿ソ鐨勫姛鑳斤紝浣嗗畠鐨勫簲鐢ㄧ▼搴忎富瑕佹槸鐢↗ava缂栧啓鐨勶紝鑰屽悗绔拰绱㈠紩灞傛槸鐢–++鏋勫缓鐨勩€傝繖浣垮緱闅忕潃鏃堕棿鐨勬帹绉伙紝瀹冩洿闅句互缁存姢锛屽苟涓旂浉瀵逛簬鍏朵粬鏇夸唬鏂规鑰岃█锛屽畠鐨勫紑鍙戜汉鍛樺弸濂藉害杈冧綆銆傜幇鍦ㄥぇ澶氭暟鏂扮殑鏁版嵁搴撻兘鏄畬鍏ㄧ敤涓€绉嶈瑷€缂栧啓鐨勶紝閫氬父鏄疓olang鎴朢ust锛屽苟涓斾技涔庡湪Weaviate銆丵drant鍜孡anceDB绛夋暟鎹簱涓畻娉曞拰鏋舵瀯鐨勫垱鏂伴€熷害鏇村揩銆?/p>

Vald

浼樼偣锛氶€氳繃楂樺害鍒嗗竷寮忕殑鏋舵瀯锛岃璁$敤浜庡鐞嗗妯℃€佹暟鎹瓨鍌紝鍚屾椂鍏锋湁绱㈠紩澶囦唤绛夋湁鐢ㄥ姛鑳姐€備娇鐢ㄩ潪甯稿揩閫熺殑ANN鎼滅储绠楁硶NGT锛堥偦鍩熷浘鍜屾爲锛夛紝褰撲笌楂樺害鍒嗗竷寮忕殑鍚戦噺绱㈠紩缁撳悎浣跨敤鏃讹紝瀹冩槸鏈€蹇殑ANN绠楁硶涔嬩竴銆?缂虹偣锛氫笌鍏朵粬渚涘簲鍟嗙浉姣旓紝Vald浼间箮娌℃湁閭d箞澶氱殑鍏虫敞搴﹀拰浣跨敤閲忥紝骞朵笖鏂囨。娌℃湁鏄庣‘鎻忚堪浣跨敤浜嗕粈涔堝悜閲忕储寮曪紙鈥滃垎甯冨紡绱㈠紩鈥濈浉褰撴ā绯婏級銆傚畠浼间箮瀹屽叏鐢变竴涓疄浣揧ahoo! Japan璧勫姪锛屽緢灏戞湁鍏充簬鍏朵粬涓昏鐢ㄦ埛鐨勪俊鎭€?鎴戠殑鐪嬫硶锛氭垜璁や负Vald鏄竴涓瘮鍏朵粬渚涘簲鍟嗘洿涓轰笓涓氱殑渚涘簲鍟嗭紝涓昏婊¤冻Yahoo! Japan鐨勬悳绱㈤渶姹傦紝骞朵笖鏁翠綋涓婃嫢鏈変竴涓洿灏忕殑鐢ㄦ埛绀惧尯锛岃嚦灏戞牴鎹粬浠湪GitHub涓婄殑鏄熸爣鏉ョ湅鏄姝ゃ€傚叾涓竴閮ㄥ垎鍘熷洜鍙兘鏄畠鎬婚儴浣嶄簬鏃ユ湰锛屽苟涓旀病鏈夊儚鍏朵粬鍦ㄦ鐩熷拰婀惧尯鐨勪緵搴斿晢閭f牱杩涜澶ц妯$殑甯傚満鎺ㄥ箍銆?/p>

Elasticsearch, Redis and pgvector

浼樼偣锛氬鏋滃凡缁忓湪浣跨敤鐜版湁鐨勬暟鎹瓨鍌紝濡侲lasticsearch銆丷edis鎴朠ostgreSQL锛岄偅涔堝埄鐢ㄥ畠浠殑鍚戦噺绱㈠紩鍜屾悳绱㈠姛鑳芥槸鐩稿綋绠€鍗曠殑锛屾棤闇€浣跨敤鏂版妧鏈€?缂虹偣锛氱幇鏈夌殑鏁版嵁搴撲笉涓€瀹氫互鏈€浼樼殑鏂瑰紡瀛樺偍鎴栫储寮曟暟鎹紝鍥犱负瀹冧滑琚璁′负閫氱敤鐩殑锛岀粨鏋滄槸锛屽湪娑夊強鐧句竾绾у悜閲忔悳绱㈠強浠ヤ笂瑙勬ā鐨勬暟鎹椂锛屾€ц兘浼氬彈鍒板奖鍝嶃€俁edis VSS锛圴ector Search Store锛変箣鎵€浠ュ揩閫燂紝涓昏鏄洜涓哄畠瀹屽叏鍦ㄥ唴瀛樹腑锛屼絾涓€鏃︽暟鎹秴杩囧唴瀛樺ぇ灏忥紝灏遍渶瑕佽€冭檻鏇夸唬瑙e喅鏂规銆?鎴戠殑鐪嬫硶锛氭垜璁や负涓撲负鐗瑰畾鐩殑鏋勫缓鐨勫悜閲忔暟鎹簱灏嗛€愭笎鍦ㄩ渶瑕佽涔夋悳绱㈢殑棰嗗煙涓笌宸叉湁鏁版嵁搴撶珵浜夛紝涓昏鏄洜涓哄畠浠湪鍚戦噺鎼滅储鐨勬渶鍏抽敭缁勪欢-瀛樺偍灞傞潰涓婅繘琛屼簡鍒涙柊銆侶NSW鍜孉NN绠楁硶绛夌储寮曟柟娉曞湪鏂囩尞涓湁寰堝ソ鐨勬枃妗h褰曪紝澶у鏁版暟鎹簱渚涘簲鍟嗛兘鍙互鎺ㄥ嚭鑷繁鐨勫疄鐜帮紝浣嗕笓涓虹壒瀹氱洰鐨勬瀯寤虹殑鍚戦噺鏁版嵁搴撳叿鏈夋牴鎹换鍔¤繘琛屼紭鍖栫殑浼樺娍锛堟洿涓嶇敤璇村畠浠槸鐢ㄧ幇浠g紪绋嬭瑷€濡侴o鍜孯ust缂栧啓鐨勶級锛屽嚭浜庡彲鎵╁睍鎬у拰鎬ц兘鐨勫師鍥狅紝浠庨暱杩滄潵鐪嬶紝瀹冧滑寰堝彲鑳藉湪杩欎釜棰嗗煙鑾疯儨銆?/p>

缁撹:涓囦嚎瑙勬ā鐨勯棶棰?/strong>

寰堥毦鎯宠薄鍦ㄥ巻鍙蹭笂鐨勪换浣曟椂鍊欙紝浠讳綍涓€绉嶆暟鎹簱鑳藉鍚稿紩濡傛澶氱殑鍏紬鍏虫敞锛屾洿涓嶇敤璇撮闄╂姇璧勭敓鎬佺郴缁熶簡銆傚悜閲忔暟鎹簱渚涘簲鍟嗭紙濡侻ilvus銆乄eaviate锛夎瘯鍥捐В鍐崇殑涓€涓叧閿敤渚嬫槸濡備綍浠ユ渶浣庣殑寤惰繜瀹炵幇涓囦嚎绾у悜閲忔悳绱€傝繖鏄竴椤规瀬鍏跺洶闅剧殑浠诲姟锛岃€冭檻鍒板綋浠婇€氳繃娴佸紡澶勭悊鎴栨壒澶勭悊浼犺緭鐨勬暟鎹噺锛屼笓涓哄瓨鍌ㄥ拰鏌ヨ鎬ц兘杩涜浼樺寲鐨勪笓鐢ㄥ悜閲忔暟鎹簱鏈€鏈夊彲鑳藉湪涓嶄箙鐨勫皢鏉ョ獊鐮磋繖涓殰纰嶃€?鎴戝皢浠ヨ瀵熷埌鐨勫巻鍙叉暟鎹簱涓栫晫涓渶鎴愬姛鐨勫晢涓氭ā寮忎綔涓虹粨鏉燂紝鍗抽鍏堝紑婧愪唬鐮侊紙浠ヤ究婵€鍙戞妧鏈懆鍥寸殑鐑儏绀惧尯锛夛紝鐒跺悗閫氳繃鎵樼鏈嶅姟鎴栦簯鏈嶅姟鏉ュ晢涓氬寲宸ュ叿銆傚祵鍏ュ紡鏁版嵁搴撳湪杩欎釜棰嗗煙鐩稿杈冩柊锛屽皻涓嶆竻妤氬畠浠湪浜у搧鍟嗕笟鍖栧拰闀挎湡鏀跺叆鏂归潰鐨勬垚鍔熺▼搴︺€傚洜姝わ紝鍙互鎺ㄦ柇鍑哄畬鍏ㄩ棴婧愮殑浜у搧鍙兘鏃犳硶鍗犳嵁澶ч儴鍒嗗競鍦轰唤棰?浠庨暱杩滄潵鐪嬶紝鎴戠洿瑙夎涓洪噸瑙嗗紑鍙戣€呯敓鎬佺郴缁熷拰寮€鍙戣€呬綋楠岀殑鏁版嵁搴撴湁鍙兘钃媰鍙戝睍锛屽苟涓斿缓绔嬩竴涓椿璺冪殑鐩镐俊璇ュ伐鍏风殑寮€婧愮ぞ鍖哄皢姣斾綘鎯宠薄鐨勬洿閲嶈锛?甯屾湜澶у瑙夊緱杩欎釜鎬荤粨鏈夌敤锛佸湪鎺ヤ笅鏉ョ殑鏂囩珷涓紝鎴戝皢鎬荤粨鍚戦噺鏁版嵁搴撲腑鐨勫簳灞傛悳绱㈠拰绱㈠紩绠楁硶锛屽苟娣卞叆鎺㈣鎶€鏈粏鑺傘€傪煠?馃殌

浣滆€咃細Prashanth Rao

鏇村鎶€鏈共璐у敖鍦╳x鈥滀簯鍘熺敓鏁版嵁搴撯€?/p>


https://www.xamrdz.com/backend/3sz1920745.html

相关文章: