我试图从nodejs获取一些提示的建议数组(多个建议)。这是我目前的代码:
const completion = await openai.createCompletion({ model: complitionModel, prompt: `${finalCommand}: ${text}`, max_tokens: 256, temperature: 0, top_p: 1, frequency_penalty: 0, presence_penalty: 0, user: user.id });
但无论我发送什么提示或文本,它总是返回一个建议(只有一个元素的数组)… 有什么想法吗?
回答:
文档中提到有一个参数 n
,默认值为1
为每个提示生成多少个完成结果。
注意:因为这个参数会生成多个完成结果,它可以很快消耗你的令牌配额。谨慎使用,并确保你对
max_tokens
和stop
有合理的设置。
const completion = await openai.createCompletion({ model: complitionModel, prompt: `${finalCommand}: ${text}`, max_tokens: 256, temperature: 0, top_p: 1, frequency_penalty: 0, presence_penalty: 0, user: user.id, n: noOfCompletions //默认值为1 });
注意
即使n
值更高,当temperature
为0
时,你也可能会得到相同的结果。文档中说
使用什么样的采样温度,介于0到2之间。较高的值如0.8会使输出更随机,而较低的值如0.2会使输出更集中和确定性。
此外,这个论坛帖子也讨论了这个问题