# modelpal **Repository Path**: MagicHand/modelpal ## Basic Information - **Project Name**: modelpal - **Description**: ------------------------------ - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-10 - **Last Updated**: 2025-09-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ModelPal - AI模型管理与应用平台 ## 项目概述 ModelPal是一个用于管理和应用多种AI模型的桌面应用程序,支持HuggingFace、GGUF和ONNX等模型格式。该应用程序提供了直观的图形界面,使用户能够轻松加载、配置和使用各种AI模型,同时支持团队协作和智能体管理功能。 ## 主要功能 - **多模型格式支持**:支持HuggingFace、GGUF和ONNX等主流模型格式 - **模型管理**:提供模型添加、删除、加载和卸载功能 - **智能体管理**:创建和管理具有特定系统提示的AI智能体 - **团队协作**:组建AI团队,实现多智能体协作 - **聊天交互**:与智能体进行实时对话 - **系统监控**:监控系统资源使用情况和模型运行状态 - **进程管理**:安全地管理模型进程的生命周期 - **数据持久化**:使用SQLite数据库保存模型、智能体、团队和会话数据 ## 技术架构 - **前端**:基于PyQt6的图形用户界面 - **后端**:Python核心逻辑,采用抽象工厂模式实现多模型支持 - **数据库**:SQLite数据库,使用SQLAlchemy ORM - **进程管理**:独立的进程管理器,确保模型运行的安全性 ## 安装说明 ### 环境要求 - Python 3.8+ - PyQt6 - SQLAlchemy - transformers (用于HuggingFace模型) - llama-cpp-python (用于GGUF模型) - onnxruntime (用于ONNX模型) - psutil (用于系统监控) ### 安装步骤 1. 克隆或下载本项目 2. 安装依赖包: ``` pip install -r requirements.txt ``` 3. 运行应用程序: ``` python main.py ``` ## 使用说明 ### 模型管理 1. 在"模型管理"标签页中,点击"添加模型"按钮 2. 填写模型信息,包括名称、格式、路径和参数 3. 点击"保存"按钮添加模型 4. 在模型列表中选择模型,点击"加载"按钮加载模型 5. 使用完毕后,可以点击"卸载"按钮释放资源 ### 智能体管理 1. 在"模型管理"标签页中,切换到"智能体"子标签页 2. 点击"添加智能体"按钮 3. 填写智能体信息,包括名称、系统提示和关联模型 4. 点击"保存"按钮添加智能体 ### 团队管理 1. 在"团队管理"标签页中,点击"新建团队"按钮 2. 填写团队信息,包括名称和描述 3. 从可用智能体列表中选择团队成员 4. 点击"确定"按钮创建团队 ### 聊天交互 1. 在"聊天"标签页中,选择一个智能体 2. 点击"新会话"按钮创建新的对话会话 3. 在输入框中输入问题或指令 4. 点击"发送"按钮或按Enter键发送消息 5. 智能体的回复将显示在聊天区域 ### 系统监控 1. 在"监控"标签页中,可以查看系统硬件信息 2. 在"模型状态"子标签页中,可以查看所有模型的运行状态 3. 可以直接在此页面加载或卸载模型 ## 项目结构 ``` modelpal/ ├── core/ # 核心功能模块 │ ├── factories/ # 模型工厂(抽象工厂模式) │ │ ├── base.py # 基础接口和抽象工厂 │ │ ├── huggingface.py # HuggingFace模型工厂 │ │ ├── gguf.py # GGUF模型工厂 │ │ └── onnx.py # ONNX模型工厂 │ ├── managers/ # 管理器 │ │ └── process.py # 进程管理器 │ ├── models/ # 数据模型 │ └── utils/ # 工具函数 │ └── hardware.py # 硬件信息检测 ├── database/ # 数据库相关 │ ├── schema.py # 数据库模型定义 │ └── db.py # 数据库连接和初始化 ├── ui/ # 用户界面 │ ├── main_window.py # 主窗口 │ ├── model_manager.py # 模型管理界面 │ ├── chat.py # 聊天界面 │ ├── team_manager.py # 团队管理界面 │ └── monitor.py # 系统监控界面 ├── resources/ # 资源文件 ├── main.py # 主程序入口 └── README.md # 项目说明文档 ``` ## 开发计划 ### 第一阶段(已完成) - [x] 实现抽象工厂模式,支持多种模型格式 - [x] 开发进程管理器,确保模型运行的安全性 - [x] 集成数据库,实现数据持久化 - [x] 开发基础UI,包括模型管理、聊天、团队管理和系统监控 ### 第二阶段(计划中) - [ ] 实现模型参数优化功能 - [ ] 添加模型性能评估工具 - [ ] 增强团队协作功能,支持工作流定义 - [ ] 实现模型导入导出功能 ### 第三阶段(计划中) - [ ] 添加插件系统,支持第三方扩展 - [ ] 实现云端模型管理 - [ ] 开发API接口,支持远程调用 - [ ] 添加模型版本控制功能 ## 许可证 本项目采用MIT许可证,详情请参见LICENSE文件。 ## 贡献指南 欢迎提交Issue和Pull Request来帮助改进本项目。在提交代码前,请确保: 1. 代码符合PEP 8规范 2. 添加适当的注释和文档 3. 编写必要的测试用例 4. 确保所有测试通过 ## 联系方式 如有问题或建议,请通过以下方式联系: - 邮箱: contact@modelpal.com - 项目主页: https://github.com/modelpal/modelpal