12.实战私有数据微调ChatGLM3

2024-06-14 08:12

本文主要是介绍12.实战私有数据微调ChatGLM3,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

实战私有数据微调ChatGLM3

  • 实战私有数据微调ChatGLM3
    • 实战构造私有的微调数据集
      • 基于 ChatGPT 设计生成训练数据的 Prompt
      • 使用 LangChain + GPT-3.5-Turbo 生成训练数据样例
      • 训练数据解析、数据增强和持久化存储
      • 自动化批量生成训练数据集流水线
      • 提示工程(Prompt Engineering):强化返回格式,不断测试结果
    • 实战私有数据微调 ChatGLM3
      • 使用 QLoRA 小样本微调 ChatGLM3
      • ChatGLM3 微调前后效果对比

实战私有数据微调ChatGLM3

实战构造私有的微调数据集

典型的训练数据集构造流程
在这里插入图片描述
痛点:流程重复繁杂,效率低

基于 GPT 的训练数据集构造流程
在这里插入图片描述
基于 ChatGPT 设计生成训练数据的 Prompt(以中国哲学领域为例)
在这里插入图片描述

基于 ChatGPT 设计生成训练数据的 Prompt

在这里插入图片描述

使用 LangChain + GPT-3.5-Turbo 生成训练数据样例

在这里插入图片描述

训练数据解析、数据增强和持久化存储

在这里插入图片描述
数据增强:构造多样化的提问方式
在这里插入图片描述
在这里插入图片描述

自动化批量生成训练数据集流水线

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

提示工程(Prompt Engineering):强化返回格式,不断测试结果

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

实战私有数据微调 ChatGLM3

使用 QLoRA 小样本微调 ChatGLM3

在这里插入图片描述

ChatGLM3 微调前后效果对比

在这里插入图片描述

在这里插入图片描述
fixed

在这里插入图片描述

这篇关于12.实战私有数据微调ChatGLM3的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1059848

相关文章

Python版本信息获取方法详解与实战

《Python版本信息获取方法详解与实战》在Python开发中,获取Python版本号是调试、兼容性检查和版本控制的重要基础操作,本文详细介绍了如何使用sys和platform模块获取Python的主... 目录1. python版本号获取基础2. 使用sys模块获取版本信息2.1 sys模块概述2.1.1

Linux下利用select实现串口数据读取过程

《Linux下利用select实现串口数据读取过程》文章介绍Linux中使用select、poll或epoll实现串口数据读取,通过I/O多路复用机制在数据到达时触发读取,避免持续轮询,示例代码展示设... 目录示例代码(使用select实现)代码解释总结在 linux 系统里,我们可以借助 select、

Python爬虫HTTPS使用requests,httpx,aiohttp实战中的证书异步等问题

《Python爬虫HTTPS使用requests,httpx,aiohttp实战中的证书异步等问题》在爬虫工程里,“HTTPS”是绕不开的话题,HTTPS为传输加密提供保护,同时也给爬虫带来证书校验、... 目录一、核心问题与优先级检查(先问三件事)二、基础示例:requests 与证书处理三、高并发选型:

C#使用iText获取PDF的trailer数据的代码示例

《C#使用iText获取PDF的trailer数据的代码示例》开发程序debug的时候,看到了PDF有个trailer数据,挺有意思,于是考虑用代码把它读出来,那么就用到我们常用的iText框架了,所... 目录引言iText 核心概念C# 代码示例步骤 1: 确保已安装 iText步骤 2: C# 代码程

Pandas处理缺失数据的方式汇总

《Pandas处理缺失数据的方式汇总》许多教程中的数据与现实世界中的数据有很大不同,现实世界中的数据很少是干净且同质的,本文我们将讨论处理缺失数据的一些常规注意事项,了解Pandas如何表示缺失数据,... 目录缺失数据约定的权衡Pandas 中的缺失数据None 作为哨兵值NaN:缺失的数值数据Panda

C++中处理文本数据char与string的终极对比指南

《C++中处理文本数据char与string的终极对比指南》在C++编程中char和string是两种用于处理字符数据的类型,但它们在使用方式和功能上有显著的不同,:本文主要介绍C++中处理文本数... 目录1. 基本定义与本质2. 内存管理3. 操作与功能4. 性能特点5. 使用场景6. 相互转换核心区别

Oracle Scheduler任务故障诊断方法实战指南

《OracleScheduler任务故障诊断方法实战指南》Oracle数据库作为企业级应用中最常用的关系型数据库管理系统之一,偶尔会遇到各种故障和问题,:本文主要介绍OracleSchedul... 目录前言一、故障场景:当定时任务突然“消失”二、基础环境诊断:搭建“全局视角”1. 数据库实例与PDB状态2

Java 单元测试之Mockito 模拟静态方法与私有方法最佳实践

《Java单元测试之Mockito模拟静态方法与私有方法最佳实践》本文将深入探讨如何使用Mockito来模拟静态方法和私有方法,结合大量实战代码示例,带你突破传统单元测试的边界,写出更彻底、更独立... 目录Mockito 简介:为什么选择它?环境准备模拟静态方法:打破“不可变”的枷锁传统困境解法一:使用M

python库pydantic数据验证和设置管理库的用途

《python库pydantic数据验证和设置管理库的用途》pydantic是一个用于数据验证和设置管理的Python库,它主要利用Python类型注解来定义数据模型的结构和验证规则,本文给大家介绍p... 目录主要特点和用途:Field数值验证参数总结pydantic 是一个让你能够 confidentl

Git进行版本控制的实战指南

《Git进行版本控制的实战指南》Git是一种分布式版本控制系统,广泛应用于软件开发中,它可以记录和管理项目的历史修改,并支持多人协作开发,通过Git,开发者可以轻松地跟踪代码变更、合并分支、回退版本等... 目录一、Git核心概念解析二、环境搭建与配置1. 安装Git(Windows示例)2. 基础配置(必