ãã®æçš¿ã¯DockerãšArmã®å ±åäœæ¥ã§ãDocker MCP ToolkitãšArm MCP Serverãã©ã®ããã«é£æºããŠHugging Face Spacesãã¹ãã£ã³ããArm64 æºåç¶æ ãæŽãããã宿ŒããŸãã
ååã®æçš¿ã§ã¯ãAVXã®å åšèŠçŽ ãå«ãã¬ã¬ã·ãŒC++ã¢ããªã±ãŒã·ã§ã³ãArm264ã«ç§»è¡ããæ¹æ³ããDocker MCP ToolkitãšArm MCP ServerãçšããŠè§£èª¬ããŸãããã³ãŒã倿ãSIMDã®æ¬è³ªçãªæžãæããã³ã³ãã€ã©ãã©ã°ã®å€æŽããã«ã¹ã¿ãã¯ãªã©ã§ãããã®æçš¿ã¯ãããç°ãªãããããŠã¯ããã«äžè¬çãªæ éã¢ãŒãã«ã€ããŠã§ãã
ACE-Stepãš15ãå®è¡ããããšãããšãã3ãHugging Faceã®Bãã©ã¡ãŒã¿é³æ¥œçæã¢ãã«5ãArm64 MacBookäžã§ã€ã³ã¹ããŒã«ã倱æããŸãããããã¯è¬ãããã«ãŒãã«ãšã©ãŒã§ã¯ãªããpipãšã©ãŒã§å€±æããŸãããrequirements.txtã®ãã©ãã·ã¥ã¢ã¿ãããã€ãŒã«ã¯ linux_x86_64 URLã«ããŒãã³ãŒããããŠããããã®ã¢ãã¬ã¹ã«ã¯Arm64 ãã€ãŒã«ã¯ååšãããã³ã³ããã¯æ§ç¯ãããŸããã§ãããäžèŠåçŽãªåé¡ã§ãããHugging Face Docker Spacesã®çŽ 80%ã«åœ±é¿ãåºãŠããŸããã³ãŒãã§ãDockerãã¡ã€ã«ã§ããªããèª°ãæ°ã¥ããªãã£ãåäžã®ããŒãã³ãŒãäŸåé¢ä¿URLã«åœ±é¿ããŠããŸãããªããªã誰ãArmã§ãã¹ãããŠããªãããã§ãã
ãããäœç³»çã«èšºæããããã«ãçŽ15åã§è 64æºåç¶æ³ã®ãã®ã³ã°ãã§ã€ã¹ã¹ããŒã¹ãè§£æã§ãã7ããŒã«MCPãã§ãŒã³ãæ§ç¯ããŸããããã®ã¬ã€ãã®çµããã«ã¯ããªãACE-Step v1ãªã®ããããçè§£ã§ããã§ãããã5ã¢ãŒã 64ã2ã€ã®ç¹å®ã®ãããã«ãŒããããŠãã§ãŒã³ãããããèªåçã«è¡šã«åºãæ¹æ³ã§å€±æããŸãã
ãªãé¡ã®ã¹ããŒã¹ãæ±ããããããšãè ã«ãšã£ãŠéèŠãªã®ã
Hugging Faceã¯100äžä»¥äžã®ã¹ããŒã¹ããã¹ãããŠããããã®å€ãã¯Docker SDKã䜿çšããŠãããããéçºè ã¯DockerfileãäœæããHuggingFaceãçŽæ¥ã³ã³ãããæ§ç¯ãæäŸããŸããåé¡ã¯ããããã®ã³ã³ããã®ã»ãšãã©ãLinux/AMD64äžã§ã®ã¿æ§ç¯ã»ãã¹ããããŠããããšã§ãããããã«ããAIã¯ãŒã¯ããŒãã«ãšã£ãŠãŸããŸãéèŠã«ãªã£ãŠãã3ã€ã®æ¥æé·64 ã¿ãŒã²ããã®å±éå£ãçãŸããŠããŸãã
|
ã¿ãŒã²ãã |
ããŒããŠã§ã¢ |
ãªãéèŠãªã®ã |
|---|---|---|
|
ã¯ã©ãŠã |
AWS Graviton, Azure Cobalt, Google Axion |
20-40%ã®ã³ã¹ãåæžãxå86 |
|
ãšããž/ãããã£ã¯ã¹ |
NVIDIA ãžã§ãããœã³ã»ãœãŒãDGX Spark |
GR00Tãã«ãããããã¢ã€ã¶ãã¯ã¯å šå¡ã¢ãŒã 64ãçã |
|
ããŒã«ã«éçºè |
Apple Silicon M1-M4 |
æã人æ°ã®ããéçºè ãã·ã³ãã¯ã©ãŠãã³ã¹ããŒã |
æ éã¢ãŒãã¯å¿ ãããæããã§ã¯ãªããéåžžã¯2ã€ã®æç¢ºãªãã¿ãŒã³ã®ããããã§çŸããŸããäžã€ç®ã¯ã³ã³ãããããã§ã¹ããæ¬ èœããŠããããšã§ããã€ã¡ãŒãžã«ã¯ã¢ãŒã 64 ã¬ã€ã€ãŒããªããDockerããããååŸããããšããŸããããå°ãªããšã蚺æã¯ç°¡åã§ãã2ã€ç®ã¯èŠã€ãã«ããã§ããDockerãã¡ã€ã«ãšããŒã¹ã€ã¡ãŒãžã¯åé¡ãããŸããããrequirements.txtã®äŸåé¢ä¿ããã©ãããã©ãŒã åºæã®ãã€ãŒã«URLãæã瀺ããŠããŸãããã«ãã¯éå§ãããPIPã€ã³ã¹ããŒã«ã«å°éããŸããããã©ããèŠãã°ãããæç¢ºãªæç€ºã®ãªããã©ãããã©ãŒã ãã¹ããããšã©ãŒã§å€±æããŸããACE-Step v1ã5 ã¯2ã€ç®ã®ãã¿ãŒã³ã®æç§æžçãªäŸã§ãããMCPãã§ãŒã³ã¯äž¡æ¹ãæ°åã§ãã£ããããŸãã
7-ããŒã«MCPãã§ãŒã³
Docker MCP Toolkit ã¯å®å šãªMCPã²ãŒããŠã§ã€ãéããŠè§£æããªãŒã±ã¹ãã¬ãŒã·ã§ã³ããŸããåããŒã«ã¯ç¬ç«ããDockerã³ã³ããäžã§åäœããŸãããã®é£éã®7ã€ã®ããŒã«ã¯ä»¥äžã®éãã§ã:
ãã£ãã·ã§ã³: 7-ããŒã« MCP ãã§ãŒã³ã¢ãŒããã¯ãã£å³
ããŒã«:
- Hugging Face MCP â 空éãçºèŠããSDKã¿ã€ããç¹å®ãã(Docker察Gradio)
- Skopeo (Arm MCP Serverçµç±)â ã³ã³ããã¬ãžã¹ããªãæ€æ»ãããµããŒããããŠããã¢ãŒããã¯ãã£ãå ±åããŸã
- migrate-ease (Arm MCP Serverçµç±)â x86åºæã®ã€ã³ããã·ãã¯ãããŒãã³ãŒãã£ã³ã°ããããã¹ãã¢ãŒãããã¯ãããã©ã€ãã©ãªã®ãœãŒã¹ã³ãŒããã¹ãã£ã³ããŸã
- GitHub MCP â
Dockerfileãpyproject.tomlãrequirements.txtãªããžããªãã - Armãã¬ããžããŒã¹ (Arm MCPãµãŒããŒçµç±)â ãã«ãæŠç¥ãæé©åã¬ã€ãã® learn.arm.com æ€çŽ¢
- ã·ãŒã±ã³ã·ã£ã«ã»ã·ã³ãã³ã° â 調æ»çµæããŸãšããŠæ§é åãããç§»è¡ã®çµè«ãå°ããŸã
- Docker MCP Gateway â ãªã¯ãšã¹ãã®ã«ãŒãã£ã³ã°ãã³ã³ããã©ã€ããµã€ã¯ã«ã®ç®¡ç
ãã®æç¹ã§èªç¶ãªçåã¯ãArm64 çšã«Dockerã€ã¡ãŒãžãåçŽã«åæ§ç¯ããŠçµããããããšãã§ãããã©ããããšããããšã§ããå€ãã®ã¢ããªã±ãŒã·ã§ã³ã§ã¯å¯èœã§ããããããå建ãå®éã«æåãããã©ãããäºåã«ç¥ãã®ã¯å¥ã®åé¡ã§ããããªãã®Dockerãã¡ã€ã«ã¯ãArm64 ãã«ããå ¬éããªãããŒã¹ã€ã¡ãŒãžã«äŸåããŠãããããããŸãããããªãã®PythonäŸåé¢ä¿ã«ã¯Aarch64 ãã€ãŒã«ããªããããããŸãããããªãã®ã³ãŒãã¯xåã®ã·ã¹ãã ã³ãŒã«86䜿ããããããŸãããMCPãã§ãŒã³ã¯ãããŸããããªããã«ãã«æéãæè³ããåã«ããããã¹ãŠãèªåçã«ãã§ãã¯ããŸãã
Docker MCP Toolkitã§Visual Studio Codeãèšå®ãã
åæ æ¡ä»¶
éå§ããåã«ã次ã®ãã®ãããããšã確èªããŠãã ããã
- æäœ 8 GBã®RAM(æšå¥š16GB)ã®ãã·ã³
- ææ°ã®Docker DesktopãªãªãŒã¹
- GitHub Copilotæ¡åŒµæ©èœã䜿ã£ãVS Code
- å人ã¢ã¯ã»ã¹ããŒã¯ã³ä»ãã®GitHubã¢ã«ãŠã³ã
ã¹ããã 1ãDocker MCP Toolkitãæå¹ã«ãã
Dockerãã¹ã¯ããããéããèšå®ããMCP Toolkitãæå¹ã«ããŠãã ããã
以äžãå¯èœã«ããæ¹æ³:
- Docker Desktop ãéã
- ããŒã¿æ©èœ>èšå®ãž
ãã£ãã·ã§ã³:Docker Desktop äžã®Docker MCP Toolkitãæå¹ã«ãã
- Toggle Docker MCP Toolkit ON
- ãå¿åããã¯ãªãã¯ããŸã
ã¹ããã 2ãã«ã¿ãã°ããå¿ èŠãªMCPãµãŒããŒã远å ãã
ã«ã¿ãã°ãã以äžã®4å°ã®MCPãµãŒããŒã远å ããŸããDocker Desktop MCP Toolkitã®ãCatalogããéžæãããã以äžã®ãªã³ã¯ããèŠã€ããããšãã§ããŸã:
- Arm MCP Server â ã¢ãŒããã¯ãã£è§£æã
migrate-easeã¹ãã£ã³ãskopeoæ€æ»ãArmãã¬ããžããŒã¹ - GitHub MCP Server â ãªããžããªè§£æãã³ãŒãèªã¿åãããã«ãªã¯ãšã¹ãäœæ
- ã·ãŒã±ã³ã·ã£ã«ã·ã³ãã³ã°MCPãµãŒã㌠â è€éãªåé¡ã®åè§£ãšèšç»
- Hugging Face MCPãµãŒã㌠â å®å®æ¢çŽ¢ãšã¡ã¿ããŒã¿ååŸ
ãã£ãã·ã§ã³:Docker MCPã«ã¿ãã°ã§Arm MCPãµãŒããŒãæ€çŽ¢
ã¹ããã 3ããµãŒããŒã®èšå®
- Arm MCPãµãŒããŒã®èšå®
ç§»è¡ã€ãŒãžãŒã¹ãã£ã³ããã³MCAããŒã«ã§ããŒã«ã«ã³ãŒãã«ã¢ã¯ã»ã¹ããã«ã¯ãArm MCPãµãŒããŒãããŒã«ã«ã³ãŒããæããã£ã¬ã¯ããªãèšå®ããå¿ èŠããããŸãã
ãã£ãã·ã§ã³:Arm MCPãµãŒããŒã®èšå®
ãä¿åããã¯ãªãã¯ãããšãArm MCPãµãŒããŒãã³ãŒãã®æ¢ãå Žæãææ¡ããŠãããŸããå°æ¥çã«å¥ã®ãã£ã¬ã¯ããªãžã®ã¢ã¯ã»ã¹ãèš±å¯ãããå Žåã¯ããã®ãã¹ã倿Žããå¿ èŠããããŸãã
å©çšå¯èœãªã¢ãŒã ç§»è¡ããŒã«
Arm MCP Serverã§å©çšå¯èœãª6ã€ã®MCPããŒã«ãã¹ãŠãèŠãã«ã¯ãããŒã«ãã¯ãªãã¯ããŠãã ãã:
ãã£ãã·ã§ã³:Arm MCPãµãŒããŒãæäŸããMCPããŒã«äžèЧ
knowledge_base_searchâ ArmåŠç¿ãªãœãŒã¹ãå åšææžããœãããŠã§ã¢äºææ§ã®æå³æ€çŽ¢migrate_ease_scanâ C++ãPythonãGoãJavaScriptãJavaã«å¯Ÿå¿ããã³ãŒãã¹ãã£ããŒ(Armäºææ§è§£æ)check_imageâ Dockerã€ã¡ãŒãžã¢ãŒããã¯ãã£æ€èšŒ(ã€ã¡ãŒãžãArm64ããµããŒãããŠããã確èª)skopeoâ ããŠã³ããŒãäžèŠã®é éã³ã³ããç»åæ€æ»mcaâ ã¢ã»ã³ããªæ§èœåæããã³IPCäºæž¬ã®ããã®ãã·ã³ã³ãŒãã¢ãã©ã€ã¶sysreport_instructionsâ ã·ã¹ãã ã¢ãŒããã¯ãã£æ å ±åé
- GitHub MCPãµãŒããŒã®èšå®
GitHub MCP Serverã¯ãGitHub Copilotããªããžããªã®èªã¿åãããã«ãªã¯ãšã¹ãã®äœæã課é¡ç®¡çã倿Žã®ã³ããããå¯èœã«ããŸãã
ãã£ãã·ã§ã³:GitHubå ¬åŒMCPãµãŒããŒã®èšå®æé
èªèšŒã®èšå®:
- GitHub officialãéžæããŠãã ãã
- åžæããèªèšŒæ¹æ³ãéžã³ãŸããã
- ããŒãœãã«ã¢ã¯ã»ã¹ããŒã¯ã³ã«ã€ããŠã¯ãGitHub>èšå®>éçºè èšå®ããååŸããŠãã ãã
ãã£ãã·ã§ã³:GitHub MCPãµãŒããŒã§ã®ããŒãœãã«ã¢ã¯ã»ã¹ããŒã¯ã³ã®èšå®
- ã·ãŒã±ã³ã·ã£ã«ã·ã³ãã³ã°MCPãµãŒããŒã®èšå®
- ãã·ãŒã±ã³ã·ã£ã«ã·ã³ãã³ã°ããã¯ãªãã¯ããŠãã ãã
- èšå®ã¯äžèŠã§ã
ãã£ãã·ã§ã³:ã·ãŒã±ã³ã·ã£ã«MCPãµãŒããŒã¯èšå®äžèŠ
ãã®ãµãŒããŒã¯GitHub Copilotãè€éãªç§»è¡æ±ºå®ãè«ççãªã¹ãããã«åè§£ããã®ã«åœ¹ç«ã¡ãŸãã
- Hugging Face MCPãµãŒããŒã®èšå®
Hugging Face MCPãµãŒããŒã¯ãHugging Face HubããçŽæ¥ã¹ããŒã¹ã®ã¡ã¿ããŒã¿ãã¢ãã«æ å ±ããªããžããªå 容ãžã®ã¢ã¯ã»ã¹ãæäŸããŸãã
- ããã°ãã§ã€ã¹ããã¯ãªãã¯ããŠãã ãã
- å ¬å ±ã¹ããŒã¹ã®è¿œå èšå®ã¯äžèŠã§ã
- ãã©ã€ããŒãã¹ããŒã¹ã®å Žåã¯ãHuggingFaceã®APIããŒã¯ã³ã远å ããŠãã ãã
ã¹ããã 4ãVSã³ãŒãã«ãµãŒããŒã远å ãã
Docker MCP Toolkitã䜿ãã°ãVS Codeã®ãããªã¯ã©ã€ã¢ã³ãåãã«MCPãµãŒããŒãéåžžã«ç°¡åã«èšå®ã§ããŸãã
èšå®ããã«ã¯ããã¯ã©ã€ã¢ã³ãããã¯ãªãã¯ããŠäžã«ã¹ã¯ããŒã«ããŠVisual Studio Codeãžè¡ã£ãŠãã ããããæ¥ç¶ããã¿ã³ãã¯ãªãã¯ããŠãã ãã:
ãã£ãã·ã§ã³:Visual Studio CodeãMCPã¯ã©ã€ã¢ã³ããšããŠèšå®ãã
次ã«VS Codeãéããå·Šã®ããŒã«ããŒã«ãããæ¡åŒµæ©èœãã¢ã€ã³ã³ãã¯ãªãã¯ããŠãã ãã:
ãã£ãã·ã§ã³:VS Codeæ¡åŒµæ©èœã§ã®MCP_DOCKERèšå®
MCP_DOCKERã®ã®ã¢ãã¯ãªãã¯ããããµãŒããŒéå§ããã¯ãªãã¯ããŠãã ãã:
ãã£ãã·ã§ã³:VS Codeã§MCPãµãŒããŒãèµ·å
ã¹ããã 5ãæ¥ç¶ç¢ºèª
GitHub Copilot ChatãVS Codeã§éããŠè³ªåããŠãã ãã:
What Arm migration and Hugging Face tools do you have access to?
4ã€ã®ãµãŒããŒãã¹ãŠã®ããŒã«ããªã¹ããããŠããã¯ãã§ãã圌ããèŠãããããæ¥ç¶ã¯æ£åžžã§ãããã°ã³ã°ãã§ã€ã¹ã¹ããŒã¹ãã¹ãã£ã³ããŠã¿ãŸãããã
ãã£ãã·ã§ã³:GitHub Copilotã§éã¶
å®äžçãã¢:ACE-Step v1ã®ã¹ãã£ã³ã5
GitHub CopilotãDocker MCP Toolkitã«æ¥ç¶ãããšããã§ãArmã®æºåç¶æ³ã64 ææ¡ããããã«å®éã®Hugging Face Spaceãã¹ãã£ã³ããããŒã«ã«ã§å®è¡ããããšããéã«ééããæ£ç¢ºãªArm64 ãããã«ãŒãèŠã€ããŠã¿ãŸãããã
- ã¿ãŒã²ãã: ACE-ã¹ããã v1ã5â 3ã5Bãã©ã¡ãŒã¿ã®é³æ¥œçæã¢ãã«Â
- ã¹ãã£ã³ãŸã§ã®æé:15åÂ
- ã€ã³ãã©ã³ã¹ã: $0 (ãã¹ãŠã®ããŒã«ã¯Dockerã³ã³ããäžã§ããŒã«ã«ã§åäœ)Â
ã¯ãŒã¯ãããŒ
Docker MCP Toolkitã¯ããªã¯ãšã¹ããå°éããŒã«ã«ã«ãŒãã£ã³ã°ããå®å šãªMCPã²ãŒããŠã§ã€ãéããŠã¹ãã£ã³ããªãŒã±ã¹ãã¬ãŒã·ã§ã³ããŸããArm MCPãµãŒããŒã¯ç»åãæ€æ»ãã³ãŒããã¹ãã£ã³ããHugging Face MCPã¯ã¹ããŒã¹ãçºèŠããGitHub MCPã¯ãªããžããªãèªã¿åããSequential Thinkingãçµæãç·åããŸããÂ
ã¹ããã 1ãGitHub Copilot ã¹ãã£ã³ã®æç€ºãåºã
VS Codeã§ãããžã§ã¯ããéããŸããGitHub Copilot Chatã§ããã®ããã³ããã貌ãä»ããŠãã ãã:
Your goal is to analyze the Hugging Face Space "ACE-Step/ACE-Step-v1.5" for Arm64 migration readiness. Use the MCP tools to help with this analysis.
Steps to follow:
1. Use Hugging Face MCP to discover the Space and identify its SDK type (Docker or Gradio)
2. Use skopeo to inspect the container image - check what architectures are currently supported
3. Use GitHub MCP to read the repository - examine pyproject.toml, Dockerfile, and requirements
4. Run migrate_ease_scan on the source code to find any x86-specific dependencies or intrinsics
5. Use knowledge_base_search to find Arm64 build strategies for any issues discovered
6. Use sequential thinking to synthesize all findings into a migration verdict
At the end, provide a clear GO / NO-GO verdict with a summary of required changes.
ã¹ããã 2ãWatch Docker MCP Toolkit Execute
GitHub Copilotã¯Docker MCP Toolkitã䜿ã£ãŠã¹ãã£ã³ããªãŒã±ã¹ãã¬ãŒã·ã§ã³ããŸããããããããšãèµ·ãã:
ãã§ãŒãº 1:å®å®çºèŠ
GitHub Copilotã¯ãŸãHugging Face MCPãµãŒããŒã«åãåãããŠSpaceã¡ã¿ããŒã¿ãååŸããŸãã
ãã£ãã·ã§ã³:GitHub Copilotã¯Hugging Face MCPã䜿ã£ãŠã¹ããŒã¹ãçºèŠãããã®SDKã¿ã€ããç¹å®ããŠããŸãã
ããŒã«ã¯ACE-Step v1ãè¿ããŸãã5Docker SDK ã䜿çšããŠãããããHugging Faceã¯Gradioã¢ããªã§ã¯ãªããäºåã«æ§ç¯ãããã³ã³ããã€ã¡ãŒãžãšããŠæäŸããŠããŸããããã¯éåžžã«éèŠã§ããDocker SDK Spacesã«ã¯åæã»åæ§ç¯å¯èœãªDockerãã¡ã€ã«ããããŸãããGradio SDK Spacesã¯Hugging Faceã®ã€ã³ãã©ã«ãã£ãŠæ§ç¯ãããŠãããç§ãã¡ãå¶åŸ¡ã§ããŸããã
ãã§ãŒãº 2:ã³ã³ããç»åæ€æ»
次ã«ãCopilotã¯Arm MCP Serverã® skopeo ããŒã«ã䜿ã£ãŠã³ã³ããã€ã¡ãŒãžãããŠã³ããŒãããã«æ€æ»ããŸãã
ãã£ãã·ã§ã³:skopeoããŒã«ã«ãããšãã³ã³ããã€ã¡ãŒãžã«ã¯Arm64 ãã«ããååšããªãããšãå ±åãããŠããŸããã³ã³ããã¯ArmããŒããŠã§ã¢ã§èµ·åããŸããã
çµæãšããŠããããã§ã¹ãã«ã¯Linux/AMD64ã®ã¿ãå«ãŸããŠããŸããã¢ãŒã 64 ãã«ãã¯ååšããŸãããããã¯ãã³ã³ãããARMããŒããŠã§ã¢ã§æ éããæåã®å ·äœçãªããŒã¿ãã€ã³ãã§ãããããããããå šãŠã§ã¯ãããŸããã
ãã§ãŒãº 3:ãœãŒã¹ã³ãŒãåæ
Copilotã¯GitHub MCPã䜿ã£ãŠãªããžããªã®ããŒãã¡ã€ã«ãèªã¿èŸŒã¿ãŸãããã¡ãã Spaceã®å®éã®Dockerãã¡ã€ã« ã§ã:
FROM python:3.11-slim
ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONUNBUFFERED=1 \
DEBIAN_FRONTEND=noninteractive \
TORCHAUDIO_USE_TORCHCODEC=0
RUN apt-get update && \
apt-get install -y --no-install-recommends git libsndfile1 build-essential && \
apt-get install -y ffmpeg libavcodec-dev libavformat-dev libavutil-dev libswresample-dev && \
rm -rf /var/lib/apt/lists/*
RUN useradd -m -u 1000 user
RUN mkdir -p /data && chown user:user /data && chmod 755 /data
ENV HOME=/home/user \
PATH=/home/user/.local/bin:$PATH \
GRADIO_SERVER_NAME=0.0.0.0 \
GRADIO_SERVER_PORT=7860
WORKDIR $HOME/app
COPY --chown=user:user requirements.txt .
COPY --chown=user:user acestep/third_parts/nano-vllm ./acestep/third_parts/nano-vllm
USER user
RUN pip install --no-cache-dir --user -r requirements.txt
RUN pip install --no-deps ./acestep/third_parts/nano-vllm
COPY --chown=user:user . .
EXPOSE 7860
CMD ["python", "app.py"]
Dockerfileèªäœã¯ãããã«èŠããŸã:
- ãã€ãœã³:3ã11-slimã¯ãã§ã«ARM64ãå«ããã«ãã¢ãŒããã«ããå ¬éããŠããŸã
- -mavx2ãªã -march=x86-64 ã³ã³ãã€ã©ãã©ã°ãªã
- build-essentialãffmpegãlibsndfile1 ã¯ãã¹ãŠDebianã®ã¢ãŒã 64 ãªããžããªã§å©çšå¯èœã§ã
ããããæ¬åœã®åé¡ã¯ requirements.txtã«ãããŸããç§ãACE-StepãããŒã«ã«ã§ã€ã³ã¹ããŒã«ããããšãããšãã«ééããã®ã¯ä»¥äžã®éãã§ã:
# nano-vllm dependencies
triton>=3.0.0; sys_platform != 'win32'
flash-attn @ https://github.com/mjun0812/flash-attention-prebuild-wheels/releases/
download/v0.7.12/flash_attn-2.8.3+cu128torch2.10-cp311-cp311-linux_x86_64.whl
; sys_platform == 'linux' and python_version == '3.11'
å³åº§ã«é»ãåå ã2ã€ãããŸã:
flash-attnã¯ããŒãã³ãŒããããlinux_x86_64ãã€ãŒã«URLã«ãã³çããããŠããŸããAarch64ã·ã¹ãã ã§ã¯ãpipããã®ãã€ãŒã«ãããŠã³ããŒããããšå³åº§ã«ããã®ãã©ãããã©ãŒã ã§ã¯ãµããŒããã€ãŒã«ã§ã¯ãããŸããããšæåŠããŸãããŸãã«ç§ããšã©ãŒã«ééããŸãããtriton>=3.0.0LinuxçPyPIã«ã¯Aarch64 ãã€ãŒã«ããããŸãããArmã®ããŒããŠã§ã¢ã§ã¯å€±æããŸãã
ãããã¯ã³ãŒãã®åé¡ã§ã¯ãããŸãããPythonã®ãœãŒã¹ã³ãŒãã¯ã¢ãŒããã¯ãã£ã«äŸåããŸããã解決çã¯äŸåé¢ä¿å®£èšã«ãããŸãã
ãã§ãŒãº 4:ã¢ãŒããã¯ãã£äºææ§ã¹ãã£ã³
Copilotã¯ã³ãŒãããŒã¹äžã§Pythonã¹ãã£ããŒã䜿ã£ãŠ migrate_ease_scan ããŒã«ãåãããŸãã
ãã£ãã·ã§ã³:migrate_ease_scanããŒã«ã¯Pythonã®ãœãŒã¹ã³ãŒããåæããç¹å®ã®äŸåé¢ä¿ã0xå86ç¹å®ããŠããŸããã€ã³ããã·ãã¯ãããŒãã³ãŒãã£ã³ã°ãã¹ãã¢ãŒããã¯ãã£ããã¯ã©ã€ãã©ãªããããŸããã
ã¢ããªã±ãŒã·ã§ã³ã®ãœãŒã¹ã³ãŒãèªäœã¯ã¢ãŒããã¯ã㣠0 åé¡ãè¿ããŸã â x86 ã®å åšèŠçŽ ããªãããã©ãããã©ãŒã åºæã®ã·ã¹ãã ã³ãŒã«ããããŸãããããããã¹ãã£ã³ã§ã¯äŸåé¢ä¿ã®ãããã§ã¹ããæ€åºãããŸããrequirements.txtã«ãããã«ãŒã2人ãã:
|
äŸåé¢ä¿ |
å女 |
ã¢ãŒã 64 ãã£ãã¯ã¹ |
|---|---|---|
|
Flash-Attn(Linuxãã€ãŒã«) |
ããŒãã³ãŒãlinux_x86_64 URL |
ãã©ãã·ã¥ã¢ã¿ããã¡ã³ã 2ã䜿ããŸãããã7+ PyPIçµç± â aarch64 wheelsããã€ãã£ãã«å ¬é |
|
ããªãã³>=3ã0ã0 |
Linuxçšã®Aarch64 PyPIãã€ãŒã«ã¯ãããŸãã |
ã¢ãŒã64 ã§é€å€ããããããªãã³ã»ãã€ããªãŒã¢ãŒã64 ãã«ãããŠãã ãã |
ãã§ãŒãº 5:Armãã¬ããžããŒã¹ã®æ€çŽ¢
Copilotã¯çºèŠãããåé¡ã®è§£æ±ºçãArm MCPãµãŒããŒã®ãã¬ããžããŒã¹ã«åãåãããŸãã
ãã£ãã·ã§ã³:GitHub Copilotã¯knowledge_base_searchããŒã«ã䜿ã£ãŠ learn.arm.com ã®Docker buildxãã«ãã¢ãŒãæŠç¥ãèŠã€ããŠããŸãã
ãã¬ããžããŒã¹ã¯ä»¥äžã®ææžãè¿ããŸã:
- Flash-Attn Aarch64 ãã€ãŒã«ã®å ¥æå¯èœæ§ã¯ããŒãžã§ã³ 2ããæäŸãããŠããŸãã7+
- Gravitonããã³Apple Siliconã®æé©åã¬ã€ã64 PyTorch Arm
- CUDAã®ãã¹ããã©ã¯ãã£ã¹ 13ã064 幎(Jetson Thor / DGX Spark)
- Armäžã®CPUæšè«ãã¹ã«ãããtritonã®ä»£æ¿
ãã§ãŒãº 6:çµ±åãšçµè«
ã·ãŒã±ã³ã·ã£ã«ã»ã·ã³ãã³ã°ã¯ããã¹ãŠã®èª¿æ»çµæããŸãšããŠæ§é åãããçµè«ãå°ããŸãã
|
ãã§ã㯠|
result |
ãããã¯? |
|---|---|---|
|
ã³ã³ãããããã§ã¹ã |
AMD64 ã®ã¿ |
ã¯ããåæ§ç¯ãå¿ èŠã§ã |
|
ããŒã¹ç»åPython:3ã11-ã¹ãªã |
ãã«ãã¢ãŒã(ã¢ãŒã 64 ãã) |
ããã |
|
ã·ã¹ãã ããã±ãŒãž(ffmpegãlibsndfile1) |
Debianã®ã¢ãŒã 64ã§å©çšå¯èœã§ã |
ããã |
|
ããŒã==2ã9.1 |
ã¢ãŒã64 ãã€ãŒã«ãºåºç |
ããã |
|
ãã©ãã·ã¥å¯Ÿå¿ã®Linuxãã€ãŒã« |
ããŒãã³ãŒãlinux_x86_64 URL |
ã¯ããARM64 URLãæ·»ããŠè¿œå ããŠãã ãã |
|
ããªãã³>=3ã0ã0 |
Aarch64 ãã€ãŒã«ã¯ 3ããå ¥æå¯èœã§ãã5ã0+ |
ããããèªåçã«è§£æ±ºããŸã |
|
ãœãŒã¹ã³ãŒã(migrate-ease) |
0 ã¢ãŒããã¯ãã£ã®åé¡ç¹ |
ããã |
|
Dockerfileã«ãããã³ã³ãã€ã©ãã©ã° |
ç¹å®ã®X86ã¯ãªã |
ããã |
çµè«:æ¡ä»¶ä»ãã§å®è¡ãã³ãŒãã®å€æŽã¯ãŒãã§ããDockerfileã®å€æŽã¯ãŒãã§ããäŸåé¢ä¿ã®ä¿®æ£ãå¿ èŠã§ãã
以äžãrequirements.txtã«å¿ èŠãªæ£ç¢ºãªå€æŽç¹ã§ã:
# BEFORE â only x86_64
flash-attn @ https://github.com/mjun0812/flash-attention-prebuild-wheels/releases/download/v0.7.12/flash_attn-2.8.3+cu128torch2.10-cp311-cp311-linux_aarch64.whl ; sys_platform == 'linux' and python_version == '3.11' and platform_machine == 'aarch64'
# AFTER â add arm64 line alongside x86_64
flash-attn @ https://github.com/mjun0812/flash-attention-prebuild-wheels/releases/download/v0.7.12/flash_attn-2.8.3+cu128torch2.10-cp311-cp311-linux_aarch64.whl ; sys_platform == 'linux' and python_version == '3.11' and platform_machine == 'aarch64'
flash-attn @ https://github.com/mjun0812/flash-attention-prebuild-wheels/releases/download/v0.7.12/flash_attn-2.8.3+cu128torch2.10-cp311-cp311-linux_x86_64.whl ; sys_platform == 'linux' and python_version == '3.11' and platform_machine != 'aarch64'
# triton â no change needed, 3.5.0+ has aarch64 wheels, resolves automatically
triton>=3.0.0; sys_platform != 'win32'
ããã2ã€ã®ä¿®æ£ã®åŸããã«ãã³ãã³ãã¯æ¬¡ã®ããã«ãªããŸã:
docker buildx build --platform linux/arm64 -t ace-step:arm64 .
ãã®åäžã®ã³ãã³ãã§3ã€ã®å±éçµè·¯ãè§£æŸãããŸã:
- NVIDIA Arm64 â Jetson ThorãDGX Spark(64 + CUDA 13.0)
- Cloud Arm64 â AWS GravitonãAzure CobaltãGoogle Axion (20-40% ã³ã¹ãåæž)
- Apple Silicon â M1- M4 MPSå éä»ãMac(ããŒã«ã«æšè«ãã¯ã©ãŠãã³ã¹ã0 ãã«)
ãã§ãŒãº 7:ãã«ãªã¯ãšã¹ãã®äœæ
ã¹ãã£ã³å®äºåŸãCopilotã¯GitHub MCPã䜿ã£ãŠä¿®æ£ææ¡ãè¡ããŸããå¯äžã®ãããã«ãŒã¯requirements.txtã®ã©ã€ã³32ã«ããŒãã³ãŒããããlinux_x86_64ãã€ãŒã«URLãªã®ã§ã倿Žã¯å€ç§çã§ãäžè¡è¿œå ãäœãåé€ãããŸããã
ä¿®æ£ã¯ãåããªãªãŒã¹ã®çžåœ linux_aarch64 ãã€ãŒã«ãæ¢åã® x86_64 ãšã³ããªãšäžŠã¹ãŠè¿œå ããæ¡ä»¶ä»ã platform_machine == 'aarch64':
# BEFORE â only x86_64, fails silently on Arm
flash-attn @ https://github.com/mjun0812/flash-attention-prebuild-wheels/releases/
download/v0.7.12/flash_attn-2.8.3+cu128torch2.10-cp311-cp311-linux_x86_64.whl
; sys_platform == 'linux' and python_version == '3.11'
# AFTER â add arm64 line alongside, conditioned by platform_machine
flash-attn @ https://github.com/mjun0812/flash-attention-prebuild-wheels/releases/
download/v0.7.12/flash_attn-2.8.3+cu128torch2.10-cp311-cp311-linux_x86_64.whl
; sys_platform == 'linux' and python_version == '3.11'
flash-attn @ https://github.com/mjun0812/flash-attention-prebuild-wheels/releases/
download/v0.7.12/flash_attn-2.8.3+cu128torch2.10-cp311-cp311-linux_aarch64.whl
; sys_platform == 'linux' and python_version == '3.11' and platform_machine == 'aarch64'
ãã£ãã·ã§ã³:PR #14 on Hugging Face â åæµæºåå®äº
éèŠãªæŽå¯ã¯ãã¢ããã¹ããªãŒã ã®ã¡ã³ããããã§ã«åããªãªãŒã¹ã§ã¢ãŒã 64 ãã€ãŒã«ãå ¬éããŠããããšã§ããä¿®æ£ã¯åæ§ç¯ãã³ãŒã倿Žã§ã¯ãªãããã§ã«ååšããã¢ãŒãã£ãã¡ã¯ããåç §ããäžè¡ã远å ããã ãã§ãããMCPãã§ãŒã³ã 15 åã§èŠã€ãããããããªããã°ããã®ç¹ã®ãšã©ãŒã«ééããéçºè ã¯äœæéããããŠè¿œè·¡ããªããã°ãªããŸããã
PR: https://huggingface.co/spaces/ACE-Step/Ace-Step-v1ã5/ãã£ã¹ã«ãã·ã§ã³/14
Armãªãã®MCPãšãArm MCPãšå ±ã«
Arm MCP ServerãDocker MCP Toolkitã«è¿œå ããéã®å€æŽç¹ãæç¢ºã«ããŸãããã
- Armãªãã®MCP:GitHub Copilotã«Hugging Face Spaceã§Arm64 äºææ§ã確èªããããäŸé ŒããŸããCopilotããã®äžè¬çãªã¢ããã€ã¹ã¯ãããŒã¹ã€ã¡ãŒãžãARM64ããµããŒãããŠããã確èªããããx86åºæã®ã³ãŒããæ¢ãããbuildxã§åæ§ç¯ã詊ããŠã¿ãŠããšãã£ããã®ã§ããæåã§Docker Hubãç¹æ€ããã³ãŒãããŒã¹ãgrepããPyPIãžã®äŸåé¢ä¿ãäžã€ãã€ç¢ºèªããç°¡åã«ã¯èšºæã§ããªãPIPã€ã³ã¹ããŒã«ã®å€±æã«ééããŸãããã©ãã·ã¥ã¢ã¿ããã®URLåé¡ã ãã§ã1æéãããããšããããŸãã
- Arm MCP + Docker MCP Toolkitã«ã€ããŠ:åã質åãããŸãããæ°å以å ã«ãskopeoã䜿ã£ãŠããŒã¹ã€ã¡ãŒãžãæ€èšŒããå®éã®ã³ãŒãããŒã¹äžã§migrate_ease_scanåããããŒãã³ãŒãããã linux_x86_ ãã€ãŒã«URLããã©ã°ä»ãrequirements.txt _64 ãã€ãŒã«ã®URLã«ãã©ã°ä»ãããŸããã¯ãšãªã¯æ£ããä¿®æ£ãknowledge_base_searchãããã¹ãŠã®ãã§ãã¯ãèšé²ãããæ§é åãããæ¡ä»¶ä»ãGOå€å®ãåæããŸãã
å®éã®ç»åãæ€æ»ãããŸããæ¬ç©ã®ã³ãŒãã¯ã¹ãã£ã³ãããŸããå®éã®äŸåé¢ä¿ãã¡ã€ã«ãåæãããŸããéãã¯ãDocker MCP Toolkitã¯GitHub Copilotã«å®éã®Armç§»è¡ããŒã«ãžã®ã¢ã¯ã»ã¹ãæäŸããåãªãäžè¬çãªç¥èã ãã§ãªãã
æåããã»ã¹ãšMCPãã§ãŒã³ã®éã
æäœæ¥ã®ããã»ã¹:
- Hugging Face Spaceãªããžããªã®ã¯ããŒã³(10 å)
- ã¢ãŒããã¯ãã£ãµããŒãã®ã³ã³ãããããã§ã¹ãããã§ãã¯ãã(5 å)
- pyproject.tomlãšrequirements.txtãèªã¿é²ããŠãã ãã(20 å)
- PyPIã§ãã¹ãŠã®äŸåé¢ä¿ã§Arm64 wheelã®å¯çšæ§ã確èªããŠãã ãã(30 å)
- Dockerãã¡ã€ã«ã®ããŒãã³ãŒããããã¢ãŒããã¯ãã£ã®ä»®å®ãåæãã(10 å)
- å¿ èŠãªããŒãžã§ã³ã®CUDA/cuDNN Arm64 ãµããŒãã«ã€ããŠèª¿ã¹ãŠãã ãã(20 å)
- 調æ»çµæãšæšå¥šå€æŽç¹ãæžãçãã(15 å)
åèš: 2-3 Space
Docker MCP Toolkit ã䜿ã£ãŠ:
- GitHub Copilotã«ã¹ãã£ã³æç€ºãæž¡ããŠãã ãã(5 å)
- ç§»è¡ã¬ããŒãã®ã¬ãã¥ãŒ(5 å)
- 倿Žãå ããPRãæåºãã(5 å)
åèš:1ã¹ããŒã¹ããã 15 å
ãããå€§èŠæš¡ã«ç€ºåããããš
ACE-Stepã¯æšæºçãªPython AIã¢ããªã±ãŒã·ã§ã³ã§ã:PyTorchãGradioãpipäŸåé¢ä¿ãã¹ãªã ãªDockerãã¡ã€ã«ãªã©ããããŸãããã®ãã¿ãŒã³ã¯Hugging Faceäžã®Docker SDKã¹ããŒã¹ã®å€§éšåãã«ããŒããŠããŸãã
ãããã®ã¢ããªã®ã¢ãŒã 64 ãŠã©ãŒã«ã¯å¿ ãããèŠããããã§ã¯ãããŸãããDockerfileã¯ãããã«èŠããŸããããŒã¹ç»åã¯ã¢ãŒã 64ããµããŒãããŠããŸããPythonã®ã³ãŒãã«ã¯æ¬è³ªçãªèŠçŽ ã¯ãããŸããããããrequirements.txtã®äžã«åãããŠããã®ã¯ãlinux_x86_64 ãã€ããªãæãããŒãã³ãŒãã£ã³ã°ããããã€ãŒã«URLã§ãå®éã«ArmããŒããŠã§ã¢ã§ã³ã³ãããå®è¡ããããšãããŸã§èª°ãèŠã€ããããŸããã
ããã80%ã®åé¡ã§ãã Hugging Faceã®Docker Spacesã®80%ã¯Armäžã§äžåºŠããã¹ããããããšããããŸãããã³ãŒããåããªãããã§ã¯ãããŸããããããã誰ã確èªããªãã£ãããã§ããMCPãã§ãŒã³ã¯ãããããšã©ãŒã®ãããã°ã«ãããååŸã®æéã§ã¯ãªãã 15 åã§çµããäœç³»çãªãã§ãã¯ã§ãã
ããã¯å®éã®ã³ã¹ãã«åœ±é¿ãåãŒããŸãã
- ã°ã©ããã³æšè«ã¯ 20åäœããåãè² è·ã§40%å®ããªããŸãããã¹ãŠã®AMD64Spaceã¯ãã®ç¯çŽããã®ãŸãŸæ®ããŸãã
- NVIDIA Physical AI(GR00TãLeRobotãIsaac)ãJetson Thorã«å±éãããŸããéçºè ã¯Hugging Faceã§ã¢ãã«ãèŠã€ããŸãããã³ã³ããã¯ã¿ãŒã²ããããŒããŠã§ã¢ã«çµã¿èŸŒãŸããŠããŸããã
- Apple Siliconã¯éçºè åãã®ããŒãããœã³ã³ãšããŠæãäžè¬çãªãã®ã§ãã屿æšè«ã¯å埩åŠçãéããªããã¯ã©ãŠãæéãããããŸããã
Docker MCP Toolkitãéçºã«äžããå€å
Docker MCP Toolkitã¯ãéçºè ãå°éç¥èãèœåãšã©ã®ããã«é¢ããããå€ããŸããæ°ããããŒã«ãåŠãã ããäŸåé¢ä¿ãã€ã³ã¹ããŒã«ããããèªèšŒæ å ±ã管çãã代ããã«ãéçºè ã¯AIã¢ã·ã¹ã¿ã³ããäžåºŠæ¥ç¶ããã°ãããã«ã³ã³ããåãããå°éç¥èã«ã¢ã¯ã»ã¹ã§ããŸãã
ãã®å©ç¹ã¯ãã°ãã§ã€ã¹ã¹ãã£ã³ã ãã«ãšã©ãŸããŸããã
- äžè²«æ§ â åãããŒã«ãã§ãŒã³ 7ãã©ã®ã³ã³ããã§ãåãæ§é åãããåæãåŸãããŸã
- ã»ãã¥ãªã㣠â åããŒã«ã¯éé¢ãããDockerã³ã³ããäžã§åäœããããŒã«ã®å¹²æžãé²ããŸã
- åçŸæ§ â ã¹ãã£ã³ã¯ç°å¢ãè¶ããŠåãããã«æ¯ãèããŸã
- ã³ã³ããŒã¶ããªã㣠â ãšã³ã·ã¹ãã ã®é²åã«å¿ããŠããŒã«ã远å ãŸãã¯äº€æãã
- çºèŠå¯èœæ§ â Docker MCP Catalog ã¯é©åãªãµãŒããŒãèŠã€ããã®ãç°¡åã«ããŸã
æãéèŠãªã®ã¯ãéçºè ãæ¢åã®ã¯ãŒã¯ãããŒãç¶æããŠããããšã§ããVS CodeãGitHub Copilotãè¡ããå€éšããŒã«ãããã·ã¥ããŒãã«ã³ã³ããã¹ãåãæ¿ãããããŸããã
ãŸãšã
ããªãã¯ä»ãDocker MCP ToolkitãArm MCP ServerãGitHub Copilotã䜿ã£ãŠãArm64 æºåã®ããã®æ¬ç©ã®Hugging Face Spaceãã¹ãã£ã³ããŸãããACE-Step察1ã§åãã£ãããšã5 ã¯Hugging Faceå šäœã§èŠããããã®ã象城ããŠããŸããã¢ãŒããã¯ãã£ã«äžç«çãªã³ãŒãããã§ã«ã¯ãªãŒã³ãªDockerãã¡ã€ã«ããããããŒãã³ãŒããããx86_64 ãã€ãŒã«URLãrequirements.txtãArm64 ãã«ããéãã«å£ããã®ã§ãã
MCPãã§ãŒã³ã¯ããã 15 åã§è¡šã«åºããŸããããããªããã°ãåå ãžã®æç¢ºãªéçã®ãªãç¹ã®èª€ããçŽèŠããããšã«ãªããŸãã
詊ããŠã¿ãæºåã¯ã§ããŠããŸãã?Docker DesktopãéããMCPã«ã¿ãã°ãæ¢çŽ¢ããŠãã ããããŸã ã¯Arm MCPãµãŒããŒããå§ãã GitHubãSequential Thinkingã Hugging Face MCPã远å ããŠãã ããããã®ãã§ãŒã³ãæ±ã£ãŠããHugging Face Spaceã«åããŠãäœãè¿ã£ãŠããã確èªããŠãã ããã
詳现æ å ±
- Docker ã¯åããŠã§ãã? Docker Desktop ãããŠã³ããŒããã
- MCPã«ã¿ãã°ãæ¢ã: ã³ã³ããåãããã»ãã¥ãªãã£åŒ·åãããMCPãµãŒããŒãçºèŠ
- MCP Toolkitã®å§ãæ¹: å ¬åŒææž
- Arm MCPãµãŒããŒ: éçºè ããã¥ã¡ã³ã
- ãã°ãã§ã€ã¹MCPãµãŒããŒ: ããããã¥ã¡ã³ã
- ACE-Step v1ã5: ãã°ã³ã°ã»ãã§ã€ã¹ã»ã¹ããŒã¹
- ç§»æ°PR: GitHubãã«ãªã¯ãšã¹ã