OpenAI发布新的GPT-3和Codex语言模型,可以在现有文本中编辑或是插入内容,而非仅是补完现有文本。官方提到,这些新功能让OpenAI API有能力修改现有内容,像是重写一段文本或是重构程序代码,Codex插入功能已经在GitHub Copilot中进行测试,获得良好的初期成果。
Codex是衍生自GPT-3的模型,可以理解和产生程序代码,该模型使用的训练资料,包括自然语言和来自GitHub的数十亿行公开程序代码,最擅长Python,但也精通JavaScript、Go、Perl、PHP和Ruby等十多种语言。
原本GPT-3和Codex的功能,是根据先前出现的文本,在现有内容的末端添加文本,但是官方表示,无论是文本还是程序代码写作,都不仅仅是附加内容,而是一个迭代的过程,现有的文本需要被修改。而GPT-3和Codex现在则已经具有编辑和修改当前内容,或是在现有内容中添加文本的能力。
新的插入功能会在现有内容段落中间,添加与上下文相关的文本,使得模型可以提高应用程序的文本完成品质,像是编写长文、在段落间转换,遵循大纲或是引导模型结尾等任务。过去的GPT-3,要在段落一和段落二插入文本,在没有考虑之后的段落,模型会生成与段落二完全无关的文本,而在新的插入功能,模型便能够生成将两段落连接在一起的文本。
官方提到,插入对编写程序代码工作是最有用的功能,Codex是开发团队最初要在模型中,添加插入功能的动机,因为在软件开发过程,开发人员通常会把程序代码添加到现有的文件中间,而现在Codex就能够根据上下既存的程序代码,加入新的程序代码,在完成缺失函数的同时,又能连接到已经编写的程序代码。
Codex插入功能目前已经GitHub Copilot中测试,并且取得良好的初期结果,其他用户也可以在测试版API中,用到最新的插入功能。
另外,文本与程序代码编辑也是一个必要的文本编修功能,OpenAI也在测试API中,发布了编辑新端点,供用户通过指令,更改现有文本,而不是只是补完文本。用户可以提供提示,以指导模型修改现有文本的方向,像是更改文本的语气和结构,或是进行针对性的更改。
用户也可以不提供指示,让模型自由发挥,而此时编辑功能的行为,会类似完成功能,官方表示,编辑功能特别适用于撰写程序代码,可用于重构、添加文件,更改编写风格,甚至是在程序语言间进行翻译。