Star History 九月开源精选 |开源 GitHub Copilot 替代
虽然大火了近一年,但是截至目前 AI 唯一破圈的场景是帮助写代码(谷歌云旗下的 DORA 年度报告也给 AI 泼了盆冷水)。不过对于软件开发来说,生成式人工智能绝对已经是新的标配。
本期 Star History 收集了一些开源 GitHub Copilot 替代品(不免费,也不开源),AI 编程助手来解放你的生产力 🏋️。
Cody

Cody 是 Sourcegraph 开源的 AI 编程助手,可作为 VS Code 或 JetBrains 扩展使用。Cody 由 Sourcegraph 的 code graph 驱动,所以会对整个代码库有所了解。
除了基于 AI 的代码补全、编写单元测试、生成文档注释、总结代码等常见功能外,Cody 还有一个聊天界面,你可以问他相关问题或者要求它执行某些操作。

Cursor

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 原生一点)。

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

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

Tabby 擅长协助 LLM 理解整个代码库,并能理解具有依赖关系的复杂代码。用简单的话说,Tabby 可以生成利用现有抽象的代码,并且可以在合理的上下文窗口和快速响应时间内完成此操作。
十月对于 Tabby 来说是个大月 - 他们前不久刚庆祝了 11k GitHub 星星,还获得了 320 万美元的融资。
Continue

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

Sweep

Sweep 可以看作是一个 AI 驱动的 junior 开发,可以把 bug 和功能需求直接转化为代码提交 PR 🧹。
它其实是个可以集成到 repo 里的 GitHub App,这还挺聪明的!如果是一个独立工具为给你 repo 生成 PR,那么肯定还是要拉到本地来测试,属于是给自己找事了(在这里给 GitHub 生态点个赞)。

Lastly
所以,你有没有用啥 AI 编程助手?还是就用 ChatGPT?
欢迎留言分享 🐹
💡 更多资讯,请关注 Bytebase 公号:Bytebase
相关文章:
Star History 九月开源精选 |开源 GitHub Copilot 替代
虽然大火了近一年,但是截至目前 AI 唯一破圈的场景是帮助写代码(谷歌云旗下的 DORA 年度报告也给 AI 泼了盆冷水)。不过对于软件开发来说,生成式人工智能绝对已经是新的标配。 本期 Star History 收集了一些开源 GitHub Copilot …...
【Rabbit MQ】Rabbit MQ 消息的可靠性 —— 生产者和消费者消息的确认,消息的持久化以及消费失败的重试机制
文章目录 前言:消息的可靠性问题一、生产者消息的确认1.1 生产者确认机制1.2 实现生产者消息的确认1.3 验证生产者消息的确认 二、消息的持久化2.1 演示消息的丢失2.2 声明持久化的交换机和队列2.3 发送持久化的消息 三、消费者消息的确认3.1 配置消费者消息确认3.2…...
C++设计模式_25_Interpreter 解析器
Interpreter 解析器被归为“领域规则”模式。Interpreter模式比较适合简单的文法表示,应用场景是比较有限的,解决问题的思路和场景都是一样的。 文章目录 1. “领域规则”模式1.1 典型模式2. 动机( Motivation)3. 代码演示Interpreter 解析器模式4. 模式定义5. 结构( Structu…...
能源化工过程-故障诊断数据集初探-田纳西-伊斯曼过程数据集
1. 田纳西-伊斯曼过程(TE)数据集简介 整个TE数据集由训练集和测试集构成,TE集中的数据由22次不同的仿真运行数据构成,TE集中每个样本都有52个观测变量。d00.dat至d21.dat为训练集样本,d00_te.dat至d21_te.dat为测试集样本。d00.dat和d00_te.dat为正常工况下的样本。d00.d…...
【Linux】安装配置解决CentosMobaXterm的使用及Linux常用命令以及命令模式
目录 Centos的介绍 centos安装配置&MobaXterm 创建 安装 编辑 配置 编辑 MobaXterm使用 Linux常用命令&模式 常用命令 vi或vim编辑器 三种模式 命令模式 编辑模式 末行模式 拍照备份 Centos的介绍 CentOS(Community Enterprise Op…...
一台服务器安装两个mysql、重置数据库用于测试使用
文章目录 一、切数据库数据存储文件夹已经存在数据库数据文件夹新建数据库数据文件夹 二、安装第二个mysql安装新数据库初始化数据库数据启动数据库关闭数据库 三、mysqld_multi单机多实例部署参考文档 一、切数据库数据存储文件夹 这个方法可以让你不用安装新的数据库&#x…...
JS动态转盘可手动设置份数与概率(详细介绍)
这个案例是我老师布置的一项作业,老师已详细讲解,本人分享给大家,详细为你们介绍如何实现。 我们转盘使用线段来实现 <!DOCTYPE html> <html> <head><meta charset"utf-8"><title></title>&l…...
在k8s中,etcd有什么作用?
在Kubernetes(K8s)中,etcd 是一个关键的组件,它扮演着集群状态存储的角色,具有以下作用: 分布式键值存储:etcd 是一个分布式键值存储系统,用于存储整个 Kubernetes 集群的配置信息、…...
conda配置虚拟环境相关记录
#教程 创建虚拟环境 创建 conda create --name yourEnv python3.7.5--name:也可以缩写为-n,【yourEnv】是新创建的虚拟环境的名字,创建完,可以装anaconda的目录下找到envs/yourEnv 目录python3.7.5:是python的版本号…...
数据库的本质永远都不会改变基础语句(第二十二课)
JAVA与Mysql._java数据库和mysql_真正的醒悟的博客-CSDN博客...
Object转List<>,转List<Map<>>
这样就不会局限在转换到List<Map<String,Object>>这一种类型上了.可以转换成List<Map<String,V>>上等,进行泛型转换虽然多了一个参数,但是可以重载啊注: 感觉field.get(key) 这里处理的不是很好,如果有更好的办法可以留言 public static <K, V> …...
React使用富文本CKEditor 5,上传图片并可设置大小
上传图片 基础使用(标题、粗体、斜体、超链接、缩进段落、有序无序、上传图片) 官网查看:https://ckeditor.com/docs/ckeditor5/latest/installation/integrations/react.html 安装依赖 npm install --save ckeditor/ckeditor5-react cked…...
【工具使用】批量修改文件夹的时间操作
一,简介 在工作过程中,有时需要修改文件夹的时间,本文分别介绍如何使用PowerShell修改文件夹的时间为指定时间或者当前时间。 二,操作步骤 请注意,在运行任何更改文件和文件夹时间的命令之前,请确保你有…...
Android Snackbar
1.Snackbar Snackbar是Material Design中的一个控件,用来代替Toast。Snackbar是一个类似Toast的快速弹出消息提示的控件。Snackbar在显示上比Toast丰富,而且提供了用户交互的接口。 ①默认情况下,Snackbar显示在屏幕底部,它出现…...
详解API接口如何安全的传输数据(内附商品详情API接口接入方式)
概述 API接口的安全传输是确保数据在API请求和响应之间的传输过程中不被截获、篡改或泄露的重要步骤。以下是一些用于增强API接口安全传输的常见技术和最佳实践: 使用HTTPS:使用HTTPS协议而不是HTTP,以确保数据在传输过程中的安全性。HTTPS使…...
网工内推 | 大专以上,福利待遇好,IE认证优先(云厂商)
01 主动脉科技有限公司 招聘岗位:网络工程师 职责描述: 1.负责云计算,IDC,BGP网络,通过团队协作,构建云业务后台技术支持服务体系。 2.通过工单、其他通讯工具等线上方式完成对客户的实施售后支持&#x…...
Python time strptime()和strftime()
1 strptime()方法 根据指定的格式把一个时间字符串解析为时间元组 重要的时间日期格式化符号 %y 两位数的年份表示(00-99) %Y 四位数的年份表示(000-9999) %m 月份(01-12) %d 月内中的一天(0-…...
是谁家班主任还不知道 怎么发布期中成绩啊。
你知道吗?居然还有班主任不知道怎么发布期中成绩! 发布成绩并不是一件难事,只需几个步骤,就能轻松搞定! 给大家讲一下成绩查询是什么。成绩查询是指学生通过一定的方式,如输入学号、姓名等,在指…...
损失函数(Loss Function)一文详解-聚类问题常见损失函数Python代码实现+计算原理解析
损失函数(Loss Function)一文详解-聚类问题常见损失函数Python代码实现计算原理解析 前言 损失函数无疑是机器学习和深度学习效果验证的核心检验功能,用于评估模型预测值与实际值之间的差异。我们学习机器学习和深度学习或多或少都接触到了损失函数,但…...
测试用例设计方法 —— 场景法详解
场景法是通过运用场景来对系统的功能点或业务流程的描述,从而提高测试效果的一种方法。 场景法一般包含基本流和备用流,从一个流程开始,通过描述经过的路径来确定的过程,经过遍历所有的基本流和备用流来完成整个场景。 场景主要…...
网络编程(Modbus进阶)
思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...
vue3 字体颜色设置的多种方式
在Vue 3中设置字体颜色可以通过多种方式实现,这取决于你是想在组件内部直接设置,还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法: 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...
(二)原型模式
原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...
MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...
新能源汽车智慧充电桩管理方案:新能源充电桩散热问题及消防安全监管方案
随着新能源汽车的快速普及,充电桩作为核心配套设施,其安全性与可靠性备受关注。然而,在高温、高负荷运行环境下,充电桩的散热问题与消防安全隐患日益凸显,成为制约行业发展的关键瓶颈。 如何通过智慧化管理手段优化散…...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...
PAN/FPN
import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...
push [特殊字符] present
push 🆚 present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中,push 和 present 是两种不同的视图控制器切换方式,它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...
C#学习第29天:表达式树(Expression Trees)
目录 什么是表达式树? 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持: 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...
