(提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战

news/发布时间2024/5/16 6:48:10

文章目录

  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、提示词Prompt优化
    • 本地知识库目标
    • 操作步骤
    • 问答测试的预设问题
    • 原始数据情况
    • 数据集优化:预处理,先后准备了三份数据集
      • PreData1:极简数据集,txt格式
      • PreData2:按json结构处理的数据集,txt格式
      • PreData3:整理成文档章节的PDF数据集
      • 从1到3是一个逐步优化数据集的过程
    • Tip:每次优化重新对话测试时,建议重启模型。本人GPU冒烟了,才重启。
    • 创建本地知识库时文件处理参数调整
    • 对话时知识库配置参数调整
    • Prompt提示词优化
      • Round 1
      • Round 2
      • Round 3
      • Round 4
    • 数据集地址

(提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、提示词Prompt优化

本地知识库目标

  • 创建“神经内科典型病例目录”数据集,一共3个病例信息,包括基本信息、症状、体格检查、辅助检查、诊断、诊断依据等信息。
  • LangChain+ChatGLM3-6B WebUI中加载“神经内科典型病例目录”数据集作为本地知识库。
  • 在“对话”中进行神经内科典型病例相关问答。
    在这里插入图片描述

操作步骤

  • 数据集预处理
  • 建立本地知识库后,进行问答测试
  • 调优:数据集优化、本地知识库问答参数调整、Prompt提示词优化

问答测试的预设问题

  • Q:有几个病例?
  • Q:输出病例编号、性别、年龄。
  • Q:神经内科确诊疾病有哪些,输出名称。

原始数据情况

#神经内科典型病例目录

##病例一
###病史摘要 患者女,78岁。 入院前四小时突然觉得头痛,同时发现左侧肢体乏力,左上肢不能持物,左下肢不能行走,恶心伴呕吐胃内容物数次。无意识丧失,无四肢抽搐,无大小便失禁,即送医院急诊。

体格检查:神清,BP 185/95mmHg,HR
80次/分,律齐,EKG示窦性心律.对答切题,双眼向右凝视,双瞳孔等大等圆,对光反射存在,左鼻唇沟浅,伸舌略偏左。左侧肢体肌张力增高,左侧腱反射略亢进,左侧肌力III0,右侧肢体肌张力正常,肌力V0。左侧巴氏征(+),右侧病理症(-)。颈软,克氏征(-)。
辅助检查:头颅CT示右侧颞叶血肿。

数据集优化:预处理,先后准备了三份数据集

PreData1:极简数据集,txt格式

  • 收集资料:原始数据是从网上爬的病例神经内科典型病例,复制、粘贴到的txt文件。只有3个病例。
  • 格式处理:统一标点符号,包括换行符号;处理好段落内容逻辑,处理段落内出现的换行情况。
  • 删除冗余:删除序号,如1、2、3或a、b、c等。删除多余的空格。
    在这里插入图片描述

PreData2:按json结构处理的数据集,txt格式

将数据集按json处理
曾经尝试过进行以下这一步的操作,由于没有工具辅助,非常繁琐,尤其是key值的生成。放弃了。

段落内处理:确保段落内是类似于KV结构,如“症状”:“头疼”。

处理成了偷懒模式:

{ [“症状:头疼”],
[“体格检检:口齿欠清”] ,
[“体格检查:神志朦胧”] }

在这里插入图片描述

PreData3:整理成文档章节的PDF数据集

在这里插入图片描述

从1到3是一个逐步优化数据集的过程

  • 从PreData1开始进行对话测试,回答让人一脸黑线,无法沟通交流。
    在这里插入图片描述
  • PreData2能沟通交流,也有惊喜,但是不稳定
    “有几个病例”重复问几遍,只回答对过一次。而且基于Json尝试过几种修改方案,繁琐,而且新的json文件导入本地知识库报错(懒,不想正面面对报错的问题),遂放弃了,改用PDF。
    在这里插入图片描述
  • PreData3按照文章章节编辑,插入目录,貌似很顺利
    相对来说比较稳定,但是对话测试也是那么完美。这让我想起需要从对话参数、Prompt提示词解决问题。

Tip:每次优化重新对话测试时,建议重启模型。本人GPU冒烟了,才重启。

创建本地知识库时文件处理参数调整

FAISS
bge-large-zh

以下两项默认值需要修改:

段落文本最大长度:250
相邻文本重合长度:50

改成:

段落文本最大长度:50
相邻文本重合长度:5

对话时知识库配置参数调整

以下两项需要调整:

匹配知识条数:3
知识匹配分数阈值:1

修改成:

匹配知识条数:20

知识匹配分数阈值:1可以先不改,根据回答适当调整到0.8左右,试试效果再决定。

Prompt提示词优化

直接看多轮对话下来,对话是如何有序展开的吧。

Round 1

在这里插入图片描述

Round 2

在这里插入图片描述

Round 3

在这里插入图片描述

Round 4

在这里插入图片描述
完毕!

数据集地址

神经内科典型病例目录PreData1.txt

神经内科典型病例目录PreData2.txt

神经内科典型病例目录PreData3.pdf

Enjoy!!!

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

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

相关文章

【AI数字人-论文】RAD-NeRF论文

文章目录 前言模型框架动态的NeRF前处理头部模型音频特征眼部控制头部总体表示 躯干模型loss 结果参考 【AI数字人-论文】AD-NeRF论文 前言 本篇论文有三个主要贡献点: 提出一种分解的音频空间编码模块,该模块使用两个低维特征网格有效地建模固有高维音…

ChatGPT调教指南 | 咒语指南 | Prompts提示词教程(一)

在我们开始探索人工智能的世界时,了解如何与之有效沉浸交流是至关重要的。想象一下,你手中有一把钥匙,可以解锁与OpenAI的GPT模型沟通的无限可能。这把钥匙就是——正确的提示词(prompts)。无论你是AI领域的新手&#…

Linux线程同步(3)生产者与消费者、条件变量与信号量

1.生产者与消费者的概念 生产者与消费者(Producer-Consumer)问题,是一个经典的并发编程问题。在这个问题中,涉及到两类进程:生产者和消费者。生产者负责生产数据,并将其放入一个缓冲区中;消费者…

C# (WebApi)整合 Swagger

SpringBoot-整合Swagger_jboot整合swagger-CSDN博客 C# webapi 也可以整合Swagger webapi运行其实有个自带的HELP页面 但是如果觉得UI不好看,且没办法显示方法注释等不方便的操作,我们也可以整合Swagger 一、使用NuGet控制台安装Swagger 在菜单中选择…

网络安全笔记总结

IAE引擎 1.深度检测技术--DFI和DPI技术 DFI和DPI都是流量解析技术,对业务的应用、行为及具体信息进行识别,主要应用于流量分析及流量检测。 DPI:深度包检测技术 DPI是一种基于应用层的流量检测和控制技术,对流量进行拆包&#x…

【Spring】 AOP面向切面编程

文章目录 AOP是什么?一、AOP术语名词介绍二、Spring AOP框架介绍和关系梳理三、Spring AOP基于注解方式实现和细节3.1 Spring AOP底层技术组成3.2 初步实现3.3 获取通知细节信息3.4 切点表达式语法3.5 重用(提取)切点表达式3.6 环绕通知3.7 切…

Matplotlib绘制炫酷散点图:从二维到三维,再到散点图矩阵的完整指南与实战【第58篇—python:Matplotlib绘制炫酷散点图】

文章目录 Matplotlib绘制炫酷散点图:二维、三维和散点图矩阵的参数说明与实战引言二维散点图三维散点图散点图矩阵二维散点图进阶:辅助线、注释和子图三维散点图进阶:动画效果和交互性散点图矩阵进阶:调整样式和添加密度图总结与展…

鸿蒙开发(五)鸿蒙UI开发概览

从用户角度来讲,一个软件拥有好看的UI,那是锦上添花的事情。再精确的算法,再厉害的策略,最终都得通过UI展现给用户并且跟用户交互。那么,本篇一起学习下鸿蒙开发UI基础知识,认识下各种基本控件以及使用方式…

python 3.7.3的安装

参考 Linux安装Python3.7-良许Linux教程网 (lxlinux.net) 1、Index of /ftp/python/3.7.9/ 1、安装gcc,yum -y install gcc 2、 yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel…

Llama2模型的优化版本:Llama-2-Onnx

Llama2模型的优化版本:Llama-2-Onnx。 Llama-2-Onnx是Llama2模型的优化版本。Llama2模型由一堆解码器层组成。每个解码器层(或变换器块)由一个自注意层和一个前馈多层感知器构成。与经典的变换器相比,Llama模型在前馈层中使用了不…

vue3 toRefs之后的变量修改方法

上效果 修改值需要带上解构之前的对象名obj&#xff0c; changeName:()>{ // toRefs 解决后变量修改值方法&#xff1a; 解构前变量.字段新值 obj.name FEIFEI; } } 案例源码 <!DOCTYPE html> <html> <head><me…

普中51单片机学习(十一)

独立按键 独立按键原理 按键在闭合和断开时触电存在抖动现象 硬件消抖电路如下 实验代码 #include "reg52.h" typedef unsigned char u8; typedef unsigned int u16;void delay(u16 i) {while(i--); } sbit ledP2^0; sbit k1P3^1;void keypro() {if(k10){delay(1…

yolov9目标检测报错AttributeError: ‘list‘ object has no attribute ‘device‘

最近微智启软件工作室在运行yolov9目标检测的detect.py测试代码时&#xff0c;报错&#xff1a; File “G:\down\yolov9-main\yolov9-main\detect.py”, line 102, in run pred non_max_suppression(pred, conf_thres, iou_thres, classes, agnostic_nms, max_detmax_det) Fil…

css实现悬浮卡片

结果展示 html代码 <!doctype html> <html lang"zh"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge,chrome1"> <meta name"viewport" content"…

《图解设计模式》笔记(二)交给子类

三、Template Method模式&#xff1a;将具体处理交给子类 示例程序类图 public static void main(String[] args) {// 生成一个持有H的CharDisplay类的实例AbstractDisplay d1 new CharDisplay(H);// 生成一个持有"Hello, world."的StringDisplay类的实例AbstractD…

pytest结合Allure生成测试报告

文章目录 1.Allure配置安装2.使用基本命令报告美化1.**前置条件**2.**用例步骤****3.标题和描述****4.用例优先级**3.进阶用法allure+parametrize参数化parametrize+idsparametrize+@allure.title()4.动态化参数5.环境信息**方式一****方式二**6.用例失败截图1.Allure配置安装 …

PNPM 批量检查和更新项目依赖

&#x1f680; 作者主页&#xff1a; 有来技术 &#x1f525; 开源项目&#xff1a; youlai-mall &#x1f343; vue3-element-admin &#x1f343; youlai-boot &#x1f33a; 仓库主页&#xff1a; Gitee &#x1f4ab; Github &#x1f4ab; GitCode &#x1f496; 欢迎点赞…

【前端素材】推荐优质后台管理系统Frest平台模板(附源码)

一、需求分析 定义 后台管理系统是一种用于管理和控制网站、应用程序或系统后台操作的软件工具&#xff0c;通常由授权用户&#xff08;如管理员、编辑人员等&#xff09;使用。它提供了一种用户友好的方式来管理网站或应用程序的内容、用户、数据等方面的操作&#xff0c;并…

Apache Commons开源的工具库介绍

Apache Commons 是 Apache 软件基金会主持的一个项目&#xff0c;旨在提供一系列可重用的 Java 组件。这些组件覆盖了从数据封装、文本处理到网络通信等各个方面&#xff0c;是 Java 开发中常用的一系列工具库。Apache Commons 项目下的各个库通常以 "commons-" 开头…

神经网络系列---分类度量

文章目录 分类度量混淆矩阵&#xff08;Confusion Matrix&#xff09;&#xff1a;二分类问题二分类代码多分类问题多分类宏平均法:多分类代码多分类微平均法&#xff1a; 准确率&#xff08;Accuracy&#xff09;&#xff1a;精确率&#xff08;Precision&#xff09;&#xf…
推荐文章