Star History 九月开源精选 |开源 GitHub Copilot 替代

虽然大火了近一年,但是截至目前 AI 唯一破圈的场景是帮助写代码(谷歌云旗下的 DORA 年度报告也给 AI 泼了盆冷水)。不过对于软件开发来说,生成式人工智能绝对已经是新的标配。

本期 Star History 收集了一些开源 GitHub Copilot 替代品(不免费,也不开源),AI 编程助手来解放你的生产力 🏋️。

Cody

file

Cody 是 Sourcegraph 开源的 AI 编程助手,可作为 VS Code 或 JetBrains 扩展使用。Cody 由 Sourcegraph 的 code graph 驱动,所以会对整个代码库有所了解。

除了基于 AI 的代码补全、编写单元测试、生成文档注释、总结代码等常见功能外,Cody 还有一个聊天界面,你可以问他相关问题或者要求它执行某些操作。

file

Cursor

file

Cursor 是一个 AI 驱动的 IDE,把 AI 配对编程又往前带了一步。Cursor 希望解决的是 AI 自动补全后出现的任务:修好 bug,帮你写新功能。

与 VS Code 相比,Cursor 的优势在于:他们的用户比 VS Code 少得多(2023 年 Stack Overflow 开发者调查结果表明 VS Code 是 73% 受访者的首选 IDE),所以可以更快地迭代和尝试新鲜事物。毕竟 2023 年的教训是你必须快速接受新事物,才能跟上行业的步伐。

而且其实 Cursor 已经站在巨人肩膀上了:它是 VS Code 的一个 fork(试用了一下感觉它真的很像 VS Code,但更加 AI 原生一点)。

file

Cursor 今年三月份开源的,并在本月初宣布了由 OpenAI 领投的 800 万美元融资。

Tabby

file

Tabby 是支持自托管的 AI 编程助手,可以将其视为 GitHub Copilot 的开源挑战者。

file

Tabby 擅长协助 LLM 理解整个代码库,并能理解具有依赖关系的复杂代码。用简单的话说,Tabby 可以生成利用现有抽象的代码,并且可以在合理的上下文窗口和快速响应时间内完成此操作。

十月对于 Tabby 来说是个大月 - 他们前不久刚庆祝了 11k GitHub 星星,还获得了 320 万美元的融资。

Continue

file

Continue 是一个将 ChatGPT 引入到 VS Code 和 JetBrains 的扩展。

Continue 可以配合任何 LLM 使用,包括托管在你自己云上的本地模型。而且,如果你用 Copilot 或 ChatGPT,那 GitHub 和 OpenAI 会收集并学习数据,而 Continue 也会收集数据,但因为是你自己/组织部署的所以没有隐私泄漏的困扰,并可用于改进团队使用的 LLM。

file

Sweep

file

Sweep 可以看作是一个 AI 驱动的 junior 开发,可以把 bug 和功能需求直接转化为代码提交 PR 🧹。

它其实是个可以集成到 repo 里的 GitHub App,这还挺聪明的!如果是一个独立工具为给你 repo 生成 PR,那么肯定还是要拉到本地来测试,属于是给自己找事了(在这里给 GitHub 生态点个赞)。

file

Lastly

所以,你有没有用啥 AI 编程助手?还是就用 ChatGPT?

欢迎留言分享 🐹


💡 更多资讯,请关注 Bytebase 公号:Bytebase

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/125951.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【用python实现一个压缩文件的解压】

1.想用python实现一个压缩文件的解压 在Python中,可以使用内置的zipfile模块来解压缩文件。以下是一个简单的示例代码,用于解压缩一个zip文件: import zipfile# 指定要解压的zip文件路径 zip_path example.zip# 指定解压后的文件存放目录 …

Python中的Scrapy库

Python中的Scrapy库是一个高效的爬虫框架,用于创建和实现异步的网络爬虫。它提供了一个API来简化爬取网站数据的过程,从而节省开发人员的时间和精力。本篇博客文章将详细介绍Scrapy库的使用和API,并提供相应的代码注释,帮助读者更…

实现多平台兼容性:开发同城外卖小程序的技术策略

在移动互联网时代,外卖行业的快速崛起改变了人们点餐的方式。随着小程序的兴起,开发同城外卖小程序成为了许多企业的重要战略。然而,小程序的多平台兼容性成为了一项关键挑战。本文将探讨如何实现多平台兼容性,以开发高效且用户友…

Scrum master的职责

首先,Scrum master负责建立Scrum团队。同时Scrum master要帮助团队(甚至大到公司)中的每个成员理解Scrum理论和实践。 Scrum master还需要有很强的软技能,用于指导Scrum团队。Scrum master要对Scrum团队的成功负责任,…

保姆级安装Jdk,Tomact,Mysql在linux中并且部署项目

🌟在这里,我要推荐给大家我的专栏《Linux》。🎯🎯 🚀无论你是编程小白,还是有一定基础的程序员,这个专栏都能满足你的需求。我会用最简单易懂的语言,带你走进代码的世界,…

Ansible初认识

1、简介 Ansible是一个基于Python开发的配置管理和应用部署工具,现在也在自动化管理领域大放异彩。它融合了众多老牌运维工具的优点,Pubbet和Saltstack能实现的功能,Ansible基本上都可以实现。 Ansible能批量配置、部署、管理上千台主机。比…

【好书推荐】ChatGPT 驱动软件开发:AI 在软件研发全流程中的革新与实践

前言 计算机技术的发展和互联网的普及,使信息处理和传输变得更加高效,极大地改变了金融、商业、教育、娱乐等领域的运作方式。数据分析、人工智能和云计算等新兴技术,也在不断地影响和改变着各个行业。 如今,我们正在见证人工智能…

使用MobaXterm向linux窗口化传输文件

使用MobaXterm向linux窗口化传输文件 之前上大学的时候,经常是XSheel配合Xftp使用,Xftp可以窗口化的往linux服务器传输文件,但是有一个问题,就是Xftp是收费的。 后来工作之后师兄给推荐了一个免费的,又好用的类似于Xf…

JavaScript重难点整理

1. 数据类型: - 原始类型:数字、字符串、布尔值、null、undefined。 let num 10;let str "Hello";let bool true;let n null;let u undefined;- 引用类型:对象、数组、函数。 let obj { name: "John", age: 25 };l…

基于PyTorch的共享单车使用数量预测研究

收藏和点赞,您的关注是我创作的动力 文章目录 概要 一、预测模型的实现3.1数据的获取和预处理3.2划分数据集3.3构建神经网络 二、PyTorch框架三 原理2.1前馈神经网络2.1.1 BP神经网络 四 预测效果验证4.1小批量梯度下降4.2批量梯度下降4.3随机梯度下降 五 结 论目录…

信息安全与网络安全的关系

前言 说说信息安全与网络安全的关系 如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉【入门&进阶全套282G学习资源包免费分享!】 一、包含和被包含的关系 信息安全包括网络安全,信息安全还包括操作系统安全&…

12.2 一文读懂i2c-tools工具(i2cdetect、i2cdump、i2ctransfer)

本文主要内容: 1 i2c-tools介绍 2 安装i2c-tools工具 2.1命令行安装 2.2 源码编译安装 2.3 yocto安装 3 i2cdetect 详细示例讲解 4 i2cdump 详细示例讲解 5 i2ctransfer详细示例讲解 6 i2cget详细示例讲解 7 i2cset 详细示例讲解 一 i2c-tools介绍 简介 i2c-tools,主要用来…

NLP 快速入门

文章目录 前言NLP 历史回顾NLP任务语料的标注AI语料标注师岗位职责 TransformersHugging Face模型中文文本分类使用 NLTK 进行文本分类 参考链接开源NLP 前言 学习NLP,解决两个问题: 如何使用别人训练好的模型?如何基于别人的模型&#xff…

1. 一文快速学懂常用工具——Git(上)

本章讲解知识点 什么是Git?为什么要使用版本控制工具?版本控制工具的前世今生本专栏适合于软件开发刚入职的学生或人士,有一定的编程基础,帮助大家快速掌握工作中必会的工具和指令。本专栏针对面试题答案进行了优化,尽量做到好记、言简意赅。如专栏内容有错漏,欢迎在评论…

加速软件开发和交付的革命性方法-DevOps

“ 随着信息技术的快速发展,现代软件开发和交付已经经历了巨大的变革。DevOps(Development和Operations的结合)已经成为这一变革的关键推动力,让开发团队和运维团队之间的界限变得模糊,以加速软件的开发、测试和部署过…

算法刷题-二叉树

算法刷题-二叉树 199. 二叉树的右视图 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 思路 广度优先搜索,答案就是二叉树的最右侧的节点 遍历每层的时候&#xff…

K-means(K-均值)算法

K-means(k-均值,也记为kmeans)是聚类算法中的一种,由于其原理简单,可解释强,实现方便,收敛速度快,在数据挖掘、聚类分析、数据聚类、模式识别、金融风控、数据科学、智能营销和数据运…

Spring-cloud-openfeign拦截器RequestInterceptor接口

RequestInterceptor接口位于包io.github.openfeign-core下,使用Spring Cloud Feign的时候会自动依赖这个包 下面的代码会在每次调用Feign1的m1方法时,向HTTP头追加键值对武汉3:晴川历历汉阳树 FeignClient(value "feignA", url "XXX或…

SpringBoot整合自签名SSL证书,转变HTTPS安全访问(单向认证服务端)

前言 HTTP 具有相当优秀和方便的一面,然而 HTTP 并非只有好的一面,事物皆具两面性,它也是有不足之处的。例如: 通信使用明文(不加密),内容可能会被窃听。不验证通信方的身份,因此有可能会遭遇…

【Kubernetes 基本概念】Kubernetes 的架构和核心概念

目录 一、Kurbernetes1.1 简介1.2 为什么要用K8s?1.3 K8s的特性 二、Kurbernetes集群架构与组件三、Kurbernetes的核心组件3.1 Master组件3.1.1 Kube-apiserver3.1.2 Kube-controller-manager3.1.3 Kube-scheduler 3.2 配置存储中心——etcd3.3 Node组件3.3.1 Kubelet3.3.2 Ku…