当ChatGPT遇到商业逻辑:基于AI验证的实验

在我们探索人工智能在软件开发中的角色时,我们向ChatGPT提供了一个棘手的商业逻辑验证问题。结果是意料之外的。请继续阅读了解更多信息。

由杰弗逊·塔瓦雷斯·德·帕杜亚担任白谱科高级React Native开发人员。

ChatGPT中文站
Discover the realities of AI-powered requirements writing and the limits of AI validation with ChatGPT. A Whitespectre Senior Engineer shares his experience.

我正在为我们的客户合作伙伴之一开发一项功能,以为高级用户创建定制体验,以在7天内将收据提交限制在最多25个。从高层面上看,我们的最终目标是实现以下目标:

  • 为用户提供关于他们的活动被限制的附加信息;
  • 让他们知道什么时候再次可以使用该功能;
  • 展示他们新的配额,以便在功能解除限制时使用。

似乎非常简单对吧?事实确实如此。我编写了代码,经过了代码审查。但是当我们开始测试时,我们的质量保证人员对某些计算应该如何执行有不同的看法。我们与产品经理一起讨论了AC中的细节,然后我们决定将ChatGPT引入对话中,以查看人工智能是否会为我们的讨论增值。

以下是对话的内容和我们可以从中学到的内容:

寻求第三个意见

我一开始向ChatGPT提供了一个非常清晰的问题背景和我希望它为我做的事情。这是我的初始提示和它给我的输出:

ChatGPT中文站

有趣的回应,不是吗?

它成功地总结了我的收据,从一周的一个合理日子开始算,即使用正确的值替换了输出信息中的字符!

嗯,你有过那种数学考试吗,你运用了所有公式,认为你做得很对,但是在问题的结束时,你必须从预定的答案中选择一个,而这些选项范围从5到30,而你的计算结果是3006吗?

那就是这里发生的事情,这是一个问题!

你看,ChatGPT 真的看起来理解了我给它的上下文,而且它还以一种真正自信、雄辩的方式解释了它是如何得出这个解决方案的。

所以,除非我已经知道正确答案,否则我没有办法判断这个答案是否错误,因为 AI 并没有向我表明其“置信度”。

似乎这没什么大不了的。实际上,在这种情况下可能不是什么大问题,但是想象一下,当您要求 Microsoft 365 总结一家公司的收入电子表格时发生什么情况;或者如果您要求 Google Meet给您演示文稿的主要要点,但它会因为AI模型没有正确地解释上下文而漏掉其中一些!

我的观点是你不能盲目相信 ChatGPT,并把它给你的任何回复看作是“真理”。

无论如何,我当然又尝试了一次,但这次我将“每周25张收据”的提及改为“7天内25张收据”,但输出基本相同。

接着在我的下一次尝试中,我调整了提示来表明我希望它继续计算收据,说“如果我可以在7天内提交25张收据,且提交的收据数量是累积的”,然后这是输出:

ChatGPT中文站

我再次修改了提示内容:“如果我可以在7天的时间内提交25张收据,并且提交的收据可以累积到下一个7天的时间段”,但它的回答是“你还有6天时间再次解锁27张收据,从2月28日开始计算”。现在它说,如果我等待6天,我可以提交27张收据,尽管我的提示明确表示最大数量是25张。 ?

我们反复讨论了一段时间,ChatGPT坚信27张发票应该是下一次提交的最佳数量,直到我改变了提示,加入了“考虑到已经提交的发票数量仍然是另一周计数的一部分”,它的回应是“解锁23张收据还需6天”,这仍然是错误的,但至少更接近我想要的结果。

经过几次尝试,我最终通过使用这个提示使它完全理解了我想要的。

ChatGPT中文站

那真是一针见血!

但是在30多个提示后,得到正确答案的提示和我最初使用的提示的唯一区别是在开头添加了“在一个滚动的7天周期内”和“至少一个”收据计数。

看看为什么“AI提示工程师”现在是一种事情吗?

技巧/小窍门

我们通过运行类似这样的简单实验学到了很多将ChatGPT集成到我们的工作流程中的知识,以下是我们认为您在为您的组织进行类似操作时应该考虑的一些事项:

你需要知道你正在寻找什么,并能够识别人工智能出现问题的时候。

很少见到ChatGPT会说“我不知道答案”,对于大多数提示,它很可能会回复一些东西,但这并不一定意味着它的回复是正确的。

这就是为什么我一开始说你有点需要知道你在寻找什么,否则,你可能会被一个不能反映事实真相的输出所误导:你可能已经看到学者在 Twitter 上抱怨 ChatGPT 生成了虚假引用文章不存在。

因此,在编写提示之前,你需要知道最终答案,或者有一种简单的方法来验证AI的输出是否正确。

你的提示非常重要(但在你找到它之前,你可能不知道它有多重要)

这可能听起来很明显,因为这是您可以与ChatGPT交互的唯一方式,但是创建提示比看起来要难得多。

首先,你必须认识到,我们在解释事情的时候并没有像我们想象的那样清晰明了。还有一点,我们认为是同义词的一些词语,AI 不一定总是以相同的方式解释,这有时使得准确地解释想要让它做的事情变得相当困难。

另一个令人烦恼的问题是,如果有一个提示,给ChatGPT提供多种情况(例如:如果遇到X做Y,否则做Z),有时候它会混淆并将所有情况组合成一个单一的答案。

因此,在创建提示时要小心。

最好的做法是避免过度思考和试图一次性创建完美的提示。只需在问题的上下文中向 AI 提出一些基本的问题,看看它会输出什么,并从中构建起来,填补你下一个问题中的空白。

如果您正在寻找一些创造提示的灵感,像Awesome ChatGPT Prompts,FlowGPT和Prompt Engineering Daily这样的网站可以帮助您增强创造力,找到与ChatGPT互动的正确词语。

许多时候,你最好自己修理事物。

在我们与ChatGPT和其他类似工具的许多实验中,尤其是当我们将它们用于更高级的用例,如数据分析和代码生成时,我们发现即使它们可以正确处理70-80%的事情,要达到最后20-30%可能会过于麻烦。

ChatGPT 例如,如果您提供更多有关其所提供答案问题的上下文,它确实具有纠正自己的能力。

但大多数时候,自己修复问题比尝试解释它做错了什么更容易(而且更快),这就是为什么你需要准确知道你要寻找的东西的原因。

这就是为什么我们在内部使用ChatGPT作为“起点”,而不是“真理来源”的原因。

最后的思考

在Whitespectre,我们继续测试和集成新的人工智能工具到我们的流程中,不论是在头脑风暴、代码生成、数据分析、验证和许多其他领域中。特别是当您考虑到我们与这些LLMs互动越多,它们就会变得越好,真正令人印象深刻的是看到这些工具在各种上下文中能做到多少。今天我们看到的只是开始。

我们也清楚地认识到,人工智能通常是一个人能力和才能的延伸。它可以极大地提高你的生产力,但前提是你必须具备磨练输入、批判性评估输出以及知道何时人工智能将你偏离正确方向的技能。

我们对人工智能非常兴奋,它将帮助我们向客户合作伙伴传递下一代高质量、愉悦的解决方案。我们肯定会很快与您分享更多的见解!敬请期待。

2023-10-20 16:45:27 AI中文站翻译自原文