Blog
Cyanide Latest posts 五月中旬,北方已经经历过 39 度的高温,再加上洛阳的牡丹差不多谢了,实在没什么特别的理由,只能说“顺路”去洛阳转一圈吧。 坐在高铁上,看着华北平原的雾霾,以及尚未褪去的沙尘,实在是有些压抑。好在接近洛阳之后空气慢慢变好,下车后发现湿度也还不错,起码不至于每天流鼻血了。 洛阳的地铁只有纵横两条线,能辐射的范围有限,出门基本靠打车,或者趁着清晨和傍晚的凉爽骑共享单车。 把行李放到酒店之后就中午了,酒店前台推荐了一家游客常去的餐厅,人实在是太多了,但我也懒得再顶着烈日找别的。打开菜单确实没太多想法,一个河南人进了一家河南餐馆,实在是不知道点什么,果然出门在外还是得靠 KFC 和麦当劳。 因为博物馆的门票只有第二天的,下午安排了最期待的龙门石窟,还想着顺便去白马寺看看热闹,就只好先忍着高温直奔白马寺了。…
Jun 29, 2025 · Unknown Recently, I've been working on a new approximate nearest neighbor search algorithm called RaBitQ . The author has already provided a C++ implementation that runs quite fast. I tried to rewrite it in Rust (yet another RiiR). But I found that my implementation is much slower than the original one. Here is how I improve the performance step by step.
Oct 12, 2024 · Unknown envd is a frontend of BuildKit . Just like the Dockerfile. It has been more than a year since I started working on this project. Since the features are relatively stable, I'd like to write a blog about my journey with envd .
Aug 18, 2023 · Unknown Develop machine learning applications inside the containers
Dec 17, 2022 · Unknown
Be careful to use multiprocessing in production.
Sep 29, 2021 · Unknown Lots of people are talking about MLOps recently. Continuous Integration (CI) and Continuous Delivery/Deployment (CD) are the basic requirements for MLOps. This post will focus on some details about CI/CD for data science.
Apr 13, 2021 · Unknown Why haven't you post any blogs for the past half year? In short, I'm too lazy.
Mar 30, 2021 · Unknown Resilient Distributed Datasets: A Fault-Tolerant Abstraction forIn-Memory Cluster Computing
Mar 1, 2021 · Unknown MapReduce: Simplified Data Processing on Large Clusters
Dec 25, 2020 · Unknown Yet another deep learning serving framework that is easy to use.
May 13, 2020 · Unknown There is no black magic, everything follows the rules.
Apr 22, 2020 · Unknown Rate limiter is used to constrain the request for a certain period, which can reduce the pressure of servers, prevent malicious attacks, offer more stable services.
Feb 20, 2020 · Unknown Define : a descriptor is an object attribute with "binding behavior", one whose attribute access has been overridden by methods in the descriptor protocal.
Jan 16, 2020 · Unknown SpecTree: Yet another tool to generate OpenAPI document and validate request & response with Python annotations.
Jan 7, 2020 · Unknown 划水摸鱼又一年。
Dec 30, 2019 · Unknown k8s is really complex...
Nov 27, 2019 · Unknown
useful command for systemd
Sep 27, 2019 · Unknown 最近在看一些 API 规范化的资料,鉴于没有很合适的,就自己写了两个 Python 的包,顺便记录下感想。
Sep 25, 2019 · Unknown NGINX Plus looks great :)
Jul 27, 2019 · Unknown Less(poor) is more(hard).
Jul 21, 2019 · Unknown 我并非故意要标榜极客是多么另类的群体,只不过当两个极客相遇并惺惺相惜,他们之间法生的很多事情确实有趣的很,至少对其他极客来讲。而这样的事情,放在普通人身上或许只会让人觉得奇怪吧。嗯,看起来还是比较另类的。
Jun 17, 2019 · Unknown We need documents for human, not for robots.
Jun 12, 2019 · Unknown 那个 996.icu 的项目也快一个月了,现在 star 增长不多了,估计不会突破 250k。我早就觉得有写点什么的必要了。
Apr 28, 2019 · Unknown 巫炤,他惩罚别人,也惩罚自己。他只是意难平。
Mar 16, 2019 · Unknown People will suffer a lot from bad design or bad code in software engineering. Today I'd like to share a number of the worst practices.
Mar 13, 2019 · Unknown Just type vimtutor in your terminal to learn the basic usage of Vim. Although I usually use VSCode for coding, sometimes you have to edit files in the server. Mastering the basic of Vim is necessary.
Feb 24, 2019 · Unknown 自杀式单身:形容一直单身又不主动扩展社交范围去认识新朋友,却每天幻想着能拥有爱情的行为。
Jan 19, 2019 · Unknown 很快就到年末了,对比之前的 2018 年的目标,来总结一下吧。
Dec 25, 2018 · Unknown
重构是不可能重构的,这辈子都不可能重构的…… 好吧,我自己写的垃圾代码我自己重构…… 什么!?你要我去修改别人的垃圾代码?!
Dec 8, 2018 · Unknown Notes of CS224n: Natural Language Processing with Deep Learning
Oct 5, 2018 · Unknown Notes of "36 strokes of recommended system"
Sep 14, 2018 · Unknown 文本分类是最经典的机器学习问题之一,像 anti-spam,情感分析,语义相似等,都是以文本分类为核心建立起来的。当我们能处理好文本分类问题的时候,往往都能很好解决这些问题。
Aug 24, 2018 · Unknown 各种工具、平台、格式泛滥成灾,每个打算动手写博客的人都要在上面浪费不少时间。是否要自己搭建?该选什么主题?要买什么域名?鉴于我已经在上面浪费了不少时间,就简单总结一下吧。
Aug 7, 2018 · Unknown 没文档或者文档太烂的项目是可怕的,完善易懂的文档是一个好项目的标配。 如何管理项目文档对于维护一个靠谱的项目是至关重要的。
Jul 26, 2018 · Unknown 做一个 T 型人才,或者说博学且有专长,这类说法在很多地方都能看到,我印象中最深刻的是在 Valve 的员工手册中,大概是因为一直都期待能有一家企业回应这种说法吧。
Jun 20, 2018 · Unknown 最近在做 query rewriting 的时候,需要做一个拼音转中文的功能,做着做着,就差不多快做成一个拼音输入法引擎了。
Jun 18, 2018 · Unknown 跟拼写检查器还是有点渊源的。想当初做数学建模的时候,就遇到过一次类似的问题,于是去网上搜到 Peter Norvig 的教程,写的非常好,当时看到短短二十行代码就能很好解决这个问题,实在是惊艳。而我也是从那个时候开始学习 Python 的。当然,以我初学者的水平要想一时间完全看懂他的代码是不太可能的,不过还是能理解大体的流程,做了一定修改后留作自用。
Jun 17, 2018 · Unknown 在信息检索系统中,TFIDF 和 BM25 函数都可以用来计算文档的相关度并进行排序。其中,TFIDF 也经常被用在自然语言处理中,BM25 则可以看做是 TFIDF 的进一步演化。在处理搜索字符串的时候,它们采用的都是 Bag-of-Word 方式,也就是说会忽略掉词的出现顺序,只考虑词出现与否和词频。
Mar 12, 2018 · Unknown 偶尔手痒了会撸一个 Python 的项目打包发布到 PyPI 上,方便以后安装使用。即使不是打算发布的,如果考虑把文档写在代码的注释里然后用 Sphinx 生成的,通常也是打包安装到本地,然后在一个地方集中生成文档,方便管理。
Mar 10, 2018 · Unknown 毫不客气地说,编码真的是 Python 使用者遇到的最多的问题之一。新手看了会崩溃,老手遇到会流泪(感叹以前踩过的坑)。
Feb 24, 2018 · Unknown 面具戴太久,就会长到脸上,再想揭下来,除非伤筋动骨扒皮。 ——鲁迅 这里的面具虽然指的不是游坦之的面具,不过这确实是个很符合上面这句话意思的例子。游坦之的面具是阿紫给他的枷锁,即使他后来忍痛揭下来,还会有无形的枷锁和满脸的伤疤。
Jan 27, 2018 · Unknown Deep Learning Applications in NLP, CV and RL etc.
Jan 23, 2018 · Unknown 目前的深度学习框架实在太多了,初学者难免不知道选哪个才好,是追求曝光率最高的 TensorFlow ,还是最 Geek 的 MXNet ,又或是最易用的 Keras ,又或者是最贴近 Python 编程思维的 Pytorch ?
Jan 15, 2018 · Unknown Star 对 GitHuber 来说还是很重要的,以至于淘宝都有代刷的业务了,就是不知道有没有发生过刷太多上了 Trending 的。 找人代刷毕竟太 low 了,我们还是要走别的路线,这样显得好像也是个正规军。
Jan 10, 2018 · Unknown 我们活着是为了什么? 这个哲学问题太难了,换个简单一点的。 怎么活着比较爽啊?
Jan 9, 2018 · Unknown 这篇当然不是 2018 第一天写的,毕竟这一年已经懒了太多了。写这篇的目的,无非就是总结一下自己的 2017,然后展望下自己的 2018 。
Jan 1, 2018 · Unknown Rust 是一门编译型系统编程语言。官方给出的定义是: Rust is a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety. 可以看出这是一门主打效率,安全和并发的语言。
Dec 22, 2017 · Unknown 时光飞逝,还没来得及好好享受,就已经大学毕业了。 回想这四年的时光,虽然多是无聊的日子,但多少也有一些值得怀念的记忆。
Dec 19, 2017 · Unknown 说到 Flask ,这是我接触的第一个后端架构,也基本是目前唯一一个比较熟悉的。 对于规范化,这当然是很有必要的,特别是你的项目越做越复杂,不断增加新功能的时候,就会发现如果一开始结构很差,基本就需要大规模重构了。而重构,又通常是说说而已,真正动手完全重构什么的是不存在的,这么丑的代码,就算是我自己写得,我也不想再看了。 所以呢,一开始就尽可能做得规范一点,这样以后看起来就很舒服了,进行修改也会变得相对简单,别人要接手也不会看吐了。
Nov 19, 2017 · Unknown Docker 这几年非常火,只不过对于我这种基本不接触业务的人而言,平时很少会用到 Docker,自己写项目愿意用 Python 的 virtualenv 就不错了。
Nov 18, 2017 · Unknown
← Prev ✦ Random Next → Visit ↗ Feed Kagi ↗