views

Recent Posts

从零开始的 Nonoka Agent 框架设计

> 这篇文章简单介绍一下前面 nonoka cli 文章中提到的自研 nonoka agent 框架的设计思路,这个框架也是经过了很多次推倒重来才初步完成的,在开发过程中也学到了很多东西,欢迎讨论。 最初想做 nonoka agent 框架是因为四月份看到 babyagi 项目和深入学了下装饰器的使用,想做一个类型安全、事件驱动、使用装饰器配置组装的 Agent...

基于 Vercel AI SDK 设计 Agent2OpenCode 协议

> 最近实现了一个使用 Opencode 作为 TUI 前端的 CLI 应用,之后会记录一下这期间的一些设计思路和实现细节。 和 Langchain、LlamaIndex 等框架不同,Vercel AI SDK 是一个**面向前端/UI的框架**,它解决了如何将大模型的输出优雅地在前端/UI中渲染出来的问题。 在 Vercel AI SDK 中,所有的模型...

DPO

DPO 是用来让模型和人类需要的偏好进行对齐的开发方法。在传统的 RLHF 中,我们需要用四个模型:Actor,Reference,Reward 与 Critic,这给显存带来和很大压力。而 DPO 跳过了“训练奖励模型”和“强化学习”这两个阶段,通过一个数学上的等价变换,直接**利用 Chosen(优) 和 Rejected(劣) 数据**对来更新模型。 首先先看最原始的...

ONNX 模型推理

在给一个 Chat Agent 做内容过滤的时候使用了 ONNX 做小模型推理,这里记录一下。 ONNX 是一个适合做静态任务推理的模型。比如内容过滤场景,模型只需要 forward 一次就出结果,对这种任务,ONNX 可以生成优化后的静态计算图。由于图是静态的, ONNX 可以在加载模型时就做好一系列的优化、加载模型和推理速度都快很多。 使用如下命令导入模型: ```bash pip...

Resouce Context 管理

之前的 Drive MCP 设计中提到了 Resource,这里记录一下在实际使用 Resource 过程中遇到的问题:在用户 Attach File 后,我们使用前面说的 MCP Client 获取 Resource,然后把上下文 attach 到 system prompt 中: ```ts private async resolveResourceUris( uris:...

Drive MCP 设计

在封装 Drive Agent 的 Tool 调用时想到了使用 MCP,因为 MCP 是统一的协议、可以让我们的 Tool 被内置 Agent 外的东西通过 MCP Client 访问。比如实现完成后在 Copilot 访问 Drive 内文件: . [alt text](drive-mcp-design-images/2026-03-05-09-11-42...

Agent 任务队列与消息发送设计

在前面搭建了最基本的 Agent 架构后,我们使用任务队列和 Redis Pub/Sub 来处理 Agent 的执行流程与消息发送。 使用任务队列和 Redis Pub/Sub 的具体方式如下: 1. 用户发送一个消息后,API 将任务入队然后返回 taskId,具体的完成交给 Worker。 2...

Drive Agent 设计

> 这是第一次设计这种比较完整的 Agent 系统并集成到实际应用中,因此记录一下实现 Google Drive Clone 的 Agent 部分的设计。 > LLM 调用直接使用 URL fetch 访问 Deepseek API,并且全部未使用 Agent 框架、直接手搓实现,之后可能会用框架重构一下。 Agent 包含的模块和交互流程如下: ```mermaid graph TD...

OnlyOffice 编辑器实现记录

> 在一个项目中引入了 OnlyOffice 作为 office 编辑器,这里记录一下实现过程和一些配置上的坑。 ```mermaid graph TD subgraph Frontend[前端] direction TB A[React App] --> A1[浏览器打开<br>OnlyOffice 编辑器] end subgraph Backend[后端] direction TB...