ChatGPT等AI大模型输出格式错误优化分享

#ChatGPT/坑 当 ChatGPT没有按照要求的格式输出

省时间,直接上结论

切换模型也不太好使,捕获异常回调重试发送提示词也不太好使。

原因是相同的提示词会触发类似 "缓存" 的东西持续输出错误的结果,至上与上次输出的 70% 都是相同的,大概率也是错误的结果。

所以在发送请求前,先在提示词的前面加上 uuid 就可以保证每次输出不走缓存 gpt 重新计算输出了,大概率是会成功的。

我最终的方案就是通过:捕获异常回调重试,在提示词前面加上 uuid 发送给大模型解决这个问题的。

闲着没事就接着往下看

复制代码
接下来将下面这段英语单词数组翻译中文
{单词数组}
你需要将下面英语单词按顺序意译翻译成中文,必须严格按照以下对象数组json格式,不容出错:
``
[{ "e": "英语单词","c": "翻译中文"}]
``

上面这段是我的 prompt,但是在我使用 gpt3.5 16k 的时候有时候发癫并没有按照要求格式输出,输出内容变成这样:

json 复制代码
[{"e":"chatter?","c":"闲聊?"},
 {"e":"colors.","c":"颜色。"},
 {"e":"concept","c":"概念"},{"e":"constantly","c":"不断地"},{"e":"crazy","crazy"},{"e":"crowd","人群"},.....手动忽略后面错误json]

前面是对的格式,后面就错了。

解决办法是切换成了 gpt3.5,然后就可以了,原因嘛,不知道,解决以上的问题步骤:

1、检查你的提示词(prompt)

2、提示词没问题,那么就是模型的问题了,切换模型

1、意外来了,切换了模型还是出了问题

经过思考我尝试用出现异常就线程等待一段时间后,然后重新发出请求试试。

2、这次舒服了,过一会我一看,怎么还是输出格式错误!!!

好吧,gpt 本身可能自带一些类似缓存的机制,如果每次提示词都一样,那么他大概率就会输出和上次相似度高达 80% 的内容。

所以最好的办法就是当出现异常后,回调重新发送 gpt 提示词都有所不同。

我的方法是在提示词前面加一串随机数字即可,在 299~999999 随机选出一个,这次就正常运行了,万岁。

原提示词:接下来将下面这段英语单词数组翻译中文

修改后:{随机数占位符}:接下来将下面这段英语单词数组翻译中文

使用随机占位符之后,成功运行了一段时间~

又出错了

这是怎么回事呢?经过一番实践思考和尝试,哦哦哦哦哦哦,我懂了,因为随机数虽然让提示词有了一点变化,但还是变化太小了,gpt 会识别这个提示词和原先区别不大,直接走这个 "缓存" 导致输出原先的错误结果,那么如何解决呢?

随机数改成 uuid,这个变化就稍微大了一点,大概运行了 1 小时都没有什么问题,好了,就这样

相关推荐
绝知此事6 小时前
【算法突围 01】线性结构与哈希表:后端开发的收纳术
java·数据结构·算法·面试·jdk·散列表
企学宝6 小时前
企学宝5月专题课程丨《OpenClaw AI 智能体实战营:从零基础部署到全场景自动化落地》
人工智能·ai·企业培训
Bigger6 小时前
mini-cc:一个轻量级 AI 编程助手的诞生
前端·ai编程·claude
无风听海6 小时前
C# 隐式转换深度解析
java·开发语言·c#
冬奇Lab7 小时前
让 AI Agent 更可靠:Harness Engineering 与多 Agent 系统工程实践
人工智能·llm·agent
放下华子我只抽RuiKe57 小时前
React 从入门到生产(四):自定义 Hook
前端·javascript·人工智能·深度学习·react.js·自然语言处理·前端框架
想你依然心痛7 小时前
HarmonyOS 6(API 23)实战:基于悬浮导航、沉浸光感与HMAF的“文思智脑“——PC端AI智能体沉浸式智能写作工作台
人工智能·ar·harmonyos·ai写作
冬奇Lab7 小时前
一天一个开源项目(第108篇):Andrej Karpathy Skills - 用一个 CLAUDE.md 文件修复 LLM 编码的四个顽疾
人工智能·开源·资讯
涛声依旧-底层原理研究所7 小时前
残差连接与层归一化通俗易懂的详解
人工智能·python·神经网络·transformer
一只大袋鼠7 小时前
Git 进阶(二):分支管理、暂存栈、远程仓库与多人协作
java·开发语言·git