
導(dǎo)讀
AutoFlow 是 PingCAP 開源的 Graph RAG 知識(shí)庫(kù)工具,基于 TiDB Vector、LlamaIndex 和 DSPy 構(gòu)建,開發(fā)者可快速搭建對(duì)話式知識(shí)庫(kù)聊天助手。最新的 0.4.0 版本支持 Gitee AI,為本地知識(shí)庫(kù)問答機(jī)器人提供強(qiáng)大支撐。本文詳解 AutoFlow從部署到配置的完整流程,包括數(shù)據(jù)庫(kù)連接、模型設(shè)置、知識(shí)庫(kù)創(chuàng)建及聊天引擎配置,實(shí)現(xiàn)了一行代碼不用寫的問答機(jī)器人快速搭建。輕松上手,助力開發(fā)者探索智能問答解決方案。

AutoFlow是 PingCAP 開源的一個(gè)基于TiDB Vector、LlamaIndex和DSPy構(gòu)建的 Graph RAG 知識(shí)庫(kù)工具,可以讓開發(fā)者快速構(gòu)建一個(gè)對(duì)話式知識(shí)庫(kù)聊天助手,現(xiàn)已在 GitHub 正式開源。

在AutoFlow的0.4.0版本中,新增了 Gitee AI 作為大語(yǔ)言模型及向量模型的提供方。

馬建倉(cāng)看到本次更新后也是迫不及待上手實(shí)踐,最終實(shí)現(xiàn)了一行代碼沒寫,快速搭建出了一個(gè)基于本地知識(shí)庫(kù)的問答機(jī)器人,那么下面就和馬建倉(cāng)一起開始吧!

Docker Compose
AutoFlow 的部署和使用需要 Docker Compose,未安裝的開發(fā)者請(qǐng)?jiān)诓渴餉utoFlow前準(zhǔn)備好 Docker 環(huán)境。

TiDB Cloud Serverless
由于在部署 AutoFlow 時(shí)需要配置 TiDB 數(shù)據(jù)庫(kù),開發(fā)可選擇v8.4版本以上的 TiDB 數(shù)據(jù)庫(kù)(支持向量搜索功能),或和馬建倉(cāng)一樣直接選擇TiDB Cloud Serverless,可以快速實(shí)現(xiàn)數(shù)據(jù)庫(kù)的部署。

Gitee AI 訪問令牌
AutoFlow 可通過 API 的方式調(diào)用模型提供方的模型,所以需要準(zhǔn)備好 Gitee AI 訪問令牌供配置 AutoFlow 時(shí)使用。
前往工作臺(tái)-設(shè)置-訪問令牌,點(diǎn)擊新建訪問令牌,選擇對(duì)應(yīng)的資源包即可(馬建倉(cāng)這里推薦全模型資源包)。


準(zhǔn)備工作完成后,即可進(jìn)行 AutoFlow 的部署工作:
克隆項(xiàng)目到本地
gitclonehttps://github.com/pingcap/autoflow.git;
cdautoflow/;
復(fù)制并編輯 .env 文件
cp.env.example.env
vim.env#或使用其他文本編輯器編輯
在編輯.env文件時(shí),首先需要配置一枚 32 位的SECRECT_KEY(可使用命令行或在線工具生成),隨后 填入 TiDB Cloud Serverless 中相關(guān)的數(shù)據(jù)庫(kù)信息,點(diǎn)擊Generate Password生成密碼后,將相關(guān)數(shù)據(jù)庫(kù)信息以及SECRECT_KEY填寫進(jìn).env文件,如下圖所示:

獲取服務(wù)器信息

填入服務(wù)器信息及 SECRECT_KEY
遷移數(shù)據(jù)庫(kù)架構(gòu)
dockercomposerunbackend/bin/sh-c"alembicupgradehead"
使用初始數(shù)據(jù)引導(dǎo)數(shù)據(jù)庫(kù)
#使用默認(rèn)管理員憑證(用戶名:admin@example.com,隨機(jī)密碼)
dockercomposerunbackend/bin/sh-c"pythonbootstrap.py"
#也可以自定義管理員憑證的郵箱
dockercomposerunbackend/bin/sh-c"pythonbootstrap.py--emailnew-admin@example.com"
運(yùn)行引導(dǎo)腳本會(huì)創(chuàng)建一個(gè)管理員用戶,你可以在輸出中找到用戶名和密碼,如下圖:

啟動(dòng)服務(wù)
dockercomposeup
打開瀏覽器訪問http://localhost:3000即可訪問部署好的 AutoFlow 服務(wù)。


接下來需要對(duì) AutoFlow 使用的大語(yǔ)言模型、向量模型、知識(shí)庫(kù)、聊天引擎進(jìn)行設(shè)置。
大語(yǔ)言模型配置
在左側(cè)管理選項(xiàng)中選擇Models - LLMs ,點(diǎn)擊+ NEW LLM ,為要使用的大語(yǔ)言模型起一個(gè)名字,并選擇Gitee AI為模型提供方。

選擇后,會(huì)自動(dòng)選擇使用的大語(yǔ)言模型(默認(rèn)為Qwen2.5-72B-Instruct ),開發(fā)者只需在Gitee AI API Key處填入剛才生成的 Gitee AI 訪問令牌,點(diǎn)擊Creat LLM即可。
向量模型配置
和配置大語(yǔ)言模型的流程相似,選擇Models-Embedding Models后進(jìn)行相同的設(shè)置即可。

?? 需要注意的是,向量模型設(shè)置中新增了向量維度選項(xiàng),這里需填寫該模型支持的向量維度,如默認(rèn)的bge-large-zh-v1.5模型向量維度為1024。
知識(shí)庫(kù)配置
模型相關(guān)信息配置完成后就可以進(jìn)行知識(shí)庫(kù)的配置了,選擇左側(cè)Knowledge Bases,填寫知識(shí)庫(kù)名稱及描述,選擇剛才創(chuàng)建的大語(yǔ)言模型和向量模型后即可創(chuàng)建知識(shí)庫(kù)。

創(chuàng)建完成后,我們就可以創(chuàng)建數(shù)據(jù)源了,AutoFlow 支持本地文件、網(wǎng)頁(yè)、Sitemap 三種數(shù)據(jù)源,本次馬建倉(cāng)將以《開源指北》本地文件為例配置知識(shí)庫(kù)。

AutoFlow 支持上傳Markdown、PDF、Word、PPT、Excel、TXT文件,上傳完成后點(diǎn)擊 Creat 即可創(chuàng)建數(shù)據(jù)源。

創(chuàng)建知識(shí)庫(kù)后進(jìn)行的是建立知識(shí)庫(kù)索引的工作,AutoFlow 會(huì)自動(dòng)完成這部分工作,Vector Index顯示全為綠色時(shí)即為索引建立完成。

聊天引擎配置
最后一步,我們需要配置聊天引擎(Chat Engine)。點(diǎn)擊Chat Engines-New Chat Engine即可進(jìn)入下圖頁(yè)面。
在聊天引擎配置中,必須配置項(xiàng)為名稱、使用的大語(yǔ)言模型以及所連接的知識(shí)庫(kù)。

配置名稱及模型

連接知識(shí)庫(kù)
此外,你也可以更改提示詞以自定義用戶的聊天體驗(yàn)(非必須項(xiàng)):

點(diǎn)擊自定義提示詞
至此,一個(gè)簡(jiǎn)單的基于本地知識(shí)庫(kù)的問答機(jī)器人就部署完成了。
完成配置后,可進(jìn)入Settings為你的問答機(jī)器人進(jìn)行個(gè)性化設(shè)置,設(shè)置自己的網(wǎng)頁(yè)標(biāo)題、Logo、預(yù)設(shè)提問等等。

現(xiàn)在一個(gè)屬于《開源指北》的問答機(jī)器人就可以正式開始使用了!

提出問題后,AutoFlow 將通過識(shí)別問題的核心意圖 、在知識(shí)庫(kù)中搜索相關(guān)上下文、重寫查詢以增強(qiáng)信息檢索、檢索最相關(guān)的數(shù)據(jù)、使用 AI 生成精準(zhǔn)答案五個(gè)步驟產(chǎn)出最終的答案。
同時(shí) AutoFlow 也會(huì)列出知識(shí)庫(kù)相關(guān)的文檔供你查看。

產(chǎn)出的回答如下圖,看來 AutoFlow 很快就學(xué)習(xí)到了《開源指北》的核心內(nèi)容,值得點(diǎn)贊!

現(xiàn)在一個(gè)《開源指北》問答機(jī)器人就正式完成,可以將其正式部署上線了。除了網(wǎng)頁(yè)端外,AutoFlow 還支持在網(wǎng)頁(yè)中嵌入 JavaScript 片段,將對(duì)話窗口集成到網(wǎng)站中。

那么以上就是本次馬建倉(cāng)基于 AutoFlow + Gitee AI 搭建本地知識(shí)庫(kù)問答機(jī)器人的實(shí)踐分享,真正做到了一行代碼不用寫且部署快速方便,希望能對(duì)開發(fā)者們有所幫助,我們下次實(shí)踐分享再見!
熱門跟貼