当前位置:首页>python>比较了 6 个 Python AI Agent 框架:到底该选哪个

比较了 6 个 Python AI Agent 框架:到底该选哪个

  • 2026-06-27 19:16:51
比较了 6 个 Python AI Agent 框架:到底该选哪个
AI Agent 框架可以选择的有很多:

LangGraph、CrewAI、PydanticAI、OpenAI Agents SDK、smolagents、Google ADK,看起来都能“构建 agent”,但它们解决的问题并不一样。

核心判断:选 Agent 框架,不要先问“哪个最火”,要先问“我到底在构建哪种系统”:状态机、角色团队、类型安全后端、OpenAI 平台应用、轻量 code agent,还是企业级多 agent 平台。

如果只看 GitHub star、教程数量、示例代码,很容易选错。

有的框架适合把长任务拆成可恢复的状态图;有的框架适合模拟“研究员、写作者、审稿人”这种角色协作;有的框架更适合把 LLM 接进严肃 Python 后端;有的框架更像厂商平台的 agent runtime;有的框架强调极简和 code action;有的框架从一开始就面向企业部署、评估和云端运行。

所以这不是一个“谁吊打谁”的问题。

这是一个工程选型问题。

我会按 6 个维度来比较:

  1. 抽象层级:它把 agent 抽象成什么?
  2. 控制力:开发者能不能控制状态、路由、重试、人工介入?
  3. 工程化:是否支持观测、评估、部署和长期运行?
  4. 类型安全:输出、工具参数、依赖是否容易约束?
  5. 生态绑定:是否依赖某个模型平台或云平台?
  6. 适合场景:它最适合解决哪类真实问题?

先给结论

如果你只想快速选,我会这样判断:

LangGraph:适合复杂、长周期、状态明确、需要可恢复执行的 agent 工作流。它更像底层编排运行时。

CrewAI:适合业务自动化和多角色协作,尤其是研究、写作、分析、运营流程。它的核心是 Crews + Flows。

PydanticAI:适合严肃 Python 后端里的 agent,尤其重视类型安全、结构化输出、依赖注入、观测和评估。

OpenAI Agents SDK:适合已经深度使用 OpenAI 平台,希望用代码管理工具、handoff、guardrails、human review、tracing 和 sandbox 的团队。

smolagents:适合快速实验、学习 agent 原理、构建 code agent。它极简,强调让 agent 用 Python 代码表达行动。

Google ADK:适合 Google Cloud/Gemini 生态里的企业级 agent,尤其是多语言、多 agent、云部署、上下文管理和评估需求。

一句话总结:

不要拿 CrewAI 去做底层状态机,也不要拿 LangGraph 去追求最低学习成本;不要拿 smolagents 直接承接高风险企业流程,也不要忽略 PydanticAI 在后端工程里的优势。

先区分三类 Agent 框架

我会先把它们分成三类。

第一类是编排型框架

代表是 LangGraph 和 Google ADK。它们关注的是状态、流程、路由、持久化、人工介入、多 agent 之间如何协作。你构建的是一个“运行系统”,不只是一个模型调用包装器。

第二类是协作型框架

代表是 CrewAI。它把 agent 看成有角色、有目标、有工具的团队成员,再用 Flow 管理状态和执行过程。它非常适合把业务流程表达成“某些角色协作完成一个任务”。

第三类是开发体验型框架

代表是 PydanticAI、OpenAI Agents SDK 和 smolagents。它们分别把重点放在类型安全、平台能力和极简 code agent 上。

这个分类比排名更重要。

因为很多选型失败,不是框架不行,而是你拿错了工具。

LangGraph:适合把 Agent 当状态机来做

LangGraph 的定位很清楚:它是一个低层级的 agent 编排框架和运行时,用来构建、管理、部署长时间运行的有状态 agent。

它不是最“傻瓜”的框架。

它也不是想替你决定 agent 应该长什么样。

LangGraph 更像一个可编程状态图:你定义节点、边、状态、条件和中断点,让 agent 工作流按图执行。

官方文档强调几个核心能力:durable execution、streaming、human-in-the-loop、persistence、memory、debugging、deployment。

这几个词翻译成工程语言就是:

任务跑一半失败了,能不能恢复?

执行过程中,能不能让人介入修改状态?

多轮任务的短期记忆和长期记忆怎么管理?

复杂路径里,怎么知道 agent 到底走了哪条路?

如果你的 agent 是“长任务 + 多步骤 + 状态复杂 + 需要审计”,LangGraph 很合适。

典型场景包括:代码修复 agent、长文档研究 agent、审批流 agent、客户工单处理、跨系统自动化流程。

它的代价也明显:抽象更底层,学习曲线更高。你需要认真设计 graph,而不是只写几个角色和任务。

我的建议是:当你的需求里出现“恢复、状态、分支、人工介入、长任务、可观测”这些关键词,再优先看 LangGraph。

CrewAI:适合把 Agent 当团队来组织

CrewAI 的核心是两个概念:Flows 和 Crews。

Flow 是应用骨架,负责状态、事件、条件分支和执行控制。

Crew 是完成复杂任务的 agent 团队,里面可以有不同角色、目标和工具。

这套抽象很适合业务人员也能理解的流程:

研究员收集资料,分析师提炼观点,写作者生成初稿,审稿人检查质量,最后 Flow 决定是否进入下一步。

CrewAI 的优势是表达力强,特别适合“多角色协作”。

如果你在做市场研究、竞品分析、内容生成、销售线索处理、数据报告、客服流程自动化,CrewAI 的心智负担相对低。

但要注意一个陷阱:角色协作很容易写得像剧本。

如果你只定义几个“高级研究员”“资深专家”“严谨审稿人”,但没有明确输入输出、工具权限、失败处理和评估标准,结果往往会变成热闹但不可控。

CrewAI 官方也强调生产级应用应该从 Flow 开始,用 Flow 管状态和控制执行,再把复杂问题委托给 Crew。

所以 CrewAI 的正确打开方式不是“堆角色”,而是:

先用 Flow 定义流程边界,再用 Crew 解决局部需要协作和创造性的任务。

PydanticAI:适合 Python 后端里的类型安全 Agent

PydanticAI 的特点可以用一句话概括:把 Pydantic 的类型安全和开发体验带进 GenAI 应用。

它不追求最戏剧化的多 agent 协作,也不是只做玩具示例。

它更像严肃 Python 后端工程师会喜欢的框架:Agent 有输入依赖、工具、结构化输出、模型设置、capabilities、观测和评估。

PydanticAI 的 Agent 可以指定依赖类型和输出类型。工具函数、动态指令、输出结构都能被类型系统约束。

这对生产系统很重要。

很多 agent bug 不是模型“不聪明”,而是工具参数错了、输出 schema 不稳定、依赖对象传错、下游解析失败。

PydanticAI 想把这类错误尽量从运行时提前到开发时。

它也强调 model-agnostic,支持 OpenAI、Anthropic、Gemini、DeepSeek、Grok、Cohere、Mistral、Bedrock、Ollama、OpenRouter 等模型或供应商。

如果你正在写一个 Python 服务,希望 agent 输出能被数据库、API、任务队列、前端稳定消费,PydanticAI 很值得看。

它不一定是“最会编排复杂多 agent”的框架,但它很适合把 LLM 能力嵌进已有后端系统。

选择规则很简单:如果你最担心的是 schema、类型、可测试、可观测,而不是多角色表演,优先看 PydanticAI。

OpenAI Agents SDK:适合 OpenAI 平台型 Agent 应用

这里先澄清一个概念。

用户常说的 OpenAI SDK,通常是指直接调用 OpenAI API 的 Python SDK。它本身不是完整 agent 框架。

真正用于 agent 编排的,是 OpenAI Agents SDK。

OpenAI 官方文档里把 Agents SDK 定位为:当应用自己负责 orchestration、tool execution、approvals 和 state 时使用。

它的核心能力包括:Agent definitions、models/providers、runtime loop、state、sandbox agents、handoffs、guardrails、human review、tools、MCP、tracing、evaluation、voice agents。

这说明它不是“更高级的 API wrapper”,而是围绕 OpenAI 平台构建 agent 应用的 SDK。

如果你已经在用 Responses API、OpenAI hosted tools、MCP、tracing,OpenAI Agents SDK 的优势很明显:集成路径短,概念统一,官方能力更新能更快接上。

它还有一个值得注意的方向:Sandbox Agents。

这类 agent 可以在容器化或受控环境里处理文件、运行命令、保留工作区状态,更接近 coding agent 或 workspace agent 的需求。

但它的代价也很清楚:如果你的模型和运行环境必须高度多云中立,或者团队已经在 LangChain/LangGraph/PydanticAI 生态里深耕,OpenAI Agents SDK 不一定是最自然的底座。

我的建议是:当你的 agent 产品主要围绕 OpenAI 模型、工具和平台能力构建,优先看它;当你的核心诉求是跨供应商中立和自定义编排,先和 LangGraph、PydanticAI 对比。

smolagents:适合轻量实验和 Code Agent

smolagents 来自 Hugging Face,定位非常直接:用尽量少的抽象构建 agent。

它的特点是极简。

官方文档强调,agent 逻辑大约千行级别,抽象保持在最小形态。

更重要的是,它默认强调 CodeAgent。

传统 tool-calling 往往让模型输出 JSON:调用哪个工具,传什么参数,再由程序解析。

CodeAgent 的思路是让模型写 Python 代码来表达行动。这样可以更自然地处理循环、条件、组合、临时变量、复杂对象。

这对很多实验非常有吸引力。

比如你想快速做一个搜索 + 计算 + 文件处理的 agent,smolagents 可能十几行就能跑起来。

它也支持不同模型来源:Hugging Face Hub、OpenAI、Anthropic、LiteLLM、本地 Transformers、Ollama 等,还能接 MCP、LangChain tool、Hub Space 工具。

但 CodeAgent 的优势也是风险。

让模型写代码并执行,安全边界必须非常清楚。沙箱、权限、文件访问、网络访问、超时、资源限制都不能省。

smolagents 适合学习、原型、研究、内部实验、轻量自动化。

如果要放到企业生产流程里,我会先问:执行环境是否隔离?工具权限是否最小化?日志和回放是否足够?失败时谁接管?

Google ADK:适合企业级、多语言、云端 Agent 平台

Google ADK,全称 Agent Development Kit,是 Google 面向生产级 agent 的开放开发框架。

它不只支持 Python,还支持 TypeScript、Go、Java、Kotlin。

这点很重要。很多企业系统不是纯 Python,后端可能是 Java、Go,前端工具链可能是 TypeScript。ADK 的多语言支持更贴近大型组织。

Google 文档强调 ADK 可以构建、调试、部署可靠的企业级 AI agents;支持从 agents 和 tools 起步,扩展到复杂多 agent 系统;支持 workflow agents 的可预测管道,也支持 agent-coordinated dynamic routing。

它还强调上下文管理:不是简单把字符串一路拼到 context window 爆掉,而是把 sessions、memory、tool outputs、artifacts 组织成结构化视图,并过滤无关事件、总结旧对话、按需加载 artifacts、跟踪 token 使用。

这说明 ADK 的目标不是“小脚本能跑”,而是“复杂 agent 系统能长期运营”。

如果你的技术栈已经在 Google Cloud、Gemini、Vertex AI、Cloud Run、GKE、企业安全和成本管理体系里,ADK 是很自然的选择。

但如果你只是个人开发者或小团队做原型,ADK 可能显得重。

它适合从一开始就考虑部署、评估、上下文管理、多语言团队和企业集成的项目。

怎么选:用 6 个问题筛掉一半框架

我建议选型前先问 6 个问题。

第一,流程是否长期运行、需要恢复?

需要,就优先看 LangGraph 或 Google ADK。

第二,任务是否天然适合多角色协作?

适合,就看 CrewAI;但生产环境要用 Flow 管住 Crew。

第三,输出是否要被后端系统稳定消费?

要,就优先看 PydanticAI,因为类型和结构化输出会成为长期收益。

第四,是否深度绑定 OpenAI 平台?

如果是,OpenAI Agents SDK 是最短路径。

第五,是否只是快速验证 agent 想法?

如果是,smolagents 可能最轻。

第六,是否有企业云部署、多语言和治理需求?

如果是,Google ADK 值得重点评估。

一个更实用的选择表述

如果只能选一个起步,我会这样说:

做复杂状态流:选 LangGraph。

做业务多角色自动化:选 CrewAI。

做类型安全 Python 后端:选 PydanticAI。

做 OpenAI 平台 agent 产品:选 OpenAI Agents SDK。

做轻量 code-agent 实验:选 smolagents。

做 Google Cloud 企业 agent:选 Google ADK。

但真实团队不一定只选一个。

一种很常见的组合是:

用 LangGraph 或 ADK 做底层编排;

用 PydanticAI 管结构化输出和后端契约;

用 OpenAI Agents SDK 或 Google ADK 接平台能力;

用 smolagents 快速验证某个 code agent 想法;

用 CrewAI 表达某些业务角色协作流程。

框架不是信仰,边界才是重点。

不要忽略三个生产问题

第一,Agent 的最大风险不是“回答差”,而是“行动错”。

一旦 agent 能调用工具、读文件、改数据、发请求,就必须加权限控制、人工确认、审计日志和回滚机制。

第二,多 agent 不天然更可靠。

多个 agent 可能互相放大错误,也可能让调试更困难。多 agent 的价值在于分工、隔离、可测试,而不是让系统看起来更智能。

第三,评估必须在框架选型早期就做。

不要等系统上线后再想怎么评估。你至少要有任务集、成功标准、失败类型、成本统计、工具调用日志和人工抽检机制。

这也是为什么我更看重框架的 observability、evals、tracing、state 和 human-in-the-loop,而不只看示例代码有多短。

总结

这 6 个 Python AI Agent 框架,代表了 6 种不同的工程哲学。

LangGraph 说:agent 首先是有状态工作流。

CrewAI 说:agent 可以像团队一样分工协作。

PydanticAI 说:agent 应该像严肃后端代码一样类型安全。

OpenAI Agents SDK 说:agent 应该和平台工具、guardrails、handoffs、tracing 深度集成。

smolagents 说:agent 不必复杂,行动可以直接用代码表达。

Google ADK 说:agent 要能进入企业级多语言、多云端、多 agent 的生产系统。

真正成熟的选型,不是选最流行的那个,而是把框架的设计哲学和你的问题形状对齐。

如果项目还在探索期,先用 smolagents、PydanticAI 或 OpenAI Agents SDK 做小闭环。

如果已经进入复杂流程和长任务,尽早评估 LangGraph 或 Google ADK。

如果业务流程天然需要多个角色协作,再引入 CrewAI,但要用 Flow 把边界管住。

Agent 框架的终点不是“让模型多做几步”,而是让不确定的模型行动,进入可控、可观测、可评估的工程系统。

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-03 01:01:21 HTTP/2.0 GET : https://f.mffb.com.cn/a/499086.html
  2. 运行时间 : 0.317429s [ 吞吐率:3.15req/s ] 内存消耗:4,748.33kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=50224a24c4bb258adbfb72b4524c375c
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000697s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000746s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000319s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000278s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000492s ]
  6. SELECT * FROM `set` [ RunTime:0.000198s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000568s ]
  8. SELECT * FROM `article` WHERE `id` = 499086 LIMIT 1 [ RunTime:0.005169s ]
  9. UPDATE `article` SET `lasttime` = 1783011681 WHERE `id` = 499086 [ RunTime:0.001937s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.010970s ]
  11. SELECT * FROM `article` WHERE `id` < 499086 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000589s ]
  12. SELECT * FROM `article` WHERE `id` > 499086 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.019952s ]
  13. SELECT * FROM `article` WHERE `id` < 499086 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.056869s ]
  14. SELECT * FROM `article` WHERE `id` < 499086 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.032198s ]
  15. SELECT * FROM `article` WHERE `id` < 499086 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.119258s ]
0.319042s