2024-03-15

21 篇热帖

1. 手里有大量 GPT 额度欢迎白嫖
手里有大量 GPT 额度自己的镜像站用不完

因此搭建了中转站供开发者搭建自用和镜像站站长使用

注册和邀请均送 5 刀,后续充值价格最低刀 3 毛/刀,个人用白嫖赠送额度也可以

地址:justchat.top

有感兴趣的朋友留言账号或者用户名再送 10 刀
2. 大家有做过参加考试的噩梦吗?

RT ,有时候总是做噩梦梦到自己在参加考试,好多人都交卷了,自己的作文还没开始写,梦里很慌张很难受,这两天反复思考国内的教育是否正确,即便学到了很多东西,可是好多在工作中也都用不到,反而一些不好的东西伴随终生,考试都有阴影了。( ps 河北考生) 有时真想润出国,不想让孩子重蹈覆辙

3. 其实感觉果子的 27W 充电速率也够用了,快充的必要性似乎没那么大
我这么说可能又要被说自适应了。

不过从日常使用来看,用能喂饱 27W 充电速率的充电头给 iPhone 充电时,经常感觉手机发烫很严重,我这还是 iPhone 15 Plus ,机身较大散热较好的机型。如果此时还一边充一边微信视频,手机会烫的不行。我是习惯裸机使用的,很多用户给手机会戴各种套,发热恐怕只会更加严重。综上,我还是更习惯把手机插在电脑的 C 口上慢慢充满,几乎感受不到发热。

当然,充电时候应该会有温控芯片之类的手段,但以上述体感体验来讲,如果快充达到 65W 、100W ,发热程度有点不可想象,会不会没办法持续维持最高功率?安卓端很多高功率快充,不知道是通过何种技术手段解决该问题的?是否有研究表明这种高功率快充造成的发热对电池寿命的影响有多大呢?
4. 关于男女关系——上班路上所见有感

早上在地铁上看到一个女生在微信聊天。

最上面一条应该是昨天晚上发的,那个女生说「下次我约你」,对方就回了个「 ok 」。然后今天早上也是女方先开口问早安,男生只是回了一个表情包。

接着我看到女生换了个微信号,在和另一个人的聊天记录中翻了很长时间,最后也没翻到,然后是在聊天记录里面搜索关键词才找到的内容。她把那条内容复制出来,又换回原来的微信号,把内容粘贴进去之后想了想可能觉得不妥,于是把复制的内容删了,删了又打打了又删,换了好几遍措辞最后才小心翼翼的问出一句「我向你请教个事呗」

等了一会对方没回复,女生就切出去刷抖音了,这时候突然来了两条微信消息,我竟然和她一样有点紧张了。她赶快点开微信发现是别人发来的消息,我跟着也失落了一下。在她和别人聊天的过程中对方回消息了,回了个「你说」还是「可以」记不太清了。女生就赶紧切过去先和男生聊天,但是发的内容比之前复制的要多好多。

之前复制的事情可能一二十个字就说完了,但是她前前后后和男生说了三四句才表达完。

不管是女生反复删改要发的内容,还是看双方的聊天内容,都能明显感觉到这个女生是对男生有意思的,但是男生好像兴致不高。我好像没体会过女生非常主动的情况,看完真的挺感慨的,原来不是女生天生慢热或者不主动,只是对你没兴趣而已,她有兴趣的时候和和其他男生一样主动。

突然想起来上大学的时候我自己总结出来的一个道理,「人的精力是固定的,总是要发泄在某个地方。可能是看剧刷抖音,也可能是和朋友出门玩,如果你发现对方对你不上心,那 ta 就是在别的地方上心。如果 ta 最近没有发朋友圈,那可能是在发抖音/微博/小红书,或者是单纯的屏蔽了你」。

5. 邻居早上扰民怎么办?
OP 前端时间刚搬家,目前住的小区属于学区房。搬进来之后发现每天早上七点半到八点邻居家都有钢琴的声音,特别大无法正常休息。今早去上门沟通,抱着解决问题的心态,无奈是一个老阿姨带着孙子在这边,蛮横不讲道理。之前从来没发生过这种问题,早上打电话给物业,物业明说这个没办法管理。求各位大佬出言献策!!!
7. 想买个华强北手表谁来骂我两句

想花个 300 块钱买个华强北手表,期待有表盘,运动记录,健康监测,消息通知。 有买过的大哥么?我看视频里介绍的挺好的,好看,也有不少功能

8. 求助各位老哥学历提升问题

迫于同事都是高学历,自身学历低想要提升,前面报名了专升本的网络教育,奈何机构坑人,没有提前说学位需要考英语,就错过时间,没有拿到学位证,只有一个毕业证。 求助各位老哥,有没有继续提升学历的方法(不太难的)。求指条明路。

9. Windows 的分区设计早就开始朝着 Linux 的思路发展了,很多人根本不知道

Windows 的分区,感觉其实早就开始了以 C 盘 Home目录为中心,其他盘存储的架构了,到现在还有好多人以为电脑要分区,真的是一种陋习了

C:\user\xx\下面 Desktop 、Documents 、Pictures 、Videos 等等

但是微软也搞了坨屎,ProgramFiles 文件夹本来就设计的有问题,首先要区分 X86 ,其次 ProgramFiles 理论上是多用户共享的程序文件夹,然而 Home 下面并没有显著标明当前用户程序放在哪里,只有新程序安装时可能会归档到 Home\AppData\Local 下面。

系统权限也是一团乱麻

10. 小镇青年,选择考公回县城还是跳槽去大城市?

在家乡省会工作 2 年了,晋升无望,不知道下一步该去哪里

11. 人工智能(AI)井喷式发展下,未来“程序员”这个职业会不存在吗?

前两天,几位互联网大佬聊人工智能( AI )上了热搜,一些观点比较犀利,在软件行业掀起了大范围的热议,其中一大热点是:“程序员”这个职业会不会存在。去年就有惊人的观点:谷歌工程主管:程序员的职业生涯将在 3 年内被 AIGC 终结。

我先亮出自己的的观点:“程序员”这个职业会存在,未来人机结对编程是常态。也就是说,程序员会和基于大模型的编程助手/编程 Copilot 协同工作,以更高效的方式完成程序/软件的开发。见我的软件工程 3.0 宣言(附演讲 PPT )的第一句: alt 属性文本

其实,我 5 年前就写过一篇文章:未来两年:人机结对编程(MMPP)将成为现实。当时,我过于乐观,但也不算乐观:2020 年北京大学推出了 aiXCoder 2.0 (版本到了 2.0 ,说明产品相对成熟了,其工作始于 2013 年),可以完成代码补全、代码评审等,开始实现人机结对编程。

今天的大语言模型( LLM )是一个概率模型、一个不确定模型,我甚至说过(见:软件工程 3.0 实践之路(一)最后一段):因为 LLM 的不确定性,有幻觉/幻想,倒是不适合做编程助手,更适合帮我们在一些不确定事务(股票投资、风险管理等)上做决策、可以获得最大的赢率。LLM 也更适合参与我们的头脑风暴活动、文化创意、设计等活动,这时幻觉/幻象成了优点、有创造性,例如挖掘用户的需求、应用场景、海报生成、视频创作、音乐创作等。

今天,我们确实越来越多地将 LLM 应用于代码补全、代码生成、代码理解、代码解释等工作中(见:软件工程 3.0 实践之路(六):LLM 驱动编程,银弹快来了吗?),它也可以生成单元测试脚本、测试用例。但所有生成的结果都不能直接采用,需要人工 review 。如果你的能力弱,就无法判定结果对与错,review 的效果就不理想。如果你只懂英文和中文,而不懂计算机编程语言,那根本无法 review 。对,像其他同学说的,你还要懂操作系统、懂数据库、懂通信协议、懂架构、懂算法和数据结构......这些都是软件开发的基础。

但是否有可能:生成的代码不需要人工 review 呢?在某些情况下也是有可能的,我的设想是:

  • 事先分别构建独立的开发 LLM (更多是代码正例)、测试 LLM (语料更多是反例,如缺陷报告、测试脚本、测试运行日志等)、业务/需求 LLM 等。
  • 让 LLM 帮我们实现 BDD 那样的需求( GWT 格式,即需求足够明确),这个过程还是人机交互的,需要业务需求专家确认结果,确保结果是正确的(相对的,不是绝对的)。
  • 从基于 BDD 的需求出发,开发 LLM 生成产品代码,测试 LLM 生成测试代码,两者独立工作,相互博弈、相互验证(类似 AlphaZero ,之前也有微软的论文做了局部验证)。这种情况下,几乎不需要人工参与(但很有可能是少量参与),让 LLM 相互验证,确保结果运行正确、通过测试。
  • 业务/需求 LLM 会参与全过程来验证,包括针对运行的程序进行验证。

“程序员” 职业肯定会存在,但部分能力弱的程序员会受到很大的挑战,而能力越强的程序员越安全。今年年初谷歌首席商务官发布备忘录、宣布再次裁员,而这次被「毕业」的员工,多数都是被 AI 淘汰的。《 24 年技术招聘现状》显示,已经有 21%的程序员担心失业。而 IMF (国际货币基金组织)报告显示,AI 会影响全球 40%的岗位,但同时它对每个人来说也是一个巨大的机会。例如:

  • 谷歌广告中,开始集成进大量的生成式 AI 功能。
  • 谷歌的聊天机器人,可以帮人们浏览大量的广告产品。
  • 谷歌的某 AI 系统,可以根据广告购买者给出的预算和目标,自行制作图像和文本。
  • 过去,提供销售指导、创建艺术资产、决定文本和布局这些工作都是人类做的,但是现在,AI 完成起这类任务可以每秒做一千次。

不过,面对 AI 的冲击,绝大多数( 70%)的开发者认为,AI 辅助工具能够帮助他们更好地完成工作。尤其是在以下这几个方面:

  • 编程辅助、代码自动补全与生成,例如用 ChatGPT 、GitHub Copilot 、CodeArts Snap 等。
  • 学习与答疑,不懂的问题找大模型。
  • 文档润色和生成,需求文档润色、个人总结和测试报告生成等。

在这之中,有大约 67%的开发者表示,自己已经将 AI 作为工作的一部分了。所以,我们可能会说,** 你的能力越强越安全,同时,你必须拥抱 AI 、拥抱 LLM ,不会用 AI/LLM 工具的人会被熟练使用 AI/LLM 工具的同行所淘汰。**

  • 根据国内招聘网站统计数据(以下相同)显示,机器视觉的薪资差距最大——达到了 62.44%。其中,要求 AIGC 技能的机器视觉招聘平均年薪为 48.45 万,而无此要求只有 29.83 万元。
  • 售前技术支持、大客户销售和平面设计这三个职位,是否具有 AIGC 技能也将带来超过 50%的薪资差异。
  • 对于企业来说,在同等条件下,有 57.04%会优先考虑那些具备 AIGC 技能的候选人。
  • 被开聊次数最多的是注明具有 AIGC 技能的算法工程师,高达 15.72 次,比未注明的同等职能多 6.21 次。
  • 从行业分布来看,新发职位主要集中于互联网、计算机软件、人工智能三大行业,占比为 29.65%、12.7%、9.96%。好消息是:说明互联网/软件职位在增长,软件定义世界、数字化转型,会带来更多的互联网/软件职位。

鉴于此,我们要尽早着手学习使用 AIGC 工具,从而增强自己的职场竞争力和求职议价权。

原文作者:Test Ninja

12. 大佬们好, JWT 如何防止多端登录 ?

如题,现在登录,我使用了 JWT 机制,但是怎么防止一个用户,在多个设备上登录呢?

13. 有防蓝光但是看东西不泛黄的镜片吗?

如题,有没懂得老哥说两句,想换副眼镜了,之前一直戴防蓝光的带那种紫色膜的,但是看啥东西颜色都稍微有点泛黄,想问问有没有啥解决方法

14. 介于年久失修以及 Chrome 马上不能支持 v2 版本插件,所以重写了 Switchy Omega 的功能

Proxy Rock

https://chromewebstore.google.com/detail/proxy-rock/dkeknkogllphlkmcfdjllhpbpnmkmgea

为什么做这个项目

大家对 Switchy Omega 应该都不陌生,在上古时代代理生态还比较匮乏的时候此插件是为数不多用起来还不错的项目。此外,特别是做前端开发的小伙伴,在开发过程经常会用到其提供的转发功能来保可以用域名进行请求。即使是现在仍有大批的用户在使用该插件。

但该插件又不能说毫无槽点,GitHub issue 中也有不少用户进行反馈,如在浏览器扩展栏中点击小图标会出现弹出页面加载失败的情况,配置失败导致插件崩溃继而引发浏览器崩溃,加载资源失败等等,以及 10 年前的界面风格,上次更新距今也过去 4 年了。

所以,想着能不能对插件重构一下,其实正式的重构在今年春节的时候就开始了(比较巧的是 2 月份 Google 宣布 6 月份开始不支持 manifest v2 版本的插件),由于 Switchy Omega 是用 coffeescript 构建,加之项目本身的复杂度看起来还是有点难度的,所以基本上是从头进行开发了,以至于拖拖拉拉到了现在,但核心功能已经基本可用了。

目前支持的功能

核心功能其实均已经支持,具体如下。

模式配置

  • Proxy 模式,即 so ( Switchy Omega ) 中的 Proxy Profile ,此模式下配置好本地的代理服务,根据请求 schema 选择对应的协议。

  • Auto 模式,即 so 中 Switch Profile ,此模式下可以根据设置的 Host 规则路由到不同的 Proxy 中,也可以下载在线的 PAC 格式资源进行匹配后再转发。

  • Pac 模式,即 so 中 Pac Profile ,此模式下直接使用在线或者手动录入的 PAC 内容作为配置规则。建议熟悉 PAC 文件的同学使用。

规则切换

  • 插件栏中点击小图标,可将配置好的规则展现出来,点击即可进行切换,同样在配置页面可以选择是否在切换时进行刷新。

  • 另外,配置的规则会根据名字生成唯一的颜色标识,选中的配置所对应的颜色同样会在状态栏插件中体现出来

计划支持的功能

还有很多功能计划未来逐步添加,暂定每半个月一个版本的节奏。

  • 导入导出
  • 规则颜色可配
  • 深色模式,跟随系统
  • 点击小图标规则跳转配置页
  • 异常配置检测

最后

由于目前还在密集开发中,使用中有什么问题的话可随时到 https://github.com/proxy-rock/proxy-rock/issues 进行反馈。

感谢 Switch Omega 的作者给我们带来如此优秀的项目 :+1: 。

15. 在上班路上/食堂/电梯里遇到不太熟的同事,该怎么说怎么做才能不显得尴尬?

如题,首先排除「逃避」类的方法,此类方法我很熟😂,现在想找其他的解决法案

16. 选什么当开发机比较好?

需求是这样的想搞一台配置好一点的主机,主要是内存要高,CPU 好一点,不用显卡,因为就当 linux 的开发环境用,不需要图形化,作为开发机,跑跑服务,编译项目用。 已知由两种方案: 第一种是把家里的闲置主机当做服务器,但是涉及到内网穿透,需要让运营商开固定 ip ,有的地方不一定让开,还有就是家用宽带的带宽问题,功耗导致的电费等问题,所以这个方案被 pass 了。如果有知道怎么具体弄,还请不吝赐教,这个方案要是可行的话机子的选择范围就大了。 第二种是搞一台能达到上述要求的迷你主机,随身携带,去公司就带到公司,回家就带回家。基本两边都有另一台电脑,直接局域网远程这台开发机达到需求。这个方案的问题就是目前市面上的迷你主机研究下来像零刻,铭凡这种好像都或多或少有散热问题,会导致重启,掉驱动等问题,感觉不够稳定,intel 的 nuc 的话好像还比较稳定,但是性价比太低。还有就是好像工程机也能满足需求但是好像 cpu 和内存都挺小的,性价比也不高。有没有懂这块的给推荐一下合适的机子?

18. 差点猝死
记不起上次运动是什么时候了,今天下班打算骑个共享单车逛一逛,然后蹬上了一个 1-2 公里的连续陡坡。
上去后人就开始不对劲了,先是想吐浑身冒汗,身体发冷。
然后人晕眼睛发黑越来越严重,全身肌肉紧绷不能动弹,不仅四肢连肚子上的腹肌都能感觉到明显紧绷。
感觉人快要昏迷时想趁昏迷前打 120 但是手指都动不了了成了鸡爪状。最后坐着不知道过了多久肌肉缓过来了一点点,慢慢走丧尸步伐去便利店拿了瓶快乐水,全喝完好多了。
现在全身没有不适感,就是有点困,我这个情况要去医院看看么?
19. 🚫为了防止狗上沙发,写了一个浏览器实时识别目标功能📷

网页调用摄像头识别物体后做成行为

背景

家里有一条狗🐶,很喜欢乘人不备睡沙发🛋️,恰好最近刚搬家 + 狗迎来了掉毛期 不想让沙发上很多毛。所以希望能识别到狗,然后播放“gun 下去”的音频📣。

需求分析

  • 需要一个摄像头📷
    • 利用 chrome 浏览器可以调用手机摄像头,获取权限,然后利用 video 将摄像头的内容绘制到 video 上。
  • 通过摄像头实时识别画面中的狗🐶
    • 利用 tensorflow 和预训练的 COCO-SSD MobileNet V2 模型进行对象检测。
    • 将摄像头的视频流转化成视频帧图像传给模型进行识别
  • 录制一个音频
    • 识别到目标(狗)后播放音频📣
  • 需要部署在一个设备上
    • 找一个不用的旧手机📱,Android 系统
    • 安装 termux 来实现开启本地 http 服务🌐

技术要点

  1. 利用浏览器 API 调用手机摄像头,将视频流推给 video

    const stream = await navigator.mediaDevices.getUserMedia({
      // video: { facingMode: "environment" },  // 摄像头后置
      video: { facingMode: "user" },
    });
    
    const videoElement = document.getElementById("camera-stream");
    videoElement.srcObject = stream;
    
  2. 加载模型,实现识别

    let dogDetector;
    
    async function loadDogDetector() {
      // 加载预训练的 SSD MobileNet V2 模型
      const model = await cocoSsd.load();
      dogDetector = model; // 将加载好的模型赋值给 dogDetector 变量
    }
    
  3. 监听 video 的播放,将视频流转换成图像传入模型检测

    videoElement.addEventListener("play", async () => {
      requestAnimationFrame(processVideoFrame);
    });
    
    async function processVideoFrame() {
      if (!videoElement.paused && !videoElement.ended) {
        canvas.width = videoElement.videoWidth;
        canvas.height = videoElement.videoHeight;
        ctx.drawImage(videoElement, 0, 0, canvas.width, canvas.height);
    
        // 获取当前帧图像数据
        const imageData = ctx.getImageData(0, 0, canvas.width, canvas.height);
    
        // 对帧执行预测
        let predictionClasses = "";
        const predictions = await dogDetector.detect(imageData);
        // 处理预测结果,比如检查是否有狗被检测到
        for (const prediction of predictions) {
          predictionClasses += `${prediction.class}\n`; // 组装识别的物体名称
          if (prediction.class === "dog") {
            // 播放声音
            playDogBarkSound();
          }
        }
        nameContainer.innerText = predictionClasses.trim(); // 移除末尾的换行符
    
        requestAnimationFrame(processVideoFrame);
      }
    }
    
  4. 播放音频

    async function playDogBarkSound() {
      if (playing) return;
      playing = true;
      const audio = new Audio(dogBarkSound);
      audio.addEventListener("ended", () => {
        playing = false;
      });
      audio.volume = 0.5; // 调整音量大小
      await audio.play();
    }
    
  5. 手机开启本地 http 服务

    • 安装 termux
    • 安装 python3
    • 运行 python3 -m http.server 8000
  6. 将项目上传到 termux 的目录

    • 直接用 termux 打开文件
    • 访问 http://localhost:8000

项目代码(改为 html 文件后)

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Mobile Dog Detector</title>
    <script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@4.17.0/dist/tf.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/@tensorflow-models/coco-ssd@2.2.3/dist/coco-ssd.min.js"></script>
    <style>
      #camera-stream {
        width: 200px;
        height: auto;
      }
      #name {
        height: 200px;
        overflow-y: auto;
        font-family: Arial, sans-serif;
      }
    </style>
  </head>
  <body>
    <video id="camera-stream" autoplay playsinline></video>
    <div id="name" style="height: 200px"></div>

    <script>
      let playing = false;
      let dogDetector;

      async function loadDogDetector() {
        // 加载预训练的 SSD MobileNet V2 模型
        const model = await cocoSsd.load();
        dogDetector = model; // 将加载好的模型赋值给 dogDetector 变量
        console.log("dogDetector", dogDetector);
        startCamera();
      }
      // 调用函数加载模型
      loadDogDetector();

      async function startCamera() {
        const stream = await navigator.mediaDevices.getUserMedia({
          // video: { facingMode: "environment" },  // 摄像头后置
          video: { facingMode: "user" },
        });
        const nameContainer = document.getElementById("name");
        const videoElement = document.getElementById("camera-stream");
        videoElement.srcObject = stream;

        const canvas = document.createElement("canvas");
        const ctx = canvas.getContext("2d");

        videoElement.addEventListener("play", async () => {
          requestAnimationFrame(processVideoFrame);
        });
        async function processVideoFrame() {
          if (!videoElement.paused && !videoElement.ended) {
            canvas.width = videoElement.videoWidth;
            canvas.height = videoElement.videoHeight;
            ctx.drawImage(videoElement, 0, 0, canvas.width, canvas.height);

            const imageData = ctx.getImageData(
              0,
              0,
              canvas.width,
              canvas.height
            );

            let predictionClasses = "";
            const predictions = await dogDetector.detect(imageData);
            for (const prediction of predictions) {
              predictionClasses += `${prediction.class}\n`;
              if (prediction.class === "dog") {
                // 修改为检测到狗时播放声音
                playDogBarkSound();
              }
            }
            nameContainer.innerText = predictionClasses.trim();

            requestAnimationFrame(processVideoFrame);
          }
        }

        async function playDogBarkSound() {
          if (playing) return;
          playing = true;
          const audio = new Audio("./getout.mp3");
          audio.addEventListener("ended", () => {
            playing = false;
          });
          audio.volume = 0.5; // 调整音量大小
          await audio.play();
        }
      }
    </script>
  </body>
</html>

实现效果

效果很好👍,用旧手机开启摄像头后,检测到狗就播放声音了。

但是,家里夫人直接做了一个围栏晚上给狗圈起来了🚫

实现总结

该方案通过以下步骤实现了一个基于网页的实时物体检测系统,专门用于识别画面中的狗并播放特定音频以驱赶它离开沙发。具体实现过程包括以下几个核心部分:

  • 调用摄像头:

使用浏览器提供的 navigator.mediaDevices.getUserMedia API 获取用户授权后调用手机摄像头,并将视频流设置给 video 元素展示。

  • 加载物体检测模型:

使用 TensorFlow.js 和预训练的 COCO-SSD MobileNet V2 模型进行对象检测,加载模型后赋值给 dogDetector 变量。 处理视频流与图像识别:

监听 video 元素的播放事件,通过 requestAnimationFrame 循环逐帧处理视频。 将当前视频帧绘制到 canvas 上,然后从 canvas 中提取图像数据传入模型进行预测。 在模型返回的预测结果中,如果检测到“dog”,则触发播放音频函数。

  • 播放音频反馈:

定义一个异步函数 playDogBarkSound 来播放指定的音频文件,确保音频只在前一次播放结束后才开始新的播放。

  • 部署环境准备:

使用旧 Android 手机安装 Termux ,创建本地 HTTP 服务器运行项目代码。 上传项目文件至 Termux 目录下并通过访问 localhost:8000 启动应用。

通过以上技术整合,最终实现了在旧手机上部署一个能够实时检测画面中狗的网页应用,并在检测到狗时播放指定音频。

20. 一个来自中国创业者 L5 自主编程能力的探索

大家好,我是 ShowMeBug 的创始人亚飞,全栈工程师,连续创业者。今天非常高兴跟大家介绍一下,我们自主研发的、带有 L5 自主编程能力的 1024Code 云端开发平台和进展情况,目前我们已经启动了公测邀请。

1024Code 云端开发平台介绍视频: https://www.bilibili.com/video/BV1YF4m1c7rH/?share_source=copy_web&vd_source=9bb16af47f4ff115bffa964190f6fa4b

1024Code 的核心能力

1024Code 是采用 1024PaaS (全栈自研的云端编程环境)为核心,通用大模型为基座,花费了 10 多个月构建一套自主决策链 AI Agent (目前称为 AI 导师),提供了编程环境感知,代码编辑,Shell 、Console 的自阅读,运行与自主 Debug 。

简单来说,就是将 AI Agent 安装了手与脚,让其自主完成需求分析到编码调试的过程。

AgentINIDE

1024Code 尝试定义 AI 与人类编程交互的新方式

在当前阶段,1024Code 更相信人类的代码,所以 AI 在修改人类代码时需要人类确认,AI 在修改自己的代码时可以立刻生效。

得益于我们全栈自研的技术,我们的团队能够深度定义编辑器的内核,实现快编辑的能力,能够准确区分代码是来自 AI 生成还是人类编写。

AgentINIDE

具体能力介绍

从零开发一个小项目

1024Code 可以根据你的需求介绍,进行 MVP (最小可行版本)拆解需求,然后实现第一版 MVP 。它可以实现一个小型项目(至多不超过 10 个)多个文件的生成和编辑。

AgentINIDE

解决一个小的需求

你提出需求,1024Code 的 AI 导师会首先自行感悟编程环境(例如是哪个语言哪个框架),然后分析需求(如遇需求不清楚时会自行跟你互动),构建代码语义树,确定需要创建新的文件或者修改哪些文件,生成对应代码,利用 1024PaaS 提供的更新代码块能力进行逐字处理。最后尝试运行代码并检查控制台输出,完成本次需求实现。

自动 Debug 错误

发现控制台的错误时,它会自行开始 Debug 调试错误。读取报错信息并决定如何修复,然后读取对应代码进行修改。

与人类在代码归属上创新互动

AI 导师可以直接修改它自己之前完成的代码,修改人类代码需要一个确认与 diff 比较的过程。

1024Code 中 AI 导师的能力限制

AI 导师在 1024Code 中是一个完全拟人的存在,它有自己独立的交互界面,甚至人类可以直接观察它的每一步操作。由于当前大模型的智能还不足够,我们看一下能力上的限制。

AgentINIDE

决策能力上的限制

目前超出 10 个文件的较大项目表现会出现成功率大幅下降的情况。

在网页项目、命令行项目、Python 游戏外的项目,目前没有针对优化。

浏览器眼睛视觉还未添加

在更理想的情况下,AI 导师应该能主动识别浏览器网页上的界面错误,并进行修复,但这个依赖于现有大模型的多模态能力与 Token 成本,目前还未实现相关能力。

未来的展望

未来的编程世界将发生重大范式变化,云端编程+原生 AI 编程将彻底改变传统本地开发方式,就如同文档在线化置于本地编辑,Figma 置于 PS ,网盘置于本地 USB 存储。80% 的代码由 AI 完成,人类完成剩下的架构工作是接下来 AI 时代相当长时间持续的一种新的编程常态。

具体案例

同事跑了几个项目,大家可以点击视频链接了解:

  1. 尝试使用 1024Code 的 Agent 智能体功能修复 Chart.js 里一个 Bughttps://www.bilibili.com/video/BV1Lj421f7UK/?share_source=copy_web&vd_source=9bb16af47f4ff115bffa964190f6fa4b

  2. 使用 Agent 智能体功能补全&迭代音乐播放器项目代码https://www.bilibili.com/video/BV1uK421v74Z/?share_source=copy_web&vd_source=9bb16af47f4ff115bffa964190f6fa4b

  3. 国内也有 Devin 了?一句话需求生成 2048 游戏!https://www.bilibili.com/video/BV1m2421N7eN/?share_source=copy_web&vd_source=9bb16af47f4ff115bffa964190f6fa4b

我们已经发布邀请码公测

1024Code 目前已经启动了邀请码公测,大家可以通过朋友或者主动申请获取邀请码来体验和使用产品,目前整个产品完全免费,AI Agent 的体验使用是积分消耗模式。

AgentINIDE

如果你在商业、投资或大模型能力上想与 1024Code 合作可以直接加创始人微信号:lyfi2003

让我们一起打造下一代全新 L5 全自主编程新范式吧!

21. 真的感觉自己挺迷茫的 感觉废了 来指点迷津
从大学毕业后真的感受到一无是处 家人提供帮助去了培训班学了 java 本身是在武汉读大专计算机专业 今年学完出来找武汉工作 说是金三银四,培训班的尿性“包装” 让我体验了被拉黑的感觉。用真实的 面试都没有。好像没了冲劲。也许是我沉淀的不够。因为学历,我一直很自卑。家人总鼓励我 你还有一个大专学历 唉 迷茫到不知道怎么办了