及时吃药
211 subscribers
8 photos
79 links
Download Telegram
Firefox Developer Edition V136.0b2 总算有一个能用的原生 vertical tabs 了
半年前就说要有了,结果一直都得手动改 config 才能 enable,而且当时效果极差
考虑到很多网站都会在左侧做一些导航功能,tab 放右边更合适一些
#周五发版必挂

本来想着没啥大改动,随手发了一个 pre-release,结果真的挂了…
挂在 docker export cache 上面 https://github.com/tensorchord/envd/issues/1974#issuecomment-2643216076

这时候先怀疑是最近 bump buildkit 导致的,搜 changelog 完全没看到相关的,看了下代码似乎也没相关的。

本地试了下用 docker 内置的 buildkit 一定挂,自己开一个 buildkit container 就正常了,怀疑是以前写的对接 moby builder 的代码有问题,查了半天啥都没发现。

开启 GPT 小黄鸭 debug 来整理思路。GPT先怀疑版本对不上,之后怀疑 builder 不支持 export cache to registry。我心想 GPT 也不行啊,不支持 export to s3 还能理解,registry 这么基本的功能还能不支持吗?

虽然但是,还是专门查了一下,嘿,还真不支持,打脸了 🤡 还得开启 containerd image store 才能支持
https://endler.dev/2019/tinysearch

用 XOR filter 做简单的搜索引擎,虽然有 false positive,但胜在简单、轻量,可以作为网站的一个小文件,不占服务器资源
SELECT * FROM your_table WHERE xmin = pg_current_xact_id()::xid;

#TIL filter rows inserted in the current transaction
1
https://github.com/tigerbeetle/tigerbeetle/blob/main/docs/internals/ARCHITECTURE.md

选 zig 而不是 rust 的主要原因是他们需要 static memory allocation,rust 提供的 safety 对他们的架构来说收益并不算大,很有意思的设计
https://modelcontextprotocol.io/introduction
来回看了好几遍,感觉核心还是 LLM (claude) decide which tool to use based on the description。
- 依赖 LLM 的能力和对应的支持
- LLM 行为的依据是 MCP 里面提供的 description
假如我有一个 LLM,能解析 OpenAPI,那是不是已经囊括了 MCP 的所有功能了?🧐是我理解有问题吗?
及时吃药
SELECT * FROM your_table WHERE xmin = pg_current_xact_id()::xid; #TIL filter rows inserted in the current transaction
https://github.com/tensorchord/vechord 里面用到了这个技巧。作用是在 transaction pipeline 里面,后续步骤 select 只会看到当前 transaction 里面 inserted rows,从而做到只处理当前 transaction 的数据,避免了使用 metadata 来 track 数据插入的进度。

不过这个项目的定位还不明确,从一开始的 design doc 就没有明确目标。总之肯定不是 langchain/llamaindex 之类的,也不像一个纯粹的 VectorChord SDK,里面还掺杂了一点 Python ORM 的意思,玩了一些 metaprogramming,甚至还提供了一个生成 HTTP service 的功能(我也不知道为什么
https://github.com/FedericoPonzi/Horust/pull/273
这个 PR 花了好大力气。一开始觉得有趣,想借此机会学习一下 cgroups 或者 eBPF,最后选了 cgroups 求稳妥。
本来以为 rust 就算 eBPF 生态不成熟,那都有几个 container runtime 了,起码 cgroups 没啥问题吧。没想到还真不行🤡
kata containers 自己 fork 了一个 cgroups-rs 但是年久失修,搜了一下发现他们自己都不用这个了。
youki 有一个 libcgroups,单独拆出来一个 crate,很好,只不过是给他们定制的,interface 很 container。没文档,没例子,甚至搜了一下发现几乎只有 youki 在用🤡
测试部分,我本来试了一下 testcontainers,结果 rust 版也是个残废🤡心累就先不加了。
结果也不完美,这个工具本意是想要在 containers 里面用作 supervisor,但是 containers 里面 cgroups 默认不给 write 权限(虽然我觉得 cgroups v2 默认给了也没啥安全隐患?我猜
podman 和 containerd 各有一些方案来做,只不过 docker 就得上 privileged 再加 cgroupns=host 才能用起来了🤡
再次遇到了诡异的环境问题,本地怎么跑 pytest 都会挂在一个新的 test case 上,debug 半天找不出来任何问题,随手 envd new -t uv && envd up,再跑测试就直接过了 🥲
remote 太久了,工作上交流很少,整个人精神状态都不好了。
为了缓解症状,最近开始给别人的开源项目 contribute,确实很有效果。
👍3🔥1
出门走走,测试一下手机长焦
👍1🥰1
https://www.bilibili.com/video/BV1tjdoY9EUk
耿同学还是在自己的舒适圈战斗力强。
至于马逆,默许自己的工作室给益生菌打广告,他自己说司马南清楚谁的钱最好骗才过去几天啊,这么快就被回旋镖打了
#TIL
type-c 看似至少物理插头是统一了对吧?然后今天发现小米鼠标 x1 只能用自带的线充电,其他 type-c 的线甚至卡不住,更充不了电
曾几何时也觉得自己是老司机了,可以玩转 Python 环境,直到我遇上了 uv 🤡
现在我是 pixi 粉丝了,大家来试试 pixi.sh
🥹 今天 bump version 之后测试挂了,因为上游 interface 有 breaking change,我一直以为是我的改动里面有 bug,来回看了好几遍都找不出问题,新增了一个测试还是挂了,但是我回退版本就没问题。
我有点不想 debug,因为这个项目涉及一个极其麻烦的算法实现,中间步骤太多了,还有一堆 random 矩阵。。
最后硬着头皮 build 了两份,freeze 所有 random seed,一个一个对比。。
然后发现上游对 Row 的减法实现成了加法 🤡
👍51