type
Post
status
Published
date
Feb 6, 2025
slug
gpt-01
summary
tags
大模型
category
技术管理
icon
password
Link

原文:

总结:

 
以下是文章《大模型编码目前最有效的模式》的结构化总结:

文章标题:

大模型编码目前最有效的模式

作者:

丁辉(架构师丁辉的软件架构说)

发布日期:

2024年05月31日

主要观点:

  1. 大模型编码的两种主流方式
      • 问答式
      • GitHub Copilot方式(简称copilot方式)
  1. 问答式编码
      • 包括zero-shot、few-shot和动态prompt。
      • 存在问题:提示词过长导致维护成本高、模型兼容性不足、token数超限、推理速度慢、局部细节精准度下降、调试成本高。
  1. 大模型的局限性
      • 大模型主要是语言统计模型,对通用知识的编码效果较好,但私域知识的生成效果不足。
      • 私域知识在大模型训练语料中占比低,导致生成效果不佳。
  1. 建议
      • 对于编码高频场景,建议使用短提示词(输入token 2k以内)+通用知识的方式与大模型交互,以获得确定性效果。
      • 长提示词仅适合生成代码框架的低频场景。
  1. copilot方式的优势
      • 更精准地组织短提示词进行代码补全,无需开发人员维护提示词模板。
      • 通过编程IDE抽取工作空间中的上下文,组织成精细化短提示词,获得更明确的效果。
      • 适用于代码解释、需求理解、代码生成、代码注释、代码补全、代码优化、代码重构、bugfix等编码阶段的主要场景。
  1. 代码补全的细分场景
      • 行内随手补
      • 单行补
      • 块补(控制流程补、注释补、函数补)
  1. 获取精准上下文信息的方法
      • 拆解当前文件的代码结构。
      • 对光标所处结构进行语法分析,形成AST。
      • 在AST中搜索相对完整的语义特征。
      • 增加被调用函数的原型。
      • 将工作区和选定知识库的代码进行RAG,获取近似参考代码。
      • 将上述部分作为精准提示词送给大模型进行代码补全。
  1. 结论
      • 当前大模型的能力还处于辅助人的阶段。
      • 建议结合问答式和copilot方式进行编码:
        • 使用经过私域知识剥离的短提示词生成具备通用知识的代码。
        • 使用copilot精准识别用户意图,通过小模型生成高准确率代码。

结论:

文章建议在当前阶段,大模型生成代码应采用问答和copilot结合的方式进行。首先使用问答式长提示词生成代码框架,然后使用短提示词和copilot方式应对高频编码场景,以提高代码生成的准确性和效率。
2024年度工作总结大模型编码提效场景选择的底层逻辑