AI 智能对话 - 基于 ChatGLM2-6B 训练对话知识库

前情提要

怎么将 AI 应用到工作中呢?比如让 AI 帮忙写代码,自己通过工程上的思维将代码整合排版,我挺烦什么代码逻辑严谨性的问题,但是我又不得不承认这样的好处,我们要开始将角色转换出来,不应该是一个工具人,而成为决策者,这是从 AI 爆发中看到的发展趋势,人们逐渐从流水线的工作中解放出来,逐渐成为可以独立思考的自由人,这是科技革命带给普通人最大的时代红利;

但是从另外一个方面看这个问题的时候,每次科技革命到来时,抓不住时代机会的人总会被淘汰一批,当社会的体制的管理逻辑停滞不前,必然会爆发出不可避免的社会矛盾和流血革命,阶级固化不是理想和口号能解决的,有人做狼必然需要很多羊,这是自然法则,妄图通过口号改变这个规则的要么是空想家要么就是既得利益者,空想家干不成,既得利益者不会干。

只要人类还有欲望,就注定了我们的奴性;第一次知道笑贫不笑娼是在大学的日语课堂上,从那时起我便不再对人性抱太大的希望了,没那么恶就行了。

需求目标

a. 基于"闻达"项目进行改造;
b. 训练目标知识库;
c. 远期规划;

实践操作

1. 下载项目

git clone https://github.com/mateclouder/mate-wenda.git# 下载相关依赖
cd mate-wenda
pip install -r requirements/requirements.txt

2. 参数配置

将 example.config.yml 复制一个新文件 config.yml ,更改其中参数信息

logging: False
#日志"
port: 17860
#webui 默认启动端口号"
library:#strategy: "calc:2 rtst:2 agents:0"strategy: "rtst:5 agents:0"#库参数,每组参数间用空格分隔,冒号前为知识库类型,后为抽取数量。#知识库类型:#bing        cn.bing搜索,仅国内可用,目前处于服务降级状态#sogowx      sogo微信公众号搜索,可配合相应auto实现全文内容分析#fess        fess搜索引擎#rtst        支持实时生成的sentence_transformers#remote      调用远程闻达知识库,用于集群化部署#kg          知识图谱,暂未启用#特殊库:#mix         根据参数进行多知识库融合#agents      提供网络资源代理,没有知识库查找功能,所以数量为0#            (目前stable-diffusion的auto脚本需要使用其中功能,同时需开启stable-diffusion的api功能)count: 5#最大抽取数量(所有知识库总和)step: 2#知识库默认上下文步长
librarys:bing:count:5#最大抽取数量bingsite:count: 5#最大抽取数量site: "www.vpc123.cn"#搜索网站fess:#fess版本,默认采用14.8以上version: 14.8count: 1#最大抽取数量fess_host: "127.0.0.1:8080"#fess搜索引擎的部署地址remote:host:"http://127.0.0.1:17860/api/find"#远程知识库地址地址rtst:count: 3#最大抽取数量#   backend: Annoysize: 20#分块大小"overlap: 0#分块重叠长度model_path: "model/m3e-base"#向量模型存储路径device: cuda#embedding运行设备     
llm_type: glm6b
#llm模型类型:glm6b、rwkv、llama、replitcode等,详见相关文件
llm_models: glm6b: path: "model\\ChatGLM2-6B"#glm模型位置"strategy: "cuda fp16i4"#cuda fp16	 所有glm模型 要直接跑在gpu上都可以使用这个参数#cuda fp16i8	 fp16原生模型 要自行量化为int8跑在gpu上可以使用这个参数#cuda fp16i4	 fp16原生模型 要自行量化为int4跑在gpu上可以使用这个参数#cuda:0 fp16 *14 -> cuda:1	fp16 多卡流水线并行,使用方法参考RWKV的strategy介绍。总层数28#   lora: "model/lora-450"#glm-lora模型位置

3. 知识库训练

知识点: 《伤寒杂病论》

首先在main/txt文件夹下新建了一个名为《伤寒杂病论》的文本文档,进行训练:

数据训练: 双击运行

buils_rtst_default_index.bat

4. 启动运行

** 启动 **

run_GLM6B.bat

** 问答 **

总结

前前后后搞了一周左右,周六早起都在弄这个,这个真的比打游戏好玩多了,虽然我不玩游戏,那种克服困难搞成一件事的愉悦是难以诉说的,人工智能的事情先到此打住,进入备考了,不能沉迷 AI ,不然我就是被她奴役了。

附录

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ceph部署

目录 1、存储基础 单机存储设备 单机存储的问题 分布式存储(软件定义的存储 SDS) 分布式存储的类型 2、Ceph 简介 3、Ceph 优势 4、Ceph 架构 5、Ceph 核心组件 Pool中数据保存方式支持两种类型: Pool、PG 和 OSD 的关系&#xff…

功能丰富的 Markdown 笔记工具:FSNotes Mac中文版图文安装教程

FSNotes Mac版是Mac平台上一款纯文本笔记本管理器,FSNotes for mac中文版支持Markdown、RTF等格式,轻松查看和编辑数据,还可以将数据存储在文件系统中,同时具备iCloud同步功能,使用非常便捷。 FSNotes for mac官方介绍…

自动化测试转型挑战及其解决方案

目录 前言: 自动化测试挑战 选择合适的自动化测试方法 选择正确的自动化工具 整理数据 何时开始和停止 如何克服挑战 前言: 自动化测试的转型是许多组织在提高测试效率和质量方面的重要举措。然而,这个转型过程中可能会面临一些挑战。…

Java 装箱拆箱原理 包装类型缓存池

JAVA中的基本数据类型 byteshortintlongfloatdoublebooleanchar 为了让上述基本数据类型可以转为对象,Java在1.5推出了一系列包装类,基本类和包装类互相转换的过程,称为装箱和拆箱 缓存池 缓存池也叫常量池。它是事先存储一些常量数据用以…

优化营商环境:构建智能营销平台,助力企业经营发展

对于企业来说,没有了客户,就像身体没有了血液,将失去生命力和活力,续存难发展更难。区域产业又是由一个个企业集聚而形成,企业的成败也就决定着区域产业的兴衰。 在当今竞争激烈的商业环境中,传统的销售手段…

MongoDB初体验-安装使用教程2023.7

前言:博主第一次接触MongoDB,看了一圈网上现有的教程,不是缺少细节就是有问题没交代清楚,特整理了一下自己安装运行的过程,从下载安装到开机自启,全程细节齐全、图文并茂、简单易懂。 目录 1. 从官网下载2…

基于遗传算法的新能源电动汽车充电桩与路径选择MATLAB程序

主要内容: 根据城市间的距离,规划新能源汽车的行驶路径。要求行驶距离最短。 部分代码: %% 加载数据 %%遗传参数 load zby;%个城市坐标位置 NIND50; %种群大小 MAXGEN200; Pc0.9; %交叉概率 Pm0.2; %变异概率 GGAP0.…

巩固一下NodeJs

1、初始化(确保当前电脑有node环境) npm init 2、安装express npm i expressnpm i ws文件结构 3、编写相关代码启动node服务(server.js) //导入下列模块,express搭建服务器,fs用来操作文件、ws用来实现webscoket const express require("expr…

C++进阶—C++11新特性(移动语义右值引用可变参数模板lambda表达式function包装器bind函数)

目录 0. C11简介 1. 统一的列表初始化 1.1 {}初始化 1.2 std::initializer_list 2. 声明 2.1 auto 2.2 decltype 2.3 nullptr 3. 范围for循环 4. 智能指针 5. STL中一些变化 6. 右值引用和移动语义 6.1 左值引用和右值引用 6.2 左值引用与右值引用比较 6.3 右值…

PSP - Jackhmmer 搜索 EMBL 序列数据库的相似序列

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/131817060 EMBL (European Molecular Biology Laboratory,欧洲分子生物实验室):EMBL 数据库是一个由欧洲生物信息学研究所…

springboot与rabbitmq的整合【演示5种基本交换机】

前言: 👏作者简介:我是笑霸final,一名热爱技术的在校学生。 📝个人主页:个人主页1 || 笑霸final的主页2 📕系列专栏:后端专栏 📧如果文章知识点有错误的地方,…

【0】冒泡排序

前言 通过函数模板技术设计一个冒泡排序算法,领悟泛型编程的思想和冒泡排序的思想,然后使用QTest测试各种输入值,养成先写测试代码,后写程序代码的习惯 0x0 编写一个int版本的冒泡函数 1.不管要排序的数组长度多长,外…

CASAIM与大疆达成全自动化测量技术合作,CASAIM IS全自动化蓝光测量仪实现无人机叶片全尺寸检测及质量控制

近期,CASAIM与大疆达成全自动化测量技术合作,CASAIM IS全自动化蓝光测量仪实现无人机叶片全尺寸检测及质量控制。 无人机行业在过去几年里取得了迅猛发展,大疆是全球领先的无人飞行器控制系统及无人机解决方案的研发商和生产商,客…

Spring-AOP(面向切面)

Spring-AOP(面向切面) 场景模拟(计算器) 功能接口 public interface Calculator {int add(int i, int j);int minus(int i, int j);int multiply(int i, int j);int div(int i, int j); }实现类 public class CalculateLogImpl implements Calculator {Overridepublic int …

PALO ALTO NETWORKS 的新一代防火墙如何保护企业安全

轻松采用创新技术、阻止网络攻击得逞并专注更重要的工作 IT 的快速发展已改变网络边界的面貌。数据无处不在,用户可随时随地从各类设备访问这些数据。同时,IT 团队正在采用云、分析和自动化来加速新应用的交付以及推动业务发展。这些根本性的转变带来了…

【Linux】- 任务调度和定时任务

任务调度和定时任务 1 crond 任务调度2 at 定时任务 1 crond 任务调度 crontab 进行 定时任务的设置 任务调度:是指系统在某个时间执行的特定的命令或程序。 任务调度分类:1.系统工作:有些重要的工作必须周而复始地执行。如病毒扫描等 个别…

ChatGPT 最佳实践指南之:系统地测试变化

Test changes systematically 系统地测试变化 Improving performance is easier if you can measure it. In some cases a modification to a prompt will achieve better performance on a few isolated examples but lead to worse overall performance on a more representa…

【Docker】Docker基本概念

Docker基本概念 1.Docker概述1.1 Docker是什么?1.2 Docker的宗旨1.3 容器的优点1.4 Docker与虚拟机的区别1.5 容器在内核中支持的两种技术1.6 namespace的六大类型 2.Docker核心概念2.1 镜像2.2 容器2.3 仓库 3. 知识点总结3.1 Docker是什么?3.2 容器和虚…

智能分析网关V2有抓拍告警但无法推送到EasyCVR,是什么原因?

我们在此前的文章中也介绍了关于智能分析网关V2接入EasyCVR平台的操作步骤,感兴趣的用户可以查看这篇文章:在EasyCVR新版本v3.3中,如何正确接入智能分析网关V2? 智能分析网关V2是基于边缘AI计算技术,可对前端摄像头采…

常见Redis使用问题

一 lettuce使用问题 1 问题描述 Redis Cluster集群,当master宕机,主从切换,客户端报错 timed out 2 原因 SpringBoot2.X版本开始Redis默认的连接池都是采用的Lettuce。当节点发生改变后,Letture默认是不会刷新节点拓扑的。 3…