专业的品牌信息化整合营销服务机构

互联网信息化咨询/技术开发/整合营销

请通过以下方式免费咨询

大语言模型将如何影响软件开发?

1.大语言模型将如何影响软件的构建?

大语言模型能够提高专业开发人员的工作效率,GitHub Copilot 已经证明了这个方向的可行性。这意味着开发人员不必担心未来的工作前景,且软件的生产与分发方式不会发生剧烈的变化。

然而,大语言模型的影响力不仅于此。大语言模型将成为专业程序员的工具,但过于关注狭隘的用途可能会导致我们错失未来推动更大变化的潜力。

因为我认为在短时间内有可能所有的计算机用户都将有能力开发小型软件工具,并描述他们希望如何修改正在使用的软件。换句话说,大语言模型将发展成为支持用户编程的工具,普通人无需掌握编程的复杂性即可充分利用计算机。就目前的情况而言,这一愿景在将模糊的非正式意图转化为正式的可执行代码方面遇到了瓶颈。而接下来,在大规模语言模型的助力下,瓶颈正在迅速打开。

如果这种假设成真,我们将看到人们使用软件的方式出现一些惊人的变化:

  • 一次性脚本:普通计算机用户可以借助 AI,每天创建并执行几十次脚本,以执行数据分析、视频编辑等任务,或自动执行一些繁琐的任务。

  • 一次性 GUI:人们将使用 AI 创建整个 GUI 应用程序,这种应用程序只能执行特定的某个任务,仅包含他们需要的功能,不会膨胀。

  • 构建取代购买:企业内部将开发更多软件,以满足他们特定的需求,而不是购买现成的 SaaS,因为根据具体情况定制软件更便宜。

  • 修改/扩展:消费者和企业需要扩展和修改现有软件的能力,在 AI 的助力下,开发新功能或调整匹配用户的工作流程将更容易。

  • 重组:吸取各个应用程序的精华,并创建一个集百家之长的混合应用程序。

    所有这些变化不仅仅是加快当前软件的生产过程。软件的创建时机、由谁创建以及出于什么目的,都将发生变化。

2.大规模语言模型+可延展软件

接下来,将深入探讨大语言模型可能为软件创建和分发带来的广泛变化,而且还会影响到人们与软件交互的方式。讨论的问题包括:

  • 交互模型:哪种交互模型适合哪些任务?人们什么时候需要聊天机器人、一次性脚本或自定义的一次性 GUI?

  • 软件定制:大规模语言模型如何实现可由用户拆分、重组和扩展的可延展软件?

  • 意图规范:最终用户将如何与大规模语言模型交互,表达自己的意图?

  • 模糊翻译器:大规模语言模型如何实现以前不可能实现的共享数据基础?

  • 用户授权:我们应该如何看待大规模语言模型时代的授权和代理与授权和自动化?

3.聊天机器人应该何时使用?

在大规模语言模型时代用户交互模型将如何进化?特别是,聊天机器人可能会接管哪些类型的任务?当我们考虑用不同的方式来武装最终用户时,这个问题的答案会特别重要。

我认为,虽然 ChatGPT 比 Siri 更强大,但聊天 UI 无法很好地完成许多任务,我们仍然需要图形用户界面。之后会讨论利用大规模语言模型帮助我们构建 UI 的混合交互模型。

最终,我们将达成一种有趣的设计:开放式计算媒体,用户可以直接学习和建立模型,大规模语言模型将作为媒体内的合作伙伴。

在深入展开讨论之前,首先声明:本文探讨的很多观点都源自个人的猜测,具有很大的不确定性。我甚至无法预测这些变化什么时候会出现。重点是,想象如何根据当前 AI 的发展状况,推断用户与计算机的新型交互,以及我们如何利用这项新技术来最大限度地加强最终用户的能力。

4.打破编程瓶颈

为什么大规模语言模型关系到普通用户使用计算机的能力?

几十年来,计算先驱们一直在努力实现最终用户编程的愿景:普通人也可以充分利用计算机,而不仅仅是使用程序员给他们的预制应用程序。Alan Kay 曾在1984 年写道:“我们希望像以前编辑文档一样编辑我们的工具。”

这个理念有很多表现形式。现代终端用户也或多或少地接触过编程系统,包括电子表格、Airtable、Glide 或 iOS 快捷方式,以及早期的 HyperCard、Smalltalk 和 Yahoo Pipes。

尽管其中一些产品取得了成功,但现在它们也面临一个基本难题的限制:帮助人们将粗略的想法转化为正式的可执行代码,这一步非常难。系统设计者尝试过超高级语言、友好的可视化编辑器和更好的语法、复杂性分层以及根据示例自动生成简单的代码。但事实证明,使用这些技术很难突破一定的复杂性上限。

我自己在工作中就遇到过编程瓶颈。几年前,我开发了一个名为 Wildcard 的最终用户编程系统,用户可以通过电子表格界面自定义网站。例如,在下面这个简短的演示中,你可以看到用户按照不同的顺序对 Hacker News 上的文章进行排序,然后将阅读时间添加到页面的文章中,这一切都是通过网页与电子表格的同步化实现的。

如今有了大规模语言模型,这些编程瓶颈就不再是限制因素了。将自然语言规范转化为网络抓取代码或者是电子表格公式正是目前大规模语言模型可以实现的代码生成过程。我们可以想象,让大规模语言模型帮忙抓取代码和生成公式,这样就无需任何人手动编写代码即可实现上述演示。在我做 Wildcard 的时候,这种的程序生成还只是一个幻想,而如今正在迅速变成现实。

不过,这个例子也提出了一个更深层次的问题。如果让大规模语言模型为我们修改网站,那又何必使用 Wildcard UI 呢?难道我们不能让 ChatGPT 重新排序网站并添加阅读时间吗?

我认为这个问题的答案尚不明朗。将电子表格视为网站基础数据的另一种视图具有很大的价值,我们可以直接查看和操作这些数据。点击列的标题即可让表格中的数据按顺序排列感觉很好,而且比输入“按列 X 排序”更快。允许用户直接查看和编辑电子表格公式,可以让他们拥有更多的控制权。

所以,用户界面仍然很重要。我们可以想象,大规模语言模型的具体、有针对性的角色应该是帮助用户定制和构建软件,而不是将几十年的交互设计抛诸脑后。