OpenGVLab / InternVL

[CVPR 2024 Oral] InternVL Family: A Pioneering Open-Source Alternative to GPT-4o. 接近GPT-4o表现的开源多模态对话模型
https://internvl.readthedocs.io/en/latest/
MIT License
5.49k stars 426 forks source link

如何为InternVL加入mixture of experts? #535

Closed LIKP0 closed 5 days ago

LIKP0 commented 3 weeks ago

您好!非常感谢你们的工作,InternVL作为开源模型实在是太酷了,非常有意义的工作!

出于兴趣,我想探索如何在InternVL中加入混合专家模型,请问有什么建议吗?我的基础知识比较薄弱,不知道该从何处下手,希望有人能给出一些思路,谢谢!我现在使用的是InternVL1.5-Mini4B版本(是的我只能运行这么小的模型...)

再次感谢你们的卓越工作!

G-z-w commented 2 weeks ago

感谢,可以参考https://github.com/deepseek-ai/DeepSeek-MoE,希望能对你有帮助。

LIKP0 commented 2 weeks ago

谢谢,感谢你的帮助

zweiqi commented 1 week ago

感谢,可以参考https://github.com/deepseek-ai/DeepSeek-MoE,希望能对你有帮助。

hidden_states为视觉特征,为什么经过下面转换后logits变成了nan呢,感觉这个特征不能进行低维度转换 bsz, seq_len, h = hidden_states.shape

  | ### compute gating score   | hidden_states = hidden_states.view(-1, h)   | logits = F.linear(hidden_states, self.weight, None)

zweiqi commented 1 week ago

您好!非常感谢你们的工作,InternVL作为开源模型实在是太酷了,非常有意义的工作!

出于兴趣,我想探索如何在InternVL中加入混合专家模型,请问有什么建议吗?我的基础知识比较薄弱,不知道该从何处下手,希望有人能给出一些思路,谢谢!我现在使用的是InternVL1.5-Mini4B版本(是的我只能运行这么小的模型...)

再次感谢你们的卓越工作!

兄弟你实现了吗

OuYangg commented 1 week ago

您好!非常感谢你们的工作,InternVL作为开源模型实在是太酷了,非常有意义的工作! 出于兴趣,我想探索如何在InternVL中加入混合专家模型,请问有什么建议吗?我的基础知识比较薄弱,不知道该从何处下手,希望有人能给出一些思路,谢谢!我现在使用的是InternVL1.5-Mini4B版本(是的我只能运行这么小的模型...) 再次感谢你们的卓越工作!

兄弟你实现了吗

遇到了同样的问题,hidden states后面接个FC就会出现nan,大佬发现原因了嘛

zweiqi commented 6 days ago

您好!非常感谢你们的工作,InternVL作为开源模型实在是太酷了,非常有意义的工作! 出于兴趣,我想探索如何在InternVL中加入混合专家模型,请问有什么建议吗?我的基础知识比较薄弱,不知道该从何处下手,希望有人能给出一些思路,谢谢!我现在使用的是InternVL1.5-Mini4B版本(是的我只能运行这么小的模型...) 再次感谢你们的卓越工作!

兄弟你实现了吗

遇到了同样的问题,hidden states后面接个FC就会出现nan,大佬发现原因了嘛

不知道问题在哪唉,无从下手了

LIKP0 commented 6 days ago

我正在尝试用https://huggingface.co/microsoft/Phi-3.5-MoE-instruct的language model来做MoE,直接替换modeling_intenvl_chat.py里面的Phi3ForCausalLM模型,感觉是种相对简单的方法,还没有细看

galactic123 commented 5 days ago

您好!非常感谢你们的工作,InternVL作为开源模型实在是太酷了,非常有意义的工作! 出于兴趣,我想探索如何在InternVL中加入混合专家模型,请问有什么建议吗?我的基础知识比较薄弱,不知道该从何处下手,希望有人能给出一些思路,谢谢!我现在使用的是InternVL1.5-Mini4B版本(是的我只能运行这么小的模型...) 再次感谢你们的卓越工作!

兄弟你实现了吗

遇到了同样的问题,hidden states后面接个FC就会出现nan,大佬发现原因了嘛

不知道问题在哪唉,无从下手了

同样的问题,我强行用矩阵实现的linear

OuYangg commented 5 days ago

您好!非常感谢你们的工作,InternVL作为开源模型实在是太酷了,非常有意义的工作! 出于兴趣,我想探索如何在InternVL中加入混合专家模型,请问有什么建议吗?我的基础知识比较薄弱,不知道该从何处下手,希望有人能给出一些思路,谢谢!我现在使用的是InternVL1.5-Mini4B版本(是的我只能运行这么小的模型...) 再次感谢你们的卓越工作!

兄弟你实现了吗

遇到了同样的问题,hidden states后面接个FC就会出现nan,大佬发现原因了嘛

不知道问题在哪唉,无从下手了

同样的问题,我强行用矩阵实现的linear

我发现在model = InternVLChatModel.from_pretrained(model_args.model_name_or_path, torch_dtype=torch.bfloat16, config=config)之后再初始化FC就可以解决,否则weight里面会有nan

OuYangg commented 5 days ago

InternVLChatModel

我在InternVLChatModel加了个初始化函数

zweiqi commented 5 days ago

InternVLChatModel

我在InternVLChatModel加了个初始化函数

可以分享一下代码吗,本身不都在init初始化函数里吗,没太理解🥹