Build. Learn. Document. Repeat.
持续学习,持续实践,持续沉淀。

欢迎来到我的数字花园 🌱。

我习惯将学习、实践与思考沉淀为可复用的笔记,希望把零散的信息整理成系统化的知识,也希望它们能在未来的某一天再次帮助自己,或帮助正在阅读的你。

我相信知识不是一次性整理完成的文档,而是在学习、实践和复盘中不断生长的网络。

如果某篇文章帮助到了你,希望它也能成为你知识网络中的一个节点。

🕰️ 最近笔记

最近 10 篇查看全部
  1. 初识 Jev:让 AI 帮程序做判断

    AI / Agent

    Jev 是 TypeSafe AI 推出的一款模型,主要用来帮助程序做分类、打分和判断。你提供待分析的内容,提前定义问题和答案类型,它就返回程序可以直接使用的结果。例如,判断一条消息是不是退款申请、应该交给哪个团队、是否需要优先处理。

  2. Python 对象相等判断:从 JavaScript 理解 ==、!= 与 is

    Engineering / Python

    在 JavaScript 中,两个分别创建的对象,即使属性完全一样,a === b 也会得到 false。带着这个经验读 Python,下面的代码就容易让人困惑:

  3. Python 懒加载:初始化究竟在什么时候发生

    Engineering / Python

    一个搜索服务可能需要加载模型,但程序启动后,不一定马上有人搜索。如果创建服务时就加载模型,即使最后没有执行搜索,也已经付出了加载的时间和内存开销。

  4. 为什么更换 Embedding 模型后需要重建向量索引

    AI / Agent

    文档已经做成向量索引后,如果把查询时使用的 Embedding 模型换掉,可能出现两种情况:搜索报错,或者搜索没有报错,返回的内容却不相关。

  5. 用 LangChain 和 FAISS 为 Markdown 建立语义检索

    AI / Agent

    本文讲如何把一份 Markdown 做成可以用问题搜索的文档库:先生成 index.faiss 和 index.pkl,再加载这两个文件,找出与问题相关的原文。

  6. VS Code 联动调试 Flask 与 Celery

    Engineering / Python

    本文讲如何在 VS Code 中调试 Flask 接口和 Celery 后台任务:给代码设置断点,发送一次请求,让程序停下来,查看变量,再逐行执行。

  7. Flask API 使用真实 PostgreSQL 做隔离集成测试

    Engineering / Python

    接口测试,就是用程序发送请求,再检查接口有没有完成约定的操作。

  8. CSS Grid 两列布局中的 fr 与 minmax

    Engineering / HTML&CSS

    这段声明定义了两个显式列轨道:

  9. Python Generator 与 Flask SSE 流式响应

    Engineering / Python

    下面的函数统一处理普通响应和流式事件响应:

  10. Python Thread 线程基础

    Engineering / Python

    看到 threading.Thread 时,容易把它理解成“让函数去后台执行”。这个说法只描述了表面现象,没有解释后面的几个问题:为什么调用 start() 后输出顺序变了,为什么有时需要 join(),为什么多个线程修改同一个变量会出错,…


📝 关于这些笔记

这里的大部分内容都来自实际学习和开发过程。

为了方便长期维护,每篇笔记都会尽量按照统一的知识结构整理,例如:

类型说明
Theory概念讲解、原理分析、成因对策
Practice实践指南、实现方案、最佳实践
Snippet代码片段、实用函数
Reference学习笔记、语法参考
Tutorial上手教程、快速入门、搭建指南
Cheatsheet命令备忘、配置速查
Experience踩坑记录、FAQ、排查过程

希望每一篇笔记不仅能解决当前的问题,也能成为未来可以快速检索和复用的知识资产。


📖 知识导航

  • 🤖 AI 大模型、AI 应用开发以及相关技术实践。

  • 💻 Engineering 记录软件开发、编程实践与工程设计思考。

  • ☁️ Infrastructure 沉淀开发环境、部署流程与基础设施相关知识。

  • 🛠 Tools 分享提升效率的工具、配置与个人工作流。