Milvus 老友匯|AI、雲原生與向量數據庫的精彩碰撞回顧!


一場久違的老友對談,一次精妙的 AI 探索碰撞。


近日,Milvus  老友匯·Arch Meetup 在上海圓滿落幕。本次 Meetup 亮點頗多,不僅得到了 KubeBlocks 社區的大力支持,同時也邀請了來自網易伏羲和螞蟻集團的資深專家,現場分享各自對於 AI 時代雲原生與向量數據庫的思考。


【滑動查看更多】


接下來,讓我們快速回顧一下本次活動的主要觀點:


  • Zilliz 資深工程師 夏琮祺 :無論是架構、新功能、性能還是可維護性,Milvus 2.3.x 都是向量數據庫中的佼佼者,絕對值得一試


  • 網易伏羲資深 AI 研發工程師 陳京來 :Milvus 在網易圖文多模態場景的實踐中顯示,其有效地支撐了網易伏羲十億級圖文數據及應用落地


  • 雲猿生數據資深工程師 郭子昂:使用 KubeBlocks 輕鬆管理向量數據庫 + LLM 等 AIGC 數據基礎設施


  • 螞蟻集團工程師 徐鵬飛:使用 KCL 聲明式配置語言和工具應對工程化配置策略挑戰


以下爲詳細解讀,大家可按需享用:


01.

Milvus 2.3.x 新功能解讀


夏琮祺從架構、新功能、性能和可維護性方面對 Milvus 2.3.x 進行了全方位的解讀。



他首先提到,Milvus 2.3.x 在架構方面進行了升級,包括對異構硬件的支持(GPU Index:RAFT;ARM)、升級 QueryNode(QueryNodeV2)。夏琮祺着重介紹了 QueryNodeV2 。QueryNode 承擔了整個Milvus 系統中最重要的檢索服務,其穩定性、性能、擴展性對 Milvus 至關重要,但 QueryNodeV1 存在狀態複雜、消息隊列重複、代碼結構不清晰、報錯內容不直觀等問題。在 QueryNodeV2 的新設計中,團隊重新梳理了代碼結構、將複雜的狀態改爲無狀態的設計、移除了 delete 數據的消息隊列減少了資源浪費,在後續持續的穩定性測試中,QueryNodeV2 的表現更加優異。


新功能方面,Milvus 2.3.x 上線的這些功能值得重點關注:


  • Upsert:由於 Milvus 現在還不支持 update 操作,用戶需要更新向量時需要刪除舊有的記錄後並重新插入。在2.3版本,Milvus 提供的 Upsert 接口,保證了一個原子性的“修改”操作;


  • SCANN Index:Knowhere 2.0,支持了 SCANN 索引;



  • Iterator (pymilvus only):Milvus 的 Search 和 Query 都有數據上線,當用戶需要查詢大量乃至全量數據的時候,現存的接口無法完全滿足這一需求。在 Milvus 支持 range search 後,pymilvus 通過動態調整 range 的方式模擬了一套 Iterator 接口,可以返回用戶所需要的大批量數據;


  • Delete By Expression:Delete 接口,在 2.3 之前只能通過主鍵表達式來做刪除(ID in [1, 2, 3, …])。用戶想要刪除一些滿足條件的數據時,需要先 Query 其主鍵,再執行刪除操作,Delete by expression 提供了 Milvus 服務端的“語法糖”,在系統內部完成了這一操作。


不止如此,Milvus 2.3.x 還支持 MMap、Growing Index、支持動態修改配置、CDC 等,大大提升了 Milvus 的整體性能和可運維性,感興趣的同學可以查看 Milvus 2.3.x 系列文章瞭解詳情。


02.

Milvus 在網易圖文多模態場景的實踐


陳京來分享了“Milvus 在網易圖文多模態場景的實踐”。他表示,加大模型規模及提升數據質量是獲得更好的人工智能效果的重要手段。


網易伏羲從事大模型的研究 5 年的時間,積累了豐富的算法和工程經驗,先後打造了數十個文本和多模態預訓練模型。而向量在大型語言模型中起着重要作用,例如:Embedding——基於 AI 的工具和算法,可以將非結構化的數據,如文本、圖像、音頻和視頻等映射到低維度空間表示爲 embedding。



如今,伏羲圖文數據已經積累了 10 億+ 互聯網數據以及網易自有版權數據,有着大量圖文檢索的需求,相應地也帶來了各種挑戰:


  • 資源佔用高:佔用大量的計算、存儲資源


  • 異構資源:GPU、CPU、SSD 等不同類型資源

  • 業務類型複雜:圖文多模態、NLP、用戶畫像等多種業務,不同業務數據規模、時延、服務質量、召回精度等不同

  • 穩定性和可靠性


在此情況下,如何構建一個高性能、高可靠、異構的圖文向量引擎至關重要。Milvus 架構具有云原生、存儲計算分離、分佈式、冗餘和高可用等特點,在其助力下,網易伏羲實現了十億級 Milvus 集羣的創建。



此外,陳京來亦提到,在攻堅任務等研發框架下,伏羲啓動了圖文多模態領域能力的積累及應用探索。自研了支持中文場景的圖文生成模型“丹青”,基於此推出了AI 繪畫平臺“丹青約”,而 LangChain + Milvus 可以構建丹青約繪畫 Agent。


對於未來,陳京來期待用 Milvus 探索檢索增強生成(RAG)以提升圖文多模態模型能力,以及藉助更多 Milvus+ 的能力提升圖文多模態場景的應用落地。


03.

KubeBlocks:輕鬆管理 AIGC 數據基礎設施



郭子昂以《KubeBlocks:輕鬆管理 AIGC 數據基礎設施》爲主題,講解了 AI 時代背景下,KubeBlocks 的 AIGC 數據基礎設施解決方案:KubeBlocks 通過提供向量數據庫託管和 LLM 託管能力,幫助用戶構建自己的 AI 應用,極大降低了應用開發者的負擔。



  • KubeBlocks 的數據庫託管能力


KubeBlocks 作爲開源管控平臺,可運行和管理 K8s 上的數據庫、消息隊列及其他數據基礎設施。基於這一特點,KubeBlocks 的解決方案採用託管向量數據庫(如 Milvus)和圖數據庫(如NebulaGraph)的方式,實現多雲和線下部署,在實現快速 day-1 集成的同時,也提供了豐富的 day-2 運維操作。


KubeBlocks 依靠其強大的集成和抽象能力,可快速實現數據庫集成。郭子昂以 Milvus 爲例,展示了根據 KubeBlocks 的 API 在 YAML 文件中定義 Milvus 各種特性、運維配置,輕鬆實現向量數據庫全生命週期管理。


  • KubeBlocks 的 LLM 託管能力


KubeBlocks 具有強大的 LLMOps 能力,支持託管 LLM 及多種大模型。基於 KubeBlocks,開發者可實現 LLM 私有化部署,同時支持定製化大模型,實現行業數據的精細調整。此外,KubeBlocks 的 LLMOps 能力還支持 LLM 開發環境私有化部署、分佈式部署、高性能 batching,充分適配本地開發環境和生產環境,提升 GPU 利用率。


  • KubeChat:KubeBlocks AIGC 解決方案落地


基於上述解決方案,KubeBlocks 已成功落地 AI 應用,在 10 天時間開發出 AI 知識庫應用 KubeChat,輕鬆應對 Embedding、向量數據庫和大模型在開發 AI 應用過程中帶來的各類挑戰。



點擊下方鏈接,查看 KubeChat 演示視頻:




04.

KCL 在 AI 工程配置策略場景的探索和落地使用



徐鵬飛分享了《KCL 在 AI 工程配置策略場景的探索和落地使用》。平臺工程和 AI 工程的發展日益迅猛,但這也帶來了問題和挑戰,比如認知負擔、配置/數據種類繁雜、配置/數據清洗過程易出錯、效率可靠性低等。KCL 作爲專用配置策略語言爲配置和自動化提供瞭解決方案,以收斂的語言和工具集合解決領域問題近乎無限的變化和複雜性,同時兼顧表達力和易用性。


此外,KCL 以數據和模型爲中心,採用開發者可以理解的聲明式 Schema/配置/策略模型用於 AI 工程、雲原生工程等場景。KCL 爲開發人員提供了通過記錄和函數語言設計將配置(config)、建模抽象(schema)、邏輯(lambda)和策略(rule)作爲核心能力,具有可複用可擴展、抽象和組合能力、穩定性、高性能等特點。



KCL 可以廣泛用於表格數據集驗證和轉換、雲原生配置驗證和轉換、通過抽象進行應用交付、IaC & GitOps等場景。KCL 也注重開發者體驗,提供完備的 Language + Tools + IDEs + SDKs + Plugins 工具鏈支持,還支持模型 Registry。


彩蛋:看看模型 Registry 裏出現了誰?



回覆關鍵詞【老友匯上海】獲取現場嘉賓 PPT。


推薦閱讀



本文分享自微信公衆號 - ZILLIZ(Zilliztech)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章