当前位置:AIGC资讯 > AIGC > 正文

GPTutor: 一个可替代Copilot的开源AI配对编程工具

23年10月CMU的论文“GPTutor: an open-source AI pair programming tool alternative to Copilot”。

GPTutor:一个在Visual Studio代码中使用ChatGPT的编程工具扩展。其提出是在另一篇台湾师范大学的论文“GPTutor: a ChatGPT-powered programming tool for code explanation“。通过集成Visual Studio代码API,GPTutor可以通过引用相关源代码来全面分析所提供的代码。因此,GPTutor可以使用设计好的提示,通过弹出消息解释所选代码。

大语言模型(LLM)的出现提高了软件开发效率,但它们的性能可能会受到训练数据限制和提示设计问题的阻碍。现有的LLM开发工具通常是黑盒子,用户无法查看所使用的提示,也无法在出现错误时通过更正提示来提高性能。为了解决上述问题,GPTutor被引入作为一种开源的人工智能配对编程工具,为Copilot提供了一种替代方案。GPTutor允许用户自定义各种编程语言和场景的提示,支持120多种人类语言和50多种编程语言。用户可以微调提示更正LLM中的错误,从而实现精确和高效的代码生成。在论文的最后,通过示例强调GPTutor的潜力,包括展示其理解和生成Sui Move的熟练程度,这里Sui Move是一个通过提示工程、新引入的智能合约语言。

如图所示:GPTutor通过定制的提示改进生成的LLM结果。

2022年推出的Sui Network,将Sui Move作为其智能合约逻辑的编程语言。如图所示,LLM AI支持的配对编程工具由于其训练数据限制,难以在涉及Sui Move等不熟悉库的项目开发中提供重要帮助。

目前,GPTutor可在Visual Studio代码扩展市场上获得,下载量超过1000次。用户可以将其与自己的OpenAI API 密钥一起使用。GPTutor支持120多种人类语言的输入和输出,并支持50多种编程语言。用户可以自定义GPTutor针对特定语言的提示,以获得更精确的解释或生成。例如,如图所示,开发人员可以为GPTutor设置提示,以便对其代码进行解释、注释,甚至执行代码审查。

作者专门定制GPTutor的提示,增强其解释和生成Sui Move的能力。这种定制旨在帮助开发人员快速理解Sui Move的开发,并作为如何为特定编程语言定制提示的示例。例如,开发人员可以设置提示,在Sui Sui Move上使用GPTutor,这是一种超越ChatGPT训练数据的语言,来解释Sui Move,为Sui Move代码生成注释,甚至为Sui Move智能合约语言执行代码审查。此外,通过在提示中包含Sui Move的Fungible Coin Smart Contract Template作为参考,GPTutor可以准确生成和修改与Fungible Coin相关的Sui Move智能合约代码。这旨在帮助开发者了解Sui Move合约的工作原理,并加快开发他们的第一个Fungible Coin智能合约程序。

此外,如图所示,用户可以指定他们想要使用的CSS库和主题,然后要求GPTutor重写HTML类以适应指令。

使用GPTutor,用户可以自定义各种编程语言和开发场景的提示,并根据需要在不同的提示之间轻松切换,如图所示。利用GPT-3.5和GPT-4的功能,GPTutor提供了对LangChain模板格式自定义提示的支持。值得注意的是,GPTutor不仅支持从活动窗口输入代码作为提示,还可以选择用户选择的函数后面的源代码作为提示。通过这些类型的深入分析,GPTutor可以产生比使用原始ChatGPT和Copilot更精确的输出。

更新时间 2024-06-21