logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

HITL:让人类随时叫停 AI,并且能优雅地继续

系列「企业级 AI Agent 实现拆解」第四篇。[上一篇](https://mp.weixin.qq.com/s/onjRibxU4CXHkeSfRHSEHw)讲了 ReAct 循环的主体实现,这篇看中断恢复这条路径怎么走通。

文章图片
#人工智能
ReAct 循环的 50 行 Go 实现,逐行拆解

系列「企业级 AI Agent 实现拆解」第三篇。上一篇讲了 Session 聚合根和状态机——状态怎么迁移、事件怎么发、终态怎么判。但状态机本身是静态的,谁在驱动这些迁移? 答案是 RunTurnHandler.Handle()——每一轮用户消息进来,它负责加载会话、组装上下文、把 ReAct 循环跑起来、然后落库收尾。

文章图片
#react.js#golang#javascript +2
Agent 的会话对象,为什么不能是一个普通 struct

本文介绍了企业级AI Agent系统中会话状态管理的实现方法。作者首先分享了第一版设计因直接暴露字段导致状态被随意修改的问题,进而重构为私有字段+状态机校验的模式。核心设计包括:1) 使用validTransitions表集中管理所有合法状态迁移;2) 区分新建会话和重建会话的构造函数;3) 将关键校验放在领域层确保安全性;4) 采用先记录后发布的领域事件模式。文章还分享了IsTerminal()

文章图片
一个 while 循环而已?—— 为什么我用 DDD 来构建企业级 AI Agent

本文探讨了企业级AI Agent平台的设计挑战与实现方案。文章指出,虽然简单的ReAct循环原型可以快速验证Agent功能,但无法满足企业生产环境的五大核心需求:多租户隔离、计费管理、安全拦截、审计追溯和中断恢复。通过领域驱动设计(DDD)分层架构,将复杂度分解到协议适配层、用例层、领域层和基础设施层,确保领域模型与外部依赖解耦。最终提出由10个限界上下文组成的完整架构方案,各服务独立部署,通过g

文章图片
#人工智能
8 张 RTX 5090 跑 Qwen3.6-27B:从装 vLLM 到压测调优的真实数据(含完整脚本)

维度数据短问答场景 QPS65(实测)一般对话场景 QPS32(实测)单实例峰值 token 吞吐2500 tokens/秒单字延迟(用户体感)18ms,流畅首字延迟 P99(短输出 200 并发)727 ms适合业务类型中等量级 API 服务、企业内部 AI 工具、对延迟敏感的实时应用不适合极高吞吐(千 QPS+ 的 C 端应用,需要集群)8 张 RTX 5090 用 4 张跑 Qwen3.6-

公司让我搭一套大模型,我用 8 张 RTX 5090 干了一天——踩了 7 个坑后才明白:自建 AI 不是花钱就能办的事

我的 DeepSeek-V4-Flash 模型权重 149GB 还躺在硬盘上,但已经确定**永远没法运行**——除非把 8 张 RTX 5090 全卖了,换 4 张 H100,再花 ¥80 万。原因:modelscope 命令行的 `--include "transformer/*"` 通配符**不递归**匹配深层文件。这次任务公司给我两周时间,看起来够,实际上**前两天就过去了**——大部分是我

#人工智能
公司让我搭一套大模型,我用 8 张 RTX 5090 干了一天——踩了 7 个坑后才明白:自建 AI 不是花钱就能办的事

我的 DeepSeek-V4-Flash 模型权重 149GB 还躺在硬盘上,但已经确定**永远没法运行**——除非把 8 张 RTX 5090 全卖了,换 4 张 H100,再花 ¥80 万。原因:modelscope 命令行的 `--include "transformer/*"` 通配符**不递归**匹配深层文件。这次任务公司给我两周时间,看起来够,实际上**前两天就过去了**——大部分是我

#人工智能
国密 sm2 算法在 php56 环境 thinkphp32 框架下的应用配置

国密算法 sm2 在 php56 环境 thinkphp32 框架下的应用配置(本人在 CentOS7 CentOS8 上面使用宝塔面板安装 php5.6 成功通过)

#php#开发语言
IMBoy项目的缓存机制:高效数据处理的秘诀

IMBoy项目的缓存机制是其高性能架构的关键部分之一。通过使用depcache和进程字典记忆化缓存,IMBoy能够提供快速的数据访问,同时保持系统的稳定性和可扩展性。无论是处理常规的数据检索还是管理复杂的依赖关系,IMBoy的缓存策略都能确保用户享受到流畅、高效的即时通讯体验。随着IMBoy项目的不断发展,其缓存机制也将继续演进,以满足不断增长的用户需求和技术挑战。

文章图片
#缓存
加入收藏js代码 兼容所有浏览器

我们介绍一个可兼容所有浏览器的加入收藏代码代码,大概原理是这样的我们根据获取用户navigator.userAgent.toLowerCase()信息来判断浏览器,根据浏览器是否支持加入收藏js命令,如果可以自动收藏否则就提示ctrl+D手动收藏了。 代码如下 function addFavorite2() {    var url = window

到底了