Skip to content

HeyZhuang/LLMOps-Platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 LLMOps Platform

企业级大语言模型应用开发与运维平台

Python Vue Flask LangChain Docker License

快速构建、部署和管理AI智能体应用的完整解决方案

功能特性技术架构快速开始项目结构面试重点


📖 项目简介

LLMOps Platform 是一个企业级大语言模型应用开发与运维平台,基于现代化微服务架构设计,提供从AI应用创建、知识库管理、工作流编排到API集成的全链路解决方案。该项目展示了完整的LLMOps工程实践,适合作为学习和面试的技术参考。

✨ 项目亮点

  • 🎯 生产级架构:采用分层架构 + 依赖注入,代码结构清晰,易于维护和扩展
  • 🔧 多模型集成:统一接口管理OpenAI、百度千帆、Ollama等多种LLM提供商
  • 🚀 工作流引擎:基于LangGraph的可视化工作流编排,支持复杂业务逻辑
  • 📊 智能检索:FAISS向量数据库 + BM25混合检索,提供高精度知识库问答
  • 🔌 插件化设计:支持自定义工具和API集成,具备良好的扩展性
  • 💾 异步处理:Celery异步任务队列,处理文档解析、向量化等耗时操作
  • 🔐 企业级安全:JWT认证 + RBAC权限控制,支持多租户管理

🎯 核心功能

1. 🤖 AI智能体应用(Agent)

  • ReACT模式:基于推理-行动循环的智能体架构
  • 多模型支持:OpenAI GPT-4、百度千帆、Ollama本地模型
  • 工具调用:支持函数调用和外部API集成
  • 长期记忆:基于摘要的对话记忆机制
  • 流式输出:支持实时流式响应,提升用户体验

2. 📚 知识库管理(Dataset)

  • 多格式支持:PDF、Word、Excel、Markdown、TXT等
  • 智能分块:基于语义的文档分块策略,优化检索效果
  • 混合检索:FAISS向量检索 + BM25关键词检索
  • 重排序:使用Cross-Encoder对检索结果重排序
  • 增量更新:支持知识库的增量更新和版本管理

3. 🔄 工作流编排(Workflow)

  • 可视化设计:基于Vue Flow的拖拽式工作流设计器
  • 丰富节点类型
    • LLM节点:大语言模型调用
    • 代码执行节点:Python代码执行
    • HTTP请求节点:外部API调用
    • 知识库检索节点:向量检索
    • 条件判断节点:流程控制
  • 变量系统:支持节点间数据传递和变量管理
  • 错误处理:完善的异常处理和重试机制

4. 🛠️ 工具集成(Tools)

  • 内置工具:计算器、天气查询、代码执行器
  • API工具:支持OpenAPI 3.0规范的第三方API
  • 自定义工具:灵活的插件机制,支持Python函数封装
  • 工具链:支持多个工具的组合调用

5. 💬 对话管理(Conversation)

  • 会话持久化:完整的对话历史存储
  • 上下文管理:智能的上下文窗口管理
  • 多轮对话:支持复杂的多轮交互
  • 思维链可视化:展示Agent的推理过程

6. 📊 数据分析(Analysis)

  • 实时监控:API调用量、响应时间、错误率
  • 成本分析:Token消耗统计和成本计算
  • 用户行为:用户活跃度和使用模式分析
  • 可视化报表:基于ECharts的数据可视化

🏗️ 技术架构

核心技术栈

后端技术栈

技术 版本 用途 特点
Python 3.8+ 核心开发语言 丰富的AI生态
Flask 3.0+ Web框架 轻量级、灵活
SQLAlchemy 2.0+ ORM框架 支持异步操作
PostgreSQL 12+ 关系型数据库 高性能、可扩展
Redis 6+ 缓存/消息队列 高性能内存数据库
Celery 5.3+ 异步任务处理 分布式任务队列
LangChain 0.2+ LLM应用框架 丰富的LLM集成
LangGraph 0.2+ 工作流编排 状态图工作流
FAISS - 向量数据库 Facebook开源,高性能
Weaviate 1.23.7 向量数据库 云原生向量数据库

前端技术栈

技术 版本 用途 特点
Vue 3 3.4+ 前端框架 Composition API
TypeScript 5.4+ 类型系统 类型安全
Vite 5.2+ 构建工具 快速热重载
Pinia 2.1+ 状态管理 Vue 3官方推荐
Tailwind CSS 3.4+ 样式框架 原子化CSS
Arco Design 2.55+ UI组件库 字节跳动开源
Vue Flow 1.41+ 工作流可视化 基于React Flow
ECharts 5.6+ 数据可视化 Apache开源

系统架构图

┌─────────────────────────────────────────────────────────────┐
│                    前端层 (Vue 3 + TypeScript)               │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐   │
│  │  应用管理 │  │ 知识库   │  │  工作流  │  │  数据分析 │   │
│  │  Agent   │  │ Dataset  │  │ Workflow │  │ Analysis │   │
│  └──────────┘  └──────────┘  └──────────┘  └──────────┘   │
└─────────────────────────────────────────────────────────────┘
                            │ RESTful API (JWT认证)
┌─────────────────────────────────────────────────────────────┐
│                   API网关层 (Flask + 中间件)                  │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐   │
│  │   认证   │  │   限流   │  │   日志   │  │   CORS   │   │
│  │   Auth   │  │RateLimit │  │ Logging  │  │   CORS   │   │
│  └──────────┘  └──────────┘  └──────────┘  └──────────┘   │
└─────────────────────────────────────────────────────────────┘
                            │
┌─────────────────────────────────────────────────────────────┐
│                 业务逻辑层 (分层架构 + DI)                     │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐   │
│  │ Handler  │  │ Service  │  │  Model   │  │  Schema  │   │
│  │ 控制器   │  │ 业务逻辑 │  │ 数据模型 │  │ 数据验证 │   │
│  └──────────┘  └──────────┘  └──────────┘  └──────────┘   │
└─────────────────────────────────────────────────────────────┘
                            │
┌─────────────────────────────────────────────────────────────┐
│                     核心能力层 (LangChain生态)                │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐   │
│  │  Agent   │  │ Workflow │  │ Retrieval│  │  Tools   │   │
│  │ 智能体   │  │ 工作流   │  │  检索器  │  │  工具集  │   │
│  └──────────┘  └──────────┘  └──────────┘  └──────────┘   │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐   │
│  │   LLM    │  │Embeddings│  │  Memory  │  │ FileExt  │   │
│  │ 语言模型 │  │ 向量化   │  │  记忆    │  │ 文件解析 │   │
│  └──────────┘  └──────────┘  └──────────┘  └──────────┘   │
└─────────────────────────────────────────────────────────────┘
                            │
┌─────────────────────────────────────────────────────────────┐
│                   异步任务层 (Celery)                        │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐   │
│  │ 文档解析 │  │ 向量化   │  │ 模型调用 │  │ 数据同步 │   │
│  │   Task   │  │   Task   │  │   Task   │  │   Task   │   │
│  └──────────┘  └──────────┘  └──────────┘  └──────────┘   │
└─────────────────────────────────────────────────────────────┘
                            │
┌─────────────────────────────────────────────────────────────┐
│                     数据存储层                                │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐   │
│  │PostgreSQL│  │  Redis   │  │ Weaviate │  │   COS    │   │
│  │ 关系数据 │  │   缓存   │  │ 向量数据 │  │ 对象存储 │   │
│  └──────────┘  └──────────┘  └──────────┘  └──────────┘   │
└─────────────────────────────────────────────────────────────┘

核心设计模式

1. 依赖注入(Dependency Injection)

# 使用injector实现依赖注入
from injector import inject, singleton

@singleton
class AppService:
    @inject
    def __init__(self, app_repo: AppRepository):
        self.app_repo = app_repo

2. 策略模式(Strategy Pattern)

# LLM提供商策略
class LanguageModelManager:
    def get_model(self, provider: str, model_name: str):
        strategy = self._get_strategy(provider)
        return strategy.create_model(model_name)

3. 工厂模式(Factory Pattern)

# 工作流节点工厂
class NodeFactory:
    @staticmethod
    def create_node(node_type: str, config: dict):
        return NODE_REGISTRY[node_type](config)

4. 观察者模式(Observer Pattern)

# Celery任务状态监听
@celery.task(bind=True)
def process_document(self, document_id):
    # 任务状态更新通知
    self.update_state(state='PROGRESS', meta={'progress': 50})

🚀 快速开始

环境要求

  • Python: 3.8+
  • Node.js: 16+
  • PostgreSQL: 12+
  • Redis: 6+
  • Docker: 20.10+

一键启动(推荐)

# 克隆项目
git clone https://github.com/your-username/ll

About

认知栈 CogniStack - 企业级 AI 智能体全栈平台 | 可视化工作流 | 多模型 | RAG 知识库 | 多租户 | 支持 OpenAI、通义、Grok、Ollama 等 20+ 模型 英文: CogniStack - Full-Stack Enterprise AI Agent Platform | Visual Workflow | Multi-LLM | RAG | Multi-tenancy | 20+ models (OpenAI, Qwen, Grok, Ollama...)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors