AI编程简介

AI 编程的特点

AI 编程是指利用人工智能技术来辅助开发过程的一种编程方式。包括但不限于:代码生成、优化、调试、审查,文档生成、测试自动化。
编程能力是大模型各项能力的天花板,由于训练数据质量高、结果可衡量、编程语言无二义性等特点,目前大模型在编程方面的处理能力,甚至超越了对自然语言本身。同时编程训练也能增强模型的推理能力。

常见编程工具

工具Value
GitHub CopilotGitHub 平台和 OpenAI 合作的编程助手
tbaby无需联网,可本地化部署, 支持所有开源编程模型
Tongyi Lingma代码补全,免费。阿里云相关
CodeGeeX清华智谱制造,CodeGeeX 3 Pro 免费可用
Comate百度制造,有免费试用版
Bito比 Copilot 还多些创新
DevChat前端开源,同时卖 GPT 服务
CursorAI first 的 IDE
Tabnine代码补全,个人基础版免费
Amazon CodeWhisperer代码补全,免费。AWS 相关的编程能力卓越。

更多开源编程大模型

  • Code Llama - Meta 出品,可能是开源中最强的 (7B、13B、34B、70B)
  • DeepSeek-Coder - 深度探索公司出品(1B、5.7B、6.7B、33B)
  • CodeGemma - Google 出品(2B、7B)

copilot的工作原理

  • 模型层:最初使用 OpenAI Codex 模型,它也是 GPT-3.5、GPT-4 的一部分。

  • 应用层: prompt engineering。Prompt 中包含:

    1. 组织上下文:光标前和光标后的代码片段
    2. 获取代码片段:其它相关代码片段。当前文件和其它打开的同语言文件 tab 里的代码被切成每个 60 行的片段,取 Jaccard 相似度评分高的。经验tabs个数选择为20 个。
    3. 修饰相关上下文:被取用的代码片段的路径。用注释的方式插入,例如:# filepath: foo/bar.py,或者 // filepath: foo.bar.js
    4. 优先级:根据一些代码常识判断补全输入内容的优先级
    5. 补全格式:在函数定义、类定义、if-else 等之后,会补全整段代码,其它时候只补全当前行
      在这里插入图片描述

AI编程常用技巧

为了更加的对当前代码的理解以及生成有效代码,需要有效地添加提示词。部分技巧总结如下:

  • 所有 prompt engineering 的技巧都有效,可以把代码、错误信息、环境信息直接粘贴进去
  • 任何技术相关的问题都可以问,比自己搜索效率高很多
  • 注意每次问答上下文窗口的大小
  • 改写当前代码,可另起一块新写,AI 补全得更准,完成后再删旧代码
  • Cmd/Ctrl + → 只接受一个 token
  • 如果有旧代码希望被参考,就把代码文件在新 tab 页里打开
  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值