有什么技巧或最佳实践可以实现这一目标吗?我尝试过几次提示 有没有可以执行此操作的开源模型? 我尝试过几次提示,但没有给出最佳结果。先感谢您
很难保证模型生成的令牌数量完全准确。但是,可以使用一些技巧和最佳实践来更接近所需的长度:
技巧
-
使用专门的控制标记: 一些大型语言模型(LLM)支持在提示中使用特殊的控制标记来指示所需的生成长度。这些标记因模型而异,但通常涉及指定精确的标记计数或范围。请查阅正在使用的特定 LLM 的文档,以了解是否支持此类标记。
-
尝试不同的“最大长度”设置: 大多数 LLM 允许设置生成的“最大长度”。尝试使用接近所需令牌数量的值进行实验。重要的是要注意,这只是一个最大值;模型可能仍然生成较短的文本。
-
对模型进行微调: 为了更好地控制长度,可以使用包含有关所需长度信息的数据集对 LLM 进行微调。这将帮助模型了解的特定长度偏好。
-
后处理: 生成文本后,可以应用后处理技术来截断或填充到所需的长度。例如,如果模型生成的内容太长,可以简单地截断为所需的令牌数量。如果它太短,可以使用额外的令牌(例如空格或填充令牌)来填充它。
最佳实践
-
清楚具体地说明的要求: 在提示中,请清楚具体地说明所需的令牌数量。
-
使用简明的语言: 使用简明的语言并避免使用可能使模型感到困惑的复杂措辞。
-
提供上下文: 为模型提供有关所需输出的一些上下文。
-
进行实验: 使用不同的方法和设置进行实验,以找到适合特定用例的最佳方法。
开源模型
虽然没有开源模型可以保证生成的令牌数量完全准确,但以下是一些在文本生成方面表现出色并且可以进行试验的流行选项:
- GPT-2: https://huggingface.co/gpt2
- CTRL: https://huggingface.co/ctrl
- TransformerXL: https://huggingface.co/transfo-xl
请记住,即使使用这些技巧,也可能无法始终如一地实现完全准确的令牌数量。LLM 的本质是生成人类般的文本,这意味着在长度方面不可避免地会出现一些变化。
标签:python,artificial-intelligence,large-language-model From: 78776954