在 探索 DDD 技术大会的主题演讲中,《领域驱动设计》作者 Eric Evans 建议软件设计师需要寻找创新的方式将大语言模型(LLM)整合到他们的系统中。他鼓励每个人现在就开始学习 LLM 的相关知识,并进行实验,与社区分享这些实验的结果和经验。
Evans 认为领域驱动设计(DDD)与面向 AI 的软件可以很好地结合起来。他说:“复杂系统的某些部分与领域模型的结构化部分永远无法匹配,所以我们将这些部分交给人类来处理。也许我们会有一些硬编码、一些人工处理,还有一些由 LLM 来提供支持。”
他说,用 DDD 实践者的话来说,经过训练的大语言模型就是一个有界的上下文。与基于广泛语言训练的模型和用于通用目的的模型(如 ChatGPT)不同,基于有界上下文通用语言训练的模型对于特定需求场景更为有用。
对于通用的 LLM 来说,我们必须谨慎编写提示词才能实现期望的响应。相反,Evans 建议使用多个经过精细调整的模型,每个模型都用于不同的目的。他认为这是一种强关注点分离。他预测,未来的领域建模者将涉及解释自然语言输入的任务和子域,并将其纳入到设计之中。目前的基础设施还没有完全准备好,但趋势表明这种情况很快就会到来。
Evans 强调,对于他的想法,必须考虑到他发表演讲时的背景,即 2024 年 3 月 14 日,因为这个领域变化是如此之快。六个月前,他对这个主题甚至都还不怎么了解,一年后,他现在所讲的可能就变得无关紧要了。他将我们目前的情况比作上世纪 90 年代末,当时他学会了多种构建网站的方法,而今天这些方法都已经不适用了。
在大会期间,DDD 社区的其他知名人士对 Evans 的想法作出了回应。《实现领域驱动设计》作者 Vaughn Vernon 在很大程度上支持探索将 LLM 作为普通聊天机器人之外的新用途的想法。在软件自我修复方面,他看到了像 ChatGPT 这样的工具可以响应运行时异常,提出“修复建议”,并自动创建包含代码的 PR 来修复错误。
然而,一些人对 LLM 的优点仍然持怀疑态度。在一个关于 DDD 和 LLM 交叉领域的小组讨论中,《微服务模式》作者 Chris Richardson 表达了对 LLM 高昂的经济和计算成本的担忧。当 Richardson 想知道是否有运营 LLM 的服务盈利时,Evans 回答说,通过微调可以让一个廉价的模型变得比一个昂贵的模型更快。另一位小组成员,Honeycomb.io 的首席开发者布道师 Jessica Kerr 表示,“我们需要找到有价值的东西,然后让它变得经济实惠。”
在主题演讲中,Evans 详细介绍了他个人对 LLM 所做的一些实验。最开始,他与游戏设计师 Reed Berkowitz 合作,尝试使用 ChatGPT 让一个非玩家角色(NPC)对玩家输入作出响应。通过尝试一系列提示词,他发现如果将响应分成较小的片段而不是长提示词,响应会更加一致。这种方法符合他对 DDD 解决复杂问题的想法。
对于更小、更专业化的提示词的需求自然而然地导致了对更专业化的模型的需求,这样既可以提供更好的输出,还可以更有效地提高性能和降低成本。他解释说,他的研究目的是为了表明实验这项技术是多么有用。尽管有时也令人沮丧,但这个过程是非常有益的。许多与会者表示,当你第一次学会如何让一个新事物工作时,你会体验到一种满足感。
探索 DDD 大会 于 2024 年 3 月 12 日至 15 日在科罗拉多州丹佛市举行。大会的大部分演讲都已被记录下来,将在接下来的几周内发布到 @ExploreDDD YouTube 频道,并在 Explore DDD LinkedIn 页面 上分享,从 Eric Evans 的开幕主题演讲开始。
原文链接:
https://www.infoq.com/news/2024/03/Evans-ddd-experiment-llm/
评论