通過容器啟動QAnything知識庫問答系統

QAnything (Question and Answer based on Anything) 是致力于支持任意格式文件或數據庫的本地知識庫問答系統,可斷網安裝使用。目前已支持格式:PDF(pdf)Word(docx)PPT(pptx)XLS(xlsx)Markdown(md)電子郵件(eml)TXT(txt)圖片(jpg,jpeg,png)CSV(csv)網頁鏈接(html)等格式。

一.后端啟動

1.run.sh命令啟動

因為顯卡配置原因,沒有使用Qwen-7B-QAnything模型,而使用了MiniChat-2-3B模型,啟動命令bash ./run.sh -c local -i 0 -b hf -m MiniChat-2-3B -t minichat。其中參數物理意義如下所示:

參數解釋
-c用于指定 llm API 模式的選項,可以選擇 localcloud。默認是 local。如果設置為 -c cloud,則需要先手動將環境變量 {OPENAI_API_KEY, OPENAI_API_BASE, OPENAI_API_MODEL_NAME, OPENAI_API_CONTEXT_LENGTH} 設置到 .env 文件中。
-i用于指定 GPU 設備 ID。
-b用于指定 LLM 推理運行時后端,選項包括 defaulthfvllm
-m用于指定使用 FastChat serve API 加載 LLM 模型的路徑,選項包括 Qwen-7B-Chatdeepseek-llm-7b-chat 等。
-t用于指定使用 FastChat serve API 時,根據 LLM 模型的對話模板,選項包括 qwen-7b-chatdeepseek-chat 等。

更加完整的QAnything服務啟動命令使用,如下所示:

為了使用更多LLM,需要在/path/to/QAnything/third_party/FastChat/fastchat/conversation.py中配置conv_template。支持使用 FastChat API 與 Huggingface Transformers/vllm 運行時后端的公共大型語言模型(LLM),如下所示:

2.啟動成功日志

如果想要查看相關日志,請查看QAnything/logs/目錄下的日志文件,如下所示:

序號日志文件解釋
1debug.log用戶請求處理日志
2sanic_api.log后端服務運行日志
3llm_embed_rerank_tritonserver.log(單卡部署)LLM embedding和rerank tritonserver服務啟動日志
4llm_tritonserver.log(多卡部署)LLM tritonserver服務啟動日志
5embed_rerank_tritonserver.log(多卡部署或使用openai接口)embedding和rerank tritonserver服務啟動日志
6rerank_server.logrerank服務運行日志
7ocr_server.logOCR服務運行日志
8npm_server.log前端服務運行日志
9llm_server_entrypoint.logLLM中轉服務運行日志
10fastchat_logs/*.logFastChat服務運行日志
11qa_logs/qa.log問答服務運行日志

3.啟動成功容器

容器名稱解釋
qanything-container-local這是一個運行 qanything 應用的容器。qanything 是一個基于深度學習的對話系統,可以處理各種對話任務。在這個容器中,qanything 應用會根據環境變量的設置,選擇本地或云端的模型進行運行。
milvus-standalone-local這是一個運行 milvus 的容器。milvus 是一個開源的向量數據庫,用于處理大規模的向量檢索和相似性搜索。在這個容器中,milvus 以單機模式運行。
milvus-minio-local這是一個運行 minio 的容器。minio 是一個高性能的開源對象存儲服務器,用于存儲非結構化的數據,如圖片、視頻、日志文件等。在這個容器中,minio 用于存儲 milvus 的數據。
mysql-container-local這是一個運行 mysql 的容器。mysql 是一個關系型數據庫管理系統,用于存儲結構化的數據。在這個容器中,mysql 用于存儲應用的數據。
milvus-etcd-local這是一個運行 etcd 的容器。etcd 是一個開源的分布式鍵值存儲系統,用于共享配置和服務發現。在這個容器中,etcd 用于存儲 milvus 的配置信息。

二.前端啟動

1.npm命令啟動

前端啟動命令分別為npm installnpm run dev,如下所示:

2.啟動成功界面

3.新建知識庫

新建知識庫后,上傳文件,就可以和知識庫進行對話了,如下所示:

三.部署問題

1.CUDA驅動版本更新

在部署QAnything過程中遇到的最大問題是NVIDIA Driver問題,但是沒在意這個問題,后面部署失敗,升級后基本就成功了。

ERROR: This container was built for NVIDIA Driver Release 530.30 or later, but version 522.06 was detected and compatibility mode is UNAVAILABLE.

2.通過GeForce Experience升級驅動

通過GeForce Experience升級驅動為最新版本,如下所示:

說明:驅動升級完畢后,重啟電腦,然后重新運行run.sh命令。

參考文獻

[1] QAnything GitHub:https://github.com/netease-youdao/QAnything

[2] QAnything HuggingFace:https://huggingface.co/netease-youdao/QAnything

[3] Ant Design Vue:https://www.antdv.com/components/overview-cn/

[4] Node.js下載地址:https://nodejs.org/dist/v18.16.0/

[5]前端開發文檔:https://github.com/ai408/QAnything/blob/master/front_end/README.md

[6] QAnything接口文檔:https://github.com/netease-youdao/QAnything/blob/master/docs/API.md

[7] QAnything中文介紹:https://github.com/netease-youdao/QAnything/blob/master/README_zh.md

[8] 有道智云AI開放平臺:https://ai.youdao.com/DOCSIRMA/html/aigc/api/qanything/index.html

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

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

相關文章

LabVIEW汽車轉向器測試系統

紹了一種基于LabVIEW的汽車轉向器測試系統。該系統集成了數據采集、控制和分析功能,能夠對轉向器進行高效、準確的測試。通過LabVIEW平臺,實現了對轉向器性能參數的實時監測和分析,提升了測試效率和數據精度,為汽車轉向器的研發和…

CAM350刪除鋪銅?

CAM350刪除鋪銅? 1、選擇菜單欄Add 2、選擇Polygon Void→Line... 3、然點擊需要操作的銅箔,使其高亮 4、用鼠標框選需要刪除的部分,然后右擊 5、刪除后如下圖所示 The Layer Bar controls are part of the new Navigation Pane and can also…

OpenStack開源虛擬化平臺(二)

目錄 三、對象存儲服務Swift(一)Swift特性(二)應用場景(三)Swift主要組件(四)Swift基本原理(五)實例分析 四、鏡像服務Glance(一)Glan…

JAVA-Redis數據結構—跳躍表(Skiplist)【包含Java實現詳情代碼】

本人詳解 作者:王文峰,參加過 CSDN 2020年度博客之星,《Java王大師王天師》 公眾號:JAVA開發王大師,專注于天道酬勤的 Java 開發問題中國國學、傳統文化和代碼愛好者的程序人生,期待你的關注和支持!本人外號:神秘小峯 山峯 轉載說明:務必注明來源(注明:作者:王文峰…

CAAC無人機執照:視距內駕駛員與超視距駕駛員區別詳解

CAAC無人機執照中的視距內駕駛員與超視距駕駛員在多個方面存在顯著的區別。以下是詳細的對比和解釋: 1. 定義與操作范圍: - 視距內駕駛員(駕駛員證):操作無人機時,無人機必須在操控員的視線范圍內&#xff…

數據開源|GigaSpeech 2:三萬小時東南亞多語種語音識別開源數據集發布

“Giga”一詞源于“gigantic”,互聯網上具有海量音頻資源,但語音質量良莠不齊,高質量音頻文本對數據十分稀缺且標注成本高昂,特別是在小語種領域。GigaSpeech 是一個非常成功的英文開源數據集,以 YouTube 和 Podcast 為…

[數據庫原理]關系范式總結(自用)

如有錯誤,歡迎指正!!! 有一些題目我放在pdf里面了

解釋 Java 中的封裝、繼承和多態性,并舉例說明相關概念

在Java編程的世界里,封裝、繼承和多態是面向對象編程(OOP)的三大基石,它們支撐起整個Java程序設計的骨架,讓代碼更加靈活、可擴展和易于維護。 接下來,我會用一種輕松的方式,并通過一個貼近生活…

“核心期刊論文選題與寫作技巧分享”——郭順利

講師簡介: 郭順利博士,一位擁有管理學博士學位的副教授及碩士生導師,活躍在學術界,同時在多份CSSCI收錄期刊中擔任審稿專家。在近年的學術生涯中,他發表了超過50篇的核心期刊論文,并成功指導研究生在核心期…

充電寶買哪個牌子好?2024年十大口碑最好充電寶推薦

在如今快節奏的生活中,充電寶已然成為我們出行必備的物品之一。然而,面對市場上琳瑯滿目的充電寶品牌和型號,我們常常陷入選擇的困境:充電寶買哪個牌子好?2024 年,充電寶技術不斷革新,新品牌層出…

1、數據庫模型圖、er圖

關系 user和administarators是多對一的關系 user和order是一對多的關系 shipped和order是多對一的關系 order和books是多對多的關系 leavewords和order是一對一的關系 stock和books是一對多的關系 Chens 數據庫表示法——ER圖 Crows Foot數據庫表示法——數據庫模型圖 Navicat表…

python機器人編程——用pytorch實現六軸機械臂的正向和逆向數值解算,及python算法解析

目錄 一、前言二、實現原理2.1正向建模2.2張量化2.3繪制3D動畫及操作UI 三、結論四、python源碼PS.擴展閱讀ps1.六自由度機器人相關文章資源ps2.四軸機器相關文章資源ps3.移動小車相關文章資源 一、前言 前面對六軸(或多軸)機械臂進行了一些研究&#x…

hadoop分布式云筆記系統-計算機畢業設計源碼15725

摘 要 隨著信息技術的飛速發展,人們對于數據的存儲、管理和共享需求日益增長。傳統的集中式存儲系統在處理大規模數據時面臨著性能瓶頸和擴展性問題。而 Hadoop 作為一種分布式計算框架,為解決這些問題提供了有效的解決方案。 本研究旨在設計并實現一種…

c++裝飾器模式 和 多重繼承區別

在C中,裝飾器模式和多重繼承都可以用來在不修改現有對象結構的情況下增加額外的功能。但是,它們之間有一些關鍵的區別: 1.裝飾器模式通常用于向對象添加額外的職責,而不會影響其他用戶,它遵循“開放-封閉”原則。多重…

【數據結構與算法】堆排序算法原理與實現:基于堆實現的高效排序算法

💓 博客主頁:倔強的石頭的CSDN主頁 📝Gitee主頁:倔強的石頭的gitee主頁 ? 文章專欄:《數據結構與算法》 期待您的關注 ? 目錄 一、引言 堆排序的簡介 堆排序的特點 二、堆的概念 三、堆排序算法的原理 四、堆…

15kg級彈簧刀高速巡飛無人機技術詳解

彈簧刀高速巡飛無人機,作為一種先進的戰術導彈系統,融合了無人機與導彈的雙重特性,成為了現代戰爭中不可或缺的偵察與打擊利器。該無人機以其小巧的外形設計、優異的性能表現和廣泛的適用領域,受到了全球軍事領域的廣泛關注。彈簧…

【吊打面試官系列-MyBatis面試題】Mybatis 是如何進行分頁的?分頁插件的原理是什么?

大家好,我是鋒哥。今天分享關于 【Mybatis 是如何進行分頁的?分頁插件的原理是什么?】面試題,希望對大家有幫助; Mybatis 是如何進行分頁的?分頁插件的原理是什么? Mybatis 使用 RowBounds 對象…

怎么測試遠程服務器能否連通

遠程服務器連接測試的方法很多,下面簡單介紹下其中兩種方法。 ping命令 按WINR快截鍵,打開“運行”對話框,輸入cmd,回車,打開命令提示符。 輸入ping IP地址或ping 域名即可,如ping360服務器通不通&#xf…

32 lambda表達式

c11 c98例子 在c98中&#xff0c;如果想要對一個數據集合中的元素進行排序&#xff0c;可以適用std::sort方法 #include <algorithm>#include <functional>int main(){int array[] {4,1,8,5,3,7,0,9,2,6};// 默認按照小于比較&#xff0c;排出來結果是升序 std…

Django + Vue 實現圖片上傳功能的全流程配置與詳細操作指南

文章目錄 前言圖片上傳步驟1. urls 配置2. settings 配置3. models 配置4. 安裝Pillow 前言 在現代Web應用中&#xff0c;圖片上傳是一個常見且重要的功能。Django作為強大的Python Web框架&#xff0c;結合Vue.js這樣的現代前端框架&#xff0c;能夠高效地實現這一功能。本文將…