一、概述
日常工作中经常遇到一些重复性的文本处理工作,简单的情况可以直接使用批量替换来处理,稍微复杂一些的,除了借助特定软件工具外,另外的选择就是自己写代码来加工。
然而,很多情况下要处理的数据不多也不少,大脑习惯性启动“手动模式”,让键盘和鼠标进入忙碌状态。
那么如何借助GPT们来摆脱这种瞎忙活的状态呢?且往下看。
二、案例
- 待处理文本
student,classroom,teacher,desk,...省略后面剩余的10来个表名
- 目标脚本
insert into tableConfig(uuid,tableName,remark) values(sys_guid(),'student','我是student表');
insert into tableConfig(uuid,tableName,remark) values(sys_guid(),'classroom','我是classroom表');
......
三、GPT们的应用
3.1. 利用GPT的文本加工能力
- 局限:对应的大模型上下文有长度限制,输入的待加工文本过长模型可能识别不了,或者加工后的输出结果会被截断。
- 适合场景:待处理文本长度未超过模型限制,或者切割文本,分多次向模型提问处理。
3.1.1. 提示词
帮我按逗号分割'''字符串'''中的字符串,每个子字符串作为表名,依次构造出insert的sql语句表,下面是一个处理示例:
输入:'''student,classroom'''
输出:
insert into tableConfig(uuid,tableName,remark) values(sys_guid(),'student','我是student表');
insert into tableConfig(uuid,tableName,remark) values(sys_guid(),'classroom','我是classroom表');
要求:
1. 不要解释加工过程,直接告诉我加工后的sql脚本。
2. 使用markdown格式展示sql脚本;一行一条脚本,脚本之间不要换行。 -- 针对通义千问输出脚本之间喜欢空行的改进。
3.1.2. 通义千问
3.1.3. 文心一言
文心大模型3.5
3.1.4. ChatGPT
3.5
3.2. 利用GPT的代码生成能力
- 局限:适合有编程基础的人群。
- 适合场景:待处理文本很大,加工逻辑复杂度高。
- 拷贝大模型生成的代码到本地,必要时需要做下代码微调,然后运行生成最终结果。
3.2.1. 提示词
帮我写一段加工文本的Java代码,按逗号分割'字符串',每个子字符串作为表名,依次构造出insert的sql语句表,下面是一个处理示例:
输入:'student,classroom'
输出:
insert into tableConfig(uuid,tableName,remark) values(sys_guid(),'student','我是student表');
insert into tableConfig(uuid,tableName,remark) values(sys_guid(),'classroom','我是classroom表');
3.2.2. 通义千问
3.2.3. 文心一言
3.5 生成的Java代码效果不太好,不建议用它。
3.2.4. ChatGPT
四、总结
- 合理利用GPT类AI模型的文本处理和代码生成能力,可以简化和自动化重复性的文本处理工作,从而提高工作效率。
- 良好的提示词有助于大模型理解问题,提示词教程>>。
- 国产大模型在文本处理领域的能力也不算差,完全可以应用到工作中。