{"record":{"id":"4b101ab00851bd08","repo":"hiyouga/LlamaFactory","slug":"mcore-adapter-is-not-installed-please-install-it-4b101a","errorCode":null,"errorMessage":"mcore_adapter is not installed. Please install it with `pip install mcore-adapter`.","messagePattern":"mcore_adapter is not installed\\. Please install it with `pip install mcore-adapter`\\.","errorType":"exception","errorClass":"ImportError","httpStatus":null,"severity":"error","filePath":"src/llamafactory/train/tuner.py","lineNumber":124,"sourceCode":"            raise ImportError(\n                \"megatron-bridge is not installed. \"\n                \"Please install it with `pip install --no-build-isolation megatron-bridge`.\"\n            )\n        mb_args = finetuning_args.megatron_bridge_args\n        if mb_args is None:\n            raise ValueError(\"Megatron Bridge arguments are missing. Please set USE_MEGATRON_BRIDGE=1.\")\n        if finetuning_args.stage == \"pt\":\n            from .megatron_bridge import run_pt as run_pt_mb\n\n            run_pt_mb(model_args, data_args, training_args, finetuning_args, mb_args, callbacks)\n        else:\n            from .megatron_bridge import run_sft as run_sft_mb\n\n            run_sft_mb(model_args, data_args, training_args, finetuning_args, mb_args, callbacks)\n\n    elif finetuning_args.stage in [\"pt\", \"sft\", \"dpo\"] and finetuning_args.use_mca:\n        if not is_mcore_adapter_available():\n            raise ImportError(\"mcore_adapter is not installed. Please install it with `pip install mcore-adapter`.\")\n        if finetuning_args.stage == \"pt\":\n            from .mca import run_pt as run_pt_mca\n\n            run_pt_mca(model_args, data_args, training_args, finetuning_args, callbacks)\n        elif finetuning_args.stage == \"sft\":\n            from .mca import run_sft as run_sft_mca\n\n            run_sft_mca(model_args, data_args, training_args, finetuning_args, callbacks)\n        elif finetuning_args.stage == \"dpo\":\n            from .mca import run_dpo as run_dpo_mca\n\n            run_dpo_mca(model_args, data_args, training_args, finetuning_args, callbacks)\n\n    elif finetuning_args.stage == \"pt\":\n        run_pt(model_args, data_args, training_args, finetuning_args, callbacks)\n    elif finetuning_args.stage == \"sft\":\n        run_sft(model_args, data_args, training_args, finetuning_args, generating_args, callbacks)\n    elif finetuning_args.stage == \"rm\":","sourceCodeStart":106,"sourceCodeEnd":142,"githubUrl":"https://github.com/hiyouga/LlamaFactory/blob/f28afaf6355af515454dfb16c97d728307c93897/src/llamafactory/train/tuner.py#L106-L142","documentation":"The MCA (Megatron-core adapter) branch (src/llamafactory/train/tuner.py:124) supports pt/sft/dpo when `use_mca: true`; it first checks `is_mcore_adapter_available()` and raises ImportError if the optional `mcore-adapter` package is missing.","triggerScenarios":"Config with `use_mca: true` on an environment without `pip install mcore-adapter`.","commonSituations":"Adopting Megatron-core training for DPO/SFT on a fresh machine or container built from base requirements.","solutions":["Install the adapter: `pip install mcore-adapter`.","Verify with `python -c \"import mcore_adapter\"` and rerun.","If Megatron-core is not required, set `use_mca: false`."],"exampleFix":"# shell\npip install mcore-adapter","handlingStrategy":"validation","validationCode":"from importlib.util import find_spec\ndef mca_ready():\n    return find_spec(\"mcore_adapter\") is not None","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Probe find_spec('mcore_adapter') before enabling use_mca.","Keep a requirements-extra file per distributed backend for reproducible envs."],"tags":["mca","megatron-core","optional-dependency","installation"],"backgroundTag":null,"analyzedSha":"f28afaf6355af515454dfb16c97d728307c93897","analyzedAt":"2026-08-14T21:57:28.298Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}