视野修炼-技术周刊第51期

笔者在GitHub开了个 discussion 🔥 技术&开源&文章推荐,欢迎读者推荐贡献内容或者知识渠道

欢迎来到第 51 期的【视野修炼 - 技术周刊】,下面是本期的精选内容简介

🔥强烈推荐

  1. 🍉 CEC-IDE
  2. 天工AI搜索

🔧开源工具&技术资讯

  1. Million(React 的 VDOM 替代品)推出自动模式。
  2. Rollup 计划切换解析器从 acorn 到 swc
  3. 为什么 TypeScript 不能正确处理 Object.keys()
  4. background-removal-js - 自动抠图 JS SDK

🤖AI工具&资讯

  1. GPT-3.5 Turbo 新增微调 API

​也推荐大家关注一下最后的推荐内容(周刊的主要内容来源渠道)

下面开始本期内容的介绍,预计阅读时间 8 分钟。

🔥强烈推荐

1. 🍉 CEC-IDE

本周技术圈的大瓜,对外宣传自研 IDE,实际上是 VS Code 的换皮

上线当天就被喷了,目前相关网站已停止访问,致歉声明来了

大方承认一下基于开源的也没啥,非要说完全自研(这不妥妥打脸)

2. 天工AI搜索

国内第一款AI搜索

自动对搜索内容进行总结,全程无广,不过使用需要登录

🔧开源工具&技术资讯

3. Million(React 的 VDOM 替代品)推出自动模式

使用 npm i million 让你的 React 项目「快达 70%」,支持 Next.js、RSC、Vite、Astro 等。

4. Rollup 计划切换解析器从 acorn 到 swc

方案是直接使用 swc 的 Rust 绑定,将 AST 转换为二进制格式,然后再作为(Array)Buffer 传递给 JavaScript这相比直接传 AST 的 JSON 格式会快很多。

相信在未来,当下流行的构建工具或多或少都会内置一些基于 Rust 实现的工具,在部分环节上提速

不过一般的项目,1分钟和30s差距不大,但是对于一些老项目(基于webpack的),多则20分钟,少则5-6分钟

在追求项目稳定的情况下,很难在底层工具链上做改造,目前基本还是拆子项目,或者换上高性能的构建机器

5. 为什么 TypeScript 不能正确处理 Object.keys()

本文阐述了在 TypeScript 中使用 Object.keys() 遍历对象时的一个报错和优雅的解决办法

下面是一个示例,相信使用 TS 的同学都有遇到过这个问题

笔者通常会将其设置为 any 来解决这个问题,但是这样会导致丢失类型信息

报错的原因是因为,在TS的定义在Object.keys 方法的定义如下

ts 复制代码
interface Object {
  keys(o: object): string[];
}

其返回内容是 string[],而咱们得对象属性是确定的,所以这里会报错

文章作者给了一个规避方法是将其as (keyof typeof T)[]any 优雅一点

ts 复制代码
const keys = Object.keys(options) as (keyof typeof options)[];
keys.forEach(key => {
  if (options[key] == null) {
    throw new Error(`Missing option ${key}`);
  }
});

当然这里可以提取出一个工具类型和工具方法,方便使用

ts 复制代码
type KeysOf<T> = (keyof T)[]

const keysOf = <T extends object>(obj: T) => Object.keys(obj) as KeysOf<T>

keysOf({ a: 1, b: 2 }).forEach((key) => {
  if (key === 'a') {
    console.log(key)
  }
})

6. background-removal-js - 自动抠图 JS SDK

直接通过浏览器实现自动抠图

笔者拿了一张AI生成的图,效果还是不错

🤖AI工具&资讯

7. GPT-3.5 Turbo 新增微调 API

GPT-3.5Tubo的微调现已推出,GPT-4的微调将于今年秋天推出。此更新使开发人员能够自定义更适合其用例的模型。

一些特定场景可以通过微调来提升模型的准确率,

😛趣图


篇幅有限,如果你还没看够,可移步后面的推荐渠道,继续游览,历史周刊(<20)移步博客

⭐️强力推荐关注

相关推荐
冬奇Lab42 分钟前
开源项目第175期:Buzz — Jack Dorsey 的 Block 用 Nostr 重新定义团队协作,AI Agent 拥有自己的加密身份
人工智能·开源·资讯
用户059540174461 小时前
把AI对话记忆存储测试从手工改成Playwright+pytest,覆盖率从20%提到96%,回归时间缩短90%
前端·css
kyriewen1 小时前
别再这样写TypeScript了——Code Review中最常见的8个反模式
前端·javascript·typescript
名字还没想好☜1 小时前
Next.js ‘use client‘ 到底加在哪:Server/Client Components 边界与常见报错
开发语言·前端·javascript·react·next.js
午安~婉2 小时前
GitHub Token/ GitHub Stats统计显示图异常
前端·github·vercel·github token
码云之上2 小时前
AI Agent 工程化总览篇:从 Prompt 到 Harness
前端·人工智能
2501_926978332 小时前
以说明书 DNA 为模板——完整 AGI 的结构图景
前端·人工智能·经验分享·笔记·ai写作
IT_陈寒2 小时前
Vite静态资源引用这个坑我踩得有点疼
前端·人工智能·后端
程序员黑豆3 小时前
鸿蒙应用开发:AttributeModifier 使用教程
前端·harmonyos
codeniu3 小时前
TRAE Work 实战 | 从"有个想法"到线上Demo,我全程只靠对话就完成了
前端·trae