当前位置: 首页 > news >正文

大语言模型里的微调vs RAG vs 模板提示词

文章目录

    • 介绍
      • 微调(Fine-tuning)
      • 定义
        • 优点:
        • 缺点:
        • 应用场景:
        • 技术细节
      • 检索增强生成(RAG,Retrieval-Augmented Generation)
      • 定义
        • 优点:
        • 缺点:
        • 应用场景:
        • 技术细节
      • 模板提示词(Prompt Engineering)
        • 定义
        • 优点:
        • 缺点:
        • 应用场景:
        • 技术细节
      • 对比与选择


本文从后端程序员的角度来谈下对于这几种提高大模型回答结果的优化手段


介绍

背景:大语言模型(LLM)的发展背景
目的:理解微调、RAG和模板提示词的重要性及其在实际开发中的应用

微调(Fine-tuning)

定义

微调是指在预训练模型的基础上,使用特定任务的数据进行再次训练。

优点:

提升模型在特定任务上的表现
可以在现有基础上进一步优化模型

缺点:

需要大量标注数据
训练成本高,时间长

应用场景:

客服问答系统
专业领域文档的理解与处理

技术细节

非专业略掉。

检索增强生成(RAG,Retrieval-Augmented Generation)

定义

RAG结合了信息检索与生成模型,通过先检索相关文档,再基于这些文档生成回答。

优点:

减少模型需要记住的知识量
提高回答的准确性和可靠性

缺点:

系统复杂度增加
需要维护高质量的检索数据库,数据库检索出来的相关文档直接影响最后生成的结果,所以在向量数据库的入库和检索过程要通过各种手段来进行优化。

应用场景:

问答系统
知识库增强的智能助手

技术细节

通过外挂知识库的方式,先提前把相关的数据向量化后store在向量数据库里,然后查询时再把这部分
内容查出来,然后一起喂给llm。这对于一些专业知识来说非常有用。因为对于一些非公开数据而言,llm也不知道这部分数据。
在这里插入图片描述

模板提示词(Prompt Engineering)

定义

模板提示词是指通过设计特定格式的输入来引导大语言模型生成预期的输出。

优点:

无需重新训练模型
灵活性高,适用范围广

缺点:

依赖于对模型行为的深刻理解
复杂任务时可能需要大量试验

应用场景:

文本生成
对话系统

技术细节

用户提问的问题常常描述不清,导致大模型往往不能给出精准的答案。实际上大模型能力是够的,只是由于输入的信息不够,才会导致这种结果,通过一个明确的提示词模板,对用户的提问进行包装,
好用大模型能够精确的理解需求。

提示词模板

提示词模板
1.任务描述:简要描述任务的背景和目标。
输入:
2. 提供输入格式和示例数据。指令:
3. 给出明确的指令,解释如何处理输入以生成所需输出。输出格式:
4. 指定输出格式和示例数据。示例:
5. 提供一个完整的输入和输出示例,以帮助理解和调试。

对比与选择

微调 vs RAG vs 模板提示词:
数据需求:微调 > RAG > 模板提示词
灵活性:模板提示词 > RAG > 微调
实现复杂度:RAG > 微调 > 模板提示词

相关文章:

大语言模型里的微调vs RAG vs 模板提示词

文章目录 介绍微调(Fine-tuning)定义优点:缺点:应用场景:技术细节 检索增强生成(RAG,Retrieval-Augmented Generation)定义优点:缺点:应用场景:技…...

网络编程:常用网络测试工具

telnet netstat ping arp wireshark(网络抓包工具) tcpdumpssh2 secure crt ——软件工具sudo ufw disable sudo apt-get install openssh-server openssh-client //两个命令敲完 得重启sudo apt-get install wireshark 1、telnet 远程登录工具&…...

mov视频怎么改成mp4?把mov改成MP4的四个方法

mov视频怎么改成mp4?选择合适的视频格式对于确保内容质量和流通性至关重要。尽管苹果公司的mov格式因其出色的视频表现备受赞誉,但在某些情况下,它并非最佳选择,因为使用mov格式可能面临一些挑战。MP4格式在各种设备(如…...

力扣1472.设计浏览器历史记录

力扣1472.设计浏览器历史记录 用双指针记录历史记录 以及栈顶高度移动时会直接把之前的记录消掉 class BrowserHistory {int pos-1;int top0;string history[5010];public:BrowserHistory(string homepage) {visit(homepage);}void visit(string url) {pos ;top pos;histor…...

准大一新生开学千万要带证件照用途大揭秘

1、提前关注好都有哪些考场,以及这些考场大致在网页的哪个位置。比如我选对外经贸大学,我就直接找到第二个点进去。 2、电脑上同时开了谷歌浏览器和IE浏览器,以及手机也登陆了。亲测下来,同一时间刷新,谷歌浏览器能显示…...

QImage显示图片像素

在Qt中,QImage 类是用来表示和处理图像的。如果你想查看或显示一个图片的像素数据,你可以使用 QImage 提供的方法来访问这些数据。以下是一些基本的方法来获取和显示图片的像素信息: 获取图像的像素格式: 使用 QImage::format() …...

uniapp使用高德地图(公众号+h5)

选择微信小程序的话后果就是你的地图出不来,出来了就报key异常 下面直接放配置和代码: 打包后的高德uni-app,uniCloud,serverless,高德地图,申请高德地图Key,配置使用高德地图,参数说明,高德开放平台用户名,百度地图,申请百度地图Key,配置使用百度地图,…...

深度学习与浅层学习:技术变革下的竞争态势

深度学习与浅层学习:技术变革下的竞争态势 在过去十年中,深度学习的崛起对整个人工智能领域产生了巨大影响,几乎在各种任务中显示出超越传统浅层学习方法的性能。这种变化不仅推动了技术的进步,还对硬件市场,尤其是显…...

LeetCode 219. 存在重复元素 II

LeetCode 219. 存在重复元素 II 给你一个整数数组 nums 和一个整数 k &#xff0c;判断数组中是否存在两个 不同的索引 i 和 j &#xff0c;满足 nums[i] nums[j] 且 abs(i - j) < k 。如果存在&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 示例 1&am…...

【目标检测】使用自己的数据集训练并预测yolov8模型

1、下载yolov8的官方代码 地址&#xff1a; GitHub - ultralytics/ultralytics: NEW - YOLOv8 &#x1f680; in PyTorch > ONNX > OpenVINO > CoreML > TFLite 2、下载目标检测的训练权重 yolov8n.pt 将 yolov8n.pt 放在ultralytics文件夹下 3、数据集分布 注…...

应用监控SkyWalking调研

参考&#xff1a; 链路追踪( Skyworking )_skywalking-CSDN博客 企业级监控项目Skywalking详细介绍&#xff0c;来看看呀-CSDN博客 SkyWalking 极简入门 | Apache SkyWalking 使用 SkyWalking 监控 ClickHouse Server | Apache SkyWalking https://zhuanlan.zhihu.com/p/3…...

Selenium使用注意事项:

find_element 和 find_elements 的区别 WebDriver和WebElement的区别 问题&#xff1a; 会遇到报错&#xff1a; selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector",&…...

小程序需要进行软件测试吗?小程序测试有哪些测试内容?

在如今移动互联网快速发展的时代&#xff0c;小程序已成为人们生活中不可或缺的一部分。然而&#xff0c;面对日益增长的小程序数量和用户需求&#xff0c;小程序的稳定性和质量问题日益突显。因此&#xff0c;对小程序进行软件测试显得尤为重要。 近期的一项调查显示&#xf…...

一文读懂企业租用GPU的注意事项!

在人工智能、大数据处理及高性能计算领域&#xff0c;GPU算力已成为推动技术创新与业务增长的核心动力。尚云Sunclouds作为GPU算力租赁服务提供商&#xff0c;为用户提供了灵活、高效且成本可控的解决方案。对于初次接触GPU算力租赁的用户而言&#xff0c;了解并掌握租用过程中…...

Linux运维:mysql主从复制原理及实验

当一台数据库服务器出现负载的情况下&#xff0c;需要扩展服务器服务器性能扩展方式有向上扩展&#xff0c;垂直扩展。向外扩展&#xff0c;横向扩展。通俗的讲垂直扩展是将一台服务器扩展为性能更强的服务器。横向扩展是增加几台服务器。 主从复制好比存了1000块钱在主上&…...

022-GeoGebra中级篇-几何对象之直线与坐标轴

本文主要介绍一下GeoGebra中直线的常见输入方式&#xff0c;比如工具栏输入、表达式输入、函数输入&#xff0c;最后再把坐标轴的调用简单介绍一下。内容比起传统的教学更偏向于实战一些&#xff0c;若感兴趣欢迎继续阅读。 目录 一、直线1. 关于工具栏绘制&#xff08;1&#…...

node js安装、配置(Windows版)

目录 node js 安装 node js 全局配置 1、全局安装路径 2、全局缓存路径 3、修改环境变量 pnpm安装、卸载 全局安装pnpm 验证pnpm版本 卸载pnpm 1、移除全局安装的包 2、移除pnpm cli 脚本直接安装 npm安装的使用命令直接卸载 node js 安装 cmd 查看是否存在&…...

go语言day08 泛型 自定义错误处理 go关键字:协程

泛型&#xff1a; 抛错误异常 实现error接口类型 用java语言解释的话&#xff0c;实现类需要重写error类型的抽象方法Error().这样就可以自定义异常处理。 回到go语言&#xff0c;在Error()方法中用*argError 这样一个指针类来充当error接口的实现类。 在f2()方法中定义返回值…...

MySql性能调优01-[数据结构和索引]

数据结构和索引 什么是索引索引的种类常见索引数据结构和区别二叉树 红黑树 什么是索引 索引的种类 在Mysql中索引是在存储引擎层实现的&#xff0c;而不是在服务层实现的 按数据结构分&#xff1a;Btree索引、Hash索引、Full-text索引按存储结构分&#xff1a;聚簇索引、非聚…...

【算法入门-栈】逆波兰表达式求值

&#x1f4d6;逆波兰表达式求值 ✅描述✅扩展&#xff1a;什么是逆波兰表达式✅题解方法一&#xff1a;栈✅题解方法二&#xff08;数组模拟栈&#xff09; 今天又刷了一道题&#xff0c;奥利给 刷题地址&#xff1a; 点击跳转 ✅描述 给定一个逆波兰表达式&#xff0c;求表达…...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…...

设计模式和设计原则回顾

设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...

Prompt Tuning、P-Tuning、Prefix Tuning的区别

一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...

3.3.1_1 检错编码(奇偶校验码)

从这节课开始&#xff0c;我们会探讨数据链路层的差错控制功能&#xff0c;差错控制功能的主要目标是要发现并且解决一个帧内部的位错误&#xff0c;我们需要使用特殊的编码技术去发现帧内部的位错误&#xff0c;当我们发现位错误之后&#xff0c;通常来说有两种解决方案。第一…...

蓝桥杯 2024 15届国赛 A组 儿童节快乐

P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡&#xff0c;轻快的音乐在耳边持续回荡&#xff0c;小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下&#xff0c;六一来了。 今天是六一儿童节&#xff0c;小蓝老师为了让大家在节…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log&#xff0c;共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题&#xff0c;不能使用ELK只能使用…...

Neo4j 集群管理:原理、技术与最佳实践深度解析

Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)

UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中&#xff0c;UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化&#xf…...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计&#xff0c;聪明的码友立马就知道了&#xff0c;该到数据访问模块了&#xff0c;要不就这俩玩个6啊&#xff0c;查库势在必行&#xff0c;至此&#xff0c;它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据&#xff08;数据库、No…...

大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计

随着大语言模型&#xff08;LLM&#xff09;参数规模的增长&#xff0c;推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长&#xff0c;而KV缓存的内存消耗可能高达数十GB&#xff08;例如Llama2-7B处理100K token时需50GB内存&a…...