VTJ.PRO 在线应用开发平台的Agent与LLM集成

AI 代理与 LLM 集成

VTJ.PRO 中的 AI 代理子系统为低代码平台提供了智能核心,支持 AI 辅助代码生成、图像到 DSL 转换以及基于聊天的交互式开发等功能。该系统设计为与提供商无关,支持多种大语言模型后端,同时为应用程序的其他部分提供统一的接口。

系统概述

AI 基础设施分为 LLM 管理 层(处理连接和模型元数据)和 代理编排 层(处理提示词、上下文和流式传输)。

核心组件与关系

下图展示了 AI 子系统如何通过编排各种服务,将自然语言需求桥接到代码实体空间。

AI 子系统架构

graph TD subgraph Natural Language Space User[User Prompt / Image] TopicService["TopicService (Chat History)"] end subgraph Agent Orchestration Layer AgentService[AgentService] AIService["AIService (OpenAI Client)"] PromptService["PromptService (Templates)"] end subgraph LLM Infrastructure LLMModelService[LLMModelService] LLMModelEntity["LLMModelEntity (DB)"] CacheService["CacheService (Redis/Memory)"] end subgraph Code Entity Space DslService["DslService (Low-code DSL)"] Coder["@vtj/coder (Vue Gen)"] end User --> AgentService AgentService --> PromptService AgentService --> AIService AgentService --> DslService AIService --> LLMModelService LLMModelService --> LLMModelEntity LLMModelService --> CacheService DslService --> Coder

LLM 模型管理与配置

VTJ.PRO 支持多种 LLM 提供商(例如 OpenAI、DeepSeek、本地模型)。模型通过 LLMPurpose 进行分类,例如用于逻辑生成的 Coder 或用于图像处理的 Multimodal

  • 提供商抽象LLMModelEntity 存储 API 密钥、基础 URL 和模型标识符。
  • 缓存 :为确保请求编排期间的低延迟,LLMModelService 使用基于缓存的机制(getModels)来避免频繁的数据库查询。
  • 专用检索 :系统提供了辅助方法,如 getCoderModels()getMultiModel(),用于快速识别特定任务(例如生成 Vue 代码与描述 UI 截图)的最佳模型。

有关详细的配置步骤和实体定义,请参阅 LLM 模型管理与配置 文档。

AI 代理工作流与服务

AgentModule 协调 AI 交互的高级逻辑。它通过一系列专用服务将用户意图转换为结构化的 DSL 或代码片段。

关键服务

服务 职责
AIService 管理 OpenAI 客户端实例,处理流式补全,并实现 AbortController 以支持请求取消。
PromptService _docs/prompts/ 加载系统提示词。它包括用于逻辑 (coder)、图像转 DSL (image) 和结构化数据 (json) 的模板。
TopicService 管理聊天会话("话题")及其持久化,允许用户在多次 AI 交互中保持上下文。
ChatService 处理话题内的消息级逻辑,包括用户查询和 AI 响应。

从提示词到 DSL

以下交互流程展示了自然语言请求如何被转换为系统级代码实体。

自然语言到代码实体流程

sequenceDiagram participant U as User (IDE/Workbench) participant A as AgentService participant P as PromptService participant AI as AIService participant LLM as LLM Provider (OpenAI/DeepSeek) U->>A: Request: "Create a login form" A->>P: getPrompt('coder') P-->>A: System Prompt + Context A->>AI: streamChat(Messages | Model) AI->>LLM: POST /v1/chat/completions LLM-->>AI: Streaming Tokens (JSON/DSL) AI-->>A: Parsed Content A-->>U: Update DSL / Preview UI

有关提示词模板和流式实现的详细信息,请参阅 LLM 服务、缓存与 AI 代理工作流 文档。

与低代码引擎的集成

AI 子系统与 DslService 紧密集成。当 AI 生成响应时,它通常会输出与 VTJ DSL 兼容的 JSON 结构。

  1. 代码生成AgentService 使用 @vtj/coder 逻辑,确保 AI 生成的代码片段能够无缝合并到现有的页面架构中。
  2. 验证ValidationService(在代理模块内)确保 LLM 的输出在应用于项目之前符合预期的 JSON 模式。
  3. 图像转 UI :通过利用多模态模型,平台可以获取屏幕截图,并使用 PromptService 指示 LLM 生成相应的 @vtj/core DSL。

参考资料

相关推荐
Chen6667821 分钟前
我让一个Agent Team长时间自治运行后,发现问题不在“怎么组队”
agent
Randyliu24 分钟前
20260508-Agent搭建记录以及对ReAct框架的理解
面试·agent
小九九的爸爸1 小时前
前端想要入门Agent开发,要具备哪些Python基础?
python·agent·ai编程
AlbertZein1 小时前
别只盯着最强模型了,Agent 场景更该看这类 Flash 档模型
aigc·openai·ai编程
陌路遥1 小时前
别被 Demo 骗了:当前 Agent 的"自主规划",LLM 其实一句都没懂
agent
Bolt1 小时前
读懂 Claude Code `/loop` 与编码 Agent 的循环革命
人工智能·程序员·agent
码哥字节1 小时前
给 Claude Code 布置任务,它为什么总是理解错——我找到原因了
agent
ZzT1 小时前
公司用 AI 筛简历,他写了个 AI 帮你挑公司
面试·aigc·ai编程
妙码生花2 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(十四):眨眼小人登录页制作
前端·javascript·ai编程
妙码生花2 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(十三):前端路由初始化
前端·javascript·ai编程