wenda+fess问答系统

1 安装conda

2 创建环境 conda activate --name wenda python=3.8

3 安装依赖工具包

pip install -r requirements/requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install torch BeautifulSoup4 torchvision torchaudio pdfminer.six -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -r requirements/requirements-chatglm_api.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -r requirements/requirements-glm6b-lora.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -r requirements/requirements-gpt4free.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -r requirements/requirements-llama.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -r requirements/requirements-openai.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -r requirements/requirements-qdrant.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

4  下载模型

语言模型是chatGLM-6B,大家也可以使用其他的基础模型

链接:百度网盘 请输入提取码 提取码:xt9l

放在  /home/user/wenda/model下

文本向量模型text2vec-large-chinese

cd /home/user/data/wenda/model
# 安装 git lfs
git lfs install
# 如果报错 git: 'lfs' is not a git command.
# 执行如下(Ubuntu):
sudo apt-get install git-lfs
 
# 从huggingface官网拉取模型指针文件
git clone https://huggingface.co/GanymedeNil/text2vec-large-chinese
 
# 下载模型
wget https://huggingface.co/GanymedeNil/text2vec-large-chinese/resolve/main/pytorch_model.bin
# 覆盖text2vec-large-chinese中的 pytorch_model.bin文件
mv pytorch_model.bin text2vec-large-chinese/

5修改配置

example.config.yml改名为config.yml

library: 
     strategy: "sogowx:3 bingsite:2 rtst:2 agents:0"
     #知识库参数,每组参数间用空格分隔,冒号前为知识库类型,后为抽取数量。

     #知识库类型:
     #bing        cn.bing搜索,仅国内可用,目前处于服务降级状态
     #sosowx      sogo微信公众号搜索,可配合相应auto实现全文内容分析
     #fess        fess搜索引擎
     #rtst        支持实时生成的sentence_transformers
     #remote      调用远程闻达知识库,用于集群化部署
     #kg          知识图谱,暂未启用
     #特殊库:
     #mix         根据参数进行多知识库融合
     #agents      提供网络资源代理,没有知识库查找功能,所以数量为0
     #            (目前stable-diffusion的auto脚本需要使用其中功能,同时需开启stable-diffusion的api功能)

#fess模式下改为strategy: "fess:2"  2为抽取数量

     show_soucre: true
     #知识库显示来源

 glm6b: 
     path: "model/chatglm-6b-int4"
     #glm模型位置"
     strategy: "cuda:1 fp16 *14 -> cuda:2"
     #cuda fp16	 所有glm模型 要直接跑在gpu上都可以使用这个参数
     #cuda fp16i8	 fp16原生模型 要自行量化为int8跑在gpu上可以使用这个参数
     #cuda fp16i4	 fp16原生模型 要自行量化为int4跑在gpu上可以使用这个参数
     #cuda:0 fp16 *14 -> cuda:1	fp16 多卡流水线并行,使用方法参考RWKV的strategy介绍。总层数28
#strategy: "cuda:1 fp16 *14 -> cuda:2"可多卡并行

 6  创建知识库

创建txt文件夹

cd /home/user/wenda/

 mkdir txt

7 安装fess

先安装jdk

## linux系统
1. 安装JDK 
```
wget https://download.java.net/java/17/latest/jdk-17_linux-x64_bin.tar.gz
sudo tar xvf jdk-17_linux-x64_bin.tar.gz -C /usr/local/
```
解压后,JDK 17 将被安装在 /usr/local/jdk-17 目录中。

配置环境变量。要在系统中使用 JDK 17,您需要将其添加到 PATH 环境变量中。您可以使用以下命令将其添加到 /etc/profile 文件中:

```
 rm -f /etc/alternatives/java
 ln -s /usr/local/jdk-17.0.6/bin/java /etc/alternatives/java
     echo export JAVA_HOME=/usr/local/jdk-17.0.6 >>/etc/profile
     echo export PATH='$PATH':'$JAVA_HOME'/bin >>/etc/profile
     echo export CLASSPATH=.:'$JAVA_HOME'/lib/dt.jar:'$JAVA_HOME'/lib/tools.jar >>/etc/profile
     source /etc/profile
```
确认安装。您可以使用以下命令检查 JDK 17 是否已成功安装:
```
java -version
```
如果一切正常,您应该会看到类似以下内容的输出:

openjdk version "17.0.1" 2021-10-19
OpenJDK Runtime Environment (build 17.0.1+12-39)
OpenJDK 64-Bit Server VM (build 17.0.1+12-39, mixed mode, sharing)

安装fess

2. 安装fess14.7.0
下载fess
解压fess
```
unzip fess-14.7.0.zip
cd bin
 ./fess -d
```

将知识库/home/user/wenda/txt添加到fess中

在crawler选的file system创建新的 name,输入名称和位置/home/user/wenda/txt

在这里插入图片描述

在这里插入图片描述

 

 在这里插入图片描述

 自动返回File System页面. 点击刚才创建的选项(自己输入的Name),新建job

在这里插入图片描述

进入侧边栏的System内的Scheduler. 可以看到很多任务

  • 目录的前面可以看到刚刚创建的job.点击进入
  • 点击Start now. 刷新界面即可看到该任务正在运行. running

 在这里插入图片描述

 在这里插入图片描述

fess网址​​​​​​http://127.0.0.1:8080/

wenda网址http://127.0.0.1wenda网址

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/28227.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【乐观锁与悲观锁】—— 每天一点小知识

💧 乐观锁与悲观锁 \color{#FF1493}{乐观锁与悲观锁} 乐观锁与悲观锁💧 🌷 仰望天空,妳我亦是行人.✨ 🦄 个人主页——微风撞见云的博客🎐 🐳 《数据结构与算法》专栏的文章图文并茂&…

美团买菜基于 Flink 的实时数仓建设

摘要:本文整理自美团买菜实时数仓技术负责人严书,在 Flink Forward Asia 2022 实时湖仓专场的分享。本篇内容主要分为四个部分: 背景介绍 技术愿景和架构设计 典型场景、挑战与应对 未来规划 点击查看原文视频 & 演讲PPT 一、背景介绍…

设置全局loading

为什么要设置全局loading? 在项目开发过程中,请求接口的时候延迟没有数据,页面感觉狠卡顿,这个时候就要用loading来做一个延迟界面。 但是每个界面都写loading的话就会很复杂,所以今天给大家带来了一个全局loading的…

JMeter+Ant+jenkins搭建接口自动化测试环境

目录 前言: 1.ant简介 2. 构建ant环境 3.JMeter与Ant集成 4. 报告优化 5.jenkins持续集成 前言: JMeter是一个开源的性能测试工具,可以用于测试Web应用程序或API接口的性能,支持多种通信协议和数据格式。Ant是一个构建工具&…

基于卫星星历计算卫星在CGCS2000大地坐标系中的坐标

目录 一、北斗系统概述 1.空间星座 2.坐标系统 3.时间系统 二、实验目的 三、实验内容 四、实验过程 五、实验结果 一、北斗系统概述 1.空间星座 北斗卫星导航系统简称北斗系统,英文缩写为 BDS,其空间星座由 5 颗地球静止轨道(GEO&…

学会使用这些Lumion照片级渲染技巧,秒出大片

Lumion 是一种渲染软件,可帮助建筑师以清晰、感性的方式传达他们的设计。十年来,人们发现 Lumion 的每个新版本都有新的功能、工作流程和控制方法。他们可以在 Revit、SketchUp 或其他 BIM 程序等软件中建模,并将模型导入 Lumion 进行渲染&am…

基于stm32作品设计:多功能氛围灯、手机APP无线控制ws2812,MCU无线升级程序

文章目录 一、作品背景二、功能设计与实现过程三、实现基础功能(一)、首先是要选材(二)、原理图设计(二)、第一版本PCB设计(三)、焊接PCB板(四)编写单片机程序…

作为自动化测试工程师,这4个自动化测试阶段你真的知道吗?

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 阶段一&#xff1…

Kubernetes集群添加新集群节点

Kubernetes集群添加新集群节点 添加worker节点 参考文档https://gitee.com/open-hand/kubeadm-ha/blob/release-1.21/docs/02/%E6%B7%BB%E5%8A%A0%20worker%20%E8%8A%82%E7%82%B9.md 添加工作节点与集群安装时初始化工作节点一样,可以在主节点上执行,也可以在要加…

第四章 完型填空

第四章 完型填空 第一节 真题 2020-完型填空- Section I Use of English Directions: Read the following text. Choose the best word (s) for each numbered blank and mark A, B, C or D on the ANSWER SHEET. (10 points) Being a good parent is, of cour…

springboot 连接 kafka集群(kafka版本 2.13-3.4.0)

springboot 连接 kafka集群 一、环境搭建1.1 springboot 环境1.2 kafka 依赖 二、 kafka 配置类2.1 发布者2.1.1 配置2.1.2 构建发布者类2.1.3 发布消息 2.2 消费者2.2.1 配置2.2.2 构建消费者类2.2.3 进行消息消费 一、环境搭建 1.1 springboot 环境 JDK 11 Maven 3.8.x spr…

CSDN问答机器人

文章目录 前言一、背景二、总体流程三、构建知识库四、粗排五、精排六、Prompt总结相关博客 前言 先看结果: 已经连续很多周获得了第二名(万年老二), 上周终于拿了一回第一, 希望继续保持. 😁 这是今天的榜单, 采纳的数量相对较少, 之前基本上维持在100 重点说明…

SpringBoot项目实战:自定义异常和统一参数验证(附源码)

你好,我是田哥 在实际开发过程中,不可避免的是需要处理各种异常,异常处理方法随处可见,所以代码中就会出现大量的try {...} catch {...} finally {...} 代码块,不仅会造成大量的冗余代码,而且还影响代码的可…

母婴商家怎么建立自己的品牌,母婴产品传播渠道总结

随着互联网的发展逐渐深入我们的生活,线上传播的模式也越来越被大家熟知。越来越多的行业开始重视线上传播。那么母婴商家怎么建立自己的品牌,母婴产品传播渠道总结。 其实,母婴产品线上用户群体众多,且母婴产品用户目的明确&…

深入解析IT专业分类、方向及就业前景:高考毕业生如何选择适合自己的IT专业?重点探索近年来人工智能专业发展及人才需求

目录 一、IT专业的就业前景和发展趋势二、了解IT专业的分类和方向三、你对本专业的看法和感想四、本专业对人能力素养的要求五、建议和思考其它资料下载 当今社会,信息技术行业以其迅猛的发展和无限的潜力成为了吸引无数年轻人的热门选择。特别是对于高考毕业生来说…

你的企业还没搭建这个帮助中心网页,那你太落后了!

作为现代企业,拥有一个完善的帮助中心网页已经成为了不可或缺的一部分。帮助中心网页不仅可以提供给用户有关产品或服务的详细信息,还可以解答用户的疑问和提供技术支持,使用户在使用产品或服务时遇到问题可以很快地得到解决。因此&#xff0…

论文阅读和分析:Binary CorNET Accelerator for HR Estimation From Wrist-PPG

主要贡献: 一种完全二值化网络(bCorNET)拓扑结构及其相应的算法-架构映射和高效实现。对CorNET进行量化后,减少计算量,又能实现减轻运动伪影的效果。 该框架在22个IEEE SPC受试者上的MAE为6.675.49 bpm。该设计采用ST65 nm技术框架&#xff…

数据结构--队列2--双端队列--java双端队列

介绍 双端队列&#xff0c;和前面学的队列和栈的区别在于双端队列2端都可以进行增删&#xff0c;其他2个都是只能一端可以增/删。 实现 链表 因为2端都需要可以操作所以我们使用双向链表 我们也需要一共头节点 所以节点设置 static class Node<E>{E value;Node<E…

jetpack compose —— Card

jetpack compose Card 组件提供了一种简单而强大的方式来呈现卡片式的用户界面。 一、什么是 Card 组件 二、基本用法 三、属性和修饰符 四、嵌套使用和复杂布局 一、什么是 Card 组件 Card 是 Jetpack Compose 中的一个常用组件&#xff0c;用于呈现卡片式的用户界面。它…

Javaweb学习路线(3)——SpringBoot入门、HTTP协议与Tomcat服务器

一、SpringBoot入门 &#xff08;一&#xff09;第一个Springboot案例 1、创建Springboot工程&#xff0c;添加依赖。 2、定义类&#xff0c;添加方法并添加注释 3、运行测试。 pom.xml&#xff08;框架自动生成&#xff09; <?xml version"1.0" encoding&quo…