在JS中使用SDK无法从GPT-3获得正确响应

w8biq8rn  于 2023-03-09  发布在  其他
关注(0)|答案(1)|浏览(132)

当使用createCompletion时,我得到了一个响应,但它没有实际的文本响应。在textPayload中,它有“text:'包com.示例.演示.控制器;',”
下面是我的代码

const openai = new OpenAIApi(configuration);

  async function step1() {
  currentResponse = await openai.createCompletion({
    model: "text-davinci-003",
    prompt: currentMessage,
    temperature: 0,
    max_tokens: 2292,
    top_p: 1,
    frequency_penalty: 0,
    presence_penalty: 0,
    stop: ["\n\n"],
  });

} //end step1

return step1().then(function(response) {

    var currentResponseNew = currentResponse.data
    //this is where I get the text payload value
    console.log(currentResponseNew)
    res.send("done")

})
i5desfxk

i5desfxk1#

根据上面的代码,在访问响应数据时,需要从currentResponse对象访问choices参数。
下面是修复代码的方法:

const openai = new OpenAIApi(configuration);

  async function step1() {
  currentResponse = await openai.createCompletion({
    model: "text-davinci-003",
    prompt: currentMessage,
    temperature: 0,
    max_tokens: 2292,
    top_p: 1,
    frequency_penalty: 0,
    presence_penalty: 0,
    stop: ["\n\n"],
  });

} //end step1

return step1().then(function(response) {

    //this is where I get the text payload value
    console.log(currentResponse.data.choices[0].text)
    res.send("done")
})

当我运行这段代码时,我从GPT得到了一个有效的响应。

相关问题