Skip to content

关于 Conditioner 中特征切片硬绑定(“217”问题)与 Token 结构的优化空间 #144

@maxx1031

Description

@maxx1031

你好!非常感谢你们开源了这个出色的项目,我在阅读和使用代码的过程中学到了很多。

最近我在尝试修改模型的 Prefix Prompt 并扩展输入时,遇到了一些特征对齐方面的问题。经过排查,我发现现有的 conditioner 特征提取逻辑可能存在几个可以进一步优化的痛点,想在这里和大家探讨一下:

  1. 位置强绑定(硬编码的“217”切片问题)
    在目前的逻辑中,代码似乎高度依赖硬编码的切片位置(例如 emb[:, 217:])来截取特征。
    这可能导致的问题:一旦我们想要修改 Prefix 的内容,前缀 Token 的长度就会发生变化,进而导致图像特征在序列中发生错位。由于下游模型(如 DiT)对空间位置非常敏感,这种错位会直接导致模型生成效果崩溃。这也意味着,目前很难在不重新训练模型的情况下,灵活调整 System Prompt 或用户指令。

  2. max_length 长度受限
    目前的 max_length 似乎在一些地方被固定死了。如果后续我们希望能适应更多模态的扩展,比如处理更长、更复杂的文本指令,固定的长度会成为一个瓶颈。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions