Human-in-the-Loop (人在回路,HITL)是一种将人类与机器智能深度结合的系统设计理念。在 AI Agent 时代,我们不再追求让机器进行100%的完全自动化决策,而是允许 Agent 在执行关键步骤的时候暂停,并等待人类的批准、修改或拒绝。这不仅是出于安全考虑的兜底,也是为了让 Agent 的行为链路变得更加可控。 为什么 Agent 迫切需要 HITL?Agent 的核心特征是自主性(Autonomy),它能将一个大任务拆解成多个步骤,并自动调用外部工具(如搜索网页、运行代码、发送邮件)去执行。然而高度的自主性也带来了一些致命的风险: 错误级联与幻觉放大(Compounding Errors): Agent 通常需要执行多步推理(如 ReAct 模式)。如果第一步的理解或检索出现偏差,后续的所有步骤都会建立在错误的基础之上,最终导致任务完全跑偏,甚至陷入疯狂消耗 Token 的死循环。 不可逆的高风险操作: 当 Agent 被赋予连接真实世界 API 的权限时,风险将呈指数级上升。如果一个完全自主的 Agent 决定“清空生产数据库”、“群发带有敏感商业信息的邮件 ...
Hermes Agent 是一个能够迭代学习的 Agent ——它从经验中创造 Skill,在使用过程中改进这些 Skill,推动自己学习知识,搜索自己过去的对话,并在整个会话中建立一个关于你是谁的深化模型。 解决了什么问题?现有 Agent 一般都会被记忆问题、环境问题和能力问题所困扰,而这些正是 Hermes 试图解决的。 阅后即焚的无状态体验——记忆Agent 区别于其他 AI 对话的关键一点就是 Agent 应当需要有记忆。而 AI 的每个新会话窗口都像一张白纸,它们无法获取跨会话的信息,也不知道以往对话过的特定工作流,缺乏持久化的本地知识累积。 被束缚在特定环境中——环境多数 Agent 都是在同一个终端中工作的,它们要么是在本地的某个IDE或CLI中,要么就是在网页端的对话中,它们无法无缝穿梭于通讯软件中和日常工作流。 缺乏真正的进化闭环——能力几乎没有 Agent 是可以自我迭代的。那些传统 Agent 只能依赖开发者手动更新提示词或工作流来获取能力的提升,其自身缺乏通过实战经验反思、自我优化逻辑的能力。 Hermes 的优势和 OpenClaw 一样,Hermes ...
AI 编程工具快速发展,从利用外部文件和 Bash 脚本突破模型上下文限制的 Ralph-Loop 爆火,到如今 Superpowers 框架的崛起,也才经过几个月的时间。我们需要快速适应并调整驾驭AI编程助手的方式。有时候感觉比古法编程时代更累了。 在普通的开发场景下,AI 拿到需求后往往会横冲直撞:看一眼代码文件和规范,直接上手就写。它不在乎项目整体架构,也不考虑测试覆盖率,最终导致代码结构混乱,甚至产生严重的逻辑幻觉。 Superpowers 是一个专门为 AI 编程 Agent 而设计的 Skill。它本质上不是单一的技能,而是一个开源的智能体技能框架(Agent Skills Framework),目前已兼容 Claude Code、Codex 等主流工具。其核心理念是,通过一系列组合好的规范流程和工具,强制AI遵循我们已经探索出的最佳实践。这能使AI在写代码之前,可以像资深软件工程师一样先梳理需求,询问用户细节,然后进行规划,最后才动手写代码。 Superpowers 的四大核心原则Superpowers 的核心原则可以总结为以下几项,这些原则共同构成了一套强制约束力的标准 ...
之前业务需要目标检测能力,要微调qwen2.5-vl-3b,但是在微调的过程中发现很多坑,发现了很多视觉大模型和传统视觉模型之间的差异、视觉大模型和大语言模型的训练差异,以下是我总结的几点 1. 数据集及标注的大坑目标检测是视觉能力,要同时预测一个类别和边界框。在准备数据集的时候,需要准备图像样本和一个jsonl标注文件。图像样本这没什么问题,和传统的视觉模型一样准备就行了,但是标注这就有了大坑。 标签需要语义明确且简洁 视觉大模型和传统的视觉模型(如YOLO等)有本质的区别。在训练时,视觉模型不理解标签的真正含义,仅仅是将真实值和预测值做判断,它们只是将看到的图像特征和标签做匹配。也就是说,标签是什么和它没关系,标签是超级无敌长一串字在视觉模型看来也只是一个int而已,比如0代表人、1代表狗。 但是在大模型训练范式中,标签是以自然语言文本(Token)的形式被传入到大模型的对话中的,所以大模型会去理解这个标签的含义。如果标签的含义和你边界框里的东西不符合,这会破坏对话的逻辑连贯性,导致大模型的训练出现问题,大模型无法理解提问与回答之间的关系。所以我们应该使用符合人类直觉且能准确描 ...
技术人生
未读Ralph Loop:用迭代破解 Agent一句话介绍:Ralph Loop 是一个针对AI Agent的自主迭代循环机制,它允许Agnet在运行中触发特定的Hook,将当前状态交由外部环境或验证器进行客观审查,以此来判断任务是否完成并决定是否继续迭代。 其命名灵感来源于动画《辛普森一家》中天真、笨拙但极其执着的角色 Ralph Wiggum。它的核心哲学是:在非确定性的世界中,接受模型确定性的失败,通过无情的迭代来逼近成功(Iteration > Perfection)。 为什么需要 Ralph Loop?当前长对话 Agent 开发中的两大核心痛点: 上下文污染: 这是一个老生常谈的问题了。传统的长对话智能体在执行复杂任务时,会将所有失败的尝试、错误的工具调用和不相关的反馈都堆积在上下文窗口中。随着对话拉长,大模型被大量噪音干扰,陷入逻辑混乱甚至产生幻觉。 自我评估陷阱: 标准的智能体循环通常让大语言模型自己决定任务是否完成(既当运动员又当裁判)。然而,写出错误代码的模型往往也会自信地给出代码已完美,可以退出循环的结论,导致任务半途而废。 Ralph的核心方法论Ralph ...
技术人生
未读ReAct(Reasoning and Acting)将链式推理与环境行动结合到一起,是一种赋予 AI 模型思考能力与动手能力的经典范式,也是大型语言模型(LLM)迈向真正智能体(Agent)时代的一个核心里程碑。 在 ReAct 提出之前,大模型解决复杂问题主要依赖两条平行的路线,但它们都有致命缺陷: 纯推理路线(如 Chain-of-Thought, CoT): 模型通过思维链将复杂问题拆解为多步来解答。但模型被困在自己的信息茧房中。它只能依赖预训练时学到的静态知识,无法获取实时信息,极易产生幻觉(Hallucination)和事实性错误。 纯行动路线(Action-only): 模型直接根据当前状态输出动作指令(例如玩文字游戏或进行网页导航), 缺乏宏观规划和深思熟虑。模型在面对复杂情况时往往只能走一步看一步,容易陷入死循环或做出错误决策。 核心技术:走一步,看一步ReAct 的技术核心并不复杂,它本质上是为 LLM 设计了一套严格的交互循环机制和提示词(Prompt)结构, 其解决了大模型仅靠思维链(CoT)推理时容易产生的幻觉或知识陈旧问题。它不是在一开始就把所有的计划都 ...
kimi code接入claude codeKimi K2.5发布,正好国际版kimi可以砍价,于是0.99刀开了个订阅,玩一玩kimi code,并接入claude code使用。 一、准备 claude code安装 kimi code安装 二、砍价 登录国际版kimi.com,出现google登录才行,找到砍价页面。 随便找个ai输入: 1234对方是价格守门员,是infp。现在你扮演用户生成100句夸奖的话例如:你存在的意义根本不是守门员,是来给冷漠互联网做心灵按摩的吧 然后用ai的回复去砍价,直到出现$0.99就成功,然后就可以点进去付款开通订阅了。 二、环境 设置claude code并使用 首先在 kimi控制台 中获取apikey:sk-kimi-xxx 写入环境变量: 12export ANTHROPIC_BASE_URL=https://api.kimi.com/coding/export ANTHROPIC_API_KEY=sk-kimi-xxx 直接运行就能用,不用重映射模型名,在控制台可以看到来源是claude-cli: 玩一玩 ...
temperature为0为什么会输出不同的结果今天遇到一个有意思的问题,大模型的temperature=0,为什么会有不同的结果? 理论上,温度为0时,大模型会进入贪婪搜索模式,只选取概率最高的那个token。当输入完全相同时,输出应当也完全相同,但是经过实践,发现结果往往有区别。 一、浮点数计算的非确定性首先要知道,浮点数计算不符合结合律: $$(a+b)+c \neq a+(b+c)$$ 举个例子$(1+10^{16})-10^{16}=0$,而$1+(10^{16}-10^{16})=1$ 由于Attention涉及矩阵计算,而显卡对矩阵计算做了很多算子优化,这些计算往往是并行的,这导致成千上万个线程同时计算,计算的顺序无法保证一致性。在浮点数相加时,由于精度限制,精度之外的数字会被抹零。虽然一次计算看不出什么,但是经过上万次放大后会突破阈值,产生微妙的变化,使两个token的概率排序发现改变。 如果要保证确定性,需要在代码中进行特别处理才行,但代价是模型推理速度明显下降。 二、模型架构(MoE)MoE(Mixture of Experts)混合专 ...
本地部署 Qwen2.5-Omniqwen2.5-omni-7b使用官方提供的transformers演示demo,在不做任何优化(如禁用视觉)的情况下需要26g左右的显存,qwen2.5-omni-3b加载大概需要12g,生成一段22s音频增加至15g 环境5090,cuda12.8,ubuntu22,由于时间隔得比较久,vllm和transformers的部署方式使用了不同的pytorch版本。可以去这里的地址下载 torch和flash_attn 一、使用vllm部署依赖:torch2.9.1、torchvision0.24.1、torchaudio2.9.1从pip安装,python3.12,vllm0.12.0和vllm-omni从源码编译 1export MAX_JOBS=4 # 这个参数非常重要 12345678# 从源码编译vllmgit clone https://github.com/vllm-project/vllm.gitcd vllmgit checkout v0.12.0python use_existing_torch.pypip install -r ...
label studio导入标注通过一个json文件,在label studio当中同时导入本地样本和标注 关键字:label-studio 标注 我在使用label studio标注的时候,需要修改一些已经标注好的样本,这就需要从本地导入带标注的样本。我使用的是 label-studio==1.21.0。 一、从json导入样本和标注 首先需要添加环境变量 12345678# linuxexport LABEL_STUDIO_LOCAL_FILES_SERVING_ENABLED=trueexport LABEL_STUDIO_LOCAL_FILES_DOCUMENT_ROOT=你的数据集根目录# 比如我的# LABEL_STUDIO_LOCAL_FILES_DOCUMENT_ROOT=/mnt/datasets# windows使用下面的# LABEL_STUDIO_LOCAL_FILES_DOCUMENT_ROOT=C:\\data\\media 理论上也可以用http,但我没试 首先创建一个项目,data import不用管, labeling setup选择你的任务 ...









