ColossalAI icon indicating copy to clipboard operation
ColossalAI copied to clipboard

[BUG]: ImportError: cannot import name 'MOE_CONTEXT' from partially initialized module

Open songty21110133 opened this issue 2 years ago โ€ข 2 comments

๐Ÿ› Describe the bug

ๆ‚จๅฅฝ๏ผŒๅฝ“ๆˆ‘ๅช่ฐƒ็”จfrom colossalai.nn.layer.moe import Experts, MoeLayer, Top1Router, NormalNoiseGeneratorๆ—ถๅ€™ๅ‡บ็Žฐไปฅไธ‹้—ฎ้ข˜๏ผš Traceback (most recent call last): File "/home/songty/working_dir/moe/main.py", line 2, in <module> from colossalai.nn.layer.moe import Experts, MoeLayer, Top1Router, NormalNoiseGenerator File "/home/songty/miniconda3/envs/songty_pytorch/lib/python3.10/site-packages/colossalai/nn/layer/moe/__init__.py", line 1, in <module> from .checkpoint import load_moe_model, save_moe_model File "/home/songty/miniconda3/envs/songty_pytorch/lib/python3.10/site-packages/colossalai/nn/layer/moe/checkpoint.py", line 5, in <module> from .experts import MoeExperts File "/home/songty/miniconda3/envs/songty_pytorch/lib/python3.10/site-packages/colossalai/nn/layer/moe/experts.py", line 9, in <module> from colossalai.context.moe_context import MOE_CONTEXT File "/home/songty/miniconda3/envs/songty_pytorch/lib/python3.10/site-packages/colossalai/context/moe_context.py", line 7, in <module> from colossalai.legacy.tensor import ProcessGroup File "/home/songty/miniconda3/envs/songty_pytorch/lib/python3.10/site-packages/colossalai/legacy/__init__.py", line 1, in <module> from .initialize import ( File "/home/songty/miniconda3/envs/songty_pytorch/lib/python3.10/site-packages/colossalai/legacy/initialize.py", line 19, in <module> from colossalai.context.moe_context import MOE_CONTEXT ImportError: cannot import name 'MOE_CONTEXT' from partially initialized module 'colossalai.context.moe_context' (most likely due to a circular import)

Environment

Python 3.10.6 Pytorch 2.0.1 CUDA 12.0 ColossalAI 0.3.3

songty21110133 avatar Sep 28 '23 02:09 songty21110133

Bot detected the issue body's language is not English, translate it automatically. ๐Ÿ‘ฏ๐Ÿ‘ญ๐Ÿป๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘๐Ÿ‘ซ๐Ÿง‘๐Ÿฟโ€๐Ÿคโ€๐Ÿง‘๐Ÿป๐Ÿ‘ฉ๐Ÿพโ€๐Ÿคโ€๐Ÿ‘จ๐Ÿฟ๐Ÿ‘ฌ๐Ÿฟ


๐Ÿ› Describe the bug

Hello, when I just call from colossalai.nn.layer.moe import Experts, MoeLayer, Top1Router, NormalNoiseGenerator, the following problem occurs: Traceback (most recent call last): File "/home/songty/working_dir/moe/main.py", line 2, in <module> from colossalai.nn.layer.moe import Experts, MoeLayer, Top1Router, NormalNoiseGenerator File "/home/songty/miniconda3/envs/songty_pytorch/lib/python3.10/site-packages/colossalai/nn/layer/moe/__init__.py", line 1, in <module> from .checkpoint import load_moe_model, save_moe_model File "/home/songty/miniconda3/envs/songty_pytorch/lib/python3.10/site-packages/colossalai/nn/layer/moe/checkpoint.py", line 5, in <module> from .experts import MoeExperts File "/home/songty/miniconda3/envs/songty_pytorch/lib/python3.10/site-packages/colossalai/nn/layer/moe/experts.py", line 9, in <module> from colossalai.context.moe_context import MOE_CONTEXT File "/home/songty/miniconda3/envs/songty_pytorch/lib/python3.10/site-packages/colossalai/context/moe_context.py", line 7, in <module> from colossalai.legacy.tensor import ProcessGroup File "/home/songty/miniconda3/envs/songty_pytorch/lib/python3.10/site-packages/colossalai/legacy/__init__.py", line 1, in <module> from .initialize import ( File "/home/songty/miniconda3/envs/songty_pytorch/lib/python3.10/site-packages/colossalai/legacy/initialize.py", line 19, in <module> from colossalai.context.moe_context import MOE_CONTEXT ImportError: cannot import name 'MOE_CONTEXT' from partially initialized module 'colossalai.context.moe_context' (most likely due to a circular import)

Environment

Python 3.10.6 Pytorch 2.0.1 CUDA 12.0 ColossalAI 0.3.3

Issues-translate-bot avatar Sep 28 '23 02:09 Issues-translate-bot

Hi, 'colossalai.nn.layer.moe' will be deprecated soon. you can follow the open-moe, https://github.com/hpcaitech/ColossalAI/blob/main/applications/ColossalMoE/train.py

flybird11111 avatar Feb 18 '24 11:02 flybird11111