V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
leehomyhh
V2EX  ›  Java

想问下现在 AI(比如 copilot)对大家实际开发过程中的作用大吗?

  •  
  •   leehomyhh · 2024-03-20 10:49:22 +08:00 · 6339 次点击
    这是一个创建于 373 天前的主题,其中的信息可能已经有所发展或是发生改变。

    主要是 BOSS 现在想了解一下 AI 在实际工作中的价值,所以想了解一下大佬们会用 copilot 介入开发吗?

    第 1 条附言  ·  2024-03-20 14:02:19 +08:00
    感觉大家也都是直接用在写一些比较简单重复的逻辑,查查 sql ,shell ,或者增加一些注释,阅读代码上
    还很难达到我写一段详细的需求,直接帮我实现业务的程度
    但是感觉在不久的将来,可能我上面说的应该很快能实现
    65 条回复    2024-06-25 04:29:30 +08:00
    NewYear
        1
    NewYear  
       2024-03-20 10:55:42 +08:00   ❤️ 3
    比查文档方便,能提供思路,简单代码能提高编写速度,能提高编写代码能力。

    想直接得到结果不实际。
    gitdoit
        2
    gitdoit  
       2024-03-20 10:55:54 +08:00
    copilot 对我来说,日常编码方面效率提升至少 30%. 对于不熟悉的领域提升 200%
    q2677855779
        3
    q2677855779  
       2024-03-20 10:57:38 +08:00   ❤️ 1
    copilot 可以说大大提高了我 cv 的速度,少了很多百度谷歌的流程。
    jadehare
        4
    jadehare  
       2024-03-20 11:14:44 +08:00
    不是主业帮助非常大,没事就要写个 py ,写个 shell ,写个 oc 啥的靠百度真的要搜半天,copilot 基本上都是直出。
    scguanzhong
        5
    scguanzhong  
       2024-03-20 11:22:37 +08:00
    写个 py 处理点简单的工作,方便快捷
    ibinary
        6
    ibinary  
       2024-03-20 11:24:47 +08:00
    拼车的 copilot ,提升效率刚刚的. 你可以理解为. 你常年写 C 语言.什么函数都要自己实现. 用了 Copilot 相当于直接和写 python 一样,库都是现成的. 但是代码都是 C 语言实现. 很大的转变.
    coderxy
        7
    coderxy  
       2024-03-20 11:25:24 +08:00
    我引入了阿里的通义灵码, 代码提示采用率 20%左右吧。 搜索问题确实会快很多,它给出的答案基本上可以复制过来直接用。
    qingshanyuluo
        8
    qingshanyuluo  
       2024-03-20 11:44:01 +08:00
    主要是和直接问 gpt4 差别在哪
    dnfQzjPBXtWmML
        9
    dnfQzjPBXtWmML  
       2024-03-20 11:56:05 +08:00
    最近发现除了翻译还有个好用的地方,就是部分替代搜索引擎。前提是你知道这个东西网上有,但是搜索词不好写。就可以通过提示,把信息从模型里提取出来。比搜索 general 关键字再一页一页翻快很多。
    sunzhuo
        10
    sunzhuo  
       2024-03-20 12:00:42 +08:00
    要看是什么样的编码难度,简单代码 100%,高难度代码 10%。
    kneo
        11
    kneo  
       2024-03-20 12:07:08 +08:00 via Android   ❤️ 5
    1. 我解决不了的问题,github copilot 也解决不了。

    2. 我自己写的代码,也许 10%的情况有点 bug 。github 生成的代码,50%情况多多少少有点问题。如果它生成的所有代码我不看就直接用,肯定原地爆炸。哪怕我自己 review 一遍改一改再用,还是 20%的情况会有我没发现的问题。所以我用 github ,代码质量是下降的。当然这个因人而异。

    3. 开发速度也有所下降,因为我要 review 生成的代码,尽量保证正确性。而我自己的打字速度是很快的。

    4. 但我还是在用 github copilot ,为啥呢?因为我有腱鞘炎。按 tab 能少打不少字。虽然质量和速度都有所下滑。这就是程序员的宿命吧。
    VoiceEXONE
        12
    VoiceEXONE  
       2024-03-20 12:37:29 +08:00 via iPhone
    github copilot 真正的目标客户掐头去尾的话,应该是中间层的人群;技术能力 Top 级别的根本不会用,刚入门的也可能不会用(问题、业务表达理解不清的话,用了也是白用),到头来沦为中层的娱乐工具
    orioleq
        13
    orioleq  
       2024-03-20 12:40:57 +08:00 via iPhone   ❤️ 1
    @kneo 那最适合你的解决方案可能不是 copilot ,是喷雾+贴膏+护腕+加热按摩器
    phrack
        14
    phrack  
       2024-03-20 12:42:02 +08:00 via iPhone
    目前总体感觉能提升 10 到 30%效率,有的时候那个补全比自己手打还是快多了。智能程度还是比较勉强。
    R4rvZ6agNVWr56V0
        15
    R4rvZ6agNVWr56V0  
       2024-03-20 12:48:31 +08:00
    我认为对于不熟悉的技术领域,可以起到一定的抛砖引玉的作用。所以提效 10%-30%+ 是有的
    viWww0vvxmolvY5p
        16
    viWww0vvxmolvY5p  
       2024-03-20 13:17:14 +08:00
    很有用,思考怎么自动化编程
    stardust21
        17
    stardust21  
       2024-03-20 13:20:39 +08:00
    很有用,别的不说,单就又臭又长的打日志代码可以一键生成了,大概率不用怎么改
    jhdxr
        18
    jhdxr  
       2024-03-20 13:21:43 +08:00
    copliot 提升还是蛮大的,毕竟大部分时刻写的都是简单的代码。而且简单的代码看一眼基本上就能确定有没有问题。

    复杂的问题 copilot 搞不定,gpt4 其实也不太行(尽管它会装作帮你搞定了的样子)。但有一个场景 chatgpt 比 copilot 合适,就是报错的时候,chatgpt 能够帮你定位和解决问题(尽管准确率不高,但反正试一试成本很低),而 copilot 不行。
    lexa
        19
    lexa  
       2024-03-20 13:22:10 +08:00   ❤️ 2
    之前试了一下还不错,但还是依靠程序员来使用,不可能让普通人通过 copilot 来做软件的,就像现在很多通过 LLM 生成 SQL 一样,还是需要依赖数据工程师的,不太像 https://www.agiquery.com 那样,看了他的视频的,很不错:

    Yanlongli
        20
    Yanlongli  
       2024-03-20 13:24:16 +08:00
    有用,减少重复性工作,只专注业务逻辑。
    ktyang
        21
    ktyang  
       2024-03-20 13:29:50 +08:00
    有用 简单的部分基本上补出来的差不太多,仔细看看就行了,可以把更多的时间放在构思上,不过复杂的部分大多还是得自己搞,只是补全的长一些而已。
    FireKey
        22
    FireKey  
       2024-03-20 13:35:55 +08:00
    大概是从乙方到甲方的区别
    Bown
        23
    Bown  
       2024-03-20 13:40:21 +08:00
    对于常用语言的重复模板代码、不常用语言复健、以及学习新的语言或框架,都是极好用的,能省不少时间。
    附一篇业界大佬 antirez 对于 AI 辅助编程的锐评 http://antirez.com/news/140
    crysislinux
        24
    crysislinux  
       2024-03-20 13:41:20 +08:00 via Android
    我主要拿来改英文注释。
    NoOneNoBody
        25
    NoOneNoBody  
       2024-03-20 13:50:11 +08:00   ❤️ 3
    如果问答社区,简单问题开始减少,那就说明 AI 起作用了

    现在我遇到的问题:
    1.复杂的问题,AI 的回答只能作为启发性,就是看看有没有自己想不到的思路,不应直接作为解决方案
    2.AI 给的程序如果出错了,不要再让 AI 自行纠错,它在这方面很弱智,要么在几个错误答案中循环回答,要么只是顺着你的话说点好听的,但是继续原来的错误
    3.当预想方案有多个且不容易确定,不要让 AI 帮你选择,它的回答多是和稀泥,不会给一个“最佳”选择

    目前感受最佳是解释参数的实用意义,自己看文档(尤其不了解内部算法的情况),往往搞不清参数该用什么,AI 对参数的选择范围,大小对结果的影响,能解释得比较清楚
    duzhuo
        26
    duzhuo  
       2024-03-20 13:55:19 +08:00 via Android
    嘿!帮我写个变量名
    leehomyhh
        27
    leehomyhh  
    OP
       2024-03-20 13:59:12 +08:00
    @NewYear 查文档,sql ,shell 我觉得还行,直接编程感觉还差很多。。。
    LavaC
        28
    LavaC  
       2024-03-20 14:07:16 +08:00
    对我来说可能也就补充下有规律代码的程度。但最近看朋友圈有位大佬一直在说他用 gpt4 辅助解决了很多编程方面的问题,看得我一愣一愣的,总感觉大家用的不是同一款 ai 。
    不过也可能正说明能否高效利用 Prompt Engineering 是对未来程序员的一项考量标准。
    LavaC
        29
    LavaC  
       2024-03-20 14:09:57 +08:00
    @LavaC 感兴趣的可以看看他这几个月里写的关于 ai 的博客 https://yage.ai/ai-coding.html
    leehomyhh
        30
    leehomyhh  
    OP
       2024-03-20 14:13:15 +08:00
    @LavaC 谢谢,学习一下
    ccqloveworld
        31
    ccqloveworld  
       2024-03-20 14:13:51 +08:00
    挺好的写日志方便多了
    shijingshijing
        32
    shijingshijing  
       2024-03-20 14:14:00 +08:00
    @duzhuo 等 AI 掌控了世界,第一个打的就是你这种 [doge]
    Lilithia
        33
    Lilithia  
       2024-03-20 14:36:30 +08:00
    对我来说作用不大, AI 对我的帮助, 更多的是通过我主动询问.
    Leviathann
        34
    Leviathann  
       2024-03-20 15:01:21 +08:00
    主要还是生成日志和 sql ,再有就是命名
    leehomyhh
        35
    leehomyhh  
    OP
       2024-03-20 15:08:20 +08:00
    @Lilithia 确实是这样,但是如果 ai 自主变成那是另外一个话题了
    qinfengge
        36
    qinfengge  
       2024-03-20 15:19:58 +08:00
    离不开了,对于重复和简单的工作,按下 `TAB` 真的爽很多
    qiuhang
        37
    qiuhang  
       2024-03-20 15:23:52 +08:00
    有点用,但是不大,用了一段时间后关了。
    有点用的意思是,它有时候确实是"懂你",能帮你补齐大段代码,完善度甚至让你惊讶。在需要高速编码的运用场景下,确实是很省力。
    用处不大的原因是,它生成的东西不可靠,甚至是毫无根据地编造,需要你自己去 debug ,有时候不比你自己写省心。其次是,严重侵入个人的编程习惯和编程时思维连贯性,用多了个人感觉对于自己的编码能力有害。这个是我放弃使用最核心的原因。
    最后是,个人工作类型不属于中度编码的场景,每天其实写代码不多,甚至是很少。这东西又做不了创造性的工作,弊大于利。如果我是那种堆功能的岗位,我应该会长期用。
    wanniwa
        38
    wanniwa  
       2024-03-20 15:24:41 +08:00
    蛮大的
    betty00
        39
    betty00  
       2024-03-20 16:08:34 +08:00
    作用挺大的,工作效率有效提升,整个团队都在用 copilot
    sherlockwhite
        40
    sherlockwhite  
       2024-03-20 16:28:44 +08:00
    @duzhuo 🤣 代码不难写 想名字想半天
    sherlockwhite
        41
    sherlockwhite  
       2024-03-20 16:29:29 +08:00
    copilot 很好用吗 这么多人用 我感觉百度那个 comate 也还可以
    liyafe1997
        42
    liyafe1997  
       2024-03-20 16:36:49 +08:00
    挺大的,大到氪了 ChatGPT Plus
    NoOneNoBody
        43
    NoOneNoBody  
       2024-03-20 16:39:19 +08:00
    @LavaC #28
    人脑记忆总是有限的,就算看过的东西也很难全部融汇贯通
    说几个例子
    qt 文档,QtCore/QtGui/QtWidgets 这三部分我至少看过 50%,但能搞清的也就 20~30%(文档是 C++,我写的是 pyqt ),gpt3.5 至少帮我搞清了一些读过但不会用的部分,现在能搞清的增加到 35%吧
    一直想写个 pandas tree 的控件,写不出来,网上也没搜到,pandas table 倒是有的,但 tree 就复杂了很多,最后就是在 AI 帮助下写出来了,也实际用上了,虽然不是 AI 直接写出来的代码,但它帮我打开了思路,就是利用 pandas 的 MultiIndex 。因为之前一直在 groupby 思路转圈走不出来,但 groupby 实际上跟 MultiIndex 是一样的性质-->groupby(as_index=False)就是 MultiIndex 。还有就是不太熟 MVC ,对 model 用法有很多搞不清,这方面基本上全是依靠 AI 讲解

    pandas 也是巨多方法不会用
    python 原生有个方法 itertools.groupby
    # [k for k, g in groupby('AAAABBBCCDAABBB')] --> A B C D A B
    # [list(g) for k, g in groupby('AAAABBBCCD')] --> AAAA BBB CC D
    就是按相同值分段
    我一直想把它在 pandas 实现,因为个人需求很大,很多地方要用到,自己写了倒是能做出来,就是百万数据很慢,优化多次都不理想,搜 so 别人写的也是 itertools.groupby 类似思路
    让 AI 帮忙实现,晕倒,简单得很
    df[groupname] = (df[col]!=df[col].shift(1)).cumsum(),因为是向量化的,速度很快
    就是因为自己不熟 cumsum 函数的实用意义,cumsum 一直固守理解在“求和”上,思维宽度一下子打开了
    同理,mask.sum() 就是条件统计,看上去是“求和”,实际是计数器,统计上很常用

    numba 文档也是异常难读,一直不敢碰,但 AI 帮我写了几个后,自己也能写一些简单实用的了,尤其数据量上百万时,比“手动”向量化快
    tikazyq
        44
    tikazyq  
       2024-03-20 16:43:58 +08:00
    坐过车的人,还会去骑马么?
    fine886
        45
    fine886  
       2024-03-20 17:02:20 +08:00
    copilot 和 chatgpt 哪一个能更好用一点
    shinelamla
        46
    shinelamla  
       2024-03-20 17:06:26 +08:00
    所以想问下哪里有便宜好用的 copilot 渠道?
    LavaC
        47
    LavaC  
       2024-03-20 17:32:25 +08:00
    @NoOneNoBody #43 同意你说的内容。gpt 有效的前提是你人知道自己要什么,也就是对你问的知识有大概的理解,问 gpt 只是不想再花时间理清逻辑和整理,所以哪怕 gpt 给的代码是跑不通的,但是它的 demo 能作为很好的代参考项。这时候无论是自己解决剩余部分还是再推 ai 一把事情也差不多已经解决了。
    xloger
        48
    xloger  
       2024-03-20 18:08:15 +08:00   ❤️ 1
    提一个我用的刚需:看同事写的没注释的代码的时候。
    我会让它帮我分析一下这段代码的主要逻辑,再结合它的说明去阅读代码
    fishDD
        49
    fishDD  
       2024-03-20 18:11:17 +08:00
    个人的使用体验:
    nqlair
        50
    nqlair  
       2024-03-20 18:18:24 +08:00
    用处不大 对我来说只是个更智能的代码补全工具 如果要解决问题还是得靠 chatGPT 这种
    qunali
        51
    qunali  
       2024-03-20 19:52:11 +08:00
    根据 V 友的推荐,最近开始尝试 copilot ,确实很有帮助
    moqimoqide
        52
    moqimoqide  
       2024-03-20 23:58:37 +08:00
    正在做 AI 辅助编码的一部分 Research: https://moqimoqidea.feishu.cn/docx/HRtSdxjMhoULrxxsU4wcxT2nn7b
    ethenzh
        53
    ethenzh  
       2024-03-21 01:25:20 +08:00 via Android
    Copilot 应该是基于 gpt4 的。不要把 copilot 简单当做代码生成器来用,而是“获取一切急需的信息、能快速评估自己拍脑门的想法”的助手。当然啦,连续编程十几个小时,大脑都开自动驾驶了,那完全靠 copilot 输出也不是不行。总之,从文档、教程、代码解释、代码重构、代码质量评估,到自动补全、面向注释编程(笑),都是可能的
    BernieDu
        54
    BernieDu  
       2024-03-21 01:33:57 +08:00
    简单的问题比 google 快,但 google 花点时间也能搜到。复杂点的问题,或是最新的技术,那只能 google 了。对我而言用的最多的可能是查生活中遇到的问题,比如熟成牛肉需要多少天,多少度这种
    beneo
        55
    beneo  
       2024-03-21 07:14:17 +08:00 via Android
    帮助很大,我直接开始 rust 编程了
    MEIerer
        56
    MEIerer  
       2024-03-21 10:13:29 +08:00
    无敌好吧,只要你是个写码的
    MEIerer
        57
    MEIerer  
       2024-03-21 10:14:06 +08:00
    使用感非常好,只要你是个写码的
    llsquaer
        58
    llsquaer  
       2024-03-21 10:37:23 +08:00
    还是挺大的用处。原来存了一堆的小抄,真要用的时候还想不起来了。。现在直接 GPT
    lee015
        59
    lee015  
       2024-03-21 13:49:37 +08:00 via Android
    用的 GTP4 ,有一定效率提升。
    - 写一些小段 shell 脚本、小段功能函数,基本稍微改改就能能用
    - 代替大部分文档搜索操作,对于参数、函数用法这些直接给出解释和示例
    - 感觉只适合写小段代码,太复杂的场景总有一些细节问题要反复让他改或者要自己改,效率不高
    - 偶尔给的代码是错误的或者有 bug 会 crash ,要自己判断一下不能完全信任
    DICK23
        60
    DICK23  
       2024-03-21 14:28:54 +08:00
    代码更加规范,注释啥的更加完备。我以前基本不怎么写 jsdoc ,现在基本都会写上,而且是详细的那种
    horizon
        61
    horizon  
       2024-03-21 15:24:19 +08:00
    自动补全挺好的
    gaofeigr
        62
    gaofeigr  
       2024-03-22 16:06:15 +08:00
    没思路的时候帮助挺大的。比如前段时间有个图表不知道怎么做,截图问了下 gpt4 ,立马出前端代码实现。用了什么技术怎么实现的讲的明明白白的,省了很多力气。
    ps:我是后端
    allentown0406
        63
    allentown0406  
       2024-03-22 16:24:09 +08:00
    平时用 codeium ,偶尔会抽风,然后用多个 ai 模型比较回答:aichatone.com
    loyan666
        64
    loyan666  
       295 天前
    @kneo 表示很赞同,copilot 写点 demo 还行,
    真正项目追求准确性,不检查稍微一个小 bug ,回头非常难查。
    很不辛的是,copilot 经常乱编代码,经常编写隐匿度很高的漏洞
    q534
        65
    q534  
       276 天前
    @loyan666 然后给 AI debug ,真正的黑奴竟是我自己
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2752 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 13:04 · PVG 21:04 · LAX 06:04 · JFK 09:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.