基于计图框架的 AI 编程优化小技巧

发表于:2024-8-26 23:41:55 74 1 0
【编者按】计图框架通过元算子和统一计算图的两大创新,有效提升了开发效率和执行性能。作者基于计图框架分享了 AI 辅助开发技术的新思路,以及 Fitten Code 在 AI 编程领域丰富的实践小技巧。

本文出自 2024 全球软件研发技术大会中的演讲,同时收录于《新程序员 008》。《新程序员 008》聚焦于大模型对软件开发的全面支撑,囊括 Daniel Jackson 和 Daniel Povey 等研发专家的真知灼见与“AGI 技术 50 人”栏目的深度访谈内容,欢迎大家订阅年卡。

作者 | 刘政宁  非十科技CTO,Fitten Code负责人

责编 | 何苗

近年来代码大模型领域迎来爆发式增长,在学术界与工业界彰显出双重价值。

在学术界,代码生成是自然语言模型非常重要的应用领域,吸引了大量组织的研究。在工业界,超过四十款 AI 编程助手的陆续面世,证明了代码生成作为大模型最具代表性的应用落地场景,极具潜力。

作为一个创业公司,非十科技主要将力量集中在产品研发和技术上,尽管很难在搜索引擎或者 AI 编程的文章推荐里面看到它的身影,但我们支持的 IDE 插件,包括 VSCode、Visual Studio 以及 JetBrains 全系列产品等在全平台累计下载量突破了 30 万次,在国内 AI 编程产品下载量排名中跻身前三。

这一点非常让人惊讶,我想这一定是因为做对了一些事情。


我将聚焦于非十科技所擅长的产品底层技术以及生成准确率、时延等关键技术的优化策略,分享一些实践经验。

以 GPT 为代表的自然语言大模型兴起,为代码大模型奠定了坚实的基础。自 2020 年起,微软便基于 GPT 架构探索代码生成技术,“Fitten Code”则站在巨人肩膀上,不断优化、创新,力求为用户提供更小体积却更强大的代码生成工具。

尽管代码大模型与自然语言模型在基础架构和规模上有着相似之处,但代码的独特属性也带来了特殊挑战:

1、代码的语法严格、逻辑严密,与自然语言的文本描述形式截然不同

在上下文长度方面,代码文件可能长达数千行,项目级别的代码量甚至达到数千万行,远超出普通文本的范畴。直接将通用自然语言大模型应用于代码任务的操作显得不切实际,因此业界普遍倾向于添加更多代码语料或专门训练代码大模型,以适应代码生成的特定需求。

2、自然语言大模型可以与知识图谱结合,而程序没有统一的知识库

不同于自然语言中的知识图谱,代码的抽象语法树(Abstract Syntax Tree, AST)扮演着核心角色。通过诸如 GACLAVVM 等工具,可以解析代码结构,获取函数与变量间的关联,基于此,可开展代码分析、优化等一系列高级操作,极大地丰富了代码大模型的应用场景。

3、代码生成对正确性要求远高于自然语言生成,需要被正确执行

在效果追求上,代码生成对正确性的要求远超自然语言生成。代码不仅需通过静态编译,还要确保动态执行的准确性。面对编程语言的多样性,确保不同语言下的规范性和效果成为一项重大挑战。此外,代码质量的高低对程序的可靠性至关重要,但这在自然语言处理中并非主要考量因素。

编程语言的进化速度飞快,这就要求代码大模型必须具备持续学习能力,以适应新知识的快速迭代。如华为推出的仓颉语言,展现了编程语言的持续创新,强调了代码大模型需具备动态更新机制,以应对编程语言的快速发展。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/dQCFKyQDXYm3F8rB0/article/details/141496871

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x