咪免直播高品质美女在线视频互动社区_咪免直播官方版_咪免直播直播视频在线观看免费版下载

您的位置:首頁 > 軟件教程 > 教程 > AI之旅:基于大模型的語義搜索功能

AI之旅:基于大模型的語義搜索功能

來源:好特整理 | 時間:2024-11-21 09:46:21 | 閱讀:185 |  標(biāo)簽: a Vector T CTO v C in AI 搜索 數(shù)據(jù)庫   | 分享到:

AI之旅實現(xiàn)的第一個功能是基于大模型的 vector embedding 進(jìn)行語義搜索(semantic search)。基于大模型實現(xiàn)的聊天機器人雖然能打字和你聊天,但大模型卻大字不識一個,它只識數(shù)(向量)與只會計算,它不會玩文字游戲,只會玩數(shù)字游戲

AI之旅實現(xiàn)的第一個功能是基于大模型的 vector embedding 進(jìn)行語義搜索(semantic search)。

(圖片來源: kdnuggets.com )

基于大模型實現(xiàn)的聊天機器人雖然能打字和你聊天,但大模型大字不識一個,它只識數(shù)(向量)與只會計算,它不會玩文字游戲,只會玩數(shù)字游戲。

任何一段文字,在大模型的眼里只是一個向量,這個向量是包含n個元素的浮點型數(shù)組(n對應(yīng)大模型的n維空間),數(shù)組中的一組浮點數(shù)字表示的是大模型n維空間中的坐標(biāo),大模型n維空間可以理解為大模型在自己的「大腦」中對文字的語義進(jìn)行建模的空間,大模型將對一段文字的理解映射到n維空間中的一個點。不顧多么長多么復(fù)雜的一段文字,都可以用一個點表示,這就是多維空間的神奇力量。這個向量,這個數(shù)組,這個坐標(biāo),這個點,就是大名鼎鼎的 vector embedding,大模型通過 vector embedding 將文字的語義嵌入到自己的n維空間,然后通過對向量的計算操作玩轉(zhuǎn)數(shù)字,從而玩轉(zhuǎn)文字。如果你想更多了解 vector embedding,推薦閱讀 Embeddings: What they are and why they matter 。

(圖片來源: simonwillison.net )

由于有了 vector embedding,只要計算向量之間的距離,大模型就可以知道兩段文字在語義上是否相似,語義搜索就是基于這個原理。

(圖片來源: causewriter.ai )

(圖片來源: datastax.com )

我們要實現(xiàn)園子博文的語義搜索,只要使用一種大模型生成博文內(nèi)容的 vector embedding 存入向量數(shù)據(jù)庫(類似于傳統(tǒng)搜索的建索引),然后搜索時將搜索文字通過大模型生成 vector embedding,通過 vector embedding 在向量數(shù)據(jù)庫中查找語義相近的博文內(nèi)容即可。

第一步準(zhǔn)備工作是選擇一種向量數(shù)據(jù)庫并完成部署,我們選擇的是開源向量數(shù)據(jù)庫 qdrant,由于我們的應(yīng)用都部署在 k8s 集群上,所以我們選擇在 k8s 集群上部署 qdrant,qdrant 提供了 helm chart,k8s 上的部署更便捷了。

先添加 qdrant 的 helm 倉庫

helm repo add qdrant https://qdrant.github.io/qdrant-helm
helm repo update

然后編寫 qdrant-values.yaml 清單文件

config:
  service:
    enable_tls: false

persistence:
  storageClassName: nas-db
  size: 50G

snapshotPersistence:
  storageClassName: nas-db
  size: 50G

resources: 
  limits:
    cpu: 2
    memory: 4Gi
  requests:
     cpu: 1
     memory: 1Gi

需要注意的是,這是數(shù)據(jù)庫,需要將數(shù)據(jù)文件保存在 nas 存儲上,上面的 storageClassName 用于指定所使用的 nas 存儲,nas-db 是我們的 k8s 集群之前已經(jīng)部署好的使用阿里云 nas 的 StorageClass。

通過下面的命令進(jìn)行部署

helm upgrade -i qdrant qdrant/qdrant -f qdrant-values.yaml

然后查看部署是否成功

pod/qdrant-0               1/1          Running
service/qdrant             ClusterIP    10.99.106.66    6333/TCP,6334/TCP,6335/TCP 
service/qdrant-headless    ClusterIP    None            6333/TCP,6334/TCP,6335/TCP
statefulset.apps/qdrant    1/1          45h

pod 處于 Running 狀態(tài),說明部署成功了。

第一步準(zhǔn)備工作完成了,接下來就是調(diào)用大模型(我們選用的是通義千問)把園子的博文內(nèi)容生成 vector embedding 存入 qdrant 向量數(shù)據(jù)庫,然后就可以實現(xiàn)語義搜索,這將是AI之旅下一篇博文的主要內(nèi)容。

參考資料:

  • Embeddings: What they are and why they matter
  • What is vector embedding?
  • What are Vector Embeddings? Understanding the Foundation of Data Representation
  • LLM Basics: Embedding Spaces - Transformer Token Vectors Are Not Points in Space
  • From Words to Vectors: Inside the LLM Transformer Architecture
小編推薦閱讀

好特網(wǎng)發(fā)布此文僅為傳遞信息,不代表好特網(wǎng)認(rèn)同期限觀點或證實其描述。

a 1.0
a 1.0
類型:休閑益智  運營狀態(tài):正式運營  語言:中文   

游戲攻略

游戲禮包

游戲視頻

游戲下載

游戲活動

《alittletotheleft》官網(wǎng)正版是一款備受歡迎的休閑益智整理游戲。玩家的任務(wù)是對日常生活中的各種雜亂物

相關(guān)視頻攻略

更多

掃二維碼進(jìn)入好特網(wǎng)手機版本!

掃二維碼進(jìn)入好特網(wǎng)微信公眾號!

本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請發(fā)郵件[email protected]

湘ICP備2022002427號-10 湘公網(wǎng)安備:43070202000427號© 2013~2025 haote.com 好特網(wǎng)