程云来 / 杭州

在这里,
把好奇心做成东西。

写代码,画架构,做实验。
记录那些从“为什么”走到“原来如此”的时刻。

AI 与智能体计算机视觉创意编程
思考 · 记录 · 构建往下翻,还有新的发现

小册

成体系的连载,一章一章往下写。

全部小册

RSS 订阅入门

4 章2026年9月28日

从一份给阅读器看的更新列表出发,讲清 guid、条件请求、XML 转义与生成方式,最后落在本站订阅地址的四处真实坑位上。

未开始

Spring 的编程思想

6 章2026年9月1日

从依赖注入到容器、代理、模板和自动配置,沿着一条订单流程理解 Spring 背后的编程思想。

未开始

LangGraph 工程实践

8 章 · 3 篇2026年8月24日

从状态图的最小模型开始,走过持久化、可观测与前后端协议,建立一条可暂停、可恢复、可解释的长流程。

未开始

小记

一些问题,一些实验,还有沿途的发现。

全部小记
AI 工程

告诉模型输出 JSON,就一定能得到正确的 JSON 吗?

从 A2UI 的一个疑问出发,分清模型训练、提示词、约束解码和应用校验各自负责什么,以及结构化输出能保证到哪一步。

打开小记
Agent

Agent 应用中的界面决策层:让后端只算数据、前端只管渲染

把「这批数据该长什么样」从业务推理里拆出来,交给一层只做翻译的模型;用组件目录约束它只能用你已有的组件,再经 SSE 把描述流式送到前端查表渲染。讨论目录怎么产生、渲染如何才算稳定,以及这条路线在什么情况下不该用。

打开小记
DSL

DSL 决定表达什么,YACC 决定怎样读懂

从一条设备告警规则出发,区分 DSL、Lexer、YACC、AST 与执行后端,用可运行的 Bison 实验观察 token、shift/reduce、语法冲突和语义边界。

打开小记
A2A

A2A 不只是思想:从 Agent 互操作到一条可运行协议

区分宽泛的 Agent-to-Agent 思想与 Linux Foundation 的 Agent2Agent 协议,拆开 Agent Card、Message、Task、Artifact 和三种绑定,并用一个可运行的多轮任务说明如何落地与何时不该使用。

打开小记
AST

AST 不只是前端工具:把一条设备规则变成可检查的程序

从一条工业设备告警规则出发,区分文本、CST、AST 与 IR,用 Python 标准库实现解析、语义收窄、内存执行和 SQL 编译,并说明这套思想何时值得采用。

打开小记
LangGraph

LangGraph 的状态如何延续:Checkpointer 原理与业务 ID 设计

从通道、版本和检查点恢复机制出发,理解 thread_id 在业务中的位置;用重试、重新生成和工作流分支,推导对话、消息、命令、运行与请求 ID 的设计和生成方式。

打开小记
Python

元编程的价值与代价:一处规则,多个函数生效

围绕给计算器统一加日志这一件事,理解为什么使用元编程、函数包装如何工作、需要守住哪些约定,以及何时收益值得付出代价。

打开小记
MCP

MCP 是什么:让 AI 连接工具之前,先看懂这条协议

从一个 AI 助手无法访问业务数据的现场出发,拆开 MCP 的 Host、Client、Server、Tools、Resources 和 Prompts,再用一次完整调用解释它与函数调用、Agent、REST API 的区别。

打开小记
Code Lab

浏览器里的可运行代码:从 Python 落地到多语言架构

从浏览器中的运行按钮出发,先解释代码运行器的四个阶段,再用 Python、Pyodide、Web Worker 和独立仓库完成一条可复现的实现路径。

打开小记