AI核心概念解析:Agent、Prompt、Skill 及生态关系

🌐 AI核心概念解析:Agent、Prompt、Skill 及生态关系

一、关键名词正确定义与原理

1. Agent(智能体)

指具备感知---决策---行动 闭环能力的自主软件实体。它不是单个模型,而是一个系统架构:接收输入(如用户指令)、调用工具(API/代码/检索)、推理规划(常基于LLM)、执行并迭代反馈。

✅ 正确理解:Agent = LLM(大脑) + Tool Use(手脚) + Memory(记忆) + Planner(导航仪)

2. Prompt(提示)

是向大语言模型(LLM)传递任务意图的结构化文本输入。它不改变模型权重,但显著影响输出质量与可控性。高级 Prompt 技术包括:

  • Zero-shot / Few-shot prompting
  • Chain-of-Thought (CoT) :激发逻辑推理链,如" 135 ÷ 9 = ? 135 \div 9 = ? 135÷9=? → 先想 9 × 15 = 135 9 \times 15 = 135 9×15=135,所以答案是 15 15 15"
  • ReAct(Reason + Act):交替生成推理步骤与工具调用动作。

3. Skill(技能)

在 Agent 架构中,Skill 指可复用、可组合的原子能力模块,例如:

  • web_search(query: str) → List[str]
  • python_interpreter(code: str) → str
  • send_email(to, subject, body)

Skill 是 Agent 实现"做事情"的工程载体,通常封装为函数或工具接口。

4. OpenDevin

  • OpenDevin / OpenHands :开源的自主软件工程师 Agent 框架,支持代码仓库级任务执行;

✅ 本文后续示例将采用 OpenDevin(活跃、文档完善、支持Skill抽象)作为 Agent 生态代表,兼顾教学性与真实性。


二、关系图谱

触发与引导
生成规划与调用指令
按需调度
按需调度
按需调度
返回结果
返回结果
返回结果
整合结果→生成自然语言响应
Prompt
LLM
Agent
Skill 1

web_search
Skill 2

code_exec
Skill 3

file_read

🔑 核心关系:

  • Prompt 是 Agent 的"启动钥匙"和"操作手册";
  • Agent 是 Skill 的"指挥官"与"编排引擎";
  • Skill 是 Agent 能力的物理落地,Prompt 决定 Agent 如何调用它们。

三、实战示例:用 Python 模拟简易 Agent + Skill 工作流

以下代码实现一个能自动解数学题并验证答案的轻量 Agent(无需外部依赖,纯 Python):

python 复制代码
import re
import ast

# 🔹 Skill 1:执行安全 Python 表达式(仅计算)
def safe_eval(expr: str) -> float:
    """白名单限制的 eval,防注入"""
    allowed_nodes = (ast.Expression, ast.BinOp, ast.UnaryOp, ast.Num, 
                     ast.Constant, ast.USub, ast.UAdd, ast.Add, ast.Sub, 
                     ast.Mult, ast.Div, ast.Mod)
    try:
        node = ast.parse(expr, mode='eval')
        if not all(isinstance(n, allowed_nodes) for n in ast.walk(node)):
            raise ValueError("Unsafe expression")
        return float(eval(compile(node, '<string>', 'eval')))
    except:
        raise ValueError(f"Cannot evaluate: {expr}")

# 🔹 Skill 2:从 Prompt 中提取数学表达式(正则)
def extract_expression(prompt: str) -> str:
    # 匹配类似 "计算 3 * (7 + 2)" 或 "求 150 ÷ 6 的值"
    patterns = [
        r'计算\s+([^\。\n]+?)[。\n]',
        r'求\s+([^\。\n]+?)\s+的值',
        r'(\d+\s*[\+\-\*\/\%]\s*\d+(?:\s*[\+\-\*\/\%]\s*\d+)*)'
    ]
    for p in patterns:
        m = re.search(p, prompt)
        if m:
            expr = m.group(1).replace('×', '*').replace('÷', '/').replace(' ', '')
            return expr
    return ""

# 🔹 Agent 主流程(模拟 LLM 规划 + Skill 调用)
def math_agent(prompt: str) -> str:
    try:
        expr = extract_expression(prompt)
        if not expr:
            return "❌ 未识别出数学表达式,请使用如'计算 12 + 8'格式。"
        
        result = safe_eval(expr)
        # 模拟 LLM 生成自然语言回答(即 Prompt 的"输出端")
        answer_prompt = f"用户问:{prompt}\n计算得:${result}$。请用中文完整回答。"
        # 简化版------直接构造回复(真实 Agent 会调用 LLM API)
        return f"✅ 我帮您计算了:{expr} = ${result}$"
    
    except Exception as e:
        return f"⚠️ 计算失败:{str(e)}"

# ✅ 测试用例
if __name__ == "__main__":
    print(math_agent("计算 3 × (7 + 2)"))      # ✅ 输出:3 × (7 + 2) = $27.0$
    print(math_agent("求 135 ÷ 9 的值"))       # ✅ 输出:135 ÷ 9 = $15.0$
    print(math_agent("今天的天气如何?"))       # ❌ 不含表达式

💡 运行效果:

复制代码
✅ 我帮您计算了:3*(7+2) = $27.0$
✅ 我帮您计算了:135/9 = $15.0$
❌ 未识别出数学表达式,请使用如'计算 12 + 8'格式。

📌 关键设计解析:

  • Prompt 是输入字符串(如 "计算 3 × (7 + 2)"),驱动整个流程;
  • Agent 是 math_agent() 函数------它解析 Prompt、决策调用哪个 Skill、整合结果;
  • Skills 是 extract_expression 和 safe_eval ------专注单一职责、可独立测试与替换;
  • 若升级为真实系统,math_agent 内部会调用 OpenAI API 或本地 Llama3,用 ReAct 格式让 LLM 输出 JSON 规划(如 {"action": "safe_eval", "value": "3*(7+2)"}),再由 Agent 解析并 dispatch。

四、延伸建议(进阶学习路径)

方向 推荐资源
🔧 动手构建 Agent OpenDevin GitHub(支持 VS Code 插件,真跑 GitHub 仓库级任务)
📚 Prompt 工程 《Prompt Engineering Guide》(lamini.ai 免费开源)+ HuggingFace transformers pipeline() 高级用法
⚙️ Skill 封装规范 LangChain Tools / LlamaIndex Function Calling / MCP(Model Context Protocol)标准草案
相关推荐
johnsong17 小时前
AI前沿日报 2026-10-07:信任崩塌
人工智能
菩提树下的凡夫17 小时前
多线程是加载一个复用推理模型还是用多个独立的推理模型
人工智能·深度学习
冯一川17 小时前
使用 Python 实现支持多轮对话的 CLI 聊天机器人(基于 Ollama)
人工智能
武子康17 小时前
LingBot-Video 怎么选推理路径?8 步 DMD 不等于小显存
人工智能·后端
Febrie17 小时前
Codex插件推荐:Local Figma Agent MCP,不购买付费套餐,也能让 Agent 读懂并修改Figma设计稿
人工智能
edtoplort17 小时前
OpenAI紧急叫停GPT-6.1 Astra训练,奥尔特曼为何踩刹车
人工智能·gpt·算法
打工仔折腾 AI17 小时前
Docker镜像分层与卷挂载到底怎么工作:一次文件系统层面的实测分析
运维·人工智能·后端·python·docker·容器·性能优化
墨染天姬18 小时前
【人工智能训练师】python语法二
开发语言·人工智能·python
深蓝AI18 小时前
748GB 统一内存装进桌面:英伟达 DGX Station 本地跑万亿参数模型,瓶颈不在算力在插座
人工智能·agent
成旭先生18 小时前
AI 文本审核 API:一段中文文本判风险等级、命中标签与处置建议
java·前端·人工智能·api接口·内容风控·文本审核·ugc审核