File size: 3,319 Bytes
1a4531a
f8a73ec
1a4531a
f8a73ec
4d9eb9e
 
 
 
 
 
1a4531a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
f8a73ec
 
1a4531a
f8a73ec
 
1a4531a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4d9eb9e
 
f8a73ec
4d9eb9e
 
 
 
 
 
 
122ccf7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# FashionM3 Project Setup Guide

This guide explains how to set up and run the FashionM3 project, which requires the FashionRec dataset, environment configuration, and specific server startup steps.

**Important Note on Hugging Face Space Deployment:**
Due to the high computational requirements of the underlying Vision-Language Model (VLM) and associated services, this Hugging Face Space currently serves primarily as a **code repository**. The full interactive demo **cannot be run directly on the free tier of Hugging Face Spaces**. Please follow the instructions below to set up and run the FashionM3 application locally on your machine.

## Project Overview
The work is introduced in this paper FashionM3: Multimodal, Multitask, and Multiround Fashion Assistant based on Unified Vision-Language Model - https://arxiv.org/abs/2504.17826

## Prerequisites

- Python 3.10 or higher
- `pip` for installing dependencies
- A working proxy server (if needed, e.g., at `http://127.0.0.1:10809`)

## Step 1: Download the FashionRec Dataset

1. Download the FashionRec dataset from https://huggingface.co/datasets/Anony100/FashionRec
2. Extract the dataset to a directory of your choice (e.g., `/path/to/FashionRec`).
3. Note the absolute path to the dataset directory, as it will be used in the `.env` file.

## Step 2: Configure the Environment File

Create a `.env` file in the project root directory with the following content:

```plaintext
# Chainlit server port
CHAINLIT_PORT=8888

# Proxy configuration (update or remove if not needed)
PROXY=http://127.0.0.1:10809

# API keys (replace with your own keys)
OPENAI_API_KEY=your_openai_api_key_here
GEMINI_API_KEY=your_gemini_api_key_here

# Path to the FashionRec dataset (update to your dataset path)
FASHION_DATA_ROOT=/path/to/FashionRec

# Directory for generated images
GEN_IMG_DIR=./generated_images
```

### Notes:
- Replace `your_openai_api_key_here` and `your_gemini_api_key_here` with your actual OpenAI and Google Gemini API keys.
- Set FASHION_DATA_ROOT to the absolute path of the FashionRec dataset (e.g., /home/user/data/FashionRec).
- Update PROXY to match your proxy server, or remove it if no proxy is used.

## Step 3: Install Dependencies

Install the required Python packages:
```bash
pip install -r requirements.txt
```

## Step 4:  Run the Application
Follow these steps to start the FashionM3 application:
### 1. Start the Fashion VLM MCP Server:
Run the MCP server for the fashion vision-language model:
```bash
python mcp_servers/fashion_vlm/main.py
```

Ensure the server starts successfully and remains running.

### 2. Start the FashionM3 Client:
Launch the Chainlit client to interact with the Fashion Assistant:
```bash
chainlit run chainlit_app.py --port 8888
```

### 3. Interact with the Fashion Assistant:
Open your browser and navigate to:
```plaintext
http://localhost:8888/
```

This will load the FashionM3 interface, allowing you to interact with the Fashion Assistant.


## Citation
If you find this work helpful, please consider citing our paper:

```
@article{pang2025fashionm3,
  title={FashionM3: Multimodal, Multitask, and Multiround Fashion Assistant based on Unified Vision-Language Model},
  author={Pang, Kaicheng and Zou, Xingxing and Wong, Waikeung},
  journal={arXiv preprint arXiv:2504.17826},
  year={2025}
}
```