huggingface / huggingface/diffusers
Z-Image的文本位置编码长度不一致问题
- Lingua principale
- Python
- Stelle
- 34.5k
- Fork
- 7.3k
- Merge medio
- 3g 3h
- PR unite (30g)
- 91
Descrizione
```
# Process captions
for j, cap_item in enumerate(all_cap_feats[i]):
noise_val = images_noise_mask[i][j] if j < len(images_noise_mask[i]) else 1
cap_out, cap_pos, cap_mask, cap_len, cap_nm = self._pad_with_ids(
cap_item,
(len(cap_item) + (-len(cap_item)) % SEQ_MULTI_OF, 1, 1),
(cap_cu_len, 0, 0),
device,
noise_val,
)
cap_feats_list.append(cap_out)
cap_pos_list.append(cap_pos)
cap_mask_list.append(cap_mask)
cap_lens.append(cap_len)
cap_noise.extend(cap_nm)
cap_cu_len += len(cap_item)
cap_end_pos.append(cap_cu_len)
cap_cu_len += 2 # for image vae and siglip tokens
```
这里cap_out和cap_pos输出的长度不一样?假设len(cap_item)=120,cap_out输出是128,cap_pos是128+8=136
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia individuando il loop mostrato per l’elaborazione delle captions e ispeziona _pad_with_ids, in particolare il modo in cui vengono costruiti cap_out e cap_pos per il padding di SEQ_MULTI_OF. Riproduci il caso len(cap_item)=120 e confronta le lunghezze restituite e l’indicizzazione posizionale. Il lavoro è completato quando le posizioni dei token della caption prevista, del VAE dell’immagine e di SigLIP sono allineate senza una discrepanza di lunghezza inspiegata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- machine-learning
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 55/100