RAG、Agent、微调等6种常见的大模型定制策略

六种最常见的LLM定制策略,按资源消耗从最少到最多的顺序排列:

  1. 提示工程(Prompt Engineering)

  2. 解码与采样策略(Decoding and Sampling Strategy)

  3. 检索增强生成(Retrieval Augmented Generation)

  4. Agent

  5. 微调(Fine Tuning)

  6. 基于人类反馈的强化学习(Reinforcement Learning from Human Feedback)

1、提示工程(Prompt Engineering)

提示(Prompt)是发送给LLM的输入文本,用于引发AI生成的响应,它可以由指令、上下文、输入数据和输出指示符组成。

  • 指令:这是为模型如何执行任务提供的描述或指示。

  • 上下文:这是外部信息,用于指导模型在特定范围内进行响应。

  • 输入数据:这是你希望模型生成响应的输入。

  • 输出指示符:这指定了输出的类型或格式。

基本的提示工程技术包括零次提示(zero shot prompting)、一次提示(one shot prompting)和少量提示(few shot prompting)。用户可以在与LLM互动时直接实现这些基本提示工程技术,从而高效地使模型的行为与新目标对齐。API实现也是一种选择。

由于提示工程的高效性和有效性,人们也探索和开发出了越来越多的用于提升提示的逻辑结构的复杂方法。

  • 思维链(Chain of Thought,CoT)要求LLM将复杂的推理任务分解为逐步的思维过程,从而提高多步骤问题的表现。每个步骤都会明确暴露其推理结果,并作为后续步骤的前置上下文,直到得出最终答案。

  • 思维树(Tree of Thought,ToT)是CoT的扩展,通过考虑多条不同的推理分支并自我评估选择,决定下一步最佳行动。它对于涉及初步决策、未来策略和多种解决方案探索的任务更为有效。

  • 自动推理和工具使用(Automatic Reasoning and Tool use,ART)在CoT的基础上构建,它解构复杂任务,并允许模型使用预定义的外部工具(如搜索和代码生成)从任务库中选择少量示例。

  • 协同推理与行动(Synergizing Reasoning and Acting,ReAct)结合了推理轨迹与行动空间,模型在行动空间中搜索,并基于环境观察确定下一步最佳行动。

像CoT和ReAct这样的技术通常与Agent工作流结合使用,以增强其能力。

2、解码与采样策略(Decoding and Sampling Strategy)

解码策略可以通过推理参数(例如temperature、top_p、top_k)在模型推理时进行控制,从而决定模型响应的随机性和多样性。贪婪搜索、束搜索和采样是三种常见的自回归模型生成的解码策略。在自回归生成过程中,LLM根据前一个token的条件,基于候选token的概率分布逐个输出token。

默认情况下,使用贪婪搜索来生成概率最高的下一个token。

与此不同,束搜索解码会考虑多个下一个最佳token的假设,并选择在整个文本序列中具有最高综合概率的假设。以下代码片段使用transformers库,在模型生成过程中指定束搜索路径的数量(例如,num_beams=5表示考虑5个不同的假设):

python 复制代码
from transformers import AutoModelForCausalLM, AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained(tokenizer_name)
inputs = tokenizer(prompt, return_tensors="pt")

model = AutoModelForCausalLM.from_pretrained(model_name)
outputs = model.generate(**inputs, num_beams=5)

采样策略是控制模型响应随机性的第三种方法,通过调整这些推理参数:

  1. 温度(Temperature):降低温度会使概率分布变得更加尖锐,从而增加生成高概率词语的可能性,减少生成低概率词语的可能性。当温度 = 0 时,相当于贪婪搜索(最不具创意);当温度 = 1 时,会生成最具创意的输出。

  2. Top K采样:这种方法筛选出K个最可能的下一个token,并在这些token之间重新分配概率。模型从这个筛选出的token集合中进行采样。

  3. Top P采样:与从K个最可能的token中采样不同,top-p采样从最小的token集合中选择,该集合的累积概率超过阈值p。

以下示例代码片段从累积概率大于0.95(top_p=0.95)的前50个最可能的token中进行采样(top_k=50):

python 复制代码
sample_outputs = model.generate(
    **model_inputs,
    max_new_tokens=40,
    do_sample=True,
    top_k=50,
    top_p=0.95,
    num_return_sequences=3,
)

3、检索增强生成(Retrieval Augmented Generation)

4、Agent

5、微调(Fine Tuning)

6、基于人类反馈的强化学习(Reinforcement Learning from Human Feedback)

从理论到实践:RAG、Agent、微调等6种常见的大模型定制策略

相关推荐
韩曙亮7 小时前
【AI 大模型】各 AI 大厂 Agent 平台各等级订阅会员对比分析 ( 字节 TRAE、腾讯 Buddy、阿里 Qoder CN、百度 DuMate )
人工智能·ai·大模型·ai大模型·qoder·workbuddy·traecode
梦想不只是梦与想7 小时前
环境管理系统:Conda(一)
python·conda·环境隔离
五仁火烧7 小时前
大模型开发: MCP
java·大模型·mcp
Rocky Ding*7 小时前
【三年面试五年模拟】2026-09-16 字节跳动 Agent 秋招一面全解析:从 Harness、记忆与并发到算法题的系统化解析
论文阅读·人工智能·深度学习·机器学习·aigc·ai-native·ai agent
计算机源码社8 小时前
基于K-Means聚类的新生儿败血症临床分型与可视化分析系统 基于数据挖掘的新生儿败血症生命体征时序走势与关联性可视化研究
大数据·hadoop·python·数据挖掘·数据分析·spark·毕业设计
一阵寒风8 小时前
用 AI 把PCB制前工程CAM无人值守输出系统做出来
python·ai编程·pcb工艺
SamChan908 小时前
Python 处理小语种 PDF 的编码坑:重音字符、连字与 (cid:xx) 乱码的解决方案
python·ai·pdf·机器翻译
量化吞吐机8 小时前
会写代码之后,量化学习还要补上交易判断
人工智能·python
lie..9 小时前
30天从零开始学AI应用开发(Day 1):机器学习、深度学习、大模型,到底是个啥关系
人工智能·python·大模型
Ivanqhz9 小时前
Unigram 算法
开发语言·人工智能·python·深度学习·mlir