logo
0
0
WeChat Login

Attire AI Explorer

一个基于AI的智能服装识别与搜索平台,支持服装图片分析、标签提取、相似度搜索等功能。

功能特性

  • 🔍 智能服装识别: 使用AI技术自动识别服装的样式、颜色、材质等属性
  • 🏷️ 标签提取: 自动提取服装的详细标签信息
  • 🔎 相似度搜索: 基于图片和标签的智能相似度搜索
  • 📊 数据管理: 完整的服装数据库管理功能
  • 📱 响应式设计: 支持桌面端和移动端访问
  • 🗄️ 数据持久化: PostgreSQL数据库本地持久化存储

技术栈

前端

  • React 18 + TypeScript
  • Vite 构建工具
  • Tailwind CSS 样式框架
  • Radix UI 组件库
  • React Router 路由管理

后端

  • Node.js + Express
  • PostgreSQL 15 数据库
  • AI服务集成
  • Docker 容器化部署

基础设施

  • Docker & Docker Compose
  • Nginx 反向代理
  • 数据卷持久化

快速开始

一键安装(推荐)

支持 Ubuntu/Debian 和 CentOS/RHEL 系统:

# 下载并运行安装脚本
curl -fsSL https://cnb.cool/aiedulab/Attire-A-Explorer/raw/main/install.sh | bash

或者手动下载:

wget https://cnb.cool/aiedulab/Attire-A-Explorer/raw/main/install.sh
chmod +x install.sh
./install.sh

安装脚本将自动:

  • 检测操作系统
  • 安装 Docker 和 Docker Compose
  • 克隆项目代码
  • 启动所有服务

手动安装

环境要求

  • Docker 20.10+
  • Docker Compose 2.0+
  • Git

安装步骤

  1. 克隆项目
git clone https://cnb.cool/aiedulab/Attire-A-Explorer.git
cd Attire-A-Explorer
  1. 配置环境变量
cp .env.example .env
# 编辑 .env 文件,填入你的AI API配置
nano .env
  1. 启动服务
# 构建并启动所有服务
docker-compose up -d --build

# 查看服务状态
docker-compose ps
  1. 访问应用

服务管理

常用命令

# 启动服务
docker-compose up -d

# 停止服务
docker-compose down

# 重启服务
docker-compose restart

# 查看日志
docker-compose logs -f

# 查看特定服务日志
docker-compose logs -f frontend
docker-compose logs -f backend
docker-compose logs -f postgres

# 进入容器
docker-compose exec backend bash
docker-compose exec postgres psql -U postgres -d attire_ai

数据备份与恢复

# 备份数据库
docker-compose exec postgres pg_dump -U postgres attire_ai > backup.sql

# 恢复数据库
docker-compose exec -T postgres psql -U postgres attire_ai < backup.sql

# 备份数据卷
docker run --rm -v attire-a-explorer_postgres_data:/data -v $(pwd):/backup alpine tar czf /backup/postgres_backup.tar.gz -C /data .

# 恢复数据卷
docker run --rm -v attire-a-explorer_postgres_data:/data -v $(pwd):/backup alpine tar xzf /backup/postgres_backup.tar.gz -C /data

项目结构

Attire-A-Explorer/
├── src/                    # 前端源码
│   ├── components/         # React组件
│   ├── pages/             # 页面组件
│   ├── services/          # API服务
│   ├── hooks/             # 自定义Hooks
│   └── lib/               # 工具库
├── server/                # 后端源码
│   ├── index.js           # 服务器入口
│   ├── Dockerfile         # 后端Docker配置
│   └── package.json       # 后端依赖
├── scripts/               # 脚本文件
│   ├── init-db.sql        # 数据库初始化脚本
│   └── init-database.js   # 数据库初始化工具
├── docs/                  # 文档
├── docker-compose.yml     # Docker Compose配置
├── Dockerfile.frontend    # 前端Docker配置
├── nginx.conf            # Nginx配置
├── install.sh            # 一键安装脚本
└── .env.example          # 环境变量示例

配置说明

环境变量

主要配置项:

# AI服务配置
AI_API_TOKEN=your_ai_api_token_here    # 必填:AI服务API密钥
WORKFLOW_ID=7529771322207010856        # AI工作流ID

# 数据库配置
POSTGRES_PASSWORD=password123          # 数据库密码
DATABASE_URL=postgresql://postgres:password123@postgres:5432/attire_ai

# 端口配置
FRONTEND_PORT=8080                     # 前端端口
BACKEND_PORT=3001                      # 后端端口
POSTGRES_PORT=5432                     # 数据库端口

数据持久化

项目使用Docker数据卷进行数据持久化:

  • postgres_data: PostgreSQL数据库文件
  • 位置: /var/lib/docker/volumes/attire-a-explorer_postgres_data
  • 备份: 支持数据库导出和数据卷备份

API文档

服装分析

  • POST /api/analysis - 分析服装图片
  • GET /api/analysis - 获取分析历史
  • PUT /api/analysis/:id - 更新分析记录
  • DELETE /api/analysis/:id - 删除分析记录

相似度搜索

  • POST /api/similarity/search - 相似度搜索
  • POST /api/similarity/batch - 批量相似度搜索

数据统计

  • GET /api/analysis/stats - 获取数据库统计信息

故障排除

常见问题

  1. 服务启动失败
# 检查端口占用
sudo netstat -tlnp | grep :8080
sudo netstat -tlnp | grep :3001
sudo netstat -tlnp | grep :5432

# 检查Docker状态
docker --version
docker-compose --version
sudo systemctl status docker
  1. 数据库连接失败
# 检查数据库容器状态
docker-compose ps postgres

# 查看数据库日志
docker-compose logs postgres

# 手动连接测试
docker-compose exec postgres psql -U postgres -d attire_ai
  1. 权限问题
# 添加用户到docker组
sudo usermod -aG docker $USER
newgrp docker

# 重新登录或重启系统

日志查看

# 查看所有服务日志
docker-compose logs -f

# 查看特定时间段日志
docker-compose logs --since="2024-01-01T00:00:00" --until="2024-01-02T00:00:00"

# 查看最近100行日志
docker-compose logs --tail=100

开发指南

本地开发

如需进行开发,可以使用混合模式:

# 只启动数据库
docker-compose up -d postgres

# 本地启动后端
cd server && npm install && npm start

# 本地启动前端
npm install && npm run dev

代码贡献

  1. Fork 项目
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 打开 Pull Request

许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。

联系方式

About

No description, topics, or website provided.
Language
TypeScript83.8%
Markdown7%
JavaScript3.2%
HTML1.7%
Others4.3%