乐于分享
好东西不私藏

企业 AI Agent 从 0 到 1|01:别先做万能助手,先把业务数字管住

企业 AI Agent 从 0 到 1|01:别先做万能助手,先把业务数字管住
图:第一版企业 AI Agent 先看四件事,输入稳定、规则清楚、结果可验收、风险可兜底。

很多企业做 AI Agent,第一步就想做一个“万能助手”。

能问制度,能查数据,能写报告,能建工单,最好还能进群自动推进流程。

听起来完整,落地时却很容易卡住。

我这次做自己的企业 AI 落地项目时,反而先把范围砍得很小:

第一版不做万能助手,只做一个企业数据查询里的指标闸门。

也就是先解决一个最容易出事故的问题:

当用户问“上个季度销售额是多少”时,AI 不能自由写 SQL,也不能自由报数字。它必须穿过一个已经定义好的指标口径、权限范围和回归测试。

这就是我现在用 MetricGate 做的第一步。

这篇还是讲“怎么选第一个不会翻车的业务闭环”,但不再泛泛讲概念。

我会拿自己的本地项目跑一遍:我选了什么场景,为什么选它,跑出了什么结果,哪些地方我写文章前先改了。

第一版不要证明 AI 什么都能做

企业 AI 第一版最容易犯的错,是把目标定得太大。

比如:

  • 做一个全公司都能用的 AI 助手。

  • 让 AI 自动查所有经营数据。

  • 让 AI 进群回答所有业务问题。

  • 让 AI 自动改系统、发通知、建工单。

这些不是永远不能做。

但它们不适合做第一版。

因为第一版真正要证明的,不是“AI 能不能覆盖所有场景”,而是:

它能不能在一个边界清楚的小闭环里,稳定、可控、可复盘地做完一件事。

我这次选的闭环是:

用户问一个经营指标问题,AI 只能通过受治理的指标定义查询结果;如果指标不存在、口径废弃、参数错误、权限不够,就明确拒答。

这个闭环很小。

但它非常适合做企业 AI Agent 的第一步。

因为企业里最怕的,不是 AI 答不上来。

而是它给出一个看起来很真的错数。

为什么我先选经营数据查询

很多人会觉得,企业 AI 第一版应该先做制度问答。

制度问答当然适合起步,但我这次没有先选它。

原因很简单:我现在要验证的不是“AI 能不能查到原文”,而是“AI 能不能安全地回答业务数字”。

经营数据查询有几个特点:

  1. 问题高频。

  2. 结果看起来简单。

  3. 一旦错了,影响很大。

  4. 很容易被 text-to-SQL demo 包装得很漂亮。

比如用户问:

Q1 确认收入是多少?

AI 如果直接自由写 SQL,可能会有很多隐性错误:

  • 把 confirmed、draft、refunded 混在一起算。

  • 把“收入”理解成旧口径。

  • 没有按用户权限过滤区域。

  • 上游数据变了,旧测试没有发现。

  • 不知道指标已经废弃,还继续回答。

这些错误最麻烦的地方是:答案不一定离谱。

它可能只是差一点。

但在老板、财务、经营会上,一个“差一点”的数字就可能误导判断。

所以我第一步没有去做一个更大的 Agent。

我先做了一个更小的闸门:

AI 可以提问,可以组织语言,但不能自由生产业务数字。

我在项目里做的第一个闭环

这个项目叫 MetricGate

它现在不是完整企业 AI Agent,也不是聊天框。

它只做一件事:

让企业数据 Agent 的业务数字,必须通过受治理的指标定义。

当前本地 demo 里,我放了 4 个指标定义:

指标状态用途
revenue_confirmed
verified
已确认收入,正式口径
orders_count
verified
已确认订单数
avg_order_value
draft
平均订单金额,业务还没完全确认
revenue_legacy
deprecated
旧收入口径,已废弃

这 4 个指标不是为了覆盖所有业务。

它们是为了验证企业数据 Agent 第一版最关键的 4 个问题:

  1. 正式指标能不能稳定返回。

  2. 草稿指标能不能明确标记。

  3. 废弃指标能不能拒答并指向新指标。

  4. 越权查询能不能明确拒绝,而不是偷偷缩小结果。

我先跑了一遍校验:

uv run metricgate validate src/metricgate/demo_metrics

OK: 4 metrics (1 deprecated, 1 draft, 2 verified), 6 golden cases

这行输出很重要。

它说明第一版不是靠一句 prompt 管口径,而是已经有了 4 个指标文件和 6 个 golden cases。

也就是说,指标定义和测试样例是放在一起被检查的。

图:MetricGate 本地 demo 跑通后的关键输出:指标校验、回归样例和拒答边界。

这个闭环里,AI 能做什么,不能做什么

我希望第一版把边界说得非常死。

AI 能做的是:

  • 根据用户问题选择一个已治理指标。

  • 提供参数,比如日期范围、区域。

  • 调用 query_metric。

  • 把返回结果解释成人话。

AI 不能做的是:

  • 自由写 SQL。

  • 自己编一个指标口径。

  • 绕过权限查别人的区域。

  • 把废弃指标继续当成正式指标回答。

  • 在没有命中指标时硬猜。

我跑 metricgate demo 时,里面有几个结果很适合解释这个边界。

正式指标可以回答:

Verified metric, full access

ask: revenue_confirmed {'date_range': ('2026-01-01', '2026-03-31')} as analyst

→ 130,395.00 (trust=verified)

草稿指标可以回答,但必须带标记:

Draft metric answers with a badge

ask: avg_order_value {'date_range': ('2026-01-01', '2026-03-31')} as analyst

→ 214.47 (trust=draft, badge: draft definition — not yet verified)

废弃指标必须拒答:

Deprecated metric refuses, points at successor

ask: revenue_legacy {'date_range': ('2026-01-01', '2026-03-31')} as analyst

→ REFUSED [deprecated] metric 'revenue_legacy' is deprecated; use 'revenue_confirmed' instead

越权查询也必须拒答:

Out-of-scope ask is refused explicitly

ask: revenue_confirmed {..., 'region': 'APAC'} as emea-manager

→ REFUSED [scope_exceeded] emea-manager asked for region=['APAC'] but is limited to region in ['EMEA']

这就是我说的“不会翻车”的第一层含义:

不是永远不错。

而是该答的时候有口径地答,不该答的时候明确拒绝

图:MetricGate 的第一层边界不是让 AI 多说,而是把能答、带标记答和必须拒答做成可复现结果。

写文章前,我先改了项目文档

这一步其实挺真实。

我准备写这篇文章时,发现项目里有几个地方会影响信任:

  • README 顶部有 PyPI badge,但包还没正式发 PyPI。

  • DESIGN 里写了 list_metrics(query?),但当前实现是 list_metrics()。

  • DESIGN 里写 metricgate serve --mcp,但当前 CLI 是 metricgate serve metrics/ --duckdb ...。

  • 文档里说 “computes aggregates in code”,但当前 SQL resolver 的聚合实际发生在受治理 SQL 模板里。

这些都不是大功能 bug。

但它们会让读者产生一个问题:

你这个项目,到底是已经实现了,还是文档先吹出去了?

所以我先做了一轮 P0 对齐。

我没有急着加新功能,而是先把 README 和 DESIGN 改成更诚实的说法:

  • 包还没上 PyPI,就写 source install。

  • 当前 MCP 工具是什么,就写什么。

  • 当前 CLI 怎么跑,就写真实命令。

  • 数字来自受治理的 resolver,不说成 LLM 或 Gate 神奇地产生数字。

  • DESIGN 里区分 v0.1 已实现和 next cut。

这件事看起来不大,但对企业 AI 落地很重要。

因为项目文档本身也是一种承诺。

如果文档和代码对不齐,文章就会变成概念包装。

我不想这么写。

用 4 个标准筛你的第一闭环

如果你也想做企业 AI Agent,第一版可以先用这 4 个标准筛。

标准好场景风险场景
输入稳定
问题类型固定,比如查某个指标
开放式管理判断
规则清楚
有指标口径、参数、权限范围
全靠经验判断
结果可验收
有 golden cases 或报表可核对
很难判断对错
风险可兜底
只读、拒答、可回放
自动改系统、自动发通知

这张表套到我这次的项目里,就是:

  • 输入稳定:经营指标问题。

  • 规则清楚:MetricSpec 里定义指标口径和参数。

  • 结果可验收:golden cases 能回放。

  • 风险可兜底:没有 execute_sql,越权和未知指标直接拒答。

所以我认为,经营数据查询里的指标闸门,是一个适合第一版的业务闭环。

它不大。

但足够真实。

第一个闭环的一句话模板

你也可以把自己的第一版场景写成一句话:

当【谁】询问【哪类业务数字】时,AI 只能通过【哪些已治理指标】查询结果,并按【哪些权限范围】返回;如果指标不存在、口径未验证、参数错误或越权,就【明确拒答/给出可选指标】,所有关键问题用【golden cases】定期回放。

套到我这次的项目里:

当业务用户询问 Q1 收入、订单数、平均订单金额时,AI 只能通过 revenue_confirmed、orders_count、avg_order_value 等已定义指标查询结果,并按 region 做权限封顶;如果指标废弃、未知或越权,就明确拒答并给出建议,所有关键问题用 golden cases 回放。

这句话能写清楚,说明第一闭环基本立住了。

如果写不清楚,先不要急着做 Agent。

先把场景收窄。

本课成功标准

这一课结束,你不需要马上写代码。

你只要能回答 5 个问题,就算过关:

  1. 你的第一版企业 AI 场景,是不是足够小?

  2. 用户输入是否稳定?

  3. 规则是否能写成文件,而不是只写进 prompt?

  4. 结果是否能用样例或报表回放验证?

  5. 不该回答的时候,系统能不能明确拒答?

如果答案都比较清楚,就可以进入下一步。

下一课不急着搭聊天框。

我会继续沿着这个真实项目往下拆:

怎么把“销售额”这种模糊业务词,写成一个可审查、可测试、可权限封顶的指标文件。

也就是 MetricSpec

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