从零构建AI智能体:基于Hermes Agent的工程实践指南

发布时间:2026/7/25 10:37:51

从零构建AI智能体:基于Hermes Agent的工程实践指南 在实际 AI 大模型应用开发中一个核心挑战是如何让大模型不仅能够回答问题还能像真正的工程师一样理解复杂任务、使用工具、执行代码并完成一系列操作。这正是 AI 智能体AI Agent要解决的问题。Harness Engineering 作为一种新兴的工程范式强调将大模型如 Codex置于智能体优先的世界中通过精心设计的“缰绳”Harness来引导和控制智能体的行为使其更可靠、更可控。而 Hermes Agent 则是这一理念下的一个具体实现它提供了一个框架让开发者能够构建、管理和部署具备复杂任务执行能力的 AI 智能体。本文旨在为希望从零开始掌握 AI 智能体核心技术的开发者提供一个完整的实践路径。我们将从 Harness Engineering 的基本理念入手解释为什么需要“约束”大模型然后聚焦于 Hermes Agent通过一个从环境搭建到项目落地的完整案例带你吃透智能体的设计、实现与部署。无论你是希望将 AI 能力集成到现有业务系统还是探索自动化运维、智能问答等新场景理解并实践这套技术栈都将为你打开新的思路。1. 理解 Harness Engineering 与 AI 智能体的核心关系在深入代码之前必须厘清几个核心概念为什么单纯的提示工程Prompt Engineering不够以及 Harness Engineering 如何补足其短板。1.1 从提示工程到“缰绳工程”的演进传统的提示工程侧重于设计精巧的输入提示Prompt以引导大模型生成期望的输出。这在单轮问答或内容生成场景下效果显著。然而当任务变得复杂、多步骤、需要与外部环境如数据库、API、命令行交互时仅靠提示就显得力不从心。模型可能会“胡思乱想”产生不符合逻辑的操作序列或者无法持久化任务状态。Harness Engineering或称“缰绳工程”其核心思想是为 AI 智能体套上“缰绳”。这不仅仅是输入提示更是一套完整的控制体系包括任务规划与分解将高层目标拆解为可执行的原子步骤。工具调用与管理定义智能体可以使用的工具如执行 Python 代码、调用 API、读写文件并安全地管理其调用。状态与记忆管理维护智能体在长时间运行或多轮对话中的上下文和历史。错误处理与回滚当某一步骤失败时有能力诊断原因并尝试替代方案或回滚。安全与边界控制限制智能体的操作权限防止其执行危险或越权命令。可以理解为提示工程是告诉模型“做什么”而 Harness Engineering 是设计一套机制确保模型“正确地、安全地、一步步地完成复杂的事”。Hermes Agent 便是实现这套机制的一个框架。1.2 AI 智能体的基本架构与 Hermes Agent 的定位一个典型的 AI 智能体通常包含以下核心组件大脑Brain通常是大语言模型LLM负责理解指令、进行推理和决策。规划器Planner将用户目标分解为一系列子任务或步骤。工具集Toolkit智能体可调用的函数或 API 集合是其与外界交互的“手和脚”。执行器Executor负责调用工具并处理执行结果。记忆Memory存储对话历史、工具执行结果和任务状态。Hermes Agent 提供了一个开箱即用的框架来封装这些组件。它简化了智能体的创建过程通过配置和扩展开发者可以快速构建一个能理解自然语言、使用工具、完成代码编写与调试等任务的智能体。其官网和社区提供了丰富的 Skill技能即预定义的工具集和示例是快速入门和实践的理想选择。2. 环境准备与 Hermes Agent 安装部署理论清晰后我们进入实战环节。首先需要搭建一个可以运行 Hermes Agent 的本地开发环境。2.1 基础环境要求与选择Hermes Agent 主要支持 Linux 和 Windows通过 WSL环境。对于生产级稳定性和兼容性推荐使用 Ubuntu。以下是基础要求组件要求说明操作系统Ubuntu 20.04/22.04 LTS, Windows 10/11 with WSL2本文以 Ubuntu 22.04 为例。WSL2安装请参考微软官方文档。Python3.9, 3.10 或 3.11避免使用 Python 3.12可能存在依赖兼容性问题。包管理器pip (21.0)建议使用虚拟环境venv或conda隔离项目依赖。模型访问OpenAI API 密钥 或 本地大模型Hermes Agent 默认与 OpenAI API 兼容。如需本地部署需额外配置。硬件至少 8GB RAM 20GB 磁盘空间如果运行本地大模型需要更高的 GPU 内存。2.2 逐步安装 Hermes Agent以下是在 Ubuntu 22.04 上从零开始的安装步骤。步骤一创建并激活 Python 虚拟环境# 更新系统包 sudo apt update sudo apt upgrade -y # 安装 Python3 和 pip如果未安装 sudo apt install python3 python3-pip python3-venv -y # 创建项目目录并进入 mkdir hermes-agent-project cd hermes-agent-project # 创建虚拟环境 python3 -m venv venv # 激活虚拟环境 source venv/bin/activate激活后命令行提示符前应出现(venv)标识。步骤二安装 Hermes Agent 核心包Hermes Agent 可以通过 pip 直接安装。建议同时安装一些常用工具。# 升级 pip pip install --upgrade pip # 安装 Hermes Agent pip install hermes-agent # 可选安装用于代码执行的额外依赖 pip install jupyter-client注意安装过程可能会下载较多依赖请保持网络通畅。如果遇到特定包版本冲突可以尝试先安装一个较旧的setuptoolspip install setuptools65.5.0。步骤三配置 API 密钥以 OpenAI 为例Hermes Agent 需要与大模型交互。最简单的方式是使用 OpenAI API。# 设置环境变量临时仅当前会话有效 export OPENAI_API_KEY你的-openai-api-key # 或者将其写入 ~/.bashrc 或 ~/.zshrc 永久生效 echo export OPENAI_API_KEY你的-openai-api-key ~/.bashrc source ~/.bashrc如果希望使用本地模型如通过 Ollama、vLLM 部署的 Qwen、Llama 等则需要配置OPENAI_API_BASE环境变量指向本地服务端点例如export OPENAI_API_BASEhttp://localhost:11434/v1。这要求本地模型服务兼容 OpenAI API 格式。步骤四验证安装运行一个简单的 Python 脚本来测试 Hermes Agent 核心功能是否正常。# test_hermes.py import asyncio from hermes_agent.agent import HermesAgent from hermes_agent.base import HermesMessage async def main(): # 初始化一个基础智能体 agent HermesAgent() # 创建一个用户消息 user_message HermesMessage(content你好请介绍一下你自己。, roleuser) # 发送消息并获取响应 response await agent.run(user_message) print(fAgent Response: {response.content}) if __name__ __main__: asyncio.run(main())保存并运行python test_hermes.py如果看到智能体返回了一段自我介绍说明安装和基础配置成功。3. 构建你的第一个 AI 智能体项目代码分析与自动修复助手现在我们构建一个实用的智能体一个能够分析给定 Python 代码片段、识别潜在问题如语法错误、性能问题、不符合PEP8规范并提供修复建议的代码助手。这个项目将串联起智能体的核心能力规划、工具使用和迭代执行。3.1 项目设计与技能规划我们的智能体需要以下能力代码理解解析用户提供的 Python 代码。静态分析检查语法和代码风格。问题诊断识别具体问题所在行号、问题类型。修复建议生成修复后的代码或修改建议。交互确认与用户确认修复方案。为此我们需要为智能体装备相应的“技能”Skills。Hermes Agent 允许我们自定义技能。我们将创建三个核心技能analyze_code调用ast模块进行语法解析并使用flake8进行代码风格检查。suggest_fix基于分析结果利用 LLM 的代码生成能力提出修复建议。apply_fix将建议的修复应用到原始代码上生成新代码或直接提供修改后的代码。3.2 实现自定义技能与智能体首先安装额外的分析工具pip install flake8接下来创建项目文件结构hermes-code-helper/ ├── skills/ │ ├── __init__.py │ ├── code_analysis.py # 代码分析技能 │ └── code_fix.py # 代码修复技能 ├── agent_config.yaml # 智能体配置文件 └── main.py # 主程序入口1. 实现代码分析技能 (skills/code_analysis.py)import ast import subprocess import tempfile from typing import Dict, Any from hermes_agent.base import Skill class CodeAnalysisSkill(Skill): 分析Python代码返回语法和风格问题。 name analyze_code description 分析给定的Python代码字符串返回语法错误和PEP8风格问题。 async def run(self, code: str) - Dict[str, Any]: results { syntax_errors: [], style_issues: [], is_valid_syntax: True } # 1. 语法检查 try: ast.parse(code) except SyntaxError as e: results[syntax_errors].append({ line: e.lineno, message: e.msg, text: e.text }) results[is_valid_syntax] False # 2. 风格检查 (使用flake8) with tempfile.NamedTemporaryFile(modew, suffix.py, deleteFalse) as f: f.write(code) temp_file_path f.name try: # 运行flake8捕获输出 proc subprocess.run( [flake8, --format%(row)d:%(col)d:%(code)s:%(text)s, temp_file_path], capture_outputTrue, textTrue ) if proc.stdout: for line in proc.stdout.strip().split(\n): if line: parts line.split(:, 3) if len(parts) 4: line_num, col, code, message parts[0], parts[1], parts[2], parts[3] results[style_issues].append({ line: int(line_num), column: int(col), code: code, message: message.strip() }) finally: import os os.unlink(temp_file_path) return results这个技能接收代码字符串使用 Python 内置的ast模块进行语法解析并调用外部命令flake8进行风格检查最后将结果结构化返回。2. 实现代码修复技能 (skills/code_fix.py)from typing import Dict, Any from hermes_agent.base import Skill class CodeFixSkill(Skill): 根据分析结果建议修复代码。 name suggest_fix description 根据代码分析结果和原始代码生成修复建议或修复后的代码。 async def run(self, original_code: str, analysis_result: Dict[str, Any]) - Dict[str, Any]: # 这里我们将分析结果和原始代码组合成一个提示词交给LLM处理。 # 在实际项目中这里会调用配置好的LLM。 # 为了示例清晰我们模拟一个简单的逻辑。 prompt f 你是一个资深的Python代码审查员。请修复以下代码的问题。 原始代码 python {original_code} 分析发现的问题 - 语法错误{analysis_result.get(syntax_errors, [])} - 风格问题{analysis_result.get(style_issues, [])} 请直接输出修复后的完整Python代码。如果代码本身没有问题请输出原始代码。 # 注意在实际的Hermes Agent中这个prompt会通过配置的LLM模型来生成回复。 # 此处为简化我们返回一个模拟的修复建议。 # 真实场景下你需要集成LLM调用如通过Hermes Agent内置的LLM支持。 simulated_fixed_code original_code.replace(print x, print(x)) # 一个简单的模拟修复 suggestion f发现可能的旧式打印语句已修正为Python3语法。修复后代码\npython\n{simulated_fixed_code}\n return { suggestion: suggestion, fixed_code: simulated_fixed_code, prompt_used: prompt[:200] ... # 记录使用的提示词头 }这个技能演示了如何将分析结果作为上下文构造提示词交给 LLM 来生成智能修复。在实际应用中run方法内部应调用 Hermes Agent 配置的 LLM 客户端。3. 配置智能体 (agent_config.yaml)name: PythonCodeHelper description: 一个帮助分析和修复Python代码的智能体。 model: gpt-4 # 或你配置的本地模型名称 skills: - skills.code_analysis.CodeAnalysisSkill - skills.code_fix.CodeFixSkill system_prompt: | 你是一个专业的Python开发助手。你的任务是帮助用户分析和改进他们的Python代码。 你会按以下步骤工作 1. 使用 analyze_code 技能分析用户提供的代码。 2. 根据分析结果使用 suggest_fix 技能生成修复建议。 3. 将分析和修复建议清晰、有条理地回复给用户。 如果用户没有提供代码请礼貌地提示。 始终使用中文与用户交流。这个 YAML 文件定义了智能体的名称、使用的模型、加载的技能以及系统提示词。系统提示词是 Harness Engineering 的关键它规定了智能体的行为范式和任务流程。4. 主程序入口 (main.py)import asyncio import yaml from hermes_agent.agent import HermesAgent from hermes_agent.base import HermesMessage def load_agent_config(config_path: str): with open(config_path, r) as f: config yaml.safe_load(f) return config async def main(): # 加载配置 config load_agent_config(agent_config.yaml) # 创建智能体实例 agent HermesAgent.from_config(config) print(Python代码助手已启动。输入‘退出’或‘quit’结束对话。) print(- * 40) while True: user_input input(\n请输入你的Python代码或指令: ).strip() if user_input.lower() in [退出, quit, exit]: print(再见) break if not user_input: continue # 构建消息 user_message HermesMessage(contentuser_input, roleuser) # 运行智能体 try: response await agent.run(user_message) print(f\n助手回复:\n{response.content}) except Exception as e: print(f\n处理请求时出错: {e}) if __name__ __main__: asyncio.run(main())3.3 运行与验证在项目根目录下运行python main.py你会进入一个交互式对话界面。尝试输入一段有问题的代码例如def greet(name): print name return fHello, {name}智能体应该会触发analyze_code技能发现print name的语法错误在Python3中应为print(name)然后通过suggest_fix技能结合LLM给出修复建议并最终将结果返回给你。这个案例虽然简化了 LLM 的直接集成实际需在技能中调用self.llm或类似接口但它完整展示了 Hermes Agent 智能体的构建流程定义技能、配置行为、创建交互循环。你可以在此基础上将CodeFixSkill中的模拟调用替换为真实的 LLM API 调用使其成为一个真正强大的代码助手。4. 深入 Hermes Agent 核心技能、记忆与任务规划掌握了基础构建后我们需要深入 Hermes Agent 的核心机制以应对更复杂的场景。4.1 技能Skills的进阶用法技能是智能体的工具。除了同步执行技能还可以是异步的并能处理更复杂的输入输出。异步网络请求技能示例import aiohttp from hermes_agent.base import Skill class FetchWebpageSkill(Skill): name fetch_webpage description 获取指定URL的网页内容纯文本。 async def run(self, url: str) - str: async with aiohttp.ClientSession() as session: try: async with session.get(url, timeout10) as response: response.raise_for_status() text await response.text() # 简单提取文本实际可集成BeautifulSoup return text[:2000] # 限制返回长度 except Exception as e: return f获取网页失败: {e}在agent_config.yaml中注册此技能后智能体就可以根据用户指令如“获取 https://example.com 的内容并总结”来调用它。技能输入输出 Schema为了更精确地控制技能调用可以定义输入输出的 JSON Schema这有助于 LLM 更好地理解何时以及如何调用该技能。from pydantic import BaseModel, Field from hermes_agent.base import Skill class AnalysisInput(BaseModel): code: str Field(description需要分析的Python代码字符串) class AnalysisOutput(BaseModel): issues: list Field(description发现的问题列表) score: float Field(description代码质量评分0-10分) class AdvancedCodeAnalysisSkill(Skill): name advanced_analyze_code description 高级代码分析返回结构化问题和质量评分。 args_schema AnalysisInput returns_schema AnalysisOutput async def run(self, input_data: AnalysisInput) - AnalysisOutput: # ... 实现分析逻辑 ... return AnalysisOutput(issues[...], score8.5)4.2 记忆Memory管理智能体需要记忆来维持对话连贯性。Hermes Agent 提供了短期记忆对话历史和长期记忆向量数据库的支持。配置对话历史记忆在agent_config.yaml中可以配置记忆后端。memory: type: conversation_buffer # 使用对话缓冲记忆 kwargs: max_turns: 10 # 保留最近10轮对话这样智能体就能记住之前的对话内容实现多轮交互。集成向量数据库实现长期记忆对于需要从大量文档中检索信息的智能体如基于 RAG 的问答机器人可以集成如Chroma、Weaviate等向量数据库。memory: type: vector_store kwargs: vector_store: chroma persist_directory: ./chroma_db collection_name: project_docs这通常需要额外的代码来向向量库中灌入文档并在智能体处理查询时先检索相关文档片段作为上下文。4.3 任务规划与执行循环复杂的任务需要分解。Hermes Agent 支持通过系统提示词或专门的规划器Planner模块来实现任务分解。在系统提示词中引导规划system_prompt: | 你是一个项目助手。当用户提出复杂请求时请按步骤思考 1. 理解最终目标。 2. 拆解为可执行的子任务例如获取数据 - 分析数据 - 生成报告。 3. 为每个子任务选择合适的技能。 4. 按顺序执行子任务并将上一步的结果作为下一步的输入。 5. 汇总所有结果形成最终回复。 ...通过精心设计的提示词可以引导 LLM 自身进行任务规划。使用专用规划器对于更稳定、复杂的规划逻辑可以开发或集成专门的规划器模块。这属于更高级的用法需要深入框架源码进行扩展。5. 项目落地实战构建金融知识问答智能体结合热搜词中提到的“金融大模型问答机器人”我们设计一个更贴近实际的项目一个基于 RAG检索增强生成和 Hermes Agent 的金融知识问答系统。它能够回答关于金融产品、市场规则等专业问题答案基于内部知识库避免大模型幻觉。5.1 项目架构设计知识库构建将金融领域的 PDF、Word、Markdown 文档进行文本提取、分块、向量化存入向量数据库如 Chroma。智能体核心使用 Hermes Agent 作为协调中枢。RAG 技能开发一个retrieve_finance_knowledge技能接收用户问题从向量库检索最相关的文档片段。问答生成将检索到的上下文和用户问题组合发送给 LLM如 Qwen生成最终答案。Web 服务使用 FastAPI 将智能体封装成 HTTP API供前端调用。技术栈选择LLMQwen通义千问本地部署或 API框架Hermes Agent任务协调、LangChain可选用于简化 RAG 链构建向量库Chroma轻量级Web 框架FastAPI嵌入模型text2vec 或 BGE 系列5.2 核心实现步骤步骤一准备知识库# prepare_knowledge.py from langchain.document_loaders import DirectoryLoader, PyPDFLoader from langchain.text_splitter import RecursiveCharacterTextSplitter from langchain.embeddings import HuggingFaceEmbeddings from langchain.vectorstores import Chroma # 1. 加载文档 loader DirectoryLoader(./finance_docs/, glob**/*.pdf, loader_clsPyPDFLoader) documents loader.load() # 2. 分割文本 text_splitter RecursiveCharacterTextSplitter(chunk_size500, chunk_overlap50) texts text_splitter.split_documents(documents) # 3. 创建向量库 embeddings HuggingFaceEmbeddings(model_nameBAAI/bge-small-zh-v1.5) vectorstore Chroma.from_documents(texts, embeddings, persist_directory./chroma_finance_db) vectorstore.persist()步骤二实现 RAG 技能# skills/finance_rag.py from hermes_agent.base import Skill from langchain.vectorstores import Chroma from langchain.embeddings import HuggingFaceEmbeddings class FinanceRAGSkill(Skill): name retrieve_finance_knowledge description 从金融知识库中检索与问题相关的文档片段。 def __init__(self): # 加载已持久化的向量库 self.embeddings HuggingFaceEmbeddings(model_nameBAAI/bge-small-zh-v1.5) self.vectorstore Chroma(persist_directory./chroma_finance_db, embedding_functionself.embeddings) async def run(self, query: str, k: int 3) - str: 检索最相关的k个片段并合并为上下文。 docs self.vectorstore.similarity_search(query, kk) context \n\n.join([doc.page_content for doc in docs]) return context步骤三配置问答智能体# finance_agent_config.yaml name: FinanceQAExpert description: 金融领域知识问答专家基于内部知识库回答。 model: qwen-max # 假设使用通义千问API本地部署则配置相应端点 skills: - skills.finance_rag.FinanceRAGSkill system_prompt: | 你是一个专业的金融顾问必须严格根据提供的背景知识回答问题。 你的工作流程如下 1. 当用户提出金融相关问题时首先使用 retrieve_finance_knowledge 技能以用户问题为查询词检索相关知识片段。 2. 将检索到的知识作为“背景知识”与用户问题一起生成最终答案。 3. 答案必须基于背景知识。如果背景知识中未包含相关信息请如实告知“根据现有资料无法回答该问题”不要编造信息。 4. 答案应专业、清晰、简洁。 使用中文回答。步骤四创建 FastAPI 服务# app.py from fastapi import FastAPI, HTTPException from pydantic import BaseModel import asyncio from hermes_agent.agent import HermesAgent from hermes_agent.base import HermesMessage import yaml app FastAPI(title金融问答智能体API) # 加载并创建智能体 with open(finance_agent_config.yaml, r) as f: config yaml.safe_load(f) agent HermesAgent.from_config(config) class QueryRequest(BaseModel): question: str class QueryResponse(BaseModel): answer: str sources: list[str] # 可扩展为返回来源文档ID app.post(/ask, response_modelQueryResponse) async def ask_question(request: QueryRequest): try: user_message HermesMessage(contentrequest.question, roleuser) response await agent.run(user_message) # 注意此处需要从response中解析出检索的来源示例简化处理 return QueryResponse(answerresponse.content, sources[]) except Exception as e: raise HTTPException(status_code500, detailf智能体处理失败: {str(e)}) if __name__ __main__: import uvicorn uvicorn.run(app, host0.0.0.0, port8000)运行python app.py即可通过http://localhost:8000/docs访问 API 文档并进行测试。5.3 性能优化与生产考量缓存对常见问题答案进行缓存减少对 LLM 和向量库的重复调用。异步处理确保技能和 LLM 调用都是异步的以提高 API 吞吐量。限流与监控在 FastAPI 层添加限流中间件并集成 Prometheus 等监控工具。配置管理将模型 API Key、向量库路径等配置外置到环境变量或配置中心。日志详细记录智能体的决策过程、技能调用和 LLM 输入输出便于调试和审计。6. 常见问题排查与最佳实践在开发和部署 Hermes Agent 智能体过程中你会遇到一些典型问题。6.1 安装与依赖问题问题现象可能原因检查与解决pip install hermes-agent失败提示版本冲突Python 版本过高/过低或依赖包冲突。1. 确认 Python 版本为 3.9-3.11。2. 在新虚拟环境中重试。3. 尝试先安装核心依赖pip install openai。运行时报ModuleNotFoundError某些可选依赖未安装。根据错误信息安装对应包如pip install jupyter-client,pip install aiohttp。WSL 下安装后无法启动桌面组件Hermes Agent Desktop 可能需要图形界面支持。WSL2 需配置 X Server 转发或仅使用其命令行/API 功能。6.2 智能体运行问题问题现象可能原因检查与解决智能体不调用技能总是直接回复系统提示词未明确指示使用技能或技能描述不清晰。1. 在system_prompt中明确要求智能体“使用XX技能”。2. 检查技能的name和description是否准确LLM 依赖这些信息做工具调用决策。技能调用参数错误LLM 生成的调用参数不符合技能定义的args_schema。1. 优化提示词让 LLM 更准确地提取参数。2. 在技能run方法开始时验证参数并返回友好错误。响应速度慢LLM API 延迟高或技能本身是同步阻塞的。1. 考虑使用更快的模型或本地部署。2. 确保技能的run方法是async的内部使用异步库如aiohttp。3. 实现超时机制。多轮对话中忘记上下文未配置或正确启用记忆功能。1. 在agent_config.yaml中配置memory。2. 确保在创建HermesMessage时正确处理对话历史。6.3 生产环境最佳实践清单安全性技能沙箱对于执行代码、访问文件系统的技能必须在严格受限的沙箱环境中运行。输入验证与清理对所有用户输入和技能参数进行严格的验证和清理防止注入攻击。权限最小化智能体进程应使用低权限用户运行仅能访问必要的资源和目录。审计日志记录所有用户请求、技能调用、LLM 输入输出用于安全审计和问题追溯。可靠性错误处理与重试为所有技能和 LLM 调用实现健壮的错误处理和指数退避重试机制。熔断与降级当关键组件如 LLM 服务、向量数据库不可用时应有熔断机制并返回降级响应如“服务暂时不可用”。资源隔离为不同的智能体任务分配独立的资源池避免相互影响。可维护性配置外置所有 API Key、模型端点、数据库连接字符串等必须通过环境变量或配置中心管理。版本化管理对智能体配置、技能代码、系统提示词进行版本控制。单元测试为核心技能编写单元测试确保其功能正确。性能监控监控智能体的响应延迟、技能调用成功率、Token 消耗等关键指标。从 Harness Engineering 的理念到 Hermes Agent 的实践构建 AI 智能体的核心在于设计一套可靠的“控制回路”。这个回路始于清晰的任务规划通过安全的工具调用与环境交互并辅以有效的状态记忆最终引导大模型完成复杂任务。成功的关键不在于追求完全自主的智能而在于通过精密的工程化设计在赋予模型强大能力的同时牢牢握住确保其行为正确、安全、可控的“缰绳”。下一步你可以尝试将智能体接入更复杂的工作流如自动化测试、数据分析流水线或客户服务系统在实践中不断深化对智能体行为边界和优化方向的理解。

相关新闻