微服务

Skills系统:可扩展AI能力设计

微服务

Skills系统:可扩展AI能力设计

概述 Skills系统是AI-Native架构中的重要组件,它允许通过声明式配置扩展AI的能力。本文将介绍Skills系统的设计与实现,让大模型能够像人类专家一样具备特定领域的能力。 什么是Skills系统 概念 Skills(技能)是一种声明式的AI能力扩展机制,类似于人类的"专业技能": 通用AI助手 专业AI助手(带Skills) ┌──────────────────────┐ ┌──────────────────────────────┐ │ │ │ │ │ 用户:请帮我写代码 │ │ 用户:请帮我审查这段代码 │ │ │ │ │ │ AI:我是一个AI助手 │ │ AI:[激活

By 菱角
插件化架构设计模式

微服务

插件化架构设计模式

概述 插件化架构是一种将核心功能与扩展功能分离的设计模式,允许系统在运行时动态加载和卸载功能模块。本文将介绍如何在微服务平台中设计和实现插件化架构。 为什么需要插件化 插件化优势 1. 模块化:功能独立,边界清晰 2. 可扩展:按需加载,动态增删 3. 隔离性:插件间互不干扰 4. 可维护:独立开发、测试、部署 5. 可定制:用户按需选择功能 核心设计 架构概览 核心组件实现 1. 插件接口定义 // core/plugin.interface.ts // 插件接口 export interface IPlugin { // 插件名称 readonly name: string // 插件版本 readonly version: string // 插件配置 getConfig(): PluginConfig // 插件清单

By 菱角
gRPC服务通信设计与实践

微服务

gRPC服务通信设计与实践

概述 在微服务架构中,服务间通信是关键环节。相比REST API,gRPC提供了更高的性能和更强的类型安全。本文将介绍如何在微服务平台中设计和实现gRPC服务通信。 为什么选择gRPC gRPC vs REST对比 特性 gRPC REST 协议 HTTP/2 HTTP/1.1 序列化 Protocol Buffers (二进制) JSON (文本) 性能 高(二进制+压缩) 中(文本开销) 类型安全 强(代码生成) 弱(运行时检查) 流式通信 原生支持(双向流) 需额外实现(SSE/WebSocket) 代码生成 自动生成 手动编写 浏览器支持 需gRPC-Web 原生支持 调试难度

By 菱角
多语言微服务架构:Node.js与Python协作

微服务

多语言微服务架构:Node.js与Python协作

概述 在微服务架构中,根据场景选择最适合的编程语言是最佳实践。本文将介绍如何在微服务平台中实现Node.js与Python的协作,发挥各自技术优势。 技术选型策略 为什么混合使用 服务划分 Node.js服务(7个) 服务 功能 选择Node.js的原因 llm.api 大模型服务 高并发SSE流式响应 ucenter.api 用户中心 RESTful API标准实践 doc.api 文件服务 流式上传下载处理 resource.api 资源管理 gRPC高性能通信 rag.api 知识库服务 MongoDB集成便利 statistic.api 统计分析 事件驱动架构 pptonline.api PPT服务 与前端技术栈统一 Python服务(1个) 服务 功能 选择Python的原因

By 菱角
CI/CD流水线:Jenkins + APISIX微服务部署实践

微服务

CI/CD流水线:Jenkins + APISIX微服务部署实践

概述 微服务架构的CI/CD流水线设计是DevOps实践的核心。本文将介绍如何使用Jenkins Pipeline、Docker和APISIX构建完整的微服务持续集成与持续部署系统。 架构概览 CI/CD流程 Jenkins Pipeline设计 流水线流程 ┌─────────────────────────────────────────────────────────────────────────────┐ │ Jenkins Pipeline 标准流程 │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ ┌──────────────┐ ┌─────────

By 菱角
企业级PDF阅读器架构设计

微服务

企业级PDF阅读器架构设计

概述 EmbedPDF是一个基于WebAssembly的企业级PDF阅读器,采用插件化架构,支持多框架集成。本文将深入介绍其技术架构,包括PDFium引擎、插件系统、框架适配等核心设计。 项目架构 Monorepo结构 embedpdf/ ├── packages/ # 40+核心包 │ ├── core/ # 核心插件系统 │ ├── engines/ # 渲染引擎 │ ├── pdfium/ # PDFium WASM封装 │ ├── models/ # 共享类型定义 │ ├── plugin-render/ # 渲染插件 │ ├── plugin-annotation/ # 注释插件 │ ├── plugin-search/ # 搜索插件 │ ├── plugin-zoom/ # 缩放插件 │ ├── plugin-scro

By 菱角
在线PPT后端服务设计

微服务

在线PPT后端服务设计

概述 在线PPT编辑器的后端服务负责PPT数据的存储、AI生成、PPTX导入导出等核心功能。本文将深入介绍PPT后端服务的设计与实现,包括数据模型、AI生成流程、文件处理等关键环节。 服务架构 技术栈 技术 版本 用途 Node.js ES Module 运行环境 Fastify 5.2.1 Web框架 MongoDB - 数据存储 Mongoose 8.10.0 ODM Playwright 1.55.0 浏览器自动化 pptxtojson 2.0.0 PPTX解析 pptxgenjs 3.12.0 PPTX生成 服务结构 pptonline.api/ ├── app.

By 菱角
在线PPT编辑器技术解析

微服务

在线PPT编辑器技术解析

概述 PPTist是一个基于Web的在线演示文稿编辑与演示应用,还原了大部分PowerPoint的常用功能。本文将深入解析其前端技术架构,包括编辑器设计、元素系统、状态管理等核心模块。 项目架构 技术栈 技术 版本 用途 Vue.js 3.5.17 前端框架(组合式API) TypeScript 5.3.0 类型系统 Vite 5.3.5 构建工具 Pinia 3.0.2 状态管理 Vue Router 4.6.3 路由管理 ProseMirror - 富文本编辑器 ECharts 6.0.0 图表库 pptxgenjs 3.

By 菱角
微前端架构实践:基于Wujie的模块化设计

微服务

微前端架构实践:基于Wujie的模块化设计

概述 微前端架构允许将前端应用拆分为多个独立部署的子应用,每个子应用可由不同团队使用不同技术栈开发。本文将介绍如何基于腾讯无界(Wujie)框架实现微前端架构,实现控制台级别的模块化和独立部署。 为什么选择微前端 传统单体前端的痛点 1. 代码库庞大:随着功能增加,代码量指数增长 2. 构建时间长:修改一个小功能需要重新构建整个应用 3. 团队协作冲突:多团队在同一代码库中开发容易产生冲突 4. 技术栈锁定:难以逐步引入新技术 5. 部署风险高:任何小错误都可能影响整个平台 微前端的优势 架构设计 整体架构 ┌─────────────────────────────────────────────────────────────────────────────┐ │ 微前端架构设计 │ ├───────────────────────────────────────────────────────────

By 菱角
RAG知识库系统设计与实现

微服务

RAG知识库系统设计与实现

概述 RAG (Retrieval-Augmented Generation,检索增强生成) 是当前大模型应用的核心技术之一。本文将介绍如何在微服务平台中设计和实现完整的RAG知识库系统,包括文档处理、向量化存储、语义检索等关键环节。 RAG系统架构 整体流程 服务结构 rag.api/ ├── app.js ├── routes/ │ ├── rag/root.js # 知识库管理API │ ├── material/root.js # 材料管理API │ └── search/root.js # 检索API ├── services/ │ ├── ragService.js # 知识库服务 │ ├── materialService.js # 材料服务 │ ├── embeddingService.js # 向量化服务 │ └── searchService.js # 检索服务 ├── daos/ │ ├── milvus/

By 菱角
AI-Native架构:大模型服务设计与实现

微服务

AI-Native架构:大模型服务设计与实现

概述 在AI时代,将大语言模型能力深度集成到应用平台已成为趋势。本文将介绍如何在微服务平台中设计和实现AI-Native的大模型服务(LLM Service),涵盖多频道管理、流式响应、Agent执行等核心能力。 什么是AI-Native架构 AI-Native架构是指从设计之初就围绕AI能力构建的系统架构,而非后期添加AI功能。关键特征包括: * 频道化架构:支持多租户、多场景的LLM配置隔离 * 流式响应:实时输出AI生成的内容 * Agent框架:支持多步骤任务执行 * 技能系统(SKills):可扩展的领域专家能力 * MCP集成:标准化工具调用协议 LLM服务架构设计 服务结构 llm.api/ ├── app.js # Fastify应用入口 ├── routes/ │ ├── chat/root.js # 聊天API路由 │ ├── agent/root.js # Agent任务路由 │ └── channel/root.js #

By 菱角
微服务平台整体架构设计

微服务

微服务平台整体架构设计

概述 本文将深入介绍一个现代化的微服务平台架构设计。该平台采用微服务架构,融合了AI能力、文档处理和在线协作等核心功能。通过合理的服务拆分和技术选型,实现了高可用、可扩展的企业级应用平台。 架构概览 整体架构图 核心服务详解 1. 前端控制台层 前端采用微前端架构,基于腾讯无界(Wujie)框架实现: 控制台 功能 技术栈 console 主控制台入口 Umi Max + React 18 ucenter.console 用户与权限管理 Ant Design Pro app.console 应用管理 Ant Design rag.console 知识库管理 Ant Design X statistic.console 数据统计与监控 Ant Design Pro pdfviewer.

By 菱角