V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
LeeReamond
V2EX  ›  问与答

Github Copliot AI 智能代码补全确实是有用的,建议没用过的朋友都去用用

  •  
  •   LeeReamond · 2022-06-28 14:16:12 +08:00 · 3568 次点击
    这是一个创建于 639 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前贴地址: https://www.v2ex.com/t/861525

    1. LZ 以前没用过补全,感觉 AI 写代码是自媒体噱头居多,业务的复杂性本身无法缩减,AI 在这方面不可能 cover 人类的工作,这是我原先的想法。
    2. 我觉得改别人写的代码比自己写更痛苦,再加上一个细节没注意到就引入 bug ,这都让我觉得 ai 补全没啥用。
    3. 所以刚出的时候我也没去试用,最近因为听说马上要收费了,不试就没有了,本着尝鲜的想法去试了。
    4. 试用期间一周左右,代码语言 ts/python/rust

    整体来说感想是,以前的想法倒也没错,AI 确实不能 cover 业务的复杂性。

    copilot 的缺陷在于编写复杂逻辑 /算法时没有任何帮助,甚至会帮倒忙,用过的都想直接关了,所以 AI 补全对于提高程序员本身的水平完全没有帮助。

    copilot 的优势在于写类似 python 这类语言时,因为生态过于好,你要处理的业务往往会变得非常庞大,不能集中在单个领域,有无数的包,无数的接口,即使是资深码农提笔忘字也非常正常,这时候 copilot 的优势在于在 IDE 的自动提示之外,很多时候能提供正确的调用范例,确实让写码体验变得非常爽快。

    另一个优势是很多人说过了,业务代码可以少打字,体验过感觉确实不错,虽然代码确实需要修改才能使用,但是他这个工具特意优化了一点是不会在屏幕可视区域外(在你不知道的情况下)添加代码。所以虽然在公司改别人的代码很痛苦,但是双方思路完全统一的话,这点负面影响就不存在了。

    还有一个优势是我原来不知道的,就是可以用中文给工具提示。我本人在开源项目里提交的英文文档没有十万字也得有几万字了,但是你叫我写代码时完全准确地用英文表述每一个细节,我还是觉得非常头痛,中文不存在这个问题。

    简单来说推荐没试过的朋友都去试试,一改之前的看法,确实这东西是有生产力的。就是价格太贵,严格来说跟收入比倒也没多少钱,但是一次性花一百刀实在是引起人的生理不适,我这种买个 5 刀的游戏都要等打折才买的。。

    35 条回复    2022-07-03 13:29:22 +08:00
    ysc3839
        1
    ysc3839  
       2022-06-28 14:18:39 +08:00
    可惜要钱……
    Mexion
        2
    Mexion  
       2022-06-28 14:20:12 +08:00
    写起来确实很爽,就是 10 刀一个月太贵了
    wolfie
        3
    wolfie  
       2022-06-28 14:21:21 +08:00
    能一键提示出来的,要么是算法题这种,要么是通用的代码段。
    通用的代码段为什么不用成熟的工具类呢。
    LeeReamond
        4
    LeeReamond  
    OP
       2022-06-28 14:23:12 +08:00
    @wolfie 可以去试试,它比想象的成熟,业务代码中很多场景能猜出你的意图,分解数据结构的项 /找到代码段整体的输入输出并进一步处理等等
    AllenTsui
        5
    AllenTsui  
       2022-06-28 14:29:00 +08:00
    爽到了
    ejdjxidbsn
        6
    ejdjxidbsn  
       2022-06-28 14:30:11 +08:00   ❤️ 2
    @wolfie 并不是,先用再评论吧
    fengfuliu
        7
    fengfuliu  
       2022-06-28 14:54:10 +08:00
    就是和自带代码提示冲突这一点很难受 按完 esc 再.还是出来 copilot 的
    404neko
        8
    404neko  
       2022-06-28 14:56:23 +08:00
    要不别用了吧, 10$ / Mo 呢
    维护一个 300 Star 的项目, 但是不能白嫖, 破防了
    FightPig
        9
    FightPig  
       2022-06-28 15:00:09 +08:00
    @404neko 我维护一个 10 年的 1000 多 star 的也一样不能白嫖,应该是要流行库才行,我看好多人 3000 多 star 的都不能
    menglddd
        10
    menglddd  
       2022-06-28 15:27:35 +08:00
    @fengfuliu 这里确实是,我也没找到好的解决办法,这应该属于 bug
    lance6716
        11
    lance6716  
       2022-06-28 15:34:04 +08:00 via Android
    @menglddd 改快捷键不就行了吗
    404neko
        12
    404neko  
       2022-06-28 15:50:38 +08:00   ❤️ 1
    @FightPig
    其实只要穿女装就可以

    https://github.com/komeiji-satori/Dress
    whitehack
        13
    whitehack  
       2022-06-28 16:25:17 +08:00
    @404neko #12 我艹.涨见识了
    storyxc
        14
    storyxc  
       2022-06-28 16:35:14 +08:00
    @404neko #12 我不理解,但我大受震撼😰
    wonderfulcxm
        15
    wonderfulcxm  
       2022-06-28 16:46:01 +08:00 via iPhone
    @404neko …啊这
    Innovatino
        16
    Innovatino  
       2022-06-28 16:58:03 +08:00
    10 刀算下来,其实也就一、两顿午饭钱,真要掏我感觉也还好
    w6a
        17
    w6a  
       2022-06-28 17:03:38 +08:00
    @404neko 大佬是真的吗,我这就去穿
    BeautifulSoap
        18
    BeautifulSoap  
       2022-06-28 17:08:16 +08:00
    copliot 写注释真的是神器中的神器,让我省掉了非常多写注释的麻烦。还有用来生成比较重复的逻辑也很棒
    Bronya
        19
    Bronya  
       2022-06-28 17:26:04 +08:00
    @404neko 真的假的,我也想。。。😏
    rabbbit
        20
    rabbbit  
       2022-06-28 17:27:44 +08:00
    @404neko
    Github Copliot 能从这个项目里学到啥...?
    wolfie
        21
    wolfie  
       2022-06-28 17:29:23 +08:00
    @ejdjxidbsn
    3 月份时候排队用过,反驳别人时候,要带上相应的论点。
    IvanLi127
        22
    IvanLi127  
       2022-06-28 18:09:47 +08:00
    @wolfie 你肯定没仔细用,它还是能联想出一些比较好的业务代码的。。。
    jagger2048
        23
    jagger2048  
       2022-06-28 18:43:19 +08:00
    实际用符合预期,帮你补全的代码有用的其实还蛮多的,就是太贵了
    Feiex
        24
    Feiex  
       2022-06-28 19:27:27 +08:00
    @wolfie copliot 这个是基于 gpt3 训练的,不是 codota 那种全世界炒代码。意图识别还是稍微准的,比如前几天自动生成的注释,我都惊呆了:
    “如果活动类型是券包,处理 xxxxx ;如果活动类型是会员,处理 xxxxx”
    ttgo
        25
    ttgo  
       2022-06-28 19:35:30 +08:00
    尽管 v 友平均月薪几十 k ,但不能提钱,凡是花钱必须一起拼车。
    irainsoft
        26
    irainsoft  
       2022-06-28 19:37:36 +08:00
    传一个我自认为离谱的吧,最近在写一个项目时使用了华为云的 API ,基于官方的示例代码加了一些有需要的函数,然后出现了下面这一幕... Copliot 直接预判了我要写的函数,给出的提示就是我打的 `def d`,虽然逻辑部分我最后还是改了(需要调用一个获取 zone_id 和 record_id 的函数),但总体上是没问题的。感觉比 Tabnine 好用不少...
    bomb77
        27
    bomb77  
       2022-06-28 19:38:27 +08:00
    log.debug 的自动补全贼牛逼
    idblife
        28
    idblife  
       2022-06-28 19:40:29 +08:00 via iPhone
    不多说了,已付费
    LeeReamond
        29
    LeeReamond  
    OP
       2022-06-28 20:04:32 +08:00
    @irainsoft 你这个例子不是很 fancy ,上面已经有提示结构,目前来看 copilot 对于重复性结构补全还是比较强的。一般认为如果要产生程序员群体里的轰动效果,可能要做到它自动实现了你在写新代码的时候(比如有些业务在全网看来也罕有参考案例的时候)起到思路领先于人类的作用,这和现在的推断上下文补全重复结构是两个概念。不过话说回来我这个帖子说的也是这个意思,虽然它不能帮你写代码,但是结构性推断和少打字用起来是很舒适的,符合你思路的代码即使删删改改也不太费力。
    Jaosn
        30
    Jaosn  
       2022-06-28 20:58:45 +08:00
    @404neko #12 拍一张提交 PR 就能白嫖 Copliot ?
    wolfie
        31
    wolfie  
       2022-06-28 22:02:11 +08:00
    @Feiex
    生成注释没用过,回去看看。
    westoy
        32
    westoy  
       2022-06-28 22:47:23 +08:00
    @wolfie

    我当年用 sqlalchemy 的时候, 还是 sqlalchemy 替代 sqlobject 的时期, 好像是 0.7 还是 0.8 的时候, 快十年没用过了

    然后我现在这个项目大概三四十个表,Copliot 给我根据变量名把关系基本全补全了...........................
    ChenYFan
        33
    ChenYFan  
       2022-06-28 23:56:39 +08:00
    不建议想白嫖的用,这东西用了对普通偷懒程序员依赖性很大,我之前也想着戒掉,尝试了一下 Tabnine 完全不是一个层次,不用又难受,最后捏着鼻子开了学生。
    FightPig
        34
    FightPig  
       2022-06-28 23:58:16 +08:00
    @404neko 这。。。好吧,我还是不用这个吧,反正我平时也用的少,习惯了自己写
    abersheeran
        35
    abersheeran  
       2022-07-03 13:29:22 +08:00
    @ttgo 一个月到手不到 10k 的我……
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3091 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 14:33 · PVG 22:33 · LAX 07:33 · JFK 10:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.