Skip to content

my-pm-is-AI/backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

后端项目

📖 业务介绍

MyPM Is AI 是一个由 AI 驱动的智能化项目管理与协作平台。 在传统的软件开发和项目管理中,往往需要大量的人工介入来进行需求拆解、团队组建、任务分配和进度追踪。而本项目旨在通过引入 AI Agent,彻底颠覆这一传统流程。

  • 自动化组队:用户只需输入产品需求文档(PRD),系统便会自动解析需求并匹配具备相应技能与时薪的 AI Agent(或真实用户),快速组建包含前端、后端、测试等角色的全功能项目团队。
  • 智能化分工:系统内的 AI 模拟项目经理将自动把庞大的 PRD 拆解为具体的开发任务(TodoList)和项目交付节点(Project Nodes),并精确分配给每位团队成员。
  • 透明化追踪:用户可实时查看各节点的完成情况与整体项目进度,并随时与团队内的 AI 成员进行上下文对话,了解详细的工作状态。
  • 全生命周期闭环:平台覆盖了从需求发布、自动分工、研发推进到项目验收及佣金核算的开发全过程,并且支持项目的二次迭代与演进。

🛠 技术介绍

本项目后端采用基于 Python 生态的现代化技术栈构建,具有高并发与高可用的特性:

  • 核心框架:基于 FastAPI 构建全异步的高性能 RESTful API,结合 Uvicorn 提供高并发服务。
  • 数据持久化:使用 PostgreSQL 作为核心关系型数据库,借助 asyncpg 提供全异步访问能力;使用 SQLAlchemy 2.0 (Async ORM) 进行数据建模与查询,Alembic 负责数据库迁移。
  • 大模型集成:深度集成大语言模型(默认对接 Doubao-Seed-2.0-pro 兼容接口),通过流式(SSE)技术提供顺畅的上下文对话体验,同时利用 LLM 结构化输出能力(JSON 解析)完成复杂的需求拆解与精准的 Agent 技能匹配。
  • 安全与认证:基于 JWT (JSON Web Tokens)bcrypt 实现无状态的用户鉴权体系,有效保障用户数据安全。

🚀 运行方式

1. 环境依赖与数据库准备

确保本地已安装 Python 3.9+ 与 PostgreSQL 18。

在 macOS 上可通过 Homebrew 安装并启动数据库:

brew install postgresql@18
brew services start postgresql@18

# 其他常用服务管理命令:
# - 停止服务 : brew services stop postgresql@18
# - 重启服务 : brew services restart postgresql@18
# - 查看服务状态 : brew services info postgresql@18

2. 环境变量配置

在项目根目录创建 .env 文件,用于配置数据库及其他环境变量(参考 app/core/config.py):

POSTGRES_SERVER=localhost
POSTGRES_USER=your_postgres_user
POSTGRES_PASSWORD=your_postgres_password
POSTGRES_DB=your_database_name
POSTGRES_PORT=5432

请根据实际情况替换数据库的用户名、密码及数据库名称。

3. 安装依赖包

推荐使用虚拟环境来隔离项目依赖:

# 创建虚拟环境
python3 -m venv venv

# 激活虚拟环境
source venv/bin/activate

# 安装项目依赖
pip install -r requirements.txt

4. 初始化数据与服务启动

在首次启动项目前,需要初始化数据库表结构并导入系统默认的 AI Agent 数据:

# 初始化数据库(⚠️警告:此操作将清空并重建所有数据表)
python scripts/init_db.py

# 导入默认的 Mock Agent 角色数据(前端、后端、测试等)
python scripts/seed_agents.py

最后,启动后端服务:

uvicorn app.main:app --reload

服务成功启动后,可以访问 http://127.0.0.1:8000/docs 体验并调试 OpenAPI (Swagger) 自动生成的接口文档。

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors