OceanBase向量檢索在貨拉拉的探索和實踐

貨拉拉成立于2013年,成長于粵港澳大灣區,是從事同城跨城貨運、企業版物流服務、搬家、零擔、跑腿、冷運、汽車租售及車后市場服務的互聯網物流商城。截至2024年,貨拉拉在全球擁有1670萬月活用戶和168萬月活司機,業務覆蓋全球11個市場、400+城市,并在全球設有6個數據中心。

一、大模型應用場景的挑戰

貨拉拉基于自身在物流領域 AI 落地的深厚積累,已在 14+ 個業務或部門,50+ 個真實業務場景探索和落地大模型應用。在引入大模型的過程中,面臨著其在垂直領域知識的缺乏、時效性不足以及數據安全隱患等挑戰。為應對這些問題,采用了業界較為通用的解決方案的解決方案——檢索增強生成技術(Retrieval-Augmented Generation, RAG),通過引入外部數據,讓大模型的回答從原來的“閉卷”變為“開卷”。RAG 通過整合領域專有知識、私有數據以及實時數據,顯著降低了答案生成的不確定性,增強了數據安全性,從而有效解決了大模型的固有問題,提升了回答的準確性和實用性。

RAG 的核心在于將強大的語言模型能力與向量數據庫的能力相結合,企業在實施 RAG 方案的過程中,通常需要結合一個向量數據庫。向量數據庫在處理多模數據和語義檢索方面具有獨特的優勢,具體體現在以下幾個方面:

存儲非結構化數據:向量數據庫能夠有效存儲和管理多模態數據,如音頻、視頻、圖片和文本等。這些數據通常具有規模龐大、信息密度高、處理成本高的特點。

向量化表示:通過神經網絡提取數據特征,將其轉換為高維空間中的坐標點。向量化表示賦予數據語義表達能力,使其適用于相似性檢索。

檢索非結構化數據:通過計算向量間的距離(如內積或歐氏距離),識別出最相似的向量。檢索過程涉及近鄰圖的遍歷,需要進行大量的浮點運算,以實現高效的相似性匹配。

二、向量數據庫選型思考

(一)原有架構與痛點

現有的架構包含基礎設施層(CPU 和 GPU 兩種機型)、存儲層(向量數據庫、ES等)、檢索層(以圖索引為主,多種檢索類型)、接入層與入口層。并且在國內外共有 5 個集群,單集群內存配置在 380 +GB,單表數據量最大為2000萬。

痛點1:動態 schema

隨著業務的快速發展,頻繁的字段增刪操作成為常態。目前的解決方案是通過新建表、導入現有數據并最終重建索引來實現,這一流程相對繁瑣。對于某些數據量較大的表,索引重建的耗時可能長達十幾個小時。此外,索引重建過程對 CPU 和內存資源消耗極大,容易引發線上業務抖動。

痛點2:混合檢索

向量檢索在相似語義檢索和多模態數據理解方面具有顯著優勢,而全文檢索則在精準匹配、短文本及低頻詞匯檢索上表現優異。在企業應用中,僅依賴單一檢索方式難以滿足業務對檢索精度的高要求。為了彌補全文檢索的缺陷,引入了Elasticsearch來作為全文檢索引擎,這也導致了整體架構的復雜性增加,同時提升了系統的維護難度。對于用戶而言,需要在應用層實現復雜的reranking邏輯,并且得到的相似度得分難以統一,從而增加了使用成本。因此,業務希望引入一站式混合索引能力。

痛點3:運維難度大

穩定性能力弱:向量數據庫本身存在不穩定性,BUG 較多;缺乏專家經驗使得問題排查變得困難;監控指標有限,問題定位困難。

擴展性不足:節點的橫向擴展能力較差,數據遷移依賴人工;數據分片的管理和運維過程復雜。

權限認證能力弱:現有的權限認證機制不夠完善,容易引發數據泄漏和安全問題,需要自行實現權限管理,增加了開發和運維的復雜性。

社區活躍度差:雖然項目仍在維護,但更新頻率較低,社區貢獻和開發者參與度有限,且社區功能和生態發展緩慢,無法滿足業務未來的需求。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/86332.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/86332.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/86332.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Flask(五) 表單處理 request.form、WTForms

文章目錄 1. 基本表單處理,使用 request.form(輕量)示例一創建 HTML 表單處理表單數據 示例二HTML 表單(login.html)Flask 路由處理表單 2. 使用 Flask-WTF 擴展安裝設置 Secret Key(CSRF 防護)…

c++虛繼承復習

深入理解C虛繼承:解決菱形繼承問題的利器 在C面向對象編程中,多重繼承是一個強大但容易誤用的特性。今天我們來探討一個特殊的多重繼承形式——虛繼承(Virtual Inheritance),它是解決著名的"菱形繼承問題"的…

魔樂社區國產算力應用創新大賽重磅開啟!

當國產算力崛起成為 AI 發展新引擎,你是否渴望用創新方案解鎖無限可能?魔樂社區國產算力應用創新大賽重磅來襲!聚焦國產算力前沿,無論你是開發者、研究者,還是技術愛好者,都能在這里一展身手。 現在報名參…

WebView 性能調試與優化全流程:加載速度與渲染性能雙提升

移動端 WebView 頁面通常用于承載復雜的前端應用,尤其是動態加載大量數據或進行高頻率交互時,性能問題尤為突出。用戶常常會遇到頁面加載緩慢、滾動卡頓、甚至是部分內容顯示不完全的情況。在這種情況下,如何優化數據加載與渲染過程&#xff…

51c嵌入式~CAN~合集2

我自己的原文哦~ https://blog.51cto.com/whaosoft/14016935 一、CAN總線常見信號干擾問題 定位干擾原因 當總線有干擾時,有經驗的工程師能夠迅速定位,但是對于新手來說卻很麻煩。 造成總線干擾的原因有很多,比如通過電磁輻射耦合到通…

【cursor實戰】分析python下并行、串行計算性能

提示語 寫一個Python并行計算、串行計算性能對比的代碼。并行計算要包括多線程和多進程兩種,計算的內容要比較復雜 模型 claude-4-sonnet 生成的代碼 #!/usr/bin/env python3 # -*- coding: utf-8 -*- """ Python并行計算與串行計算性能對比程序 包含串行…

ubuntu中53端口被占用導致dnsmasq無法使用。已解決。

方案一:修改參數,但不影響使用 編輯配置文件 vim /etc/systemd/resolved.conf將此參數修改為: DNSStubListenerno重啟服務 sudo systemctl daemon-reload sudo systemctl disable systemd-resolved.service方案一:直接禁用 編…

【多模態大模型】訓練與推理直觀解讀

1.直觀案例解讀-圖文問答 假設我們的輸入是一張包含小貓的圖片,以及一個文本提問:“其中是否有小貓?”。下面我將以最詳盡的方式,描述數據在nanoVLM模型中從輸入到輸出的完整流動過程,并解釋每一步中數據的形狀和含義…

uni-app項目實戰筆記17--獲取系統信息getSystemInfo狀態欄和膠囊按鈕

接著上一篇筆記,在添加頭部導航欄后,H5顯示正常: 但在微信小程序中,由于劉海屏的存在,添加的頭部導航欄跟狀態欄重疊在一起: 因此需要獲取狀態欄的高度以便狀態欄和導航欄錯開不重疊在一起。同時頭部導航欄…

Windows下Zookeeper客戶端啟動緩慢問題分析與解決方案

文章目錄 1. 問題描述2. 問題分析2.1 性能分析2.2 根本原因 3. 解決方案3.1 臨時解決方案3.2 長期解決方案 4. 注意事項5. 結論 1. 問題描述 在Windows 8.1 64-bit操作系統環境下,使用Curator框架連接Zookeeper時出現客戶端啟動異常緩慢的問題。具體表現為&#xf…

在 Java 中生成 PDF 縮略圖(教程)

Java 本身無法自動生成 PDF 頁面縮略圖,但幸運的是,有許多軟件庫可以實現這一功能。本文示例使用我們自家的 JPedal 庫,僅需幾行 Java 代碼即可創建縮略圖。JPedal 是開發者使用的最佳 Java PDF 庫。 如何使用 JPedal 將 PDF 轉換為縮略圖 …

基于大模型的甲狀腺結節預測及綜合診療技術方案大綱

目錄 一、技術方案概述二、術前預測與方案制定2.1 結節特征分析與良惡性預測2.2 手術方案建議2.3 麻醉方案優化三、術中輔助決策3.1 實時數據監測與分析3.2 麻醉深度監控與調節四、術后護理與并發癥預測4.1 術后恢復預測4.2 并發癥風險預警五、統計分析與技術驗證5.1 數據分割與…

SpringCloud系列(36)--SpringCloud Gateway簡介

1、SpringCloud GateWay概述 SpringCloud Gateway是 Spring Cloud的一個全新項目,基于Spring 5.0Spring Boot 2.0和Project Reactor等技術開發的網關,它旨在為微服務架構提供一種簡單有效的統—的API路由管理方式;SpringCloud Gateway作為Sp…

TensorFlow深度學習實戰:構建神經網絡全指南

引言:深度學習與TensorFlow概覽 深度學習作為機器學習的一個重要分支,近年來在計算機視覺、自然語言處理、語音識別等領域取得了突破性進展。TensorFlow是由Google Brain團隊開發的開源深度學習框架,自2015年發布以來,已成為最受…

K8S: etcdserver: too many requests

Kubernetes etcdserver: too many requests 錯誤解決方案 當Kubernetes集群出現 etcdserver: too many requests 錯誤時,表明etcd數據庫接收到的請求量超過了其處理能力。etcd作為Kubernetes的核心組件,存儲著集群的所有狀態數據,處理請求過…

銀河麒麟高級服務器操作系統(全架構)OpenGauss 數據庫部署手冊

一、部署前準備工作 1. 環境檢查 項目配置描述內存功能調試建議 32GB 以上。性能測試和商業部署時,單實例部署建議 128GB 以上。復雜的查詢對內存的需求量比較高,在高并發場景下,可能出現內存不足。此時建議使用大內存的機器,或…

Boosting:從理論到實踐——集成學習中的偏差征服者

核心定位:一種通過串行訓練弱學習器、自適應調整數據權重,將多個弱模型組合成強模型的集成學習框架,專注于降低預測偏差。 本文由「大千AI助手」原創發布,專注用真話講AI,回歸技術本質。拒絕神話或妖魔化。搜索「大千A…

Ubuntu下交叉編譯工業相機庫aravis到OpenHarmony(aarch64)使用

文章目錄 下載交叉編譯工具鏈安裝meson編寫交叉編譯配置文件編譯glib編譯libiconv編譯libxml2編譯libusb(暫時不編譯,依賴的udev庫我找不到)編譯Aravis使用 自行編譯的庫都統一放到一個地方去,這樣引用時方便一些,比如…

深入理解互斥信號量(Mutex)在 FreeRTOS 中的使用與實現

在多任務操作系統中,任務間的同步和資源共享是至關重要的。為了避免多個任務同時訪問共享資源,導致資源沖突和數據不一致,信號量(Semaphore) 是常用的同步機制。特別是在 FreeRTOS 中,互斥信號量&#xff0…

Liunx操作系統筆記2

Linux下的包/源管理命令:主要任務是完成在Linux環境下安裝軟件。 1.rpm 是最基礎的rpm包的安裝命令,需要提前下載相關安裝包和依賴包。 2.yum/dnf是基于rpm包的自動安裝命令,可以自動在倉庫中匹配安裝軟件和依賴包。 3.光盤源 是指的 安裝系統…