当前位置: 首页 > 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 > 微调 > 模板提示词

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 用vue2+elementUI封装手机端选择器picker组件,支持单选、多选、远程搜索多选
  • 类与对象-继承-同名成员处理
  • SCSA第四天
  • VSCode设置字体大小
  • 机器学习与深度学习:区别与联系(含工作站硬件推荐)
  • 力扣之有序链表去重
  • IEC62056标准体系简介-4.IEC62056-53 COSEM应用层
  • 医疗器械网络安全 | 漏洞扫描、渗透测试没有发现问题,是否说明我的设备是安全的?
  • 数字化转型领航者:佑美科技塑造智能健康新生态
  • 什么是 GC Roots??一文带你看懂!!
  • MT3047 区间最大值
  • 百元平价蓝牙耳机哪款好?平价高性价比蓝牙耳机推荐
  • 新书速览|HTML5+CSS3 Web前端开发与实例教程:微课视频版
  • 【C++初阶】C++入门(下)
  • 学圣学最终的目的是:达到思无邪的状态( 纯粹、思想纯正、积极向上 )
  • ABAP的include关键字,Java的import, C的include和C4C ABSL 的import比较
  • Elasticsearch 参考指南(升级前重新索引)
  • ES10 特性的完整指南
  • es6要点
  • Fastjson的基本使用方法大全
  • IIS 10 PHP CGI 设置 PHP_INI_SCAN_DIR
  • Linux链接文件
  • linux学习笔记
  • Python3爬取英雄联盟英雄皮肤大图
  • Redis字符串类型内部编码剖析
  • Spring Cloud Alibaba迁移指南(一):一行代码从 Hystrix 迁移到 Sentinel
  • 阿里云购买磁盘后挂载
  • 从零到一:用Phaser.js写意地开发小游戏(Chapter 3 - 加载游戏资源)
  • 将回调地狱按在地上摩擦的Promise
  • 京东美团研发面经
  • 离散点最小(凸)包围边界查找
  • 聊聊directory traversal attack
  • 聊聊springcloud的EurekaClientAutoConfiguration
  • 前端面试之闭包
  • 用element的upload组件实现多图片上传和压缩
  • 在Unity中实现一个简单的消息管理器
  • media数据库操作,可以进行增删改查,实现回收站,隐私照片功能 SharedPreferences存储地址:
  • 7行Python代码的人脸识别
  • ​zookeeper集群配置与启动
  • # 消息中间件 RocketMQ 高级功能和源码分析(七)
  • #Datawhale AI夏令营第4期#AIGC文生图方向复盘
  • $HTTP_POST_VARS['']和$_POST['']的区别
  • (1)(1.13) SiK无线电高级配置(六)
  • (21)起落架/可伸缩相机支架
  • (javaweb)Http协议
  • (pojstep1.1.1)poj 1298(直叙式模拟)
  • (二)延时任务篇——通过redis的key监听,实现延迟任务实战
  • (附源码)python房屋租赁管理系统 毕业设计 745613
  • (论文阅读26/100)Weakly-supervised learning with convolutional neural networks
  • (每日一问)操作系统:常见的 Linux 指令详解
  • (一)Spring Cloud 直击微服务作用、架构应用、hystrix降级
  • (转)程序员疫苗:代码注入
  • **PHP分步表单提交思路(分页表单提交)
  • . Flume面试题
  • .bat批处理(二):%0 %1——给批处理脚本传递参数