第41章:Agent 生态全景
"一个 Agent 项目的技术再优秀,如果脱离了生态系统的滋养,也难以持续生长。"
41.1 生态全景:从模型到应用的技术栈
在深入探讨 Agent 生态之前,我们需要先建立一个宏观的认知框架。Agent 技术并非孤立存在,它依赖于一个多层协作的完整技术栈。理解这个技术栈的每一层、每个主要玩家及其之间的关系,是做出正确技术选型的前提。
41.1.1 技术栈分层模型
Agent 生态可以自底向上分为五个核心层级:
┌─────────────────────────────────────────────────────┐
│ 应用层 (Application Layer) │
│ 垂直行业 Agent · 通用助手 · 企业级 Agent 平台 │
├─────────────────────────────────────────────────────┤
│ 框架层 (Framework Layer) │
│ LangChain · CrewAI · AutoGen · Dify · Coze │
├─────────────────────────────────────────────────────┤
│ 工具层 (Tool Layer) │
│ MCP 协议 · Function Calling · 插件市场 · API Hub │
├─────────────────────────────────────────────────────┤
│ 基础设施层 (Infrastructure Layer) │
│ 向量数据库 · GPU 云 · RAG 平台 · 监控与可观测性 │
├─────────────────────────────────────────────────────┤
│ 模型层 (Model Layer) │
│ OpenAI · Anthropic · Google · Meta · 国内厂商 │
└─────────────────────────────────────────────────────┘这个分层模型揭示了一个关键事实:每一层都有自己的生态和竞争格局,而层与层之间的接口协议(如 OpenAI API、MCP 协议)则是整个生态运转的关节。理解层间依赖关系,有助于我们在技术选型时避免"被锁定在某一层"的风险。
41.1.2 层间关系与依赖分析
- 模型层 → 框架层:框架层通过标准化 API 调用模型层的推理能力。OpenAI API 事实上已经成为行业标准接口,多数框架都支持 OpenAI 兼容的调用方式。
- 框架层 → 工具层:框架通过工具层扩展 Agent 的能力边界。MCP 协议的兴起正在统一工具调用接口。
- 基础设施层 → 所有上层:向量数据库、GPU 算力、监控等基础设施为所有上层提供底层支撑。
- 应用层 → 框架层:应用层基于框架层快速构建,但也越来越多地直接使用模型 API 以获得更精细的控制。
41.2 模型层生态:LLM 提供商全景
41.2.1 国际头部厂商
OpenAI
OpenAI 是当前 Agent 生态的绝对核心玩家。其 GPT 系列模型(GPT-4o、o1、o3)在推理能力、多模态理解、工具调用等方面都处于行业领先地位。
核心优势:
- Function Calling 能力最强:OpenAI 的函数调用机制是事实标准,几乎所有 Agent 框架都优先支持
- 生态最完善:Assistants API、Files API、Batch API 等一整套面向 Agent 的 API 体系
- 多模态领先:GPT-4o 的原生多模态能力使视觉 Agent、语音 Agent 成为可能
Agent 相关产品:
- Assistants API:提供了内置的线程管理、文件检索、代码解释器,几乎是一个"开箱即用"的 Agent 后端
- GPTs:面向非技术用户的 Agent 创建平台
- Responses API(2025新增):替代了传统的 Chat Completions API,原生支持工具调用、多轮对话管理
# OpenAI Responses API 示例:构建一个具备工具调用能力的 Agent
from openai import OpenAI
client = OpenAI()
response = client.responses.create(
model="gpt-4o",
instructions="你是一个数据分析助手,帮助用户分析数据。",
tools=[
{
"type": "function",
"name": "query_database",
"description": "查询数据库并返回结果",
"parameters": {
"type": "object",
"properties": {
"sql": {"type": "string", "description": "SQL 查询语句"},
"limit": {"type": "integer", "description": "返回行数限制"}
},
"required": ["sql"]
}
}
],
input="帮我查询最近7天的销售总额"
)Anthropic
Anthropic 以 Claude 系列模型为代表,在长上下文理解、代码生成、安全对齐等方面表现突出。
核心优势:
- 200K 超长上下文:Claude 支持业界最长的上下文窗口(最高 200K tokens),适合处理复杂文档和长代码库
- 出色的代码能力:Claude 在代码生成和理解方面通常优于同类模型
- Claude Code:Anthropic 推出的终端 AI 编程工具,开创了"AI Agent 编程"的全新交互范式
- 模型上下文协议(MCP):Anthropic 主导推出的开放协议,正在统一 Agent 工具调用标准
Agent 相关产品:
- Claude Code:基于 Claude 的 CLI Agent,能直接操作文件系统、执行命令、管理代码项目
- Claude Computer Use:让 Claude 直接操控计算机桌面,执行 GUI 操作
- MCP(Model Context Protocol):开放的工具调用标准协议
# Anthropic Claude 工具调用示例
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-sonnet-4-20250514",
max_tokens=1024,
tools=[
{
"name": "get_weather",
"description": "获取指定城市的天气信息",
"input_schema": {
"type": "object",
"properties": {
"city": {"type": "string", "description": "城市名称"},
"unit": {"type": "string", "enum": ["celsius", "fahrenheit"]}
},
"required": ["city"]
}
}
],
messages=[{"role": "user", "content": "北京今天天气怎么样?"}]
)Google
Google DeepMind 的 Gemini 系列模型在多模态、长上下文(2M tokens)等方面具有独特优势。
核心优势:
- 200万 tokens 超长上下文:Gemini 1.5 Pro 支持业界最长的上下文窗口
- Google 生态整合:与 Google Workspace(Gmail、Docs、Sheets)、Android 等深度整合
- 多模态原生:Gemini 从设计之初就是多模态模型,视频理解能力领先
- Vertex AI 平台:企业级 AI 平台,提供模型训练、部署、监控的一站式服务
Agent 相关产品:
- Project Mariner:Google 的浏览器 Agent 原型
- Gemini Code Assist:面向开发者的 AI 编程助手
- Vertex AI Agent Builder:企业级 Agent 构建平台
# Google Gemini 工具调用示例
import google.generativeai as genai
model = genai.GenerativeModel(
model_name="gemini-2.0-flash",
tools=[
genai.Tool(
function_declarations=[
genai.FunctionDeclaration(
name="search_knowledge_base",
description="在企业知识库中搜索相关文档",
parameters=genai.Type(
type="OBJECT",
properties={
"query": genai.Type(type="STRING", description="搜索关键词"),
"top_k": genai.Type(type="INTEGER", description="返回结果数")
},
required=["query"]
)
)
]
)
]
)
response = model.generate_content("搜索关于公司请假制度的相关文档")Meta(Llama)
Meta 走的是开源路线,Llama 系列模型是全球最重要的开源 LLM。
核心优势:
- 开源免费:Llama 系列采用宽松的开源协议,可以商用
- 社区生态丰富:大量微调版本、量化工具、部署框架围绕 Llama 构建
- 可本地部署:企业可以在自己的服务器上私有化部署,数据不出域
- 成本可控:无 API 调用费用,硬件成本一次性投入
Agent 部署方案:
# 使用 vLLM 部署 Llama 3 作为 Agent 后端
pip install vllm
python -m vllm.entrypoints.openai.api_server \
--model meta-llama/Llama-3.3-70B-Instruct \
--port 8080 \
--enable-auto-tool-choice \
--tool-call-parser hermes41.2.2 国内主要厂商
中国大模型市场在 2024-2025 年迎来了爆发式增长,以下是最值得关注的国内 LLM 提供商:
阿里云(通义千问)
- 核心模型:Qwen2.5 系列(72B、32B、14B、7B)、Qwen-VL 多模态系列
- 特点:开源版本能力强,中文理解优秀,阿里云通义平台提供完整工具链
- Agent 支持:通义千问 App 内置 Agent 功能,百炼平台支持 Agent 构建
- 选型建议:中文场景首选之一,开源版本可私有化部署
# 阿里云百炼平台 Agent API 示例
import dashscope
from dashscope import Agent
agent = Agent(
app_id="your_app_id",
api_key="your_api_key"
)
response = agent.run(
messages=[{"role": "user", "content": "帮我分析这份财报"}],
files=["annual_report_2024.pdf"]
)百度(文心一言)
- 核心模型:文心大模型 4.5、文心一言旗舰版
- 特点:与百度搜索深度整合,知识问答能力强
- Agent 支持:文心智能体平台(yiyan.baidu.com/agent)提供低代码 Agent 创建
- 选型建议:搜索增强型 Agent 场景有优势
腾讯(混元大模型)
- 核心模型:混元 Turbo、混元 Pro、混元 Lite
- 特点:与微信生态深度整合,多模态能力突出
- Agent 支持:腾讯元宝 App、元器平台支持 Agent 创建
- 选型建议:微信生态集成、腾讯云企业客户首选
字节跳动(豆包)
- 核心模型:豆包大模型系列、Doubao-Pro 系列
- 特点:推理速度快、价格极具竞争力(Token 价格业界最低之一)
- Agent 支持:扣子(Coze)平台——可能是当前最成熟的低代码 Agent 平台
- 选型建议:对成本敏感的场景、Coze 平台快速原型开发
智谱 AI(GLM)
- 核心模型:GLM-4 系列、GLM-5 系列
- 特点:学术基因深厚,中英文能力均衡,API 稳定性好
- Agent 支持:智谱清言 App、BigModel 开放平台
- 选型建议:企业级 API 服务,稳定性要求高的场景
月之暗面(Kimi)
- 核心模型:Moonshot / Kimi 大模型
- 特点:以长上下文处理能力著称,支持超长文档解析
- Agent 支持:Kimi 智能助手内置 Agent 能力
- 选型建议:长文档处理、信息提取场景
41.2.3 模型选型决策矩阵
| 维度 | OpenAI | Anthropic | 国内厂商(头部) | 开源模型 | |
|---|---|---|---|---|---|
| 推理能力 | ★★★★★ | ★★★★★ | ★★★★☆ | ★★★★☆ | ★★★☆☆ |
| 中文能力 | ★★★★☆ | ★★★★☆ | ★★★★☆ | ★★★★★ | ★★★☆☆ |
| 长上下文 | ★★★★☆ | ★★★★★ | ★★★★★ | ★★★☆☆ | ★★★★☆ |
| 工具调用 | ★★★★★ | ★★★★★ | ★★★★☆ | ★★★★☆ | ★★★☆☆ |
| 成本 | 高 | 中高 | 中 | 低 | 硬件成本 |
| 数据隐私 | 云端 | 云端 | 云端 | 可私有化 | 完全可控 |
| API 稳定性 | ★★★★★ | ★★★★★ | ★★★★☆ | ★★★☆☆ | 自建保障 |
选型建议原则:
- 追求最佳效果 → OpenAI GPT-4o / Anthropic Claude
- 中文场景 + 成本敏感 → 国内头部厂商(通义千问/豆包)
- 数据安全/合规要求 → 私有化部署开源模型(Qwen2.5 / Llama 3)
- 长文档处理 → Anthropic Claude (200K) / Google Gemini (2M)
- 多模态需求 → GPT-4o / Gemini 2.0
- 成本极致优化 → 开源模型 + vLLM/SGlang 自建推理服务
41.3 框架层生态:Agent 开发框架
41.3.1 框架分类与定位
Agent 开发框架可以按照其设计理念和目标用户分为以下几类:
| 类型 | 代表框架 | 目标用户 | 核心特点 |
|---|---|---|---|
| 编排型 | LangChain / LlamaIndex | 开发者 | 灵活的链式编排,丰富的组件库 |
| 多Agent协作型 | AutoGen / CrewAI / MetaGPT | 开发者 | 多Agent角色协作、任务分解 |
| 低代码平台型 | Dify / Coze / 扣子 | 产品/运营 | 可视化编排、非技术友好 |
| 研究型 | AgentBench / AgentOps | 研究者 | Agent 评测、实验管理 |
| 基础设施型 | LiteLLM / Helicone | 平台开发者 | 统一 API 层、监控可观测 |
41.3.2 主流框架深度对比
LangChain
LangChain 是目前最流行的 Agent 开发框架,提供了从 LLM 调用、Prompt 管理、工具集成到 Agent 编排的完整工具链。
from langchain_openai import ChatOpenAI
from langchain.tools import tool
from langgraph.prebuilt import create_react_agent
# 定义工具
@tool
def search_web(query: str) -> str:
"""搜索互联网获取信息"""
# 实现省略
return f"搜索结果: {query}"
@tool
def read_file(path: str) -> str:
"""读取文件内容"""
with open(path) as f:
return f.read()
# 创建 Agent
model = ChatOpenAI(model="gpt-4o")
agent = create_react_agent(model, [search_web, read_file])
# 执行
result = agent.invoke({
"messages": [{"role": "user", "content": "帮我搜索最新的 AI 新闻并总结"}]
})LangGraph 是 LangChain 团队推出的有状态 Agent 编排框架,支持复杂的工作流、持久化状态、人机协作等高级特性。它使用图(Graph)的概念来描述 Agent 的行为流程:
from langgraph.graph import StateGraph, MessagesState
def should_continue(state: MessagesState):
last_message = state["messages"][-1]
if last_message.tool_calls:
return "tools"
return END
workflow = StateGraph(MessagesState)
workflow.add_node("agent", model_with_tools)
workflow.add_node("tools", tool_executor)
workflow.add_edge("agent", should_continue)
workflow.add_edge("tools", "agent")优势: 组件丰富、社区活跃、文档完善、生态整合能力强 劣势: 抽象层过多导致调试困难、版本迭代频繁导致兼容性问题、性能开销较大
CrewAI
CrewAI 采用"角色扮演"理念,每个 Agent 被定义为一个角色(如研究员、写手、审核员),多个角色组成一个"团队"协作完成任务。
from crewai import Agent, Task, Crew, Process
researcher = Agent(
role="高级研究员",
goal="深入研究并提供详细分析报告",
backstory="你是一位经验丰富的行业研究员,擅长从海量信息中提取关键洞察。",
tools=[search_tool, scrape_tool],
llm="gpt-4o"
)
writer = Agent(
role="技术写手",
goal="将研究结果转化为清晰易懂的文章",
backstory="你擅长将复杂的技术概念用通俗易懂的方式表达。",
llm="claude-sonnet-4-20250514"
)
research_task = Task(
description="研究 2025 年 Agent 技术的最新趋势",
expected_output="一份包含 5 个主要趋势的详细分析报告",
agent=researcher
)
writing_task = Task(
description="基于研究报告撰写一篇技术博客",
expected_output="一篇 2000 字的技术博客文章",
agent=writer,
context=[research_task] # 依赖研究任务的结果
)
crew = Crew(
agents=[researcher, writer],
tasks=[research_task, writing_task],
process=Process.sequential # 顺序执行
)
result = crew.kickoff()优势: 概念直观(角色扮演)、多 Agent 协作简单易上手、适合内容生成场景 劣势: 灵活性不如 LangGraph、复杂工作流支持有限、工具生态相对较小
AutoGen(Microsoft)
微软推出的 AutoGen 专注于多 Agent 对话与协作,支持多轮对话、代码执行、人机协作等场景。
import autogen
config_list = [{"model": "gpt-4o", "api_key": "your_key"}]
# 创建两个 Agent 进行协作
assistant = autogen.AssistantAgent(
name="编码助手",
llm_config={"config_list": config_list}
)
user_proxy = autogen.UserProxyAgent(
name="用户代理",
human_input_mode="NEVER",
code_execution_config={"work_dir": "coding"}
)
# 对话
user_proxy.initiate_chat(
assistant,
message="请编写一个 Python 脚本来分析 CSV 文件中的销售数据"
)AutoGen v0.4 重构了底层架构,引入了更灵活的组件化设计,支持更复杂的多 Agent 工作流。
优势: 微软背书、代码执行能力强、人机协作体验好 劣势: 学习曲线较陡、文档质量一般、社区活跃度不如 LangChain
Dify
Dify 是一个开源的 LLM 应用开发平台,以可视化界面为核心特色,支持低代码构建 Agent。
核心功能:
- 可视化的工作流编排(Workflow)
- RAG 知识库管理
- Agent 编排与管理
- 模型管理与切换
- API 一键发布
选型建议: Dify 适合快速构建和部署 Agent 应用,特别是对于非技术团队。但其在灵活性、性能调优方面不如代码框架。
扣子/Coze(字节跳动)
Coze 是字节跳动推出的 Agent 构建平台,以"让每个人都能创建 AI Bot"为愿景。
核心优势:
- 丰富的插件市场(搜索引擎、数据库、第三方 API)
- 可视化的工作流编排
- 一键发布到多平台(微信、飞书、Telegram 等)
- 免费额度慷慨
选型建议: 适合快速原型验证和轻量级 Agent 构建。对于复杂的企业级 Agent,建议使用代码级框架。
41.3.3 框架选型指南
| 场景 | 推荐框架 | 理由 |
|---|---|---|
| 快速原型/非技术用户 | Coze / Dify | 低代码/可视化 |
| 单 Agent + 简单工具 | LangChain | 组件丰富 |
| 多 Agent 协作 | CrewAI / AutoGen | 原生支持 |
| 复杂工作流/状态管理 | LangGraph | 图编排、状态持久化 |
| 企业级/生产环境 | 自研 + LangChain 组件 | 完全可控 |
| 研究与实验 | AutoGen / 自研 | 灵活可控 |
41.4 工具层生态:让 Agent 连接世界
41.4.1 MCP:模型上下文协议
MCP(Model Context Protocol)是 Anthropic 于 2024 年底推出的开放协议,旨在标准化 LLM/Agent 与外部工具之间的通信方式。
MCP 的核心设计理念:
┌──────────┐ MCP 协议 ┌──────────────┐
│ │ ←───────────→ │ MCP Server │
│ LLM / │ JSON-RPC │ (工具提供方) │
│ Agent │ └──────────────┘
│ │ MCP 协议 ┌──────────────┐
│ │ ←───────────→ │ MCP Server │
│ │ JSON-RPC │ (知识库) │
└──────────┘ └──────────────┘MCP 协议定义了三种核心原语:
- Tools(工具):Agent 可以调用的函数
- Resources(资源):Agent 可以读取的数据
- Prompts(提示):预定义的提示模板
# MCP Server 示例(使用 FastMCP)
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("database-tools")
@mcp.tool()
async def query_user(user_id: str) -> dict:
"""根据用户ID查询用户信息"""
# 查询数据库
return {"id": user_id, "name": "张三", "email": "zhang@example.com"}
@mcp.tool()
async def create_order(user_id: str, product_id: str, quantity: int) -> dict:
"""创建订单"""
return {"order_id": "ORD-001", "status": "created"}
@mcp.resource("config://app")
def get_app_config() -> str:
"""提供应用配置信息"""
return "API endpoint: https://api.example.com"MCP 的生态意义:
- 一次实现,多处使用:工具开发者只需实现一次 MCP Server,所有支持 MCP 的 Agent 都能使用
- 标准化降低集成成本:不再需要为每个 Agent 框架写适配器
- 安全可控:MCP 定义了细粒度的权限模型,工具提供方可以精确控制 Agent 能访问的数据和操作
41.4.2 Function Calling 生态
除了 MCP,各大模型厂商也提供了原生的工具调用机制:
- OpenAI Function Calling:最早推出的标准工具调用 API,格式最成熟
- Anthropic Tool Use:与 MCP 深度整合
- Google Function Calling:Gemini 原生支持
- 通义千问 Function Call:国内厂商中最早支持的工具调用
// OpenAI Function Calling 标准格式
{
"type": "function",
"function": {
"name": "get_weather",
"description": "获取指定城市的天气信息",
"parameters": {
"type": "object",
"properties": {
"city": {"type": "string"},
"unit": {"type": "string", "enum": ["celsius", "fahrenheit"]}
},
"required": ["city"]
}
}
}41.4.3 插件系统生态
- ChatGPT Plugins:OpenAI 早期的插件生态(已被 GPTs 和 Assistants API 部分取代)
- Coze 插件市场:字节跳动的插件生态,拥有丰富的中文工具
- Dify 工具市场:Dify 平台的官方工具市场
- LangChain Tools:LangChain 内置的 200+ 工具集成
- Hugging Face Tools:Hugging Face 生态中的工具集成
41.5 基础设施层生态
41.5.1 向量数据库
向量数据库是 RAG(检索增强生成)和 Agent 记忆系统的核心基础设施。
| 产品 | 类型 | 特点 | 适用场景 |
|---|---|---|---|
| Pinecone | 云服务 | 全托管、高性能 | 追求开箱即用的团队 |
| Milvus | 开源/云 | 分布式、高性能 | 大规模企业部署 |
| Weaviate | 开源/云 | 模块化、多模态 | 需要灵活定制的场景 |
| Qdrant | 开源/云 | Rust 实现、低延迟 | 性能敏感场景 |
| Chroma | 开源 | 轻量、易上手 | 原型开发、小型项目 |
| pgvector | PostgreSQL 扩展 | 基于现有 PG | 已有 PG 基础设施的团队 |
# Qdrant 向量数据库使用示例
from qdrant_client import QdrantClient
from qdrant_client.models import Distance, VectorParams
client = QdrantClient(":memory:")
# 创建集合
client.create_collection(
collection_name="documents",
vectors_config=VectorParams(size=1536, distance=Distance.COSINE)
)
# 插入文档
client.upsert(
collection_name="documents",
points=[
{"id": 1, "vector": embedding1, "payload": {"text": "文档内容1"}},
{"id": 2, "vector": embedding2, "payload": {"text": "文档内容2"}}
]
)
# 搜索
results = client.search(
collection_name="documents",
query_vector=query_embedding,
limit=5
)41.5.2 推理基础设施
- GPU 云服务:AWS SageMaker、Google Cloud Vertex AI、阿里云 PAI
- 推理引擎:vLLM(高吞吐)、SGLang(高性能)、TensorRT-LLM(NVIDIA 优化)
- 模型服务网关:LiteLLM(统一 API 层)、Portkey(多模型路由)
- Serverless 推理:Modal、Replicate、Fireworks AI
# 使用 LiteLLM 统一多模型 API
pip install litellm
# 通过统一接口调用不同厂商的模型
litellm --model gpt-4o --text "Hello"
litellm --model claude-sonnet-4-20250514 --text "Hello"
litellm --model qwen-turbo --text "你好"41.5.3 监控与可观测性
Agent 的生产部署需要完善的监控体系:
- LLM 监控:Helicone、LangSmith、Langfuse、AgentOps
- 成本追踪:各平台自带的用量面板、自定义成本分析
- 质量评测:LangSmith、Confident AI、DeepEval
# Langfuse 集成示例:追踪 Agent 执行过程
from langfuse import Langfuse
langfuse = Langfuse(public_key="pk-xxx", secret_key="sk-xxx")
# 记录一次 Agent 调用
trace = langfuse.trace(name="customer_service_agent")
trace.generation(
model="gpt-4o",
input="用户提问:如何退货?",
output="Agent 回复:您可以按照以下步骤退货...",
usage={"prompt_tokens": 150, "completion_tokens": 300},
metadata={"user_id": "user_123", "session_id": "sess_456"}
)41.6 生态发展趋势
41.6.1 协议标准化
MCP 协议的推出标志着 Agent 生态正在从"各自为政"走向"协议标准化"。可以预见:
- 2025年:MCP 成为事实标准,主流 Agent 框架和 IDE 全部支持
- 2026年:更高级的 Agent 间通信协议出现(Agent-to-Agent)
- 长期:类似 HTTP 之于 Web,形成统一的 Agent 通信协议栈
41.6.2 模型能力民主化
- 开源模型(Llama、Qwen、DeepSeek)的能力持续逼近闭源模型
- 推理成本每季度下降 50%+
- 小模型 + RAG 的方案在垂直领域可以达到大模型的效果
41.6.3 Agent 即服务(Agent-as-a-Service)
- AWS Bedrock Agents、Google Vertex AI Agent Builder 提供托管的 Agent 服务
- 企业不需要自己构建 Agent 基础设施,按使用量付费
- Agent 能力成为标准化的云服务
41.6.4 端侧 Agent
- 苹果 Intelligence、Google Gemini Nano 将 Agent 能力带到设备端
- 端侧 Agent + 云端 Agent 协作的混合架构成为主流
- 隐私敏感型任务(健康、金融)优先使用端侧 Agent
41.6.5 垂直行业 Agent 平台
- 法律、医疗、金融、教育等行业出现专用的 Agent 平台
- 行业数据 + 行业工具 + 行业工作流的深度整合
- 从通用 Agent 到领域专家 Agent 的分化
41.7 技术选型实战:构建企业知识库 Agent
让我们通过一个实际案例来综合运用本章的知识——构建一个企业内部知识库 Agent。
需求分析
- 企业有 10,000+ 内部文档(PDF、Word、Confluence)
- 需要支持自然语言查询、文档摘要、智能推荐
- 要求数据不出域(私有化部署)
- 支持权限控制(不同部门只能看到自己的文档)
- 日均 1000+ 次查询
技术选型
| 层级 | 选型 | 理由 |
|---|---|---|
| 模型 | Qwen2.5-72B(本地部署) | 中文能力强、开源可私有化 |
| 推理引擎 | vLLM | 高吞吐、OpenAI 兼容 API |
| Agent 框架 | LangGraph | 工作流灵活、生产级 |
| 向量数据库 | Milvus | 分布式、高性能、企业级 |
| Embedding | bge-m3 | 中文 Embedding 效果好 |
| 工具协议 | MCP | 标准化、可扩展 |
| 监控 | Langfuse(自建) | 开源、追踪完整 |
| 开发语言 | Python + TypeScript | 后端 Python + 前端 TypeScript |
架构设计
┌─────────────────────────────────────────────┐
│ 前端 │
│ React + TailwindCSS │
└──────────────────┬──────────────────────────┘
│ REST API
┌──────────────────▼──────────────────────────┐
│ API Gateway │
│ 认证 · 限流 · 权限 │
└──────────────────┬──────────────────────────┘
│
┌──────────────────▼──────────────────────────┐
│ Agent 编排层 (LangGraph) │
│ ┌─────────┐ ┌─────────┐ ┌─────────────┐ │
│ │ 意图识别 │→│ 知识检索 │→│ 答案生成 │ │
│ └─────────┘ └─────────┘ └─────────────┘ │
└──────────────────┬──────────────────────────┘
│ MCP Protocol
┌──────────────────▼──────────────────────────┐
│ MCP 工具层 │
│ ┌─────────┐ ┌─────────┐ ┌─────────────┐ │
│ │ Milvus │ │ 文档解析 │ │ 权限校验 │ │
│ │ 检索 │ │ 工具 │ │ 工具 │ │
│ └─────────┘ └─────────┘ └─────────────┘ │
└──────────────────┬──────────────────────────┘
│
┌──────────────────▼──────────────────────────┐
│ 模型服务层 (vLLM) │
│ Qwen2.5-72B-Instruct │
└─────────────────────────────────────────────┘41.8 本章小结
Agent 生态是一个快速演进、充满活力的领域。本章从五个维度系统地梳理了当前生态的全貌:
- 模型层:OpenAI、Anthropic 领跑,国内厂商快速追赶,开源模型持续进步
- 框架层:LangChain 生态最丰富,CrewAI 多 Agent 协作便捷,Dify/Coze 降低开发门槛
- 工具层:MCP 协议正在统一工具调用标准,Function Calling 已成为模型基本能力
- 基础设施层:向量数据库、推理引擎、监控平台日趋成熟
- 发展趋势:协议标准化、能力民主化、Agent 即服务、端侧 Agent 是主要方向
核心启示: 在 Agent 生态中做出正确的技术选型,需要综合考虑效果、成本、安全、可维护性等多个维度。没有"银弹"——最好的选型取决于你的具体场景和约束条件。
「生态不是选择,而是生存策略。融入生态,才能借力前行。」