在日常办公或者是编程过程中,经常要处理一些琐碎的任务。就拿编程来说,假如你现在收到一个任务,要提取源代码中所有的字符串,进行国际化。
一般来说,很多软件开发工具提供了国际化方案,比如 QT,就提供了 Linguist。但是,假如现在有些小语种的语言,需要交给专业的第三方来翻译,让人家装一个 QT 工具不可行,对方也许让你提供一个 Excel 表格。这个时候你就需要扫描代码中所有的需要国际化的字符串,然后形成一个 Excel 表格。等对方翻译完成后,还有可能需要导入到系统中。
当然,上面只是举个例子,可能真正的处理过程并不是这样。但是,我们在工作中经常要处理一些字符、数字等工作。这个时候使用脚本来处理非常合适,脚本语言又以 Python 语言最为强大。
Python 语言是 AI 时代的王者语言,其风头甚至力压编程语言的霸主 C/C++。现在基本所有的大模型应用都提供了 Python 接口,大部分 AI 应用也都是用 Python语言编写。
Python 特别适合文字处理和数据处理,用来处理日常中的一些重复性事物,非常合适。Python 语言是脚本语言,代码规模可大可小,既可以完成复杂的大模型应用,也可以只写上几行代码,就能有效提升我们的处理效率。
Python 设计灵活,特别容易入门。前段时间很多少儿编程的广告,就是选择 Python 作为编程入门语言。连少儿编程都选择 Python 作为编程语言,可见门槛有多低。
如果没时间学编程,或者没兴趣学编程,还有备选方案,那就是用 GPT 呀。GPT 目前的能力还无法完成大型的软件开发,但是写写脚本,那是小菜一碟。
其实对于字符串处理,程序员应该都接触过正则表达式。正则表达式是一个非常强大的字符串工具,能够处理字符串查找、替换等工作。但正则表达式在设计上也非常反人类,很难掌握。有些高手能将正则表达式写得很复杂,让人看的一头雾水。我虽然也读过一些手册,但一转身就忘。
GPT 在这方面有着天然的优势,记忆力、复杂的规则,都是它的强项。下面就以一个简单的例子做一个说明。
请写一段python脚本,提取某个目录下文件中的形如 tr("string") 这样的字符串
请搜索C++代码而不是python,并且将结果导出为excel
请修改上面的代码,目录通过命令行参数传递
上面的示范中,我一步一步细化需求,引导 GPT 来编写程序。如果一开始就把需求描述清楚,GPT 也能一次性给出答案。不过这个过程就和软件开发过程一样,用户其实很多时候也不清楚需求,都是交付 A,提出 A1、A2、...。等你完成 A1、A2、…,交付 B,用户又会提出 B1、B2、…。要是问用户为啥不一次性提出来,用户会说,用了才会有新想法…程序员崩溃的场景之一就是需求变更。但 GPT 不一样,你可以不断提出修改意见,让 GPT 一直完善。
一项新技术出现时,人们经常会有两种反应。
一种反应是,啊,颠覆性的技术出现了,xxx 要被取代,xxx 彻夜难眠。这种常见于自媒体,主要是为了博眼球,追求流量。毕竟这是屡试不爽的获取点击量的最好方法。写这些文章的人未必信,但造成的恐慌却是难免的,毕竟整天刷到这些文章,不紧张也会紧张起来。
另一种反应就是,我来尝试一下,不咋样啊。比如 Siri 刚推出时,全网调侃人工智障。AI 作画出来了,买上高端显卡,结果 AI 画出来的是啥? 和大神的作品相差太远了,骗子,一群骗子!
其实,人们在短期内高估了新技术的作用,长期来看又低估了新技术的作用。
搜索引擎出来的时候,就有人惊呼,人类不用学习了,知识都可以从网上搜索到。但搜索引擎就是一个工具,在不同的人手中,发挥的能效是不一样的。就像搜索技术问题,很多人拿百度搜索,那能得到好结果?个人的英文水平也影响着使用搜索引擎的效果。程序员最喜欢使用的网站是 Stackoverflow,上面的提问和回答基本都是英文。虽然有 Google 翻译或百度翻译,但是搜索的时候不可能每条结果都用翻译软件去看一下,而是扫一眼就基本确定是想要的结果。等到查看具体搜索结果的时候,再可以借助翻译工具。关键问题在于,很多人对着满屏英文,心生畏惧,根本就不会去看。
GPT 的出现,填补了这一缺口。你可以用中文提问,GPT 也会回复你中文。不要以为 GPT 是你问中文,它就搜索中文答案。从目前使用情况来看,ChatGPT 使用中英文提问,回答质量是差不多的。
但这并不意味着使用 GPT 就没有门槛。就拿前面的 Python 代码生成来说,你至少得有程序语言的概念吧,至少得知道 Python 脚本如何运行吧?虽然说这些都可以问 GPT,但这样一直问,GPT 有耐心,你有足够的耐心吗?就如同你没学习过英语,给你一本词典,你能读完一本小说吗?
面对一项新技术,最好是保持好奇心,研究它、探索它,思考如何为我所用。但也不要抱太大的期望。期望越高,失望越大。你不能指望靠 AI 作画成为一名画家,GPT 可以写小说,但你不能指望用它成为一名作家。