OpenAI GPT-3.5 “prompt“ argument not working

题意:"OpenAI GPT-3.5 的 `prompt` 参数不起作用"

问题背景:

I am trying to make a flutter app with the openAI api that works like a chatbot, and I want to add a prompt so that the responses are more specialized, like in the openAI playground on their website.

"我正在尝试使用 OpenAI API 制作一个类似聊天机器人的 Flutter 应用,并且我想添加一个提示,以便响应更加专业化,就像在他们网站上的 OpenAI Playground 一样。"

I am testing the API post function with postman and it worked perfectly fine for me before I tried adding a prompt. I assumed that to add a prompt you just have to add a "prompt": line in the body like when you work with the text-davinci model, but when I do that I get this message returned:

"我正在使用 Postman 测试 API 的 POST 功能,它在我尝试添加提示之前一直运行得非常好。我以为要添加提示,只需要像在使用 text-davinci 模型时那样在请求体中添加一行 `"prompt":` 即可,但当我这样做时,我收到了以下消息:"

复制代码
{
    "error": {
        "message": "Unrecognized request argument supplied: prompt",
        "type": "invalid_request_error",
        "param": null,
        "code": null
    }
}

Is there a different way you need to do this with the gpt models, or does the prompt argument just not exist for them?

"使用 GPT 模型时需要采用不同的方法吗,还是说这些模型根本不存在 `prompt` 参数?"

问题解决:

The OPEN AI 3.5-turbo model only supports the newer chat completion API which does not have a 'prompt' json body field.

"OPEN AI 3.5-turbo 模型仅支持较新的聊天完成 API,该 API 没有 `prompt` JSON 请求体字段。"

I would assume you are using the older competion API json body format aginst the newer chat completion API endpoint and that is the reason for your error.

"我认为你可能是使用了较旧的 completion API JSON 请求体格式来访问较新的聊天完成 API 端点,这就是你遇到错误的原因。"

--- update ---

I can reproduce your exact error response with:

"我可以通过以下方式重现你的确切错误响应:"

curl https://api.openai.com/v1/chat/completions -H "Content-Type: application/json" -H "Authorization: Bearer $OPENAI_API_KEY" -d '{ "model": "gpt-3.5-turbo", "messages": [{"role": "user", "content": "Hello!"}], "prompt": "testing" }'

This is just a modified example from the api link above. Removing the added "prompt" field from the json makes it work fine.

"这只是上述 API 链接中的一个修改示例。移除 JSON 中添加的 `prompt` 字段后,它就能正常工作了。"

So my advice in the comment stands. Figure out what you are sending in the body of your http GET request. It will have a "prompt" field, remove it and any other field that should not be there and it should work.

"所以我在评论中的建议仍然适用。查明你在 HTTP GET 请求的请求体中发送了什么内容。它会有一个 `prompt` 字段,移除它以及任何其他不应该存在的字段,然后它应该就能正常工作了。"

相关推荐
结城7 小时前
HTTP 与 HTTPS 的区别深度解析:从原理到实践
网络协议·http·https
程序员鱼皮8 小时前
刚刚,GPT-5 炸裂登场!可免费使用
计算机·ai·互联网·编程
Spider_Man12 小时前
别再用Express了!用Node.js原生HTTP模块装逼的正确姿势
前端·http·node.js
TDengine (老段)12 小时前
TDengine 中 TDgpt 的模型评估工具
大数据·数据库·机器学习·ai·时序数据库·tdengine·涛思数据
PineappleCoder13 小时前
服务器推送有多香?HTTP/2 让资源加载快到 “未卜先知”
前端·http·面试
逻极14 小时前
Dify 从入门到精通(第 20/100 篇):Dify 的自动化测试与 CI/CD
人工智能·ai·agent·ai编程·工作流·dify·ai助手
CF5241 天前
深入掌握Prompt工程:高效创建与管理AI提示词实践指南
ai
hereitis贝壳1 天前
解锁音频创作新可能:AI 人声伴奏分离神器 Replay 深度解析
ai·人声分离·replay
dong__csdn1 天前
nginx代理出https,request.getRequestURL()得到http问题解决
网络·http
Spider_Man1 天前
缓存策略大乱斗:让你的页面快到飞起!
前端·http·node.js