任何新技术的普及都需要经历一段漫长的过程,人工智能大模型也不例外。
尽管某些行业的从业者已经开始将大模型融入日常工作,但其普及程度仍远未达到“人手必备”的地步。
那么,究竟是什么限制了它的广泛应用?普通人如何才能用好大模型?它又能为我们带来哪些实际的好处?
谷歌DeepMind的研究科学家Nicholas Carlini分享了他对大模型的实用见解,并列举了50个应用场景。
这些场景包括:
- 用不熟悉的技术开发完整的Web应用程序。
- 快速掌握各种编程框架的使用技巧。
- 将代码转换为C或Rust语言,提升运行效率10至100倍。
- 精简庞大的代码库,优化项目架构。
- 为学术研究编写实验代码。
- 自动化重复性任务或编写一次性脚本。
- 替代部分网络搜索,快速配置新软件或项目。
- 辅助调试,分析错误信息。
这些应用大致可分为两类:“学习辅助”和“任务自动化”。
以下精选17个常见应用案例,希望能为您提供灵感:
01 快速开发Web应用
我曾设计了一个测试,用于评估人们预测GPT-4解决问题能力的效果。这个测试的浏览量突破千万。
令人惊讶的是,其初始版本几乎完全由GPT-4编写完成。
我通过与模型对话,逐步实现了应用的各项功能。
这场对话长达3万字,充分展现了初代GPT-4的强大能力。
02 用大模型解决多样化问题
回顾与GPT-4的交互,信息类型丰富多样。
有时,我仅描述需求,模型便能提供完整解决方案;有时,我提出修改建议,例如:“不要用平均值,改用核密度估计来计算百分位。”
还有时,我直接粘贴错误信息,提出模糊问题,比如:“绘图报错:numpy.linalg.LinAlgError: singular matrix。”
偶尔,我只是需要简单的答案,例如:“如何用JavaScript为页面添加iframe?”
顺畅沟通的关键在于,大模型擅长处理已知问题。
我的测试主要基于基础的HTML和Python后端代码,技术门槛较低。
测试的吸引力在于内容本身,而非复杂的技术实现。
大模型自动化了繁琐部分,让我轻松完成任务。
没有大模型,我可能根本不会尝试开发这个测试,因为编写Web应用耗时费力。
即便对编程老手而言,大模型也能通过简单的提问实现以往难以完成的任务。
未来,我会在类似项目发布时注明大模型的贡献。
03 快速学习新技术
过去,我会密切关注新框架的动态。
但研究工作占用了大部分时间,我无法紧跟JavaScript框架的最新进展。
启动新项目时,我通常面临两种选择:使用熟悉的技术,或花时间学习新工具。
大模型为我提供了第三条路。
Docker、Flexbox或React对我而言是新技术,但对许多人来说已是常规工具。
大模型熟知这些技术,我可以通过交互式对话快速掌握任务所需知识,而无需阅读假设读者具备特定背景的教程。
例如,今年早些时候,我开发了一个大模型评估框架,需要在受限环境中运行生成代码,防止意外删除电脑文件。
Docker是理想选择,但我此前从未用过。
我的目标不是精通Docker,而是掌握10%的核心知识以安全使用它。
过去,我需要购买Docker手册或搜索在线教程。
现在,我直接让大模型指导我使用Docker。
04 快速启动新项目
我的第一门编程语言是Java。
我热爱编程,但面对新项目的空白屏幕总感头疼。
尤其是在Java中,哪怕只是编译一个“Hello, World”,我也常被括号和大小写弄得晕头转向。
小时候,我会向父亲求助。
二十年后,面对陌生框架开启新项目,我依然感到抗拒。
处理样板代码既耗时又令人困惑。
例如,我想编写CUDA代码,比较GPU和CPU的性能。
我了解GPU原理,但不清楚如何编写代码将任务分配到GPU。
于是,我让大模型为我生成CUDA程序的初稿。
代码并非完美,但它是一个起点。
我需要的不是完美方案,而是一个切入点。
未来若模型表现更优,自然更好,但当前模型已帮我节省大量时间。
在个人项目中,我使用树莓派Pico W,第一次接触它。
我想实现一些网络相关的功能。
虽然可以找到教程,但搜索结果往往质量低下,代码过时或有bug。
我直接让大模型指导我实现需求。
我理解微控制器原理,但不熟悉Pico W。
大模型帮我处理依赖问题,之后我便能自行摸索。
每次使用新微控制器,我的第一步是编写一个让LED闪烁的程序。
我让大模型提供闪烁代码。
一旦代码运行,我便知道下一步该做什么。
我熟悉Python,解决MicroPython的特殊问题后,我可以直接编辑代码。
遇到特定问题时,我再让大模型协助,例如编写连接Wi-Fi的脚本。
05 简化代码
作为安全研究员,我常需分析他人数千行研究代码的工作原理,才能进行攻击。
若代码规范,任务不难,但现实往往相反。
研究人员缺乏动力发布整洁代码,常将能运行的代码随意发布。
虽然无法分享研究相关案例,但可举一个个人项目中的例子。
我对康威生命游戏(Conway’s Game of Life)情有独钟。
最近,我想在Python中快速评估生命游戏模式。
C++工具Golly能实现此功能,但我不想将Python代码重写为C++。
Golly的命令行工具可满足需求,只需正确调用。
第一步是从支持约50种命令行选项的500行C++代码中,提取所需功能。
我将代码交给大模型,要求精简并保留功能。
大模型完美完成了任务。
随后,我请求一个Python封装器,同样成功。
这是个令人头疼的任务,若由我自己完成,可能永远不会开始。
现在,我得到的结果比原Python代码快100倍。
06 应对枯燥任务
这类任务单调乏味,我可能永远不会亲自动手。
但现在,我只需提出需求,大模型便能提供解决方案。
例如,上述方案的运行速度比原Python代码快100倍。
我常这样做。
再举例,我在Python中也进行了类似操作。
这些任务不难,但每次都能节省大量时间。
大模型的魅力在于,它让生活更轻松。
“我用大模型完成无聊任务”或许不会引发热议,但确实提供了实实在在的帮助。
我有许多必须完成的琐碎任务,既无聊又无需动脑。
拖延的主要原因之一是这些任务令人烦躁。
大模型极大减轻了这种负担,让我专注于有趣的问题,从而更轻松地开始工作。
例如,最近我要反汇编一个Python 3.9程序。
大多数反汇编器仅支持Python 3.7及更早版本,无法处理3.9二进制文件。
反汇编本身不难,主要是避免在重构控制流时出错。
我没有手动转换数千个操作码,而是让大模型代劳。
结果远超预期。
07 赋能非专家用户
当某人使用工具的熟练度远低于你时,可能会花数小时完成本可自动化的任务。
学习自动化需要时间和精力。
例如,我想将C语言中类似“#define KEYNAME key_code”的语句转换为Python字典,将整数代码映射到字符串。
作为Emacs用户,我知道如何解决,但这得益于多年的经验。
现在,有了集成大模型的编辑器,我只需输入:
“将这些#define重写为{keycode: string, ...}形式的字典。”
文本便在我眼前完成转换。
对非专家用户,大模型的价值甚至高于专家。
它提升了所有人的能力底线,让原本无从下手的人突然能完成许多任务。
08 作为API查询工具
程序员常通过参考手册理解工具原理。
但我更希望直接得到答案。
现在,我直接向大模型提问。
有人质疑:“大模型没做任何现有工具做不到的事!”
他们说得没错。
但搜索引擎能做的事,实体书也能做到;实体书能做的事,阅读源代码也能实现。
每种方式都比前一种更简单。
更简单的方法会让你更频繁地使用,并改变使用方式。
例如,我问:“哪个$命令可以传递所有剩余参数?”
随后又问:“如何使用它?”
这是我最常用的方式之一。
我在Emacs和shell中集成了查询工具,90%的操作无需离开编辑器。
09 搜索难以表述的内容
过去,网络搜索是一项技能。
如今,搜索引擎能处理大多数自然语言查询,但仍不完美。
对于某些任务,大模型表现更优。
例如,我输入:“我知道+对应__add__,但是什么对应__inv__?”
模型直接告诉我答案。
这用传统搜索引擎很难找到。
10 处理一次性任务
程序分两类:一类需长期维护,代码质量至关重要;另一类仅运行25秒,完成后即可丢弃。
对于后者,我几乎全靠大模型编写。
这些任务看似简单,例如生成研究实验数据的可视化图表,或将一种数据格式转换为另一种。
我只需做一次,完成后脚本即可丢弃。
11 通俗解释复杂概念
我最近对电子学产生兴趣。
我可以阅读专业书籍,但不想把时间花在“学习感”上。
电子学是我从阅读和写作中放松的方式。
大模型在这方面表现出色。
它可能不如顶级专家,但能回答大多数常见问题。
我可以轻松获取答案,专注于兴趣而非细节。
12 从完整方案到修改建议
我常先向大模型请求完整解决方案,再询问改进建议。
例如,我让它编写解析HTML的程序,随后询问API参考或优化方法。
13 处理已有解决方案的任务
几乎所有任务都有人做过。
大模型擅长为常见问题提供解决方案。
例如,我让它将代码重写为C语言,并构建Python调用C代码的接口。
14 为新项目做准备
为一个即将启动的项目,我需了解常见的简易无线电发射器。
大模型能提供大众认知的答案,非常适合这类需求。
15 修复常见错误
现在,我只需复制错误信息,询问:“如何修复这个错误?”
大模型会提供分步解决方案。
16 更多潜在用途
我预计未来对大模型的使用将持续增加。
17 关注模型的实际价值
关键在于,你能否找到大模型能发挥作用的场景?
程序员深知,工具因用途不同而价值各异。
💡 想要在职场中脱颖而出?立即尝试 让 AI 成为你职业成功的加速器!🚀