产品概览
Qt-UI AgentKit 产品概览
Qt-UI AgentKit 是面向 Qt Widgets 应用的智能体开发套件,帮助桌面产品接入 AI 对话、工具调用、审批确认、执行追踪和流程编排能力。
适用场景
- 工业软件中的设备状态分析、告警摘要和报告生成。
- 企业内部工具中的智能问答、操作建议和数据查询。
- Qt 桌面产品中的嵌入式 AI 助手。
- 需要工具调用、人工审批和流程追踪的 Agent 工作流。
核心能力
- 多种大语言模型接入,支持 Mock 离线模型、OpenAI-compatible 接口和 DeepSeek 接口。
- Mock 离线模型,便于无网络演示和开发调试。
- ChatPanel、模型配置、TraceView、ApprovalDialog 等 Qt Widgets 原生界面组件。
- Tool Registry 和函数工具调用。
- Prompt Template、输出解析、对话记忆、RAG 检索。
- 基于状态的工作流编排,支持条件路由、循环、检查点和人工审核。
Slogan
Build Intelligent Qt Applications, Visually and Natively.
快速接入
快速接入
1. 配置模型
AgentKit 示例程序支持从本地配置读取模型信息。可以在运行目录或 UIGearsAgentKit 目录放置 agentkit.local.json。
OpenAI-compatible 配置示例:
{
"provider": "openai",
"baseUrl": "https://api.example.com/v1",
"apiKey": "your-api-key",
"model": "your-model",
"maxTokens": 1024,
"timeoutMs": 60000,
"stream": true
}
DeepSeek 配置示例:
{
"provider": "deepseek",
"baseUrl": "https://api.deepseek.com",
"apiKey": "your-deepseek-api-key",
"model": "deepseek-v4-flash",
"maxTokens": 1024,
"timeoutMs": 60000,
"stream": true
}
也可以通过环境变量配置真实模型。OpenAI-compatible provider 使用 OPENAI_API_KEY、OPENAI_BASE_URL、OPENAI_MODEL;DeepSeek provider 使用 DEEPSEEK_API_KEY、DEEPSEEK_BASE_URL、DEEPSEEK_MODEL。
没有配置时,示例程序会自动使用 Mock 模型离线运行。
2. 创建聊天请求
using namespace UIGQtLib::QtAgent;
ChatRequest request;
request.addSystemMessage("你是 Qt 应用中的智能助手。");
request.addUserMessage("分析当前设备状态。");
ChatReply* reply = model->chat(request, {}, parent);
3. 注册工具
ToolRegistry registry;
registry.registerTool(new FunctionTool(
"query_device_status",
"查询设备状态。",
schema,
ToolPermission::ReadOnly,
[](const QJsonObject& args) {
return ToolResult{true, {}, "设备状态正常。"};
}
));
4. 运行示例程序
打开 AgentKit 示例程序后,可通过左侧能力树分别查看基础对话、模型能力、流程能力和设备监控分析示例。
使用指南
使用指南
模型接入
AgentKit 使用 ChatModel 抽象模型接口。首版内置:
MockChatModel:本地离线模型,用于演示和测试。OpenAICompatibleModel:兼容 OpenAI Chat Completions 协议的 HTTP 客户端。DeepSeekModel:DeepSeek 模型客户端,默认使用 OpenAI-compatible 接口https://api.deepseek.com和deepseek-v4-flash。
示例程序支持三种 provider:mock、openai、deepseek。配置文件 agentkit.local.json 中把 provider 设置为 deepseek 后,只需要填写 DeepSeek API Key 即可使用真实模型;也可以通过 DEEPSEEK_API_KEY、DEEPSEEK_BASE_URL、DEEPSEEK_MODEL 环境变量配置。
工具调用
业务功能通过 AgentTool 或 FunctionTool 注册到 ToolRegistry。工具包含名称、说明、JSON Schema、权限和执行函数。
工具权限包括:
ReadOnlyWriteDestructiveExternalNetworkFileSystemSystemCommand
涉及写入、文件系统或更高风险操作时,应通过审批弹窗确认。
Trace 追踪
每次工具调用会生成 ToolCallTrace,用于展示工具名称、状态、权限、输入、输出、错误和耗时。ToolCallTraceView 可直接用于产品调试界面。
工作流编排
StateGraph 使用 QJsonObject 作为状态对象。节点读取状态并返回局部更新,边和条件边决定下一步执行位置。
适合实现:
- 多步骤任务。
- 条件路由。
- 循环直到完成。
- 人工审核。
- 工具节点和模型节点组合。
能力模块
AgentKit 能力模块
Qt-UI AgentKit 的接口位于命名空间 UIGQtLib::QtAgent。建议业务代码统一引入聚合头文件:
#include "QtAgentKit.h"
本章按 AgentKit 的能力模块说明 SDK 的核心类、接口方法、参数、返回值和常见调用示例。
类关系概览
ChatModel
├─ MockChatModel
├─ OpenAICompatibleModel
└─ DeepSeekModel
AgentTool
└─ FunctionTool
ToolRegistry
AgentExecutor
PromptTemplate
ChatPromptTemplate
RunnableChain
RunnableParallel
StringOutputParser
JsonOutputParser
StructuredOutputParser
ChatMemory
InMemoryRetriever
SimpleRagChain
StateGraph
MemoryCheckpointer
AgentChatPanel
ModelConfigWidget
ToolCallTraceView
ApprovalDialog
选型建议
| 场景 | 推荐模块 |
|---|---|
| 只需要普通 AI 对话 | ChatRequest + OpenAICompatibleModel 或 DeepSeekModel |
| 需要在 UI 中显示流式输出 | ChatReply + AgentChatPanel |
| 需要模型调用本地业务函数 | ToolRegistry + FunctionTool + AgentExecutor |
| 需要高风险操作确认 | ToolPermission + ApprovalDialog |
| 需要知识库问答 | InMemoryRetriever + SimpleRagChain |
| 需要多步骤可追踪流程 | StateGraph + GraphTrace |
| 需要保存流程状态 | MemoryCheckpointer |
| 需要快速验证产品能力 | MockChatModel + 示例页面 |
授权说明
授权说明
Qt-UI AgentKit 提供社区免费版和商业订阅版。
社区免费版
适合学习、原型验证和非商业评估。下载内容后续补充,当前页面会保留下载入口。
1年订阅版
价格:¥6,800。
适合单项目商用接入,包含 1 年更新权益和邮件支持。
3年订阅版
价格:¥19,800。
适合较长产品研发周期,包含 3 年更新权益和优先邮件支持。
下载说明
商业源码包下载内容后续补充。购买记录、下载入口和更新权益将在会员中心与订单查询页面中展示。