File size: 1,892 Bytes
c025a3d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
## **1. Composition Generation script**  

### **Running the Script**  

Use the following command:  

```bash
python generate_compositions.py --config path/to/config.json --create_grids
```

### Parameters
- `--config`: Path to the configuration JSON file.
- `--create_grids`: (Optional) Enable grid creation for visualization of the results.

### Configuration File

The configuration file should be a JSON file containing the following keys:

### Explanation of Config Keys

- `input_dir_base`: Path to the directory containing the base images.
- `input_dirs_concepts`: List of paths to directories containing concept images.
- `all_embeds_paths`: List of `.npy` files containing precomputed embeddings for the concepts. The order should match `input_dirs_concepts`.
- `ranks`: List of integers specifying the rank for each concept’s projection matrix. The order should match `input_dirs_concepts`.
- `output_base_dir`: Path to store the generated images.
- `prompt` (optional): Additional text prompt.
- `scale` (optional): Scale parameter passed to IP Adapter.
- `seed` (optional): Random seed.
- `num_samples` (optional): Number of images to generate per combination.


## 2. Text Embeddings Script

This repository also includes a script for generating text embeddings using CLIP. The script takes a CSV file containing text descriptions and outputs a `.npy` file with the corresponding embeddings.

### Running the Script

Use the following command:

```bash
python generate_text_embeddings.py --input_csv path/to/descriptions.csv --output_file path/to/output.npy --batch_size 100 --device cuda:0
```

### Parameters
- `--input_csv`: Path to the input CSV file containing text descriptions.
- `--output_file`: Path to save the output `.npy` file.
- `--batch_size`: (Optional) Batch size for processing embeddings (default: 100).
- `--device`: (Optional) Device to run the model on.