与AI共舞:如何更好拥抱ChatGPT
引言
今年科技圈最具有突破性的新技术就是以ChatGPT为代表的通用语言模型。ChatGPT带来的面对复杂文本的理解和对话能力让人叹为观止。虽然国内使用ChatGPT,以及其付费版非常有难度,但我相信很多人已经开始在工作和生活中积极使用ChatGPT,并且已经享受到这种通用语言模型带来的生产力提升。
我自己从ChatGPT刚上市初期就开始使用,并且是最早一批付费版的用户。我自己在使用过程中,经常会惊叹于技术突飞猛进的发展。既然AI的突破性发展势不可挡,那我们就要想一下如何“打不过就加入”了。
我自己看过网上不少ChatGPT的教程,自己也有过不同种类的实践。最近我发现了吴恩达教授的Deeplearning.ai公司新出的课程,叫做ChatGPT Prompt Engineering for Developers。这门课程是我到目前为止看到的最系统的一门课程。授课老师之一是OpenAI的员工,所以这门课程也可以算作半个官方课程。接下来我就会顺着这门的课程的主线,结合我自己的实践,分享下怎么更好的和ChatGPT协作。
如何更好的提问?
我们和ChatGPT沟通很直接,就是通过文字交谈,英文叫做prompts。ChatGPT的功能很强大,不过它回答问题的质量和我们提问的方式息息相关。整体来说,我们提问越具体,提供的背景知识越多,它的回答就更能接近我们的想要的答案。
下面是课程里面提到的几个技巧,有些侧重于程序员开发程序,但大部分技巧都可以直接应用在ChatGPT的网页版中。
在与ChatGPT的沟通中,所有的信息都是通过文字沟通。这样有时候我们沟通的问题,会跟其他辅助信息混在一起。这时候我们可以通过指定分隔符,来区分我们的问题,以及其他的信息。下面是一个例子:
"""ChatGPT是美国人工智能研究实验室OpenAI新推出的一种人工智能技术驱动的自然语言处理工具,使用了Transformer神经网络架构,也是GPT-3.5架构,这是一种用于处理序列数据的模型,拥有语言理解和文本生成能力,尤其是它会通过连接大量的语料库来训练模型,这些语料库包含了真实世界中的对话,使得ChatGPT具备上知天文下知地理,还能根据聊天的上下文进行互动的能力,做到与真正人类几乎无异的聊天场景进行交流。ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。"""
请把上面用三重引号括起来的内容,总结为一句话,不超过50个字。
回答:
ChatGPT是OpenAI推出的基于Transformer神经网络架构的自然语言处理工具,具备语言理解和文本生成能力,并能进行邮件、视频脚本、文案、翻译、代码等任务。
在和ChatGPT沟通的时候,我们可以明确输出的格式,这样方便我们后续复用回答。在调用ChatGPT API进行开发的时候,我们可以指定回答格式为JSON,在网页版上,我们可以指定为csv或者tsv格式。以下是一个例子:
帮我整理出成龙主演的票房前十的电影,输出为tsv格式,包含列名。列名是电影名称,发行年份,全球总票房。
回答是tsv格式文件,可以直接复制到Excel中使用:
电影名称 发行年份 全球总票房
警察故事3:超级警察 1992年 HKD 59063229
功夫瑜伽 2017年 CNY 1272000000
尖峰时刻2 2001年 HKD 60145256
神话 2005年 CNY 530000000
新宿事件 2017年 CNY 157000000
金蝉脱壳 1992年 HKD 33275579
神话传说 1994年 HKD 31592570
新警察故事 1985年 HKD 27798000
霹雳娇娃 2000年 USD 26410532
龙兄虎弟 1990年 HKD 25000000
我们可以在提问中给出想要的答案示例,然后要求ChatGPT按照同样格式回答。下面是一个案例:
你的任务是按照如下语气回答问题:
宝宝:什么是勇气啊?
妈妈:勇气就是小宝贝明明很害怕,但是会去做正确的事情。
回答:
宝宝:什么是毅力啊?
妈妈:毅力就是在遇到困难或者挫折时,不放弃坚持下去的能力。就像小宝贝学走路时,一开始可能会跌倒,但是只要坚持下去,最终就能够走得稳稳当当。
如果我们想要让ChatGPT进行很复杂的操作,可以明确指出它需要进行的操作。下面是一个案例:
"""ChatGPT是美国人工智能研究实验室OpenAI新推出的一种人工智能技术驱动的自然语言处理工具,使用了Transformer神经网络架构,也是GPT-3.5架构,这是一种用于处理序列数据的模型,拥有语言理解和文本生成能力,尤其是它会通过连接大量的语料库来训练模型,这些语料库包含了真实世界中的对话,使得ChatGPT具备上知天文下知地理,还能根据聊天的上下文进行互动的能力,做到与真正人类几乎无异的聊天场景进行交流。ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。"""
你的任务是进行以下操作:
1. 把三重引号中的文字总结成一句话,不超过25个字。
2. 把这句话翻译成英文。
3. 把这句话中的产品,和它的功能,以这种方式写出来: 产品: 功能1, 功能2
答案:
"ChatGPT是连接大量语料库的自然语言处理工具,具备语言理解和生成能力,可进行多种任务。"
"ChatGPT is a natural language processing tool driven by AI technology, using Transformer neural network architecture, with language understanding and text generation capabilities. It connects to vast corpora for training, making it capable of interactive communication and performing various tasks."
产品名称: ChatGPT 功能: 自然语言处理,语言理解和生成,多任务处理。
模型的局限:不懂装懂(hallucinations)
ChatGPT 很强大,但目前它有一个很大的局限性:hallucinations。 这个词的字面意思是幻觉,我更直接的理解就是不懂装懂。想象一下,你依赖ChatGPT来提高你的生产力,在90%的情况下,它都可以很好的完成任务。但在剩下的10%的情况下,它不知道你要找的信息是什么,但它从字面意思上进行了推断,并且给你了一个看起来很正确,但其实完全是胡说八道的内容。
我觉得这个是目前利用ChatGPT作为生产力工具最大的问题之一。在90%的情况下,它可以帮你节省一部分时间,但在另外10%的情况下,它会在你的代码或者文档里面埋雷,然后你需要花额外很多倍的时间去仔细排查这个雷埋在什么地方。整体来看,使用ChatGPT可能还不如完全自己上手来的快。
这个问题也是OpenAI自己意识到,并且在尝试解决的挑战。目前应该还没有完全可靠的解决方案,只能我们在使用的时候加以辨别。我自己使用的时候有一个技巧是,让ChatGPT在回答的时候给出参考链接。如果链接打不开或者不相关的话,我们就要对答案加以审视了。这个问题或许会在ChatGPT联网后得到改善。比如现在的new bing AI是可以接入互联网的,它的不懂装懂的情况就会少一些。
以下是我自己遇到的一个案例,ChatGPT给出了完全错误的回答,而new bing AI则回答正确。
介绍下R marketmatching 包的主要函数
ChatGPT 回答(看起来很专业,其实完全错误):
R的marketmatching包提供了几个主要的函数,用于执行市场匹配分析。以下是其中的一些函数及其功能:
mm(): 将销售和市场份额数据转换为矩阵形式,并执行市场匹配分析。该函数还计算离差平方和(SSE)、最小二乘匹配(LSM)和可加权最小二乘匹配(WLSM)指标。
matchit(): 为两个市场之间的每个点计算匹配分数,以确定市场之间的相似程度。该函数使用可加权最小二乘匹配(WLSM)方法进行计算。
plot(): 在匹配曲线上绘制匹配指数和标准误差,以帮助用户识别最佳匹配点。
summary(): 显示每个匹配点的指标值、标准误差和置信区间。
predict(): 使用匹配模型来预测给定市场的销售和市场份额数据。
这些函数可以帮助用户对市场数据进行比较和分析,并提供有用的指标和可视化工具来识别市场之间的相似性和差异性。
New Bing AI 的回答则完全正确:
根据我的搜索结果,MarketMatching 包是一个 R 包,它实现了一个简单的工作流,基于两个关键的 R 包:CausalImpact 和 dtw。它提供了一个易于使用的“包装器”1。
该包的主要函数之一是 best_matches(),它通过循环遍历所有可行的候选项并按距离和/或相关性进行排名,为每个市场找到最佳控制市场1。此外,该包还可以提供建议的测试/控制市场对和伪前瞻性功率分析(测量假干预的因果影响)2。
小结
我自己是技术创新的坚定拥护者。ChatGPT是我近一段时间见到的最兴奋的技术突破。我觉得未来有可能AI会更加民主化,成为普通人的辅助工具。这种可能性让我既兴奋,又隐隐担忧自己职业的未来。
不管怎么样,我觉得带着理性乐观的态度,去主动拥抱新技术,尝试为我所用,这可能是我们未来一条比较好的路。