Skip to main content

genui-integration

genui-sdk 全方位指南:安装、配置、集成、示例。用户提到 genui-sdk、genui-sdk-server,或想构建 AI 聊天界面、动态 UI 组件、Node.js 后端 LLM 代理(OpenAI 兼容 chat/completions API)时使用。涵盖 Vue/Angular 前端(主题、物料、GenuiChat/GenuiRenderer)与 Server 后端(CLI、Express 集成、流式代理)。即使用户只描述需求(如"搭建 LLM 代理服务"、"AI 聊天+动态组件")而未提及 SDK 名称也应触发。

معلومات المصدر

المستودع
opentiny/genui-sdk
آخر نشاط في المصدر
٣ سبتمبر ٢٠٢٦ في ٠٦:٤١
لغة SKILL.md المكتشفة
الصينية
النجوم
١٧٢
التفرعات
٢١

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
8 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
genui-integration
description
genui-sdk 全方位指南:安装、配置、集成、示例。用户提到 genui-sdk、genui-sdk-server,或想构建 AI 聊天界面、动态 UI 组件、Node.js 后端 LLM 代理(OpenAI 兼容 chat/completions API)时使用。涵盖 Vue/Angular 前端(主题、物料、GenuiChat/GenuiRenderer)与 Server 后端(CLI、Express 集成、流式代理)。即使用户只描述需求(如"搭建 LLM 代理服务"、"AI 聊天+动态组件")而未提及 SDK 名称也应触发。
# GenUI SDK 集成指南 本 skill 帮助用户将 GenUI SDK 集成到项目中。GenUI SDK 是一个用于构建由大语言模型(LLM)驱动的生成式 UI 界面的工具包,使 AI 能够动态生成交互式 UI 组件。 ## 理解用户需求 在提供集成指导之前,确定: 1. **使用哪个技术栈?** 询问用户使用什么技术: - **Vue**(Vue 3 组合式 API)→ 阅读 `references/vue.md` - **Angular**(Angular 独立组件)→ 阅读 `references/angular.md` - **Server**(Node.js 后端服务)→ 阅读 `references/server.md` - **其他框架**(React 等)→ 说明当前仅支持 Vue 和 Angular,建议关注官方更新 - **多个/全部**(需要全面指导)→ 综合提供所有相关参考 2. **项目状态?** 确定他们是: - 从零开始(新项目)→ 提供完整的初始化步骤 - 添加到现有项目 → 侧重于配置和集成注意事项 3. **使用场景?** 了解他们想要构建什么: - 带 AI 的完整聊天界面(使用 `GenuiChat`,仅 Vue) - 带流式渲染器的自定义 UI(使用 `GenuiRenderer`) - 代理 LLM 调用的后端服务(使用 `genui-sdk-server`) ### 集成模式决策树 根据用户需求,引导他们选择合适的模式: ``` 用户需要什么? ├─ 快速开始,完整聊天界面 │ ├─ Vue → GenuiChat(模式 1) │ └─ Angular → 不支持,建议使用 GenuiRenderer + 自定义聊天外壳 ├─ 自定义 UI 布局 │ ├─ Vue → GenuiRenderer(模式 2) │ └─ Angular → GenuiRenderer(模式 2) ├─ 后端服务 │ └─ 所有框架 → genui-sdk-server(模式 3) └─ 不确定 └─ 询问具体需求,然后推荐 ``` ### 边缘场景处理 - **React 用户**:说明 GenUI SDK 目前仅支持 Vue 和 Angular,建议: 1. 关注官方 GitHub 仓库了解 React 支持计划 2. 考虑迁移到 Vue 或 Angular 3. 参考架构设计,自行实现类似功能 - **TinyVue 配置**:如果用户询问 TinyVue 组件库配置: 1. 说明 TinyVue 是 GenUI SDK 的物料系统的一部分 2. 引导查看 `references/materials/index.md` 及 [快速开始 - 物料与主题](https://docs.opentiny.design/genui-sdk/guide/quick-start#通过-genuiconfigprovider-配置物料与主题) 3. 提供 `GenuiConfigProvider` 的使用示例 - **主题切换**:如果用户询问深色模式或主题: 1. 说明支持 4 种主题:`dark`、`lite`、`light`、`auto` 2. 提供 `GenuiConfigProvider` 的 `theme` 属性配置 3. 引导查看各参考文件的主题配置章节 - **自定义组件**:如果用户想让 AI 使用业务组件: 1. 说明需要在前端注册组件 + 后端配置 `tinygenui` metadata 2. 引导查看 `examples/` 目录的自定义组件示例 3. 提供前后端联动的完整流程 - **openPage / 页面跳转**:如果用户实现导航类自定义动作: 1. 说明 LLM 控制的 URL 不可信,不可直接 `window.open(params.url)` 2. 引导查看 `references/angular.md` 的 `openAllowedPage` 模式(origin 白名单 + 协议校验) 3. 跨域或 `_blank` 须使用 `noopener,noreferrer`,拒绝未授权目标 - **Legacy 迁移**:如果用户从 v1.3.0 前版本升级、希望零配置快速迁移: 1. 引导使用 `GenuiLegacyChat`(Vue)或 `GenuiLegacyRenderer`(Vue/Angular) 2. 说明内置默认物料,无需 `GenuiConfigProvider` 3. 新项目仍应使用当前版组件 + 官方物料包,见 `references/vue.md` 或 `references/angular.md` 兼容组件章节 - **Element Plus 用户**:如果项目已使用 Element Plus 而非 OpenTiny Vue: 1. 说明可使用 `@opentiny/genui-sdk-materials-vue-element-plus` 替代官方物料 2. 引导查看 `references/materials/vue-element-plus.md` 3. 提醒需额外引入 `element-plus/dist/index.css` - **精简组件集**:如果用户不需要图表或想减小物料体积: 1. 说明 OpenTiny Vue 官方包提供 `miniMaterials` / `miniMaterialsMeta` 精简集 2. 引导查看 `references/materials/vue-opentiny-vue.md` 3. 强调前后端须一致使用 mini 版本 一旦了解他们的需求,**阅读相应的参考文件**并提供指导。 ## 核心概念 在深入具体技术栈之前,理解这些关键概念: ### 物料(Materials) GenUI SDK 使用**物料系统**将核心 SDK 与 UI 组件解耦。使用当前版 **GenuiChat** / **GenuiRenderer**(v1.3.0+)时,须通过 `GenuiConfigProvider` 注入物料。**Legacy 兼容组件**(`GenuiLegacyChat` / `GenuiLegacyRenderer`)内置默认物料,无需 ConfigProvider,见各参考文件「兼容组件」章节。 官方物料(默认推荐): - Vue:`@opentiny/genui-sdk-materials-vue-opentiny-vue` - Angular:`@opentiny/genui-sdk-materials-angular-opentiny-ng` 可选物料与变体(详见 `references/materials/`): - Vue Element Plus 替代方案:`@opentiny/genui-sdk-materials-vue-element-plus` - OpenTiny Vue 精简集:`miniMaterials` / `miniMaterialsMeta` - 旧项目迁移:`GenuiLegacyChat` / `GenuiLegacyRenderer`(内置物料) 当用户询问替换 UI 库、精简组件集或迁移方案时,阅读 `references/materials/index.md` 及对应专页。 ### 组件 **GenuiChat**(仅 Vue):一个集成的聊天组件,包含会话管理、流式传输和生成状态。是最简单的入门方式。 **GenuiRenderer**:核心渲染器组件,将 JSON schema 转换为 UI。Vue 和 Angular 都可用。当你需要更多控制 UI 或想要构建自定义聊天界面时使用。 **GenuiConfigProvider**:配置提供者,注入物料和主题。当前版 GenuiChat / GenuiRenderer 集成需要;Legacy 兼容路径可省略。 ### 流式协议 GenUI SDK 使用服务器发送事件(SSE)和 OpenAI 兼容格式。LLM 在用 ` ```schemaJson ` 标记的代码块中返回 JSON schema,SDK 提取并渲染这些内容。 ## 集成模式概览 根据用户需求,引导他们选择合适的模式: ### 模式 1:GenuiChat(仅 Vue,推荐快速开始) - **适用场景**:快速构建完整的聊天界面 - **特点**:开箱即用,包含会话管理、流式传输、生成状态 - **详细指南**:见 `references/vue.md` 模式 1 概况,操作步骤见 [快速开始](https://docs.opentiny.design/genui-sdk/guide/quick-start) ### 模式 2:GenuiRenderer(Vue 和 Angular,自定义 UI) - **适用场景**:构建自定义聊天界面或与现有 UI 集成 - **特点**:更灵活的控制,需要自己处理流式数据 - **详细指南**:见 `references/vue.md` 或 `references/angular.md` 模式 2 概况;Vue 见 [使用 Renderer 组件](https://docs.opentiny.design/genui-sdk/guide/start-with-renderer),Angular 见 [Angular Renderer 指南](https://docs.opentiny.design/genui-sdk/guide/angular/start-with-renderer) ### 模式 3:Server 集成 - **适用场景**:代理 LLM 调用的后端服务 - **特点**:OpenAI 兼容 API,支持流式响应 - **详细指南**:见 `references/server.md` ## 常用配置 ### 主题配置 GenuiChat / GenuiRenderer 集成通过 `GenuiConfigProvider` 配置主题: - `'dark'` - 深色主题 - `'lite'` - 清新主题 - `'light'` - 浅色主题(默认) - `'auto'` - 跟随浏览器偏好 详细用法见各参考文件。 ### 自定义组件和动作 SDK 支持扩展: - **自定义组件**:让 AI 使用你的业务组件 - **自定义动作**:定义 AI 可以触发的交互(导航类 action 如 openPage 须做 URL 白名单校验) 详细配置和示例见 `examples/` 目录下的相关文档。 ## 下一步指导 阅读相应的参考文件后,为用户提供: 1. **安装命令**(针对他们的包管理器:npm/pnpm/yarn) 2. **针对其场景的分步集成指南** 3. **可以复制并适配的完整工作示例** 4. **常见用例的配置技巧** 5. **高级功能的额外文档链接**(指向 `examples/` 目录和 `references/materials/` 物料选型) 记住要: - 解释**为什么**需要某些配置,而不仅仅是做什么 - 提供何时使用不同模式的上下文 - 强调常见陷阱(如当前版集成忘记注入物料;Legacy 路径则无需 ConfigProvider) - 主动提供帮助以满足特定定制需求 - 引导用户查看 `examples/` 目录获取更多示例
عرض على GitHub