{"id":1799,"date":"2026-08-06T16:28:18","date_gmt":"2026-08-06T08:28:18","guid":{"rendered":"https:\/\/www.izhuhn.cn\/?p=1799"},"modified":"2026-08-06T16:28:18","modified_gmt":"2026-08-06T08:28:18","slug":"hy-embodied-0-5-ascend-910b-8%e5%8d%a1%e6%8e%a8%e7%90%86%e4%b8%8e%e8%ae%ad%e7%bb%83%e7%ae%80%e8%ae%b0","status":"publish","type":"post","link":"https:\/\/www.izhuhn.cn\/index.php\/2026\/08\/06\/hy-embodied-0-5-ascend-910b-8%e5%8d%a1%e6%8e%a8%e7%90%86%e4%b8%8e%e8%ae%ad%e7%bb%83%e7%ae%80%e8%ae%b0\/","title":{"rendered":"HY-Embodied 0.5 Ascend 910B 8\u5361\u63a8\u7406\u4e0e\u8bad\u7ec3\u7b80\u8bb0"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">\u4e00\u3001\u80cc\u666f<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">HY-Embodied 0.5 \u5b98\u65b9\u4ee3\u7801\u9ed8\u8ba4\u4f9d\u8d56 CUDA \u548c flash-attn\uff0c\u5728 Ascend 910B \u4e0a\u9700\u8981\u628a\u6ce8\u610f\u529b\u8def\u5f84\u66ff\u6362\u4e3a torch_npu\u3002\u672c\u6b21\u5b8c\u6210\u4e24\u4ef6\u4e8b\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>8 \u5361\u5e76\u884c\u63a8\u7406\u9a8c\u8bc1\u3002<\/li>\n<li>8 \u5361 20 \u6b65\u5fae\u8c03\u5192\u70df\u8bad\u7ec3\uff0c\u9a8c\u8bc1\u8bad\u7ec3\u5b8c\u6210\u540e\u6743\u91cd\u80fd\u591f\u6b63\u5e38\u4fdd\u5b58\u5e76\u91cd\u65b0\u52a0\u8f7d\u3002<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u5f53\u524d\u73af\u5883\u4fe1\u606f\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u670d\u52a1\u5668\uff1aAscend 910B3 \u5171 8 \u5361\uff0c\u6bcf\u5361 64GB HBM\u3002<\/li>\n<li>\u5bb9\u5668\uff1ahy\uff0cPython 3.11.15\u3002<\/li>\n<li>\u8f6f\u4ef6\uff1atorch 2.8.0\uff0ctorch_npu 2.8.0.post1\uff0ctransformers 4.57.0\u3002<\/li>\n<li>\u6a21\u578b\uff1a\/data\/models\/HY-Embodied-0.5\u3002<\/li>\n<li>\u4ee3\u7801\uff1a\/HY-Embodied\/Hy-Embodied-0.5\u3002<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e8c\u3001flash_attn \u5254\u9664\u4e0e torch_npu \u66ff\u6362<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u4ee3\u7801\u548c\u4f9d\u8d56\u4e2d\u5df2\u7ecf\u4e0d\u5b58\u5728 flash_attn \u5f15\u7528\uff0crequirements.txt \u4e5f\u6ca1\u6709 flash-attn \u5305\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u6ce8\u610f\u529b\u5b9e\u73b0\u4f4d\u4e8e finetune\/hunyuan_vl_mot\/modeling_hunyuan_vl_mot.py\uff0c\u6838\u5fc3\u4f7f\u7528\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u975e\u6253\u5305 batch \u4f7f\u7528 torch_npu.npu_fusion_attention\uff0cinput_layout \u4e3a BNSD\u3002<\/li>\n<li>\u6570\u636e\u6253\u5305\u8bad\u7ec3\u4f7f\u7528 torch_npu.npu_fusion_attention\uff0cinput_layout \u4e3a TND\u3002<\/li>\n<li>\u901a\u8fc7 cu_seqlens \u8868\u8fbe packed sequence \u8fb9\u754c\uff0c\u4fdd\u8bc1\u6bcf\u4e2a\u6837\u672c\u72ec\u7acb\u505a\u56e0\u679c\u6ce8\u610f\u529b\u3002<\/li>\n<li>\u89c6\u89c9 span \u4f7f\u7528\u53cc\u5411\u6ce8\u610f\u529b\uff0c\u518d\u5199\u56de\u6574\u4f53\u8f93\u51fa\u3002<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u63a8\u7406\u5165\u53e3 inference.py \u4f7f\u7528 attn_implementation=eager\uff0c\u5e76\u76f4\u63a5\u52a0\u8f7d\u5230 npu \u8bbe\u5907\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e09\u30018 \u5361\u63a8\u7406<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u5148\u6e05\u7a7a\u5361\u7247\u4e0a\u7684\u5386\u53f2\u7a0b\u5e8f\uff0c\u7136\u540e\u6267\u884c\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd \/HY-Embodied\/Hy-Embodied-0.5\nbash run_inference_8cards.sh<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u811a\u672c\u4f1a\u5728 8 \u5f20 NPU \u4e0a\u5404\u542f\u52a8\u4e00\u4e2a\u72ec\u7acb\u8fdb\u7a0b\uff0c\u6bcf\u5f20\u5361\u90fd\u6267\u884c\u5355\u56fe\u548c batch \u63a8\u7406\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u7ed3\u679c\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table>\n<thead><tr><th>NPU<\/th><th>\u7ed3\u679c<\/th><\/tr><\/thead>\n<tbody>\n<tr><td>0<\/td><td>\u6210\u529f<\/td><\/tr>\n<tr><td>1<\/td><td>\u6210\u529f<\/td><\/tr>\n<tr><td>2<\/td><td>\u6210\u529f<\/td><\/tr>\n<tr><td>3<\/td><td>\u6210\u529f<\/td><\/tr>\n<tr><td>4<\/td><td>\u6210\u529f<\/td><\/tr>\n<tr><td>5<\/td><td>\u6210\u529f<\/td><\/tr>\n<tr><td>6<\/td><td>\u6210\u529f<\/td><\/tr>\n<tr><td>7<\/td><td>\u6210\u529f<\/td><\/tr>\n<\/tbody>\n<\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">NPU0 \u793a\u4f8b\u8f93\u51fa\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Result: &lt;answer&gt;\nThis is a close-up, slightly high-angle shot of a white office...\n\nBatch Sample 1: &lt;answer&gt;\nOkay, here are the standard steps to open a fridge door:<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u65e5\u5fd7\u4f4d\u7f6e\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/tmp\/hy_infer_8card\/npu0.log\n...\n\/tmp\/hy_infer_8card\/npu7.log<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u56db\u30018 \u5361\u8bad\u7ec3\u4e0e\u5192\u70df\u9a8c\u8bc1<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u8bad\u7ec3\u811a\u672c\u4f7f\u7528\u4ed3\u5e93\u81ea\u5e26\u7684 tests\/test_data_packing.json \u4f5c\u4e3a\u5192\u70df\u6570\u636e\u96c6\uff0cDeepSpeed ZeRO-2\uff0c8 \u5361 torchrun\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u8bad\u7ec3\u811a\u672c\u9ed8\u8ba4\u5df2\u8fd8\u539f\u4e3a\u539f\u59cb\u6b65\u6570\u914d\u7f6e\uff1a\u4e0d\u4f20 --max_steps\uff0c--save_steps 100000\u3002\u672c\u6b21\u9a8c\u8bc1\u4e3a\u4e86\u63a7\u5236\u65f6\u95f4\uff0c\u4e34\u65f6\u901a\u8fc7\u73af\u5883\u53d8\u91cf\u9650\u5236\u4e3a 20 \u6b65\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u542f\u52a8\u547d\u4ee4\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd \/HY-Embodied\/Hy-Embodied-0.5\nRUN_NAME=debug_npu_8card \\\nOUTPUT_DIR=\/data\/models\/HY-Embodied-0.5-npu8 \\\nbash finetune\/scripts\/debug_npu8.sh<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u8bad\u7ec3\u5173\u952e\u53c2\u6570\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table>\n<thead><tr><th>\u53c2\u6570<\/th><th>\u503c<\/th><\/tr><\/thead>\n<tbody>\n<tr><td>\u5361\u6570<\/td><td>8<\/td><\/tr>\n<tr><td>max_steps<\/td><td>\u9ed8\u8ba4\u4e0d\u8bbe\u7f6e\uff08\u539f\u59cb\u914d\u7f6e\uff09\uff0c\u672c\u6b21\u9a8c\u8bc1 20<\/td><\/tr>\n<tr><td>per_device_train_batch_size<\/td><td>1<\/td><\/tr>\n<tr><td>gradient_accumulation_steps<\/td><td>1<\/td><\/tr>\n<tr><td>deepspeed<\/td><td>zero2.json<\/td><\/tr>\n<tr><td>\u7cbe\u5ea6<\/td><td>bf16<\/td><\/tr>\n<tr><td>gradient_checkpointing<\/td><td>True<\/td><\/tr>\n<tr><td>save_strategy<\/td><td>steps<\/td><\/tr>\n<tr><td>save_steps<\/td><td>\u9ed8\u8ba4 100000\uff08\u539f\u59cb\u914d\u7f6e\uff09\uff0c\u672c\u6b21\u9a8c\u8bc1 20<\/td><\/tr>\n<\/tbody>\n<\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u8bad\u7ec3\u7ed3\u679c\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u9000\u51fa\u7801\uff1a0\u3002<\/li>\n<li>\u603b\u8017\u65f6\uff1a\u7ea6 172.77 \u79d2\u3002<\/li>\n<li>train_loss\uff1a0.1719\u3002<\/li>\n<li>\u5355\u6b65\u8017\u65f6\uff1a\u7ea6 5.6 \u79d2\u3002<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u672c\u6b21 20 \u6b65\u5192\u70df\u9a8c\u8bc1\u5b8c\u6210\u540e\uff0cTransformers Trainer \u81ea\u52a8\u4fdd\u5b58\u4e86 checkpoint \u548c\u6700\u7ec8 HF \u6743\u91cd\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e94\u3001\u6743\u91cd\u4fdd\u5b58\u6821\u9a8c<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u8f93\u51fa\u76ee\u5f55\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/data\/models\/HY-Embodied-0.5-npu8-step20<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u4fdd\u5b58\u5185\u5bb9\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>checkpoint-20\/\n  model-00001-of-00002.safetensors\n  model-00002-of-00002.safetensors\n  model.safetensors.index.json\n  trainer_state.json\n  ...\nmodel-00001-of-00002.safetensors\nmodel-00002-of-00002.safetensors\nmodel.safetensors.index.json\nconfig.json\ntokenizer.json<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u6821\u9a8c\u7ed3\u679c\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table>\n<thead><tr><th>\u9879\u76ee<\/th><th>\u7ed3\u679c<\/th><\/tr><\/thead>\n<tbody>\n<tr><td>safetensors \u5206\u7247<\/td><td>2 \u4e2a<\/td><\/tr>\n<tr><td>\u7d22\u5f15\u5f20\u91cf\u6570<\/td><td>978<\/td><\/tr>\n<tr><td>\u5206\u7247 1<\/td><td>5,000,007,256 bytes\uff0c472 keys<\/td><\/tr>\n<tr><td>\u5206\u7247 2<\/td><td>3,065,167,368 bytes\uff0c506 keys<\/td><\/tr>\n<tr><td>\u6a21\u578b\u7c7b\u578b<\/td><td>hunyuan_vl_mot<\/td><\/tr>\n<tr><td>\u6a21\u578b\u53c2\u6570\u91cf<\/td><td>3,785,086,960<\/td><\/tr>\n<\/tbody>\n<\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u91cd\u65b0\u52a0\u8f7d\u9a8c\u8bc1\u547d\u4ee4\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd \/HY-Embodied\/Hy-Embodied-0.5\npython - &lt;&lt;'PY'\nimport torch\nfrom transformers import AutoModelForImageTextToText, AutoProcessor\n\nout = \"\/data\/models\/HY-Embodied-0.5-npu8-step20\"\nprocessor = AutoProcessor.from_pretrained(out)\nmodel = AutoModelForImageTextToText.from_pretrained(\n    out, torch_dtype=torch.bfloat16, attn_implementation=\"eager\"\n)\nprint(\"LOAD_OK\", model.config.model_type, sum(p.numel() for p in model.parameters()))\nPY<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u5b9e\u9645\u8f93\u51fa\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>LOAD_OK hunyuan_vl_mot 3785086960<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u8bf4\u660e\u8bad\u7ec3\u4fdd\u5b58\u7684 safetensors \u53ef\u4ee5\u76f4\u63a5\u88ab Transformers \u8bfb\u53d6\u5e76\u91cd\u5efa\u6a21\u578b\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u516d\u3001\u6570\u636e\u96c6\u8bf4\u660e<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u672c\u6b21\u4f7f\u7528\u7684\u662f GitHub \u4ed3\u5e93\u81ea\u5e26\u7684\u5192\u70df\u6d4b\u8bd5\u6570\u636e\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/HY-Embodied\/Hy-Embodied-0.5\/finetune\/tests\/test_data_packing.json<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u5171 14 \u6761 packed \u6837\u672c\uff0c\u683c\u5f0f\u4e3a id\u3001image\u3001conversations\uff0cconversations \u5185\u4f7f\u7528 human\/gpt \u89d2\u8272\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">GitHub \u7684 HY-Embodied-0.5 README \u6ca1\u6709\u63d0\u4f9b HY-Embodied-0.5 \u4e13\u7528\u5fae\u8c03\u6570\u636e\u96c6\uff0c\u4e5f\u6ca1\u6709\u5199\u660e\u5b98\u65b9\u771f\u5b9e\u8bad\u7ec3\u6570\u636e\u6765\u6e90\u3002README \u4e2d\u94fe\u63a5\u7684 tencent\/Hy-Embodied-0.5-VLA-Data \u5c5e\u4e8e HY-VLA-0.5 \u7684 UMI \u6570\u636e\uff0c\u4e0e\u672c\u6b21\u5192\u70df\u8bad\u7ec3\u4e0d\u662f\u540c\u4e00\u6279\u6570\u636e\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u56e0\u6b64\u672c\u6b21\u7ed3\u679c\u53ea\u8bc1\u660e 8 \u5361\u8bad\u7ec3\u548c\u6743\u91cd\u4fdd\u5b58\u94fe\u8def\u53ef\u7528\uff0c\u4e0d\u4ee3\u8868\u771f\u5b9e\u6570\u636e\u4e0a\u7684\u5fae\u8c03\u6548\u679c\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e03\u3001\u6ce8\u610f\u4e8b\u9879<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u5192\u70df\u6570\u636e\u4e2d\u7b54\u6848\u8f83\u77ed\u4e14\u91cd\u590d\uff0closs \u5f88\u5feb\u63a5\u8fd1 0\uff0c\u5c5e\u4e8e\u6570\u636e\u7279\u5f81\uff0c\u4e0d\u4ee3\u8868\u6a21\u578b\u8fc7\u62df\u5408\u5224\u65ad\u3002<\/li>\n<li>\u771f\u5b9e\u5fae\u8c03\u9700\u8981\u6309\u76f8\u540c JSON \u7ed3\u6784\u51c6\u5907\u81ea\u5df1\u7684\u6570\u636e\uff0c\u6216\u8f6c\u6362\u4e3a packed \u683c\u5f0f\u540e\u518d\u8bad\u7ec3\u3002<\/li>\n<li>\u8bad\u7ec3\u811a\u672c\u5df2\u8fd8\u539f\u539f\u59cb\u6b65\u6570\uff1a\u9ed8\u8ba4\u4e0d\u4f20 --max_steps\uff0c--save_steps 100000\uff1b\u5982\u9700\u77ed\u9a8c\u8bc1\u53ef\u8bbe\u7f6e MAX_STEPS \u548c SAVE_STEPS\u3002<\/li>\n<li>\u53d1\u5e03\u6216\u66f4\u65b0\u535a\u5ba2\u540e\u9700\u8981\u6267\u884c CDN \u7f13\u5b58\u5237\u65b0\uff0c\u5426\u5219\u65e7\u5185\u5bb9\u53ef\u80fd\u7ee7\u7eed\u88ab\u7f13\u5b58\u670d\u52a1\u3002<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u7b80\u8bb0\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4e00\u3001\u80cc\u666f HY-Embodied 0.5 \u5b98\u65b9\u4ee3\u7801\u9ed8\u8ba4\u4f9d\u8d56 CUDA \u548c flash-attn\uff0c\u5728 Ascend 910B \u4e0a\u9700\u8981 &#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1799","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"jetpack_featured_media_url":"","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/posts\/1799","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/comments?post=1799"}],"version-history":[{"count":1,"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/posts\/1799\/revisions"}],"predecessor-version":[{"id":1800,"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/posts\/1799\/revisions\/1800"}],"wp:attachment":[{"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/media?parent=1799"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/categories?post=1799"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.izhuhn.cn\/index.php\/wp-json\/wp\/v2\/tags?post=1799"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}