白嫖使我快乐?AI编程助手Codeium入门指北

Codeium是啥玩意?

简单来说,Codeium是一款个人用户免费的AI辅助编程工具,其三大主要功能是代码补全聊天搜索,其受众是广大的developers,以及爱问问题的好奇心宝宝(后面会提到)。目前Codeium已经支持超过70种编程语言以及40多种编辑器。

在这里插入图片描述
在VS中也是能轻松找到Codeium,但由于众所周知的原因,目前还不能直接在VS中使用该插件。
在这里插入图片描述
但好在Codeium支持网页版试用部分功能,可以在官网link找到试用入口。

为啥是它?

其实目前已有不少的AI编程助手(如Github Copilot、Tabnine、Replit Ghostwriter…),那么Codeium有哪些优势呢?在官网上,Codeium团队已经给出了答案,其分别从Features and price、Latency和Suggestion quality这三个角度进行评估,并最终得出综合得分。

Features & Price

在这里插入图片描述
在这里插入图片描述
其实对于个人用户来说,我并不关心它会不会拿我的代码去训练模型(当然对于企业用户这是需要重点考虑的),只要这款工具支持我喜欢的语言和IDE,我就可以将它加入候选集,如果它还是免费的,那它真的太香了!(不是Copilot用不起,而是白嫖更有性价比)此外,Codeium独特的Chat功能也为其增色不少。

Latency

在这里插入图片描述
在代码生成延迟这项,所有的工具都在合理的延迟内给出了建议,而实际的体验可能更多地会受到代码生成质量的影响。

Quality

在这里插入图片描述
为了减少偏见,该项实验从其它三家产品的主页上挑选了代码生成的例子,最终结果显示Copilot和Codeium算是旗鼓相当的对手。

Overall Assessment

在这里插入图片描述
从整体来看,Codeium由于价格优势明显,在其他方面无明显劣势的情况下轻松取胜。当然我们也可以认为Features and price、Latency和Suggestion quality这三个算是Codeium的优势指标,在这样的实验设定下可能是不公平的。

使用感受如何?

由于无法安装插件的缘故,我选择了网页支持的代码补全和Chat功能进行分享。

Autocomplete

目前网页上只支持这五种语言的体验。
在这里插入图片描述
首先我尝试让它用Python写一个二分查找的函数。
我只需要打出def binary,它就已经预判到了我的需求,此时如果按下Tab键,那么就会采纳这段代码。
在这里插入图片描述
而如果这段提示代码不是我们想要的(比如,二分查找的递归写法),那么我们可以使用Alt+ [Alt+ ] 键来在不同的补全建议中进行筛选。如果对所有的建议都不满意,那么我们可以选择给出更明确的需求(如完整函数名和参数),抑或挑选一个和期望gap最小的版本进行再加工。
在这里插入图片描述
但更让人惊讶的是,在我接受了这个函数后,我只是简单键入了一个p,它也能明白我是想要测试这个函数的功能。(Amazing啊!看来测试的思想已经深入emm机器之心)
在这里插入图片描述
接着我又想看看它面向对象了解的如何。这回我选择用注释的方式告诉它我的需求。
在这里插入图片描述
同样地,我并不需要键入完整的话,它就识别出,我想要定义一个people类,以及people最常见的属性是name和age这样的信息。一旦我接受了这个建议,接下来它就会顺理成章地生成一个有模有样的people类,这的确大大加快了开发速度。
在这里插入图片描述
最后我还想考考它测试的知识。虽然在我几经尝试后生成的代码仍有瑕疵,但已经可以看出3A原则有被使用到。
在这里插入图片描述
从我个人使用体验而言,给出一个好的注释作为提示对于代码自动生成至关重要,而不一样的关键词生成的效果可能也会略有不同(如return、define、give…),可能将来如何给出更平滑的提示反而会比写代码本身更加具有技术性。

Chat

如果熟悉ChatGPT的用户,肯定不会对这个功能陌生,因为它可以算是ChatGPT的平替。不知道有多少人和我有过一样的苦恼,觉得注册海外手机号是件很麻烦的事,更不用说还得充值上几dollar。而Codeium就免去了这样的烦恼,直接网页就可以使用,甚至都不需要注册账号登录账号。官网的介绍里Chat主要有这样几种用法:生成代码、解释代码、重构以及将代码用另一种语言改写。
在这里插入图片描述
在实际使用中,我并不会去刻意区分这几种功能,而是遇到问题就问,比如我对XPath的用法不了解:
在这里插入图片描述
它会给出介绍以及具体的例子帮助理解。同时,我还可以针对该问题继续提问:
在这里插入图片描述
到这里差不多我的问题就能得到解决了,如果不能,还可以继续多提问几轮。当然,Chat功能并不仅仅局限于Coding领域,你也可以问它别的问题,比如:
在这里插入图片描述
Chat是一个很实用的功能,但在日常使用中我也发现了一些问题:

  1. 生成的回复并不完全可靠,需要进行甄别。例如下面这个例子:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    它几乎在一本正经地胡说八道,有时候给出的结论是前后矛盾的,如果你回复不认可,那么它会立刻修改回复。倘若你继续发难,那么它仍会继续为了迎合而修改答案。这时候不禁感叹一句,人和机器的差异就在于,人不是一味迎合而不加思考的!
  2. 生成的代码回复长度受限,如果代码太长将生成不完整的代码片段。
  3. 网页上没有滚动条,对话长了以后不太方便。
  4. 目前只支持文本输入。

Search

在这里插入图片描述
简单理解一下,Search功能可以让用户以自然语言的方式来搜索代码库,如类、函数、变量等等。

总结一下

由于只使用了网页版的Codeium,功能上是受限的,但由于其免费和使用方便,整体的体验感还不错(毕竟免费的还要啥自行车啊)在日常中使用最多的Chat功能可以看成ChatGPT的平替,会提需求+注意甄别,倒也算是developer的一件称手的兵器。

  • 28
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
入门Python编程和人工智能,我们需要先掌握Python基础知识。Python是一种易学易用的编程语言,其简洁的语法和丰富的库和工具使其成为了人工智能领域的重要工具。 首先,我们可以从学习Python的基础语法开始。可以通过在线教程、书籍或者参加编程培训班来学习Python的基础知识,包括变量、数据类型、流程控制、函数和面向对象编程等。 了解了Python基础后,我们可以进一步学习Python的科学计算库,如NumPy和SciPy。这些库提供了很多强大的数学和科学计算功能,对于人工智能算法的实现非常有用。 接下来,可以学习Python的机器学习库,如scikit-learn和TensorFlow。scikit-learn是一个用于机器学习的强大库,包括常见的机器学习算法和工具。TensorFlow是Google开发的一个开源深度学习库,它提供了强大的工具来构建和训练神经网络。 除了基本的Python和机器学习库,了解一些数据处理和可视化的工具也是很重要的。例如,Pandas是一个用于数据处理和分析的库,Matplotlib和Seaborn则提供了绘制图表和可视化数据的功能。 此外,还可以参加一些在线课程和MOOC(大规模开放式在线课程),如Coursera上的《机器学习》课程,来学习更高级的人工智能算法和应用。 最后,通过实践项目来巩固所学知识。选择一些小型的项目,如使用机器学习算法识别手写数字或者构建一个简单的聊天机器人,来应用所学的Python和人工智能知识。 总之,要入门Python编程和人工智能,需要先学习Python基础知识,然后学习各种相关的库和工具,并通过实践项目来巩固所学知识。随着不断的学习和实践,我们可以逐渐掌握Python编程和人工智能的技能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值