豆包MarsCode编程助手发展概述
起源
豆包MarsCode编程助手的起源可追溯至2022年初,代码智能团队开始探索基于LLM驱动的代码补全产品。其发展历程包括引入基于对话的编程助手、提升自动化编程能力、引入代码补全Pro编辑推荐功能等阶段。
现状与发展
概述
豆包MarsCode编程助手的核心功能包括代码补全和代码补全Pro,旨在提升开发者的编程效率。
数据构造
产品通过Git仓库中的commit历史记录构建数据,利用CT和SFT模型理解diff格式数据,并通过启发式规则提取相关修改记录。
产品交互
代码补全Pro通过预测开发者下一次动作,自动补全代码,提升编辑效率。
代码补全
- Prompt工程:通过自然语言生成代码,提升交互体验。
- 科学的测评体系:采用CPO(Character per Opportunity)指标,更科学地评估代码补全效果。
- CPO公式:CPO = (尝试率) × (反馈率) × (采纳率) × (每次采纳平均token数) × (token平均字符长度)。
- 尝试率:反映AI提供建议的频率。
- 反馈率:反映建议被传递给开发者的比例。
- 采纳率:反映开发者采纳建议的比例。
- 每次采纳平均token数:反映每条被采纳建议的实际价值。
- token平均字符数:反映不同大语言模型的分词效果。
代码补全Pro
- 概述:通过预测开发者下一次动作,自动补全代码,如自动修改函数调用参数。
- 数据构建:利用Git commit历史记录,提取用户编辑行为信息。
未来展望
编程助手业界趋势观察
- 产品形态:IDE原有交互的深度集成,支持更长、更多代码片段的修改和应用。
- 模型能力:指令追随和语义理解能力更强,具备代码编辑能力,支持更长的上下文。
产品形态的展望
- NL2Code能力与Editor深度集成:如VSCode。
- Sketch then Generate:通过草图生成代码。
总结
豆包MarsCode编程助手从起源到发展,经历了多个阶段,通过科学的测评体系和代码补全Pro等功能,显著提升了开发者的编程效率。未来,随着模型能力和产品形态的进一步发展,将实现更深度、更智能的AI编程体验。代码补全Pro已进入beta阶段,欢迎访问www.marscode.cn(国内)。