AIæèŒã®ã³ãŒãã£ã³ã°ã¢ã·ã¹ã¿ã³ãã¯ãçŸä»£ã®éçºã¯ãŒã¯ãããŒã®äžæ žçãªäžéšãšãªãã€ã€ãããŸããåæã«ãå€ãã®ããŒã ã¯èªåãã¡ã®ã³ãŒããã©ãã«è¡ãã®ããã©ã®ããã«åŠçãããã®ãã誰ãã¢ã¯ã»ã¹ã§ããã®ãã«ã€ããŠãŸããŸãæžå¿µããŠããŸãã
OpenCodeãšDocker Model Runnerãçµã¿åãããããšã§ãããŒã¿ãã€ã³ãã©ãæ¯åºãå®å šã«ã³ã³ãããŒã«ãã€ã€ã匷åãªAIæ¯æŽã³ãŒãã£ã³ã°äœéšãæ§ç¯ã§ããŸãã
ãã®èšäºã§ã¯ãDocker Model Runnerã䜿ããããã«OpenCodeãèšå®ããæ¹æ³ã解説ãããã®æ§æã ãªããã©ã€ãã·ãŒç¬¬äž ã§ ã³ã¹ãæèã®é«ã AIæ¯æŽéçºãå¯èœã«ããã®ãã説æããŸãã
OpenCodeãšDocker Model Runnerãšã¯äœã§ãã?
OpenCode ã¯ãéçºè ã®ã¯ãŒã¯ãããŒã«çŽæ¥çµ±åããããã«èšèšããããªãŒãã³ãœãŒã¹ã®ã³ãŒãã£ã³ã°ã¢ã·ã¹ã¿ã³ãã§ããè€æ°ã®ã¢ãã«ãããã€ããŒããµããŒãããæè»ãªæ§æã·ã¹ãã ãæäŸããŠããããããããã®éãç°¡åã«åãæ¿ããããšãã§ããŸãã
Docker Model Runner(DMR)㯠ãå€§èŠæš¡ãªèšèªã¢ãã«ãç°¡åã«å®è¡ã»ç®¡çã§ããããã«ããŸããOpenAIäºæAPIãå ¬éããæ¢ã«OpenAIã¹ã¿ã€ã«ã®ãšã³ããã€ã³ãããµããŒãããŠããæ¢åã®ããŒã«ãšç°¡åã«çµ±åã§ããŸãã
ãããã¯ãå®å šã«èªåã§ç®¡çããã€ã³ãã©å ã§åäœããã¢ãã«ã«ãã£ãŠæ¯ããããã銎æã¿ã®ããéçºè äœéšãæäŸããŸãã
OpenCodeæ§æã®å€æŽ
OpenCode ã¯ããããã€ããŒãã¢ãã«ã®å®çŸ©æ¹æ³ãå¶åŸ¡ããèšå®ãã¡ã€ã«ã䜿ã£ãŠã«ã¹ã¿ãã€ãºã§ããŸãã
ãã®æ§æã¯2ã€ã®å Žæã®ããããã§å®çŸ©ã§ããŸã:
- ã°ããŒãã«æ§æ: ~/.config/opencode/opencode.json
- ãããžã§ã¯ãåºæã®æ§æ:ãããžã§ã¯ãã®ã«ãŒãã«opencode.json
ãããžã§ã¯ãã¬ãã«ã®æ§æãååšããå Žåããããã°ããŒãã«ãªæ§æãããåªå ãããŸãã
Docker Model Runnerã§ã®OpenCodeã®äœ¿çš
Docker Model Runner(DMR)ã¯OpenAIäºæAPIãå ¬éããOpenCodeãšã®çµ±åã容æã«ããŸãããã®çµ±åãæå¹ã«ããã«ã¯ã opencode.json ãã¡ã€ã«ãDMRãµãŒããŒã«æå®ããããŒã«ã«ã§å©çšå¯èœãªã¢ãã«ã宣èšããã ãã§æžã¿ãŸãã
Docker Model Runnerã以äžã®äœçœ®ã§åäœããŠãããšä»®å®ããŸã:http://localhost:12434/v1
opencode.jsonæ§æã¯æ¬¡ã®ãããªãã®ãããããŸãã:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"dmr": {
"npm": "@ai-sdk/openai-compatible",
"name": "Docker Model Runner",
"options": {
"baseURL": "http://localhost:12434/v1",
},
"models": {
"qwen-coder3": {
"name": "qwen-coder3"
},
"devstral-small-2": {
"name": "devstral-small-2"
}
}
}
}
}
ãã®æ§æã«ãããOpenCodeã¯DMRãéããŠããŒã«ã«ãã¹ãã¢ãã«ã掻çšãã匷åãã€ãã©ã€ããŒããªã³ãŒãã£ã³ã°ã¢ã·ã¹ã¿ã³ããæäŸããŸãã
Docker DesktopãŠãŒã¶ãŒãžã®æ³šæäºé
:
Docker Desktopçµç±ã§Docker Model RunnerãåãããŠããå Žåã¯ãTCPã¢ã¯ã»ã¹ãæå¹ã«ãªã£ãŠããããšã確èªããŠãã ãããOpenCodeã¯HTTPçµç±ã§Docker Model Runnerã«æ¥ç¶ããŠãããTCPããŒããå ¬éãããŠããå¿ èŠããããŸã:
docker desktop enable model-runner --tcp
æå¹åããããšãDocker Model Runner㯠http://localhost:12434/v1ã§ã¢ã¯ã»ã¹ã§ããããã«ãªããŸãã
å³ 1:Docker Model RunnerãéããŠOpenCodeãããŒã«ã«ãã¹ãã¢ãã«ã掻çšã§ããããã«ãã
å³ 2:qwen3-coderãdevstral-small-2ãgpt-oss ãªã©ã®ã¢ãã«ã¯ã³ãŒãã£ã³ã°ã®ãŠãŒã¹ã±ãŒã¹ã«é©ããŠããŸãã
Model Runnerã§OpenCodeã䜿çšããå©ç¹
ãã©ã€ãã·ãŒã»ãã€ã»ãã¶ã€ã³
OpenCodeãšDocker Model Runnerãçµã¿åãããããšã§ããã¹ãŠã®ã¢ãã«æšè«ã管çããã€ã³ãã©å ã§è¡ãããšã§ãAIæ¯æŽéçºã«ãããŠãã©ã€ãã·ãŒã第äžã«èããããšãã§ããŸãã
Docker Model Runnerã¯ãOpenAIäºæAPIãšã³ããã€ã³ãã®èåŸã§ã¢ãã«ãå®è¡ããŸããOpenCodeã¯ããã³ããããœãŒã¹ã³ãŒããã³ã³ããã¹ãããã®ãšã³ããã€ã³ãã«ã®ã¿éä¿¡ããä»ã®ã©ãã«ãéããŸããã
ããã¯ã§ããïŒ
- 第äžè ã®AIãããã€ããŒã¯é¢äžããŠããŸãã
- å€éšããŒã¿å ±æããã³ããŒåŽã®ä¿æã¯ãããŸãã
- å€éšãµãŒãã¹ã«ããã³ãŒãã®ãã¬ãŒãã³ã°ããããŸãã
OpenCodeã®èŠç¹ããèŠããšããããã€ããŒã¯åãªãAPIãšã³ããã€ã³ãã«éããŸããããã®ãšã³ããã€ã³ããéçºè ãã·ã³ã瀟å ãµãŒããŒããã©ã€ããŒãã¯ã©ãŠãã®ããããã§åäœãããã¯å®å šã«ããªã次第ã§ãã
ã³ã¹ã管ç
ãã©ã€ãã·ãŒã ãã§ãªããDocker Model Runnerã§ã¢ãã«ãå®è¡ãããããšã¯ããã¹ããããAI APIã«æ¯ã¹ãŠå€§ããªã³ã¹ãåªäœæ§ããããããŸãã
ã¯ã©ãŠããã¹ãã®ã³ãŒãã£ã³ã°ã¢ã·ã¹ã¿ã³ãã¯éåžžã«é«äŸ¡ã«ãªãããšããããŸããç¹ã«ä»¥äžã®å Žå:
- å€§èŠæš¡ãªãªããžããªãšã®é£æº
- é·ãäŒè©±æèãã³ãŒãæèã®äŒé
- éçºäžã«é »ç¹ã«å埩ããã³ãããå®è¡ãã
Docker Model Runnerã§ã¯ãæšè«ã¯èªç€Ÿã®ããŒããŠã§ã¢äžã§åäœããŸããäžåºŠã¢ãã«ãåŒãåºããããšã ããŒã¯ã³ããšã®ææ°æããªã¯ãšã¹ãããŒã¹ã®äŸ¡æ Œèšå®ããäºæãã¬è«æ±ããããŸãããTeamsã¯APIã³ã¹ãã®äžæãæ°ã«ããã«èªç±ã«å©çšãæ¡å€§ã§ããŸãã
æšå¥šã³ãŒãã£ã³ã°ã¢ãã«
OpenCodeãšDocker Model Runnerãçµã¿åãããŠäœ¿çšããå Žåãã¢ãã«ã®éžæã¯å質ãšéçºè äœéšã®äž¡æ¹ã«çŽæ¥åœ±é¿ããŸããå€ãã®æ±çšçãªãã€ãã¢ãã«ã¯æ¯èŒçããŸãæ©èœããŸããã ã³ãŒãã£ã³ã°ã«ç¹åããã¢ãã«ã¯é·ãã³ã³ããã¹ããŠã£ã³ããŠãã³ãŒãèªèçãªæšè«ã«æé©åãããŠãããããã¯ç¹ã«çŸå®äžçã®ãªããžããªã§éèŠã§ãã
以äžã®ã¢ãã«ã¯OpenCodeããã³Docker Model Runnerã§ã®äœ¿çšã«é©ããŠããŸãã
ãããã®ã¢ãã«ã¯ããããDocker Model RunnerãéããŠæäŸã§ããOpenAIäºæAPIãéããŠå ¬éãããŸãã
ãããã®ã¢ãã«ã¯ã以äžãå®è¡ããã°åŒãåºããŸã:
docker model pull qwen3-coder
Docker Hubããã¢ãã«ãåŒãåºãããšãšHugging Face
Docker Model Runner㯠Docker Hubã ãã§ãªãã Hugging Face ããçŽæ¥ã¢ãã«ãåŒãåºããããããä»ã®Dockerã¢ãã«ãšåæ§ã«å®è¡ã»å ±æå¯èœãªOCIã¢ãŒãã£ãã¡ã¯ãã«èªå倿ã§ããŸãã
äŸãã°ãHugging FaceããçŽæ¥ã¢ãã«ãæœåºã§ããŸã:
docker model pull huggingface.co/unsloth/Ministral-3-14B-Instruct-2512-GGUF
ããã«ãããããŒã ã¯äžè²«æ§ãéçšæ§ãæãªãããšãªããããåºç¯ãªãªãŒãã³ã¢ãã«ãšã³ã·ã¹ãã ã«ã¢ã¯ã»ã¹ã§ããŸãã
ã³ã³ããã¹ãã®é·ããéèŠã§ã
ã³ãŒãã£ã³ã°ã¿ã¹ã¯ã§ã¯ããã©ã¡ãŒã¿æ°ãããã³ã³ããã¹ãã®é·ãã®æ¹ãéèŠã«ãªãããšãå€ãã§ããå€§èŠæš¡ãªãªããžããªããã«ããã¡ã€ã«ãªãã¡ã¯ã¿ãé·ãäŒè©±å±¥æŽã¯ãã¢ãã«ã«ããå€ãã®ã³ã³ããã¹ããæž¡ããããšã§æ©æµãåããŸãã
ããã©ã«ãã§ã¯:
- qwen3-coder â 128K ã³ã³ããã¹ã
- devstral-small-2 â 128K ã³ã³ããã¹ã
- GPT-OSS â 4ã096 ããŒã¯ã³
éãã¯ã¢ãã«ã®æå³ã«åž°çããŸãã
QWEN3-coder ããã³ devstral-small-2 ã¯ã³ãŒãã£ã³ã°ã«ç¹åããã¢ãã«ã§ã倧éã®ãœãŒã¹ã³ãŒãããããžã§ã¯ãæ§é ãé¢é£ããã³ã³ããã¹ããåäžã®ãªã¯ãšã¹ãã§åã蟌ãããèšèšãããŠããŸãããããã®ãŠãŒã¹ã±ãŒã¹ã§ã¯ã倧ããªããã©ã«ãã®ã³ã³ããã¹ããŠã£ã³ããŠãäžå¯æ¬ ã§ãã
äžæ¹ãGPT-OSSã¯æ±çšã¢ãã«ã§ããããã©ã«ãã®ã³ã³ããã¹ããµã€ãºã¯ãã³ãŒãäžå¿ã®ã¯ãŒã¯ãããŒã«ãããŠéåžžã«é·ãå ¥åãããéèŠåºŠãäœããããåºç¯ãªæé©åç®æšãåæ ããŠããŸãã
GPT-OSSã®ã³ã³ããã¹ããµã€ãºæ¡å€§
ãã倧ããªã³ã³ããã¹ããŠã£ã³ããŠã§å¹æãè¯ãã³ãŒãã£ã³ã°ã¿ã¹ã¯ã« gpt-oss ã䜿ãããå ŽåãDocker Model Runnerã¯ã³ã³ããã¹ããµã€ãºãæ¡å€§ããŠã¢ãã«ãç°¡åã«åããã±ãŒãžåã§ããŸãã
äŸãã°ã128Kã®ã³ã³ããã¹ããŠã£ã³ããŠãæã€GPT-OSSã®ããŒãžã§ã³ãäœæããã«ã¯ã以äžãå®è¡ããŸã:
docker model pull gpt-oss # In case it's not pulled
docker model package --from gpt-oss --context-size 128000 gpt-oss:128K
ããã«ãããæ¡åŒµãããã³ã³ããã¹ãé·ãæã€æ°ããã¢ãã«ã¢ãŒãã£ãã¡ã¯ããäœæãããä»ã®ã¢ãã«ãšåæ§ã«Docker Model Runnerã§æäŸãããŸãã
ããã±ãŒãžååŸã opencode.json æ§æã§ãã®ã¢ãã«ãåç
§ã§ããŸã:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"dmr": {
"npm": "@ai-sdk/openai-compatible",
"name": "Docker Model Runner",
"options": {
"baseURL": "http://localhost:12434/v1"
},
"models": {
"gpt-oss:128K": {
"name": "gpt-oss (128K)"
}
}
}
}
}
ããŒã å ã§ã¢ãã«ãå ±æãã
ã¢ãã«ãOCIã¢ãŒãã£ãã¡ã¯ããšããŠããã±ãŒãžåããããšã«ã¯è¿œå ã®å©ç¹ããããŸãããã㯠ãåŸãããã¢ãã«ãDocker Hubããã©ã€ããŒãã¬ãžã¹ããªã«ããã·ã¥ã§ãããšããããšã§ãã
ããã«ããããŒã ã¯ä»¥äžã®ããšãã§ããŸã:
- ç¹å®ã®ã¢ãã«ããªã¢ã³ã(ã³ã³ããã¹ããµã€ãºãå«ã)ãæšæºåããããš
- ããŒã«ã«åæ§æãªãã§éçºè éã§ã¢ãã«å ±æ
- ç°å¢éã§ã®äžè²«ããæåã確ä¿ãã
- ããŒãžã§ã³ãšããŒã«ããã¯ã¢ãã«ã®å€æŽãæç€ºçã«è¡ããŸã
åéçºè ãç¬ç«ããŠã¢ãã«ããã¥ãŒãã³ã°ããã®ã§ã¯ãªããããŒã ã¯ã¢ãã«ãäžåºŠäœãäžããŠåå©çšããäžæµã®ææç©ãšããŠæ±ãããšãã§ããŸãã
ãã¹ãŠããŸãšãã:CLIã®ã¢ãã«ã䜿ã
Docker Model Runnerãèšå®ããgpt-oss:128Kã¢ãã«ãããã±ãŒãžåããã°ãOpenCodeããããã«äœ¿ãå§ããããŸãã
ãã®ã»ã¯ã·ã§ã³ã§ã¯ãã¢ãã«ãéžæããããã䜿ã£ãŠDockerã¢ãã«ãããžã§ã¯ãå ã§çŽæ¥ agents.md ãã¡ã€ã«ãçæããæ¹æ³ã解説ããŸãã
ã¹ããã 1:ã¢ãã«ãå©çšå¯èœãã©ãã確èªãã
ãŸããããã±ãŒãžã¢ãã«ãå°å ã§å ¥æå¯èœãã©ããã確èªããŸããã:
docker model ls
å©çšå¯èœãªã¢ãã«ã®äžã«GPT-OSS:128Kããªã¹ããããŠããã®ãèŠãããŸããããããã§ãªããã°ãããã±ãŒãžã³ã°ã®å·¥çšãç¡äºã«å®äºããŠããããšã確èªããŠãã ããã
ã¹ããã 2:ã¢ãã«ã䜿çšããããã«OpenCodeãèšå®ãã
ãããžã§ã¯ãã®opencode.jsonã«ããã±ãŒãžã¢ãã«ãå«ãŸããŠããããšã確èªããŠãã ãã:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"dmr": {
"npm": "@ai-sdk/openai-compatible",
"name": "Docker Model Runner",
"options": {
"baseURL": "http://localhost:12434/v1"
},
"models": {
"gpt-oss": {
"name": "gpt-oss:128K"
}
}
}
}
}
ããã«ãããã¢ãã«ã¯dmrãããã€ããŒã®ããšã§OpenCodeã«å©çšå¯èœãšãªããŸãã
ã¹ããã 3:ãããžã§ã¯ãå ã§OpenCodeãéå§ãã
Dockerã¢ãã«ãããžã§ã¯ãã®ã«ãŒããããOpenCodeãéå§ããŸã:
opencode
ãªã¹ãããã¢ãã«ãéžæããã«ã¯ä»¥äžãå®è¡ããŸã:
/models
å³ 3:OpenCodeã®Docker Model Runnerã«ããGPT-OSSã¢ãã«ã®éžæ
ã¹ããã 4:OpenCodeã« agents.md ãçæããã
OpenCodeãå®è¡ããããããªããžããªãã³ã³ããã¹ããšããŠã¢ãã«ã« agents.md ãã¡ã€ã«ã®çæãä¿ããŸãã
Generate an agents.md file in the project root following the agents.md specification and examples.
Use this repository as context and include sections that help an AI agent work effectively with this project, including:
- Project overview
- Build and test commands
- Code style guidelines
- Testing instructions
- Security considerations
Base the content on the actual structure, tooling, and conventions used in this repository.
Keep the file concise, practical, and actionable for an AI agent contributing to the project.
OpenCodeã¯Docker Model Runnerãšé£æºããŠããããããªããžããªæ§é ãé¢é£ãã¡ã€ã«ãå®å šã«ã¢ãã«ã«æž¡ããã€ã³ãã©å€ã«ããŒã¿ãéãããšãªã管çã§ããŸãã
æ¡åŒµããã 128Kã³ã³ããã¹ããŠã£ã³ããŠã«ãããã¢ãã«ã¯ãããžã§ã¯ãã®ãã倧ããªéšåãæšè«ã§ããããæ£ç¢ºã§æçšãª agents.md ãåŸãããŸãã
å³ 4:çµæãšããŠåŸããã agents.md ãã¡ã€ã«
ã¹ããã 5:Docker Model Runnerãžã®ã¬ãã¥ãŒãšè²¢ç®
ãã¡ã€ã«ãçæããããš:
cat agents.md
ãããžã§ã¯ããæ£ç¢ºã«åæ ããããå¿ èŠãªèª¿æŽãè¡ããä»ã®ãããžã§ã¯ãææç©ãšåæ§ã«ã³ãããããŠãã ãã:
git add agents.md
git commit -m "Add agents documentation"
ãã®æç¹ã§ãæåã®Docker Model Runnerãã«ãªã¯ãšã¹ããéãæºåãã§ããŠããŸãã
OpenCodeãšDocker Model Runnerãçµã¿åãããããšã§ãé«å質ãªããã¥ã¡ã³ãããããžã§ã¯ãææç©ãç°¡åã«æäŸã§ãããã¹ãŠã®ã¢ãã«æšè«ããªããžããªã®ã³ã³ããã¹ãã管çããã€ã³ãã©å ã«åããããŸãã
åå æ¹æ³
Docker Model Runnerã®åŒ·ã¿ã¯ãã®ã³ãã¥ããã£ã«ãããåžžã«æé·ã®äœå°ããããŸãããã®ãããžã§ã¯ããæé«ã®ãã®ã«ããããã«ãçæ§ã®ãååãå¿ èŠã§ããåå ããã«ã¯ã次ã®ããšãã§ããŸãã
- ãªããžããªã«æãã€ãã: Docker Model Runnerãªããžããªã«æãã€ããŠãç§ãã¡ã®èªç¥åºŠãé«ããããã«ãæ¯æŽããã ããã°å¹žãã§ãã
- ã¢ã€ãã¢ãæçš¿ããŠãã ããã æ°æ©èœããã°ä¿®æ£ã®ã¢ã€ãã¢ã¯ãããŸãã?åé¡ãäœæããŠè°è«ããŸãããŸãã¯ããªããžããªããã©ãŒã¯ãã倿Žãå ããŠãpull request ãéä¿¡ããŸããç§ãã¡ã¯ããªããã©ããªã¢ã€ãã¢ãæã£ãŠããããèŠãã®ã楜ãã¿ã«ããŠããŸã!
- èšèãåºãã: å人ãååãããã³ Docker ã§ AI ã¢ãã«ãå®è¡ããããšã«èå³ãããå¯èœæ§ã®ãã人ã«äŒããŠãã ããã
ç§ãã¡ã¯ Docker Model Runner ã®ãã®æ°ããç« ã«éåžžã«è奮ããŠãããäžç·ã«äœãæ§ç¯ã§ããããèŠãã®ãåŸ ã¡ãããŸããããããä»äºã«åãæãããŸããã!
詳ããèŠã
- Docker Model Runner ã®äžè¬æäŸã«é¢ãããç¥ããã確èªãã
- Model Runner GitHub ãªããžããªã«ã¢ã¯ã»ã¹ããŠãã ãããDocker Model Runner ã¯ãªãŒãã³ãœãŒã¹ã§ãããã³ãã¥ããã£ããã®ã³ã©ãã¬ãŒã·ã§ã³ãšè²¢ç®ãæè¿ããŸãã
- ã·ã³ãã«ãªhello GenAIã¢ããªã±ãŒã·ã§ã³ã§Docker Model Runnerã䜿ãå§ãã