- 博客(65)
- 问答 (2)
- 收藏
- 关注
原创 Hermes Agent:工具与技能的加载、执行与规模化策略
Hermes Agent 工具执行与技能管理机制 核心功能摘要: 工具自注册机制:通过模块导入自动注册工具,支持跨工具集覆盖(需显式声明),采用ToolEntry数据结构存储元信息,包含执行函数引用、可用性检测和环境要求等。 动态工具发现:启动时通过AST解析自动扫描tools/目录和插件路径,识别并导入含registry.register()调用的模块,触发工具注册。 执行流程优化: 工具调用采用O(1)字典查找直接获取处理函数 支持同步/异步处理器 结果大小控制(自动截断或落盘) 预执行钩子可阻断无效调
2026-05-31 11:48:36
384
原创 Hermes学习收集
本文汇总了Hermes Agent学习资源,包括官方中文文档(含终端配置指南)以及多个源码解析资料。官方文档提供了基础使用教程和Shell环境配置说明,而三份深度解析材料分别从不同角度剖析了Hermes Agent的架构设计与实现原理,包括开发者编写的技术书籍和Github开源项目,适合不同层次的学习需求。(99字)
2026-05-31 11:18:00
225
原创 OpenAI Chat Completions API 完整参考手册
本文档详细介绍了OpenAI Chat Completions API的使用方法,包括请求参数、消息协议、工具调用等功能。主要内容涵盖:必填参数model和messages的配置;messages消息协议中system、user、assistant和tool四种角色的消息格式;生成控制参数如temperature、top_p等对输出的调节;工具调用协议的结构化定义;以及流式输出和响应体结构等特性。文档提供了完整的JSON请求示例和多轮工具调用流程说明,适用于GPT-4o、GPT-4-turbo等模型。
2026-04-28 20:27:49
666
原创 Agent / Workflow 系统状态结构设计方法论二
进入 TOOL_CALLING 状态时必须满足# 进入 DONE 状态时必须满足不变式是状态机的"类型系统",在入口处校验,防止非法状态。
2026-04-27 18:28:56
74
原创 Agent / Workflow 系统状态结构设计方法论
Agent系统状态设计方法论摘要 Agent系统的状态设计是其核心架构,需要考虑长时运行、不确定性、可中断恢复和多步编排等特性。设计过程分为5个步骤:1)识别系统边界与角色;2)从输入状态、控制状态、数据状态和输出状态四个维度分析;3)确定状态的生命周期;4)设计层次结构(运行级、步骤级、消息级);5)制定存储与传播策略。关键原则包括状态最小化、输入不可变和状态转换原子化。推荐三种状态传播模式:显式传递、事件驱动和黑板模式。良好的状态设计应支持可观测性、容错性和可扩展性。
2026-04-27 18:26:45
146
原创 客户管理助手详细实现(包含用户澄清模块)
这篇文章摘要介绍了报价助手系统的架构设计,主要包括以下内容: 系统功能目标:支持报价草稿创建/修改、确认提交、查询和用户澄清四大核心功能模块 推荐目录结构:采用分层架构设计,包含API路由、领域模型、提示词模板、LLM接口、数据存储和服务层等模块 技术栈依赖:基于FastAPI框架,初期最小依赖包括uvicorn和pydantic 核心代码骨架:展示了配置管理、日志记录和异常处理的基础实现 领域模型定义:详细设计了报价草稿状态、助手意图、解析状态等枚举类,以及聊天请求、报价草稿、解析结果等核心数据模型 该架
2026-04-27 17:24:35
133
原创 用户澄清模块技术设计说明书(客户管理系统)
本文档描述了一个用户澄清模块的设计方案,该模块用于处理自然语言输入与主数据匹配时的不确定性情况。核心功能包括: 当主数据匹配结果不唯一或不确定时,向用户发起澄清 采用优先级策略决定澄清顺序(客户→产品→联系人等) 支持多种确认方式(序号/名称/自然语言) 维护澄清状态机(待处理/已解决/已取消) 记录完整审计日志 系统设计特点: 规则优先,LLM兜底 单次只澄清一个关键问题 保留原始值和解析结果 支持多种业务场景(报价/订单/客户管理等) 关键数据结构包括ResolutionResult(匹配结果)、pen
2026-04-27 16:57:59
159
原创 用户澄清方案设计与实现要点
本文提出了一套完整的用户澄清方案设计与实现要点,旨在解决自然语言输入中的实体匹配不确定性问题。核心内容包括: 澄清触发机制:将匹配结果分为confirmed(直接采用)、ambiguous(需澄清)和failed(需补充信息)三类 流程设计:采用"规则优先+LLM兜底"的解析策略,建立标准化的澄清流程和状态存储机制 关键创新点: 提出"澄清优先级设计策略",明确一次只处理最关键的不确定项 设计三级解析体系(规则→LLM→unresolved) 提供优化的LLM兜底提示
2026-04-27 16:50:38
334
原创 Research Agent L4升级版
这篇文章介绍了一个基于FastAPI的研究任务自动化服务系统。系统提供三大核心功能:1)创建研究任务API,用户提交研究主题后返回任务ID;2)查询任务状态API,获取任务执行进度和最终报告;3)健康检查API。系统采用模块化设计,包含任务规划、节点执行、状态管理、报告生成等组件,支持多节点并行处理和研究报告的自动生成。技术栈使用FastAPI+Uvicorn+Pydantic,通过DAG任务图实现复杂研究流程的自动化执行,最终输出结构化研究报告。系统特别设计了中文提示词模板,适用于市场趋势分析等商业研究场
2026-04-27 10:37:39
245
原创 Research Agent 示例(L3)
摘要:本文展示了一个L3级(Planner + Sequential Executor)研究型Agent的实现方案。该方案针对市场趋势分析等研究任务,采用模块化架构设计,包含任务规划、顺序执行、工具调用和状态管理等核心组件。文章详细介绍了数据模型、中文Prompt模板、工具注册机制等关键实现细节,并提供了完整的目录结构和执行流程说明,可作为构建类似Agent系统的参考实现。
2026-04-27 10:24:35
332
原创 Agent 项目常用 Prompt(中文版)模板
文章摘要: 本文探讨了Prompt在Agent系统中的本质作用与工程实践方法。核心观点认为Prompt应被视为"LLM子模块的输入/输出协议"而非魔法工具,其核心价值在于约束职责、控制输出格式、限制推断边界等。作者提出了Prompt设计的10个工程原则,包括单一职责、结构化输出、明确信息边界、安全控制等,并详细介绍了13类常见Prompt及其应用场景。文章特别强调Prompt需要版本化管理、模块化组织,并提供了具体的中文Prompt模板示例,涵盖系统Prompt、任务理解、规划器、修复机
2026-04-27 10:14:50
438
原创 Agent 项目落地模板
本文提出了一种实用的Agent项目落地模板,建议采用L1/L3级别的实现路线,将Agent视为"LLM驱动的工作流系统"而非全自动智能体。该模板适用于企业内部知识助手、研究Agent、自动报告生成等场景,不适用于纯聊天机器人或极简服务。项目采用分层架构,包含API层、应用层、Agent运行时层和基础设施层,并提供了详细的目录结构设计。核心模块职责包括:API层处理HTTP接口,domain层定义核心数据结构,强调业务逻辑与数据结构的分离。文中还给出了Task、Plan、State等核心模
2026-04-27 10:05:22
434
原创 AI Agent 实施指南
L0:聊天/生成L1:工具增强L2:自由探索 agentL3:计划驱动 agentL4:图编排 agentL1 + L3 + 局部 L4不是一上来就追求“最 autonomous 的 Agent”。《Agent 系统架构图大全》:把 L0~L4 都画成统一架构图《Agent 项目落地模板》:按 Python 项目目录结构,给你一份可直接开工的代码骨架。
2026-04-27 09:50:43
403
原创 Milvus学习整理
数据类型维度范围支持的度量(metric_type)适用场景存储 32 位浮点数2-32,768COSINEL2IP(默认:CONSINE)非常适合需要高精度的场景,例如区分相似向量存储 16 位半精度浮点数2-32,768COSINEL2IP(默认:CONSINE)在精度要求不高的情况下,如推荐系统的低精度召回阶段,它可以节省存储空间。存储精度降低但指数范围与 Float32 相同的 16 位浮点数2-32,768COSINEL2IP(默认:CONSINE)
2025-03-21 11:11:47
1814
原创 常用网址整理
Rerank技术通过重新排序检索出的文档块,确保与用户问题更相关的信息排在前面,从而提高语言模型生成答案的质量。其中,Rerank(重排序)是一种常见的,也是在RAG应用优化中很常见的一种技术处理环节。它是一个非常流行的工具,用于简化和严谨化数据模型定义和数据验证工作。:召回率衡量了模型能够从所有正类中正确识别出多少,它关注的是尽量减少漏掉的相关文档。:检索出的文档中有多少是相关文档;避免错误正类的预测(减少提供不相关的文档):里面包含了LangChain各个模块的使用操作说明和引导,比较详细。
2025-03-19 15:53:27
848
原创 使用JS将指定下标的元素移动到某个位置,且获取到有变化的元素及下标的变化
【代码】使用JS将指定下标的元素移动到某个位置,且获取到有变化的元素及下标的变化。
2023-06-14 11:46:35
659
转载 kong的多种认证方式设置
1.新建一个用于认证验证的consumer(1).新建consumercurl -X POST --url http://localhost:8001/consumers/ --data "username=auth_user"返回如下{ "custom_id":null, "created_at":1566380171, "username":"auth_user", "id":"f1b6c168-f6e3-482e-a477-2d09d14dce8b"}(2).为该co
2021-06-15 18:18:21
1344
原创 如何整体迁移git库到另外的远程仓库(gerrit)
1. 克隆原有的仓库git clone --bare xxxxxx.git2. 在gerrit上新建一个仓库,记住不能选择init empty commit3.为新建的仓库,设置一些特殊权限reference: refs/*权限:create reference,Forge Author Identity,Forge Committer Identity,Forge Server Identity,Push,Push Merge Commit refs/for/refs/*权限:Push
2021-06-11 17:57:56
1686
原创 Dubbo2.7.7 Demo运行
1. 下载zookeepper3.6.2并运行2. 运行Dubbo admin(1) 下载Dubbo-admin 的 develop分支git clone https://github.com/apache/dubbo-admin.git cd dubbo-admin(2) 修改配置`dubbo-admin-server/src/main/resources/application.properties(3) 编译maven clean package -Dmaven.test.ski
2021-01-15 15:11:06
494
原创 gerrit插件相关地址
源代码地址:https://gerrit.googlesource.com/plugins插件下载地址:https://gerrit-ci.gerritforge.com/
2020-09-02 17:27:00
1938
转载 systemd service 设置limit,不生效问题
参考博文:http://smilejay.com/2016/06/centos-7-systemd-conf-limits/(解决方法参考此博文)问题简述:Centos7下修改系统的最大文件打开数的时候,对系统启动的进程不生效问题详述:Centos7下需修改系统最大文件打开数为100000,进程数为50000,于是做了如下操作说 明:此问题只出现在centos7下,centos...
2019-02-26 14:33:05
3333
原创 JenKins结合cppcheck及cpplint进行代码风格及静态代码检测
JenKins结合cppcheck及cpplint最近公司需要在Jenkins上安装cppcheck及cpplint进行代码风格及静态代码检测,这里记录下过程。前提条件安装了Jenkins步骤如下第一步:安装cppcheck并配置环境通过源码安装 下载地址: https://github.com/danmar/cppcheck/releases/ https://sourcefo
2017-01-18 10:04:56
9645
转载 MySQL 5.7版本修改root密码
如果 MySQL 正在运行 首先杀之: killall -TERM mysqld。 运行mysqld_safe --skip-grant-tables & 如果此时不想被远程连接:mysqld_safe --skip-grant-tables --skip-networking & 使用mysql连接servermysql 更改密码 update mysql.user set authentica
2017-01-16 12:40:30
5332
转载 mysql创建用户
使用root帐户登陆mysqlmysql -uroot -p创建用户创建一个只能在本机登陆的用户create user '用户名'@'localhost' identified by '用户的密码';创建一个只能由特定远程主机使用的帐户create user '用户名'@'远程IP地址' identified by '用户的密码';创建一个本机和远程主机都能使用的账户create user 'unl
2017-01-06 16:17:04
1325
转载 Java中的多线程
## 引如果对什么是线程、什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内。用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现。说这个话其实只有一半对,因为反应“多角色”的程序代码,最起码每个角色要给他一个线程吧,否则连实际场景都无法模拟,当然也没法说能用单线程来实现:比如最常见的“生产者,消费者模型”。很多人都对其中的一些概念不
2016-09-05 10:04:35
1197
转载 ubuntu设置永久dns
修改/etc/resolvconf/resolv.conf.d/base文件,该文件默认是空的,在里面写入: nameserver 1.1.1.1 nameserver 2.2.2.2 修改完之后保存,然后执行resolvconf -u 然后,你会发现/etc/resolv.conf文件中多了几行,这几行是resolve程序自动写入的:# Dynamic resolv.conf(5) fil
2016-07-27 10:55:14
2655
1
空空如也
请教:repo upload 要求输入用户名和密码问题
2017-03-13
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅