阅读时间:1 分钟
0 字

开发概览

这一部分面向二次开发者,重点回答两个问题:

Dux AI 本身是建立在 Dux PHP Admin 体系上的,所以你在这里做的很多二次开发,并不是脱离原系统重新造一套,而是在原有中后台、模块化、资源接口和业务体系上继续扩展 AI 能力。

如果你还不熟悉 Dux PHP Admin 的模块开发方式,建议先参考:

  • GitHub:https://github.com/duxweb/dux-php-admin

  • 如何在 PHP 业务代码里调用 Dux AI 的能力

  • 如何围绕现有模块继续扩展服务商、能力、机器人和工作流

先理解模块分层

从开发视角看,Dux AI 可以分成五层:

  • 配置层:服务商、模型、智能体、向量库、解析器、知识库、工作流
  • 服务层:AgentRagParseVectorStore
  • 能力层:工具、知识库、HTTP、图片、视频、工作流、异步任务
  • 接口层:对外聊天 API、OpenAI 兼容 API、Webhook、后台资源接口
  • 渠道层:机器人平台接入与消息桥接

业务开发时最常用的入口

当前最重要的几个服务类:

  • App\Ai\Service\Agent
  • App\Ai\Service\Rag
  • App\Ai\Service\Parse
  • App\Ai\Service\VectorStore
  • App\Boot\Service\BotService

这些类本质上都是对具体服务实现的静态门面,适合在业务模块中直接调用。

推荐开发顺序

如果你要在现有业务中接入 Dux AI,建议按这个顺序推进:

  1. 先在后台跑通一套可用配置
  2. 再在代码中调用 Agent 服务
  3. 如需文档问答,再接 Rag
  4. 如需文件解析,再接 Parse
  5. 如需业务动作,再扩展能力或工作流
  6. 如需外部聊天入口,再接机器人或对外 API

一个重要原则

配置和业务逻辑分开

把服务商、模型、智能体这些都看作平台配置,不要把业务逻辑直接写进配置页面说明里。

智能体负责理解,工作流负责执行

  • 智能体适合处理对话、意图判断、能力调度
  • 工作流适合处理异步任务、多步骤执行和稳定输出

机器人只是入口,不是业务核心

机器人平台本身不负责业务逻辑,它只是把消息送进智能体,再把结果回写出去。