ChatGPT-3 OpenAI API提供随机和无意义的响应

nue99wik  于 2023-11-22  发布在  其他
关注(0)|答案(1)|浏览(950)

我正在开发一个Next.js应用程序,用户可以选择一些成分并获得可以用它们制作的食谱想法。我正在使用OpenAI API,但我找不到优化它的方法。我希望获得与chatGPT相同质量的响应(或类似的东西),但相反,它给了我随机的,不完整的和断章取义的React。我试图发挥最大令牌,温度,角色,模型等。但它没有工作。这里是一个例子:
这是chatGPT上的提示和响应:

  • 提示:* 创建一个由土豆,辣椒粉,鲑鱼和酸奶制成的食谱。首先说明标题,然后是配料表,然后是分步说明。*
  • 回复:* 标题:辣椒酱三文鱼配奶油土豆和酸奶泥 *
  • 材料:*
  • 三文鱼:- 2鲑鱼片- 1茶匙辣椒粉**-盐和胡椒调味**- 2汤匙橄榄油 *
  • 对于奶油土豆和酸奶泥:- 4个中等大小的土豆,去皮并切成块- 1/2杯纯酸奶**-盐和胡椒调味 *
  • 说明:*
  • 鲑鱼 *
  • 1.将烤箱预热至190°C。*
  • 2.那么....*

这个结果正是我想要的。
这是我在使用API尝试相同提示时得到的结果:

{
  "prompt": "Please create a recipe made with potato, paprika, salmon and yogurt. First state the title, then the ingredients list and then step-by-step instructions.",
  "max_tokens": 200,
  "temperature": 0.3
}

response: 

{
    "id": "cmpl-88ReJXcbcT3zstFOQTStJDnG528en",
    "object": "text_completion",
    "created": 1697023599,
    "model": "davinci",
    "choices": [
        {
            "text": "\n\nEasy ☆ Cooked rice remake risotto\n\nI will remake the cooked rice deliciously. Since the ingredients are already included, it is delicious risotto with only eggs.\n\nTakoyaki style rice ball\n\nI love takoyaki, but it is troublesome to make, so it's a Takoyaki style rice ball. Because the color is also beautiful, it is also recommended for Hinamatsuri and lunch.\n\nRange easy! Omurice style\n\nAll the ingredients are fine about your choice. Washing is easy because it can be made without the need for cooking utensils.\n\nEasy lunch ♡ ♡ ♡ 炒 rice bowl\n\nTuna fried rice ♡ パ ラ ふ ふ ふ ふ ふ ふ ふ ♡ ♡ ♡ ♡ ♡ す ぐ\n\nSoymilk Japanese-style doria\n\nThis",
            "index": 0,
            "logprobs": null,
            "finish_reason": "length"
        }
    ],
    "usage": {
        "prompt_tokens": 33,
        "completion_tokens": 200,
        "total_tokens": 233
    }
}

字符串
是一些特定的属性来优化API的结果吗?或者无论我做什么都不可能得到chatGPT质量的结果?

mbskvtky

mbskvtky1#

我不太清楚你打电话的GPT版本和型号,但如果你使用的是GPT 4或GPT 4- 32 K,我可以帮你一点
因此,基本上,要提高响应的质量,有一些方法。
1.最明显的是给予一个更好的提示,但是你的提示看起来很好。但是,是的,它可以得到一些改进。
1.在这种情况下,将“温度”保持为0是理想的。
1.添加一个参数“top_p”并将其设置为0.95会有所帮助。只需在温度参数下添加“top_p”:0.95即可。
1.我建议删除“max_tokens”。我知道你想控制成本,但将max_tokens保持在200会很低,我建议增加一点。至少将max_tokens调整为ChatGPT响应中的令牌数量。
1.给它一个Few-Shot方法将在这里有很大的帮助,它有助于GPT在这里获得上下文,这实际上对我的项目有很大的帮助,在更好的结果方面。
1.最后,请遵循API请求正文的最佳实践,我们为GPT-4和GPT 4- 32 K发送的正文与您在问题中显示的正文相比有很大不同。请更新它。
希望能帮上忙。谢谢。

相关问题