策略模型在强化学习(RL)循环中的核心任务是根据给定提示生成回复。这种策略模型通常是经过微调的大型语言模型(LLM)。这一生成步骤代表了标准RL框架中的“动作”阶段,在此阶段,策略 $ \pi_{\theta} $ 在给定状态(输入提示)下执行动作(生成文本)。生成文本序列这个过程始于一批提示,这些提示通常源自用于奖励模型训练的相同数据集,或者是一个精心准备的、旨在引出多样行为的集合。对于批处理中的每个提示 $ x $,使用当前策略模型 $ \pi_{\theta} $ 来生成相应的文本序列 $ y $。这种生成通常采用大型语言模型常见的标准自回归解码方法。然而,与简单推理相比,在RLHF(人类反馈强化学习)情境中一个重要的区别是需要进行试探。我们不只是想要单一最有可能(贪婪)的回复;我们需要尝试不同的可能回复,以找出那些根据奖励模型可能带来更高奖励的回复。因此,生成过程主要依赖采样技术,而非纯粹的贪婪解码。常见的采样策略包括:温度缩放: 将温度参数 $ T > 0 $ 应用于模型最后一层的对数(softmax前得分)。较高的温度($ T > 1 $)会使概率分布变平,增加采样到不太可能标记的几率并提升多样性。较低的温度($ T < 1 $)会使分布变尖锐,使生成结果更接近贪婪解码。一个常见的起始值可能是 $ T \in [0.7, 1.0] $。 $$ P(标记_i | 上下文) = \frac{\exp(对数_i / T)}{\sum_j \exp(对数_j / T)} $$Top-k 采样: 在每一步,词汇表被限制为具有最高概率的 $ k $ 个标记。模型随后只从这个缩小后的集合中采样。这避免了采样到极不可能的标记,同时仍允许一定的变动。 $ k $ 的常用值范围可能在20到100之间。Top-p(核心)采样: 这种方法不是选择前 $ k $ 个标记,而是选择累积概率超过阈值 $ p $ 的最小标记集合。模型随后只从这个动态大小的集合中采样。这会根据模型在每一步的置信度来调整选择的数量。 $ p $ 的常见值通常在0.9或0.95左右。这些采样方法常被组合使用(例如,温度缩放后接top-k或top-p)。此外,控制生成长度的参数(max_new_tokens)以及可能的重复惩罚(repetition_penalty)对于生成连贯且有用的回复来说非常重要。生成过程流程此阶段的输入是一个提示,输出是来自活跃策略模型(正在通过PPO更新的模型)生成的回复。digraph G { rankdir=LR; node [shape=box, style=rounded, fontname="Arial", fontsize=10, color="#495057", fillcolor="#e9ecef", style="filled, rounded"]; edge [fontname="Arial", fontsize=9, color="#495057"]; prompt [label="输入提示 (状态 's')"]; policy_model [label="活跃策略模型\n(π_θ)", shape=cylinder, fillcolor="#a5d8ff"]; sampling [label="采样策略\n(温度, Top-k/Top-p)", shape=invhouse, fillcolor="#96f2d7"]; response [label="生成回复 (动作 'a')"]; prompt -> policy_model; policy_model -> sampling; sampling -> response; }该图展示了输入提示如何送入活跃策略模型,该模型运用采样策略生成文本回复的流程。实际考量批处理: 为了提升计算效率,提示通常以批次形式处理。策略模型会并行地为批次中的所有提示生成回复,借助GPU加速。模型状态: 使用策略模型 $ \pi_{\theta} $ 的当前状态进行生成很重要,因为该模型在PPO训练期间会持续更新。这能确保生成的动作体现最新的策略改进。计算成本: 文本生成,特别是使用大型模型和采样时,计算量很大。这一步骤通常占RLHF总训练时间和成本的很大一部分。有效的实现和硬件是必需的。这个阶段的结果是收集到的 (提示, 生成回复) 对。这些对代表了策略所收集的经验。流程中的下一个重要步骤,将在下一节详细说明,是使用训练过的奖励模型评估这些生成的回复,以判断根据已学习到的人类偏好,每个回复的“好”坏程度。这个奖励信号随后将驱动PPO更新。