Currently: UIUC MCS
Zhanbo ChenDocumenting technical insights from my learning journey, sharing practical experience in Java backend, Spring ecosystem, AI Agent, and more.
上次学到 RNN 的 BPTT,知道梯度沿时间反传时会连续相乘,也算出了 。但看到 gradient clipping 时,我发现自己还没有真正理解:梯度爆炸到底有什么问题,为什么要裁剪?
这次从这个问题出发,逐步理解 LSTM 和 GRU 的门控机制,最后把 BPTT 与 Optimizer 的分工接起来。最有收获的地方,是分清几组容易混淆的概念:记忆和输出、门值和参数、沿路径相乘和多路径相加。
上次把 Softmax、Cross-entropy 和一个 ReLU MLP 的前向、反向传播手算了一遍。这次继续问:如果输入是一句话,文字怎么变成数字?句子长度不一样、词序不一样,模型又怎么处理?
今天走通的主线是:token → embedding → RNN hidden state → 下一个词的预测 → loss → 沿时间反向传播。最需要停下来推的地方,是 embedding 梯度里的转置,以及为什么 RNN 的梯度传得越远可能越小。
上次我学到的是 Linear Regression、Gradient Descent 和 SGD。这次继续往下:如果预测的不是房价,而是正面、负面、中性三个类别,模型怎么输出?加上 hidden layer 以后,loss 又怎么影响前面的参数?
今天最有收获的是把公式拆成自己能算的步骤,尤其是交叉熵的梯度、反向传播里的转置,以及“算到隐藏层的梯度”和“更新参数”之间的区别。这篇笔记按我们实际提问和计算的顺序整理,后面再把完整公式放在一起。
CS546 从第二节课开始,我就感觉有些跟不上了。很多东西本科听过概念,但没有实际用过,课件一换成公式就开始头晕。
所以这次先停下来,用几个数字把训练过程算一遍。这篇记录的是我从“这个就是更新参数的意思吗”到能分清 batch、step、epoch 和 SGD 的过程,还没有进入多层神经网络。
本文以 ACL 2026 Findings 的综述论文 A Survey on Evaluation of LLM-based Agents 为主线,系统梳理 Agent Evaluation 的能力评测、应用型 Benchmark、通用 Agent、评测框架与 Gym-like Environment,并重点解释 Conversational Agent 的测试机制、Reference-based 与 Reference-free Trajectory Assessment、Human-in-the-loop,以及 backbone LLM 与 Agent Harness 的解耦评测。文章进一步从工程实践出发,讨论垂类 Research Agent 应如何组合确定性检查、LLM Judge、专家标注与现有 Eval 平台,以及企业如何通过 Golden Set、Regression Set、CI Gate 和线上监控建立持续评测闭环。
LlamaIndex 经常和 LangChain、LangGraph、smolagents 一起出现在 Agent 教程中,但它真正有辨识度的部分并不是 Agent 或 Multi-Agent,而是围绕私有数据建立的一整套 RAG 抽象:Document、Node、IngestionPipeline、VectorStoreIndex、Retriever、QueryEngine 与 ResponseSynthesizer。本文从一份 persona 数据集出发,完整拆解数据加载、分块、Embedding、向量存储、检索、回答合成与评估的链路,并进一步解释为什么 QueryEngine 还要包装成 Tool、什么时候 Agent 层属于过度设计、Workflow 又如何通过 Event 类型连接多个 Step。最后给出 LlamaIndex、LangGraph 与 smolagents 的定位对比,以及本地运行 Notebook 时遇到的典型问题。
继续阅读 Pi Coding Agent 的设计文章后,我发现作者反复强调的并不只是“功能少”,而是尽量不让 harness 拥有隐藏状态。Pi 保留最小 agent loop、事件流和工具协议,却把 todo、plan、MCP、后台进程与 sub-agent 等能力交给普通文件、CLI、tmux 和独立 session。本文沿着我阅读时提出的问题,梳理这种设计的收益、代价,以及它对自建 Agent 和 eval 的启发。
Pi 通过 pi-ai、pi-agent-core、pi-tui 和 pi-coding-agent 实现模型协议、Agent 编排、终端界面与 CLI 应用的分层。在多 Provider 支持上,Pi 使用兼容配置统一 OpenAI-compatible API 的字段、reasoning 和 usage 差异;Token 统计则以 Provider 实际返回的数据为准,因此只能做到 best effort。跨 Provider 切换时,Pi 会保留或降级转换 reasoning 等上下文,但无法保证私有签名和超长上下文无损迁移。此外,Pi 支持端到端中止流式请求,并通过结构化工具结果区分模型可见内容与 UI 专用数据,从而保持 Agent 核心的透明、精简与可扩展。
在学习 Hugging Face Agents Course Unit 2.1 时,我以为自己懂了 Tool 和 RAG,直到看到源码和 notebook 才发现好几处理解偏差。这篇笔记记录了从 @tool 装饰器到 BM25 稀疏检索的四个关键问题。
Typora中借助PicGo上传图片至Cloudflare受阻,本文通过正确拼接URL,上传图片并在本地正确输出。
在 Windows PowerShell 中为 Claude Code 设置快捷 alias c-d,并默认使用 --dangerously-skip-permissions 启动,减少重复输入与权限确认。