Git源码地址:https://github.com/netease-youdao/QAnything
公众号版本:RAG实战-QAnything
1、QAnything 是什么?
QAnything(基于任何事物的问答)是一个本地知识库问答系统,旨在支持多种文件格式和数据库,允许离线安装和使用。有了QAnything,您只需放置任何格式的本地存储文件即可获得准确、快速、可靠的答案。目前支持的格式包括:PDF(pdf)、Word(docx)、PPT(pptx)、XLS(xlsx)、Markdown(md)、Email(eml)、TXT(txt)、Image(jpg,jpeg,png)、CSV(csv)、Web links(html)以及即将推出的更多格式……
2、主要特征
(1)数据安全,支持全程拔掉网线安装和使用。
(2)跨语言QA支持,自由切换中英文QA,不受文档语言影响。
(3)支持海量数据问答,两阶段检索排序,解决大规模数据检索的退化问题,数据越多的性能越好。
(4)高性能生产级系统,可直接部署用于企业应用程序。
(5)操作简单,无需繁琐配置,一键安装部署,即可使用。
(6)多知识库问答支持选择多个知识库进行问答。
3、实战
以官网的纯python为例。
(1)必要条件:
需要满足以下条件,否则很有可能报错
(2)检查NVIDIA驱动
在拉取模型前,检查显卡及显卡驱动版本。
打开终端,输入以下命令:
nvidia-smi
若无输出,证明非nvidia显卡,建议更换配置。
以下图为例,符合要求
若显卡驱动版本低于525,需要卸载,再重新安装。
在终端输入以下命令进行驱动卸载:
sudo apt-get purge nvidia-*
重启计算机:
sudo reboot
更新你的系统包列表和系统本身,确保所有的依赖都是最新的。
sudo apt update
sudo apt upgrade
安装所需的条件
sudo apt install build-essential
安装NVIDIA 驱动
ubuntu-drivers devices # 可用来查询可用的显卡驱动版本,选择大于等于525的版本
sudo apt install nvidia-driver-535
重启计算机
sudo reboot
(3)拉取模型并运行
如有需要可以单独创建一个conda环境:
conda create -n qanything-python python=3.10
conda activate qanything-python
拉取模型
git clone -b qanything-python https://github.com/netease-youdao/QAnything.git
切换文件夹并安装依赖
cd QAnything
pip install -r requirements.txt
若下载依赖较慢,可换源下载,如下(清华源):
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
在Windows WSL或Linux环境下运行3B大模型(MiniChat-2-3B)要求显存>=10GB
bash scripts/run_for_3B_in_Linux_or_WSL.sh
在Windows WSL或Linux环境下运行7B大模型(自研Qwen-7B-QAnything)要求显存>=24GB
bash scripts/run_for_7B_in_Linux_or_WSL.sh
演示画面可在参考中查看。
运行成功界面:
- 参考:
(1)https://github.com/netease-youdao/QAnything/tree/master
(2)https://github.com/netease-youdao/QAnything/blob/master/QAnything%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E.md
(3)https://blog.youkuaiyun.com/youdaotech/article/details/136374409?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171834250016777224430867%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=171834250016777224430867&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2alltop_click~default-2-136374409-null-null.142v100pc_search_result_base1&utm_term=QAnything&spm=1018.2226.3001.4187
(4)https://blog.youkuaiyun.com/lianghao118/article/details/136087436?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171834250016777224430867%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=171834250016777224430867&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2alltop_positive~default-1-136087436-null-null.142v100pc_search_result_base1&utm_term=QAnything&spm=1018.2226.3001.4187
合著作者:USTB-zmh
相关阅读
大模型名词扫盲贴
一文带你学会关键词提取算法—TextRank 和 FastTextRank实践
提升大型语言模型性能的新方法:Query Rewriting技术解析