- 博客(71)
- 收藏
- 关注
原创 supervisor和orchestrator区别
Orchestrator-Workers 和 SupervisorOrchestrator-Workers 和 Supervisor 确实非常相似,它们都属于中心化的 Agent 协作架构。甚至在很多实际项目中,两者的实现可以完全相同。注意:这不是严格的行业分类边界。Supervisor 也可以负责任务拆解,Orchestrator 也可以负责动态路由。两者经常组合成同一个系统。
2026-11-06 15:29:37
187
原创 AgenticAI设计范式
Agentic AI(自主智能体 AI)是一种以目标为导向,由 AI 动态决策执行步骤、调用工具、感知环境反馈,并根据执行结果调整策略的系统设计范式。它不是某一个框架,也不是某一种 Multi-Agent 编排模式,而是一套关于如何赋予 AI 有边界的自主执行能力的设计思想。结合 Anthropic、Microsoft 和 LangGraph 的架构实践,我将 Agentic AI 总结为:一个核心闭环、六项设计能力、七类常见执行模式,以及一套生产级系统架构。
2026-11-06 15:25:34
226
原创 Python Agent 短期记忆设计:从对话历史到 LangGraph Checkpointer
State 用于描述 Agent 在执行过程中可以读取和更新的数据。当节点执行时,可以读取当前状态并返回需要更新的字段。LangGraph 会根据字段对应的更新规则合并状态。Python Agent 的短期记忆不只是保存历史聊天记录,而是围绕当前会话维护完整的上下文和执行状态。在 LangGraph 中,可以使用 State 描述当前状态,使用thread_id标识会话,并通过 Checkpointer 保存和恢复图执行状态。
2026-10-16 17:14:08
221
原创 RAG中文本块内容指纹SHA-256
在 RAG(检索增强生成)系统的(Incremental Re-indexing / Incremental Build)流程中,。它的核心作用是。
2026-09-22 10:09:30
151
原创 python和golang向量化embedding对比
Python:生态自带pytorch,LangChain直接内置本地Embedding,一行代码自动下载模型;Go/Eino:Go缺少原生transformer推理库,官方组件默认封装HTTP模型服务,示例都是填API Key;本地Embedding需要单独部署Ollama/TEI服务,再通过OpenAI兼容接口接入Eino。
2026-09-21 09:37:19
178
原创 一篇文章搞懂python的三种魔术方法、私有方法、名称改写下划线设计
前后双下划线是Python预留的特殊标记,代表这是语言内置钩子函数,由解释器自动调用,不是普通自定义方法。要不要我给你列一份最常用的魔术方法清单,附带触发场景?
2026-09-20 11:07:08
139
原创 GoogleADK、OpenAI Agents SDK、LangChain、Langgraph你分清了吗?
这三者的定位有本质区别。。可以用一个比喻来理解:OpenAI Agents SDK 像一套,帮你快速搭一个标准的房子;LangChain 像一个,里面有盖各种房子所需的所有材料;LangGraph 则像一套,能让你设计并精确控制带有复杂回廊和楼层的大楼。
2026-09-11 11:34:49
118
原创 全网最全面python最新教程(持续更新-手搓版)
元组(tuple)与列表类似,不同之处在于元组的元素不能修改。print输出默认是换行的,如果要实现不换行需要在变量末尾加上end=“”如果需要有序字典的特性,直接使用普通*注意:go和python中的string类型都是不可变的。编码,所有字符串都是 unicode 字符串。Python3 源码文件以。里,元素之间用逗号隔开。指定python标识符。创建一个空集合必须用。创建的是一个空字典。
2026-08-29 14:52:25
223
原创 LLM生成参数:Top-K、Top-P、Temperature
大模型生成文本的方式和参数主要有以下几种:• Top-K:限制候选词数量,使生成内容集中。• Top-P:控制候选词累积概率,确保合理的候选词动态加入。•:调整生成的随机性,控制生成风格的严谨或随意。•:控制生成的回复中最多可以包含多少个标记(tokens),直接影响生成文本的长度。不同参数组合可以让模型生成出更符合特定需求的内容。
2026-08-22 13:42:17
185
原创 python沙箱和docker沙箱你选对了吗?
Python 沙箱和 Docker 沙箱执行的是同一件事),区别只是隔离壳厚度:薄壳管超时和输出大小,厚壳管文件、网络、资源、权限。不是"套一层"的关系,而是同一执行方式的两档隔离强度,接口抽象好就可以随时换档。选型看代码可信度:单租户、脚本输入服务端可控、纯标准库——Python 沙箱一劳永逸;多租户、开放脚本上传——Docker 沙箱是底线。Docker 沙箱防的是不可信的代码,Python 沙箱防的是失控的进程——先想清楚你防的是哪种,再决定用哪档。
2026-08-10 16:29:32
233
原创 搞懂这几点,让你的RAG检索增强生成更完美。
本文提出了一种高效的RAG系统数据库设计方案,采用三层级结构:知识库表(顶层容器)、知识条目表(文档元数据)和切片表(检索单元)。核心思路是将向量检索与传统关系型数据库解耦,同时保持关联。 方案包含三个核心表: 知识库表(knowledge_base):存储租户隔离和RAG配置参数 知识条目表(knowledge_entry):记录文档元数据、解析状态和统计信息 切片表(knowledge_chunk):保存文本片段、向量ID和上下文关系 关键设计特点: 通过冗余kb_id字段优化查询性能 提供prev/n
2026-07-25 21:35:41
256
原创 RAG优化:17中RAG优化方案,那种才是最佳选择?
缺陷:模型因上下文丢失产生严重幻觉,难以实现精细推理缺点:切块太小,刹车纹不过大,很多跨段落的信息会丢失。
2026-07-18 18:10:22
242
原创 Redis&ES——Retriever的抽象实现
文章摘要 Eino框架将检索功能抽象为统一的Retriever接口,屏蔽底层实现差异,支持多种数据库(如Elasticsearch、Redis、Milvus等)作为检索后端。Elasticsearch可通过BM25、向量搜索或混合检索模式实现语义检索;Redis需依赖Redis Stack/RediSearch模块才能支持全文和向量检索。该抽象采用依赖倒置原则,使Chain/Agent无需感知具体数据库,仅通过Retriever接口交互。实际应用中,建议采用"ES+向量库"的混合检索架构(BM25+向量+R
2026-07-16 09:29:37
332
原创 A2A 在 Eino 框架中的完整应用解析
Eino 的 A2A 分为本地 AgentAsTool 轻量协作远程标准 A2A 跨服务通信两套成熟方案,覆盖从小应用到企业分布式多智能体全场景;依托 Graph/Workflow 编排、统一消息 schema、流式事件、Checkpoint 会话能力,解决多 Agent 通信、上下文、调度、可观测四大工程痛点;内部业务大规模落地验证,是 Go 生态下生产级多智能体 A2A 协作主流实现方案,兼顾开发效率与云原生高可用。
2026-07-04 22:23:58
324
原创 nginx反向代理+docker容器化部署
服务器环境:阿里云 ECS(低配),已预装 Docker已预部署中间件:mysql8.0、redis6.2、minio、nginx-container域名:wzx.glaty.cn。
2026-06-17 22:18:56
227
原创 实时通信选型指南:WebSocket vs SSE,到底哪个才是你的最佳解?
简单来说WebSocket和SSE(Server-sent Events)都是为了解决“服务器主动推数据给客户端”而诞生的技术,但它们的机制和适用场景有很大区别。我们可以把WebSocket比作“双向通行的电话",而把SSE比作”收音机电台“
2026-06-13 15:26:27
356
原创 MySQL什么时候索引失效反而提升效率?
表中的数据量非常小,通常几十条或者几百条记录对小表全表扫描的成本可能低于使用索引的成本。因为使用索引需要:先查索引树在回表读取实际数据。
2026-05-23 15:40:24
320
原创 cozen平台开发智能体
1.让Bot听懂人话 重点:实现提示词工程2.让Bot专业 重点:实现RAG应用3.让Bot做事 重点:实现插件制作4.让Bot工作 重点:实现工作流的编排5.让Bot应用 重点:发布运营,触达用户。
2026-05-03 19:55:58
403
原创 gorm使用踩坑点
工作原理:GORM 在内部会自动尝试将传入的字符串参数(如 “123”)转换为与结构体主键字段匹配的数值类型(如 int64 或 uint),然后再执行查询。当数据库主键是数值类型(如 bigint),但查询函数接收的参数是 string 时,GORM 的 First 方法可以“智能”地工作。错误不明确:如果传入的字符串无法转换(如 “abc”),GORM 返回的错误可能不够直观,不利于精确的错误处理。如果任何 Before 类型的钩子返回一个非 nil 的错误,GORM 将会停止后续操作并回滚当前事务。
2026-04-11 15:28:35
251
原创 gin_gorm
restful风格:指的是网络应用中就是资源定位和资源操作风格,不是标准也不是协议form参数接收类型:form-data ,x-www-urlencoded,application/x-www-form-urlencoded请求方式对比:PUT 和 PATCHPUT:在服务器更新资源(客户端提供完整资源数据)PATCH:在服务器更新资源(客户端提供需要修改的资源数据)sqlx是Go语言中一个流行的数据库操作库,它构建在Go标准库之上,为数据库交互提供了更便捷、高效和功能丰富的方式。以下是对。
2026-03-28 21:36:55
262
原创 HTTP深度解析
HTTP 协议是一种客户端与服务器之间通信的规则。通过请求和响应的方式,浏览器和服务器进行信息交换。请求包含了方法、资源路径、请求头和请求体,响应则包括了状态码、响应头和响应体。理解这些结构可以帮助我们更好地理解网页加载的过程,调试网络请求时也能更加高效。混合加密非对称加密(RSA/ECDHE)安全交换密钥;对称加密(AES)高效传输数据。身份认证数字证书 + CA 签名确保服务器真实可信,防中间人冒充。数据安全加密防窃听MAC 防篡改序列号防重放。
2026-03-21 14:55:05
1842
原创 Git分布式版本控制工具
命令如下:1.clone(克隆):从远程仓库中克隆代码到本地仓库2.checkout(检出):从本地仓库中检出一个仓库分支然后进行修订3.add(添加):在提交前先将代码提交到暂存区4.commit(提交):提交到本地仓库。本地仓库中保存修改的各个历史版本5.fetch(抓取): 从远程库,抓取到本地仓库,不进行任何的合并动作,一般操作比较少。6.pull (拉取): 从远程库拉到本地库,自动进行合并(merge),然后放到到工作区,相当于fetch+merge。
2026-03-21 14:53:51
547
原创 透视 Go Web:理解 net/http 背后的模型
轻量级数据传输格式总体上分为两种一种是JSONObject(json对象)一种是JSONArray(json数组),包含多个JSONObjectcookie就是客户端存储技术,以键值对的形式存在在B/S架构中,服务端产生Cookie响应给客户端,浏览器接收后把Cookie存在在特定的文件夹中,以后每次请求浏览器会把Cookie内容放入请求中Go语言对Cookie的支持在net/http包下提供了Cookie结构体net/http包下的Cookie结构体。
2026-03-03 08:46:40
448
原创 高并发秒杀下,如何避免 Redis 分布式锁的坑?
Java中的锁,只能锁住一个线程,对于分布式情况下,每台服务器都会有一个锁,因为锁是jvm级别的。如果给主节点设置锁,这时如果主节点突然宕机了,从节点没有同步到这把锁,这是又会出现超卖问题。如果redis使用的是 主从复制的模式,有主节点和从节点,设置锁时 只能给主节点设置。1.给锁加长时间,并添加子线程每10秒确认线程是否在线,在线则将过期时间重设。用户在请求过程中,如果用户所处的服务器挂掉,那么分布式锁,无法解锁。如果业务时间长,锁提前释放 ,又会造成超卖的问题。给分布式锁设置过期时间。
2026-02-11 11:50:22
95
原创 内存之舞:Redis 初探
功能关键命令应用场景BitmapSETBITGETBITBITCOUNT签到、活跃统计Bitfield多字段紧凑存储StreamXADDXREADGROUPXACK可靠消息队列Pub/SubPUBLISHSUBSCRIBE实时广播GEOGEOADDGEORADIUS附近的人PFADDPFCOUNTUV 统计事务MULTIEXECWATCH乐观锁操作持久化BGSAVE数据落盘主从REPLICAOF读写分离哨兵高可用。
2026-02-11 09:39:57
583
原创 从签到打卡到亿级 UV 统计:Redis 数据结构的工业级用法大全
也是redis处理快的重要因素:单线程,没有线程切换的性能消耗redis底层是一个全局hash表,查询效率非常快,再往底层走,就是各大数据类型就拿string类型为例,在设置value时,想尝试强转为int类型,如果不行,才认定为string类型。
2026-02-06 19:26:15
363
原创 MySQL存储引擎InnoDB的索引和锁深学习
update和delete本身就是当前读,执行时一定会加入排他锁(x lock)正确,这是一道分水岭,只要是当前读,就一定加锁,差别在于锁几行。疑惑四:是不是update和delete天生就有排他锁?你不用写,for update 引擎内部就已经帮你做了。如果是“当前读”,是的;如果是“快照读”,不是。索引命中唯一索引,属于二级索引,回表查询一次。行锁:唯一索引,精确命中,行锁,无间隙锁。🚨 高并发下直接拖垮数据库。疑惑三:当前读一定会锁吗?❌ 错误写法(常见事故) 普通,快照读,无锁。
2026-01-29 14:26:15
631
1
原创 go聊天室接入mysql的项目docker部署流程
server、client、mysql(可选)分开定义depends_on确保启动顺序,但不保证服务端口就绪tty: true多阶段构建:减少镜像体积,仅拷贝编译好的二进制环境变量配置:程序不要写死 IP,容器间通信使用服务名 + 环境变量网络管理:同一 Compose 网络内 DNS 名称可互相访问容器重建策略:修改代码后,只 rebuild 需要更新的服务,旧服务可以保留日志和调试:保证容器日志可查,调试方便。
2026-01-29 10:02:31
879
原创 MySQL详解
方式一:计算机——右击管理——服务 方式二:通过管理员身份运行 net start 服务名(启动服务) net stop 服务名(停止服务)一、用户变量SET @变量名=值;SET @变量名:=值;SELECT @变量名:=值;方式一:一般用于赋简单的值SET 变量名=值;SET 变量名:=值;SELECT 变量名:=值;方式二:一般用于赋表 中的字段值SELECT 字段名或表达式 INTO 变量FROM 表;select @变量名;二、局部变量。
2026-01-29 09:51:03
1364
原创 自研开发的前后端项目部署流程
1.window本地打包(核心,避开Linux所有坑)2.上传到Linux服务器3.Linux服务器构建+运行Nginx容器。
2026-01-14 20:12:43
312
原创 2025年末AI跨年演讲
2.未来几年ai在编程程序员行业的暴露度比较高,会淘汰掉很大一部分的程序员,所以不要停止学习的脚步,要对ai有更新的认知,以前只是简单的人为ai辅助学习,提高编程效率,其实ai也创造了很多需求,即在ai迅速发展的今天,需要更多将其他行业与ai联系去ai化的人。1.打破 “AI 替代人类” 的焦虑,提出 AI 核心价值是托举人类,替代的是繁琐、重复、高危等人类不愿 和 不该干的工作,释放人类去聚焦复杂问题解决、情感连接与创造。信用:人类为 AI 决策担责,建立信任,是不可替代的社会属性。
2026-01-05 16:42:37
220
原创 go聊天室项目docker部署
💡 提示:在虚拟机内部,客户端使用 127.0.0.1 连接服务器是正确的。如果需要从外部访问,需要修改为虚拟机的公网IP。# 查看构建镜像中的文件。3. Docker 部署。
2025-12-24 21:17:05
222
原创 Linux基础命令
cp *.txt ttt3 把所有txt结尾的文件复制到ttt3目录中。tail -f -n 3 test2.txt 加上-f支持热更新。head -n 3 test2.txt 查看前三行数据。tail -n 3 test2.txt 显示后三行数据。cp test2.txt test.txt 复制文件。rm -r ttt3 删除ttt3目录下的所有文件。rm -rf ttt3 强制删除该目录下的所有文件。ls -A:展示所有文件排除点和点点。ls -a:展示所有包括隐藏文件。例如:which pwd。
2025-12-15 21:34:52
199
原创 go接受输入方式
Go语言接收输入的方法主要有:1)fmt.Scan系列适合简单变量读取,自动跳过空白但不支持空格;2)bufio.Reader可读取整行含空格,需手动处理换行符;3)bufio.Scanner更安全高效,适合逐行读取;4)os.Stdin.Read为底层字节操作。推荐:简单输入用fmt.Scan,整行读取首选bufio.Scanner,格式化输入用fmt.Scanf。各方法在保留换行、处理空格等方面有显著差异。
2025-12-06 21:22:08
443
1
原创 Go语言基础之并发
下面的表格中总结了对不同状态下的通道执行相应操作的结果。**注意:**对已经关闭的通道再执行 close 也会引发 panic。
2025-11-22 14:41:12
62
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅