---
title: Codon-Motif-vision-1
canonical_url: "https://www.modelscope.cn/models/Hopkins/Codon-Motif-vision-1"
md_url: "https://www.modelscope.cn/models/Hopkins/Codon-Motif-vision-1.md"
repository: Hopkins/Codon-Motif-vision-1
last_updated: 2026-01-30
license: "Apache License 2.0"
pipeline_tag: multi-modal-embedding
tasks:
  - multi-modal-embedding
parameters: 42.4M
tensor_type:
  - F32
  - I64
library_name:
  - safetensors
  - pytorch
frameworks:
  - Pytorch
downloads: 13
stars: 0
---

# Codon-Motif-vision-1

> Codon-Motif-vision-1 - Hopkins 在 ModelScope 开源的模型。Codon Motif Vision 1

Hopkins/Codon-Motif-vision-1 是 ModelScope 魔搭社区上的 42.4M 参数multi-modal-embedding模型，采用 Apache License 2.0 许可。

- **Repository**: Hopkins/Codon-Motif-vision-1
- **License**: Apache License 2.0
- **Tasks**: multi-modal-embedding
- **Parameters**: 42.4M
- **Downloads**: 13
- **Stars**: 0
- **Last updated**: 2026-01-30

Source: https://www.modelscope.cn/models/Hopkins/Codon-Motif-vision-1

---

# Codon Motif Vision 1

## 模型介绍
**Codon Motif Vision 1** 是一个实验性的视觉 Tokenizer (Visual Tokenizer) 模型，可以支持任意尺度图片。

## 技术规格
该模型基于 VQ-GAN 架构，并融合了以下关键技术：

*   **量化 (Quantizer)**: 采用 **LFQ (Lookup Free Quantization)**，一种无查表的向量量化技术，计算包含熵 (Entropy) 和困惑度 (Perplexity)。
*   **位置编码**: 集成 **2D RoPE (Rotary Positional Embedding)** 二维旋转位置编码，增强空间感知。
*   **注意力机制**: Encoder 和 Decoder 均使用 **Spatial Multi-Head Attention** (空间多头注意力)。
*   **编码器 (Encoder)**: 结合 ConvBlock 和 ResBasicBlock，支持动态输入尺寸。
*   **解码器 (Decoder)**: 使用 **PixelShuffle** 进行上采样重建。

## 模型参数与文件

### 文件清单
| 文件名 | 大小 | 说明 |
| :--- | :--- | :--- |
| `motif-v1.safetensors` | 84.92MB | 全量模型权重 |
| `motif-v1_encoder.safetensors` | 43.32MB | 仅 Encoder 权重 |
| `motif-v1_decoder.safetensors` | 41.56MB | 仅 Decoder 权重 |
| `motif-v1_quantizer.safetensors` | 34.37KB | 仅 Quantizer 权重 |

### 默认配置
以下为模型初始化默认参数（即 v1 标准配置）：
*   **输入/输出通道**: 3 (RGB)
*   **Patch Size**: 16
*   **Latent Dim**: 256
*   **Codebook Dim**: 16
*   **Encoder**: Hidden Dim 256, 1 ResBlock, 4 Heads
*   **Decoder**: Hidden Dim 256, 3 ResBlocks, 4 Heads
*   **RoPE Max Len**: 4096

## 使用方法

### 1. 安装依赖
确保已安装 `orbit-torch` 库：
```bash
pip install orbit-torch
```

### 2. 模型加载

使用 `load_pretrained` 方法加载权重。权重分为全量权重和部分权重（Encoder, Decoder, Quantizer）。

#### 导入模块
```python
from orbit.model.motif.vision.v1 import MotifV1
```

#### 场景 A：加载全量模型
```python
model = MotifV1()
model.load_pretrained('motif-v1.safetensors')
```

#### 场景 B：仅使用 Encoder
**注意**：在使用 Encoder 提取 Token 时，**必须**同时加载 Quantizer。通过 `MotifV1` 实例访问子模块进行加载。

```python
# 1. 实例化主模型
model = MotifV1()

# 2. 分别加载权重
model.encoder.load_pretrained('motif-v1_encoder.safetensors')
model.quantizer.load_pretrained('motif-v1_quantizer.safetensors')

# 3. 使用示例 (使用封装好的 encode 方法)
# x = torch.randn(1, 3, 256, 256) # [B, 3, H, W]
# indices, mask, z_q = model.encode(x)
# print(indices.shape) # [B, H, W]
```

#### 场景 C：仅使用 Decoder
**注意**：在使用 Decoder 重建图像时，**必须**同时加载 Quantizer（用于将索引还原为向量）。

```python
# 1. 实例化主模型
model = MotifV1()

# 2. 分别加载权重
model.decoder.load_pretrained('motif-v1_decoder.safetensors')
model.quantizer.load_pretrained('motif-v1_quantizer.safetensors')

# 3. 使用示例 (使用封装好的 decode 方法)
# indices = ... # [B, H, W]
# reconstruction = model.decode(indices)
```
