仅做技术探讨,请尊重学术,勿用于生产。
有很多人私信我,如何使用GPT写论文。用“GPT”意味着“ChatGPT”,能这样问,基本上可以断定,处于知道ChatGPT但不知道GenAI的应用层面。
很多人被ChatGPT搞的好像全世界知道ChatGPT一样,事实上,ChatGPT仅仅是GPT-3或优化版的GPT-3.5乃至GPT-4的一个应用而已。而类GPT的应用有很多,国外的google和meta(Facebook)均有,国内当然也有百度、中科大、清华、阿里、腾讯等等企业的生成式AI(GenAI)。
回归一下,那么到底能不能用生成式AI来写论文呢?
答案当然是,OK。
只是远没有你想的那么简单罢了。
写论文会遇到的几个难点,要逐个攻破:
指令:废话了,基本生成式AI都少不了指令,这里当然是生成论文相关信息的指令,包括但不限于开题报告、论文摘要、论文关键词、论文目录、论文内容等
上下文:生成式AI的公开能力都是有限定的上下文长度的,如果超出,一般是截断处理。这也是为什么有人会问这个问题的原因,因为如果没有这个痛点,理论上他自己就能使用“GPT”生成论文了
批量自动化能力:这个是技术能力,毕竟生成一篇跟生成一千篇不是一个事情
OK,我们针对上面的问题一个一个讨论。
首先,指令要如何处理?
这个,我自己用的是我们自己定的三段式,还挺好用,大体就是角色与任务+输入+格式要求,比如生成开题报告就很简单,也是因为开题报告相对不用那么长,指令参考:
我需要你帮我写一篇论文的开题报告,相关的信息如下:
【
标题:${title}
摘要:${abstract}
关键词:${key_words}
】
请给我一篇专业的论文开题报告。
上面用的是nodejs改写的指令,再次强调,仅供参考。
至于其他的指令,就相对复杂,每种论文还不一样,大体范式就是给足要求,慢慢调优。
经过多次调试后,指令趋于稳定,我们就需要解决第二个技术问题,上下文。
这里有两个方案:
使用长上下文的服务,比如支持10万汉字的上下文,那基本就没问题了,不过除了单独训练,不然几乎没有,或者稍微短点然后比较呆。
内容抽象:比如我们支持一万个汉字上下文,每次输出2000字,那么每次输出前把之前的所有内容,让AI不停地归纳为8000字以内,那也是一种方案。
不用纠结,这是个老大难问题,等技术突破吧,优先建议使用第二种。
最后就是自动化,这个就考软件能力了。
自己上,或者找朋友或者外包吧。
我们测试,一篇论文(先不纠结质量哈),2万字大概需要3-10分钟一篇,取决于归纳和并发,总的来说,还可以。
不纠结质量的原因是因为,可以输出论文了,剩下的就是指令工程的事情,如何不断地优化指令,让AI输出的文字更可靠,这,不需要太多的硬编码技术含量。
看下效果吧,目前就那样,凑合能用。