
- TOP
- ã¿ã°äžèЧ
- ãããã
ãããã
ã€ãã³ã
ãã¬ãžã³
æè¡ããã°
ã¯ããã« # ååã®èšäºïŒ AWSÃUserDataã§vLLMãèªåèµ·åïŒåæ¢æã³ã¹ãã»ãŒãŒãã®ããŒã«ã«LLMç°å¢ ïŒã§ã¯ãAWSã®UserDataãšS3ãæŽ»çšããŠvLLMãå
šèªåèµ·åãã䜿ãçµãã£ããTerminateïŒçµäºïŒããããšã§åæ¢äžã®EBSç¶æã³ã¹ããã»ãŒãŒãã«ãããšãã§ã¡ã©ã«ãªLLMæšè«ç°å¢ãäœããŸããã ã³ãã³ãäžçºã§GPUã€ã³ã¹ã¿ã³ã¹ãç«ã¡äžãããæè»œã«èªåã®æšè«APIãåŒã³åºããããã«ãªã£ã次ã®ã¹ããããšããŠãããããæ¥ã
ã®éçºã¯ãŒã¯ãããŒã«ã©ãçµã¿èŸŒããããšããå®çšåã®æ€èšã«å
¥ããŸããã VS Codeäžã§èªåŸçã«ã³ãŒãç·šéããã¹ãå®è¡ãè¡ãAIã³ãŒãã£ã³ã°ãšãŒãžã§ã³ãã Cline ãã®é è³ãšããŠèªåGPUãæŽ»çšã§ããã°ãåçšAPIã®åŸé課éãã¬ãŒããªããããæ°ã«ãããå®å
šå®é¡ïŒã€ã³ã¹ã¿ã³ã¹çšŒååã®ã¿ïŒã§ãšãŒãžã§ã³ããåããæŸé¡ã«ã§ããŸãã ãã ãããããªããšãŒãžã§ã³ãã«ãã¹ãŠãä»»ããåã«ããŸãã¯ãã©ãŠã¶äžã§ã¢ãã«ã®æšè«éåºŠãæ¥æ¬èªã®å¿çå質ãæè»œã«å¯Ÿè©±æ€èšŒããããšããã§ãã ããã§ä»åã¯ãçŸåšãªãŒãã³ãœãŒã¹ã®äžçã§æãæŽ»çºã«éçºãããŠããããã³ããšã³ã ãOpen WebUIã ïŒGitHub Star 6äžè¶
ïŒãæ¡çšããŸãããOpen WebUIã¯çŸãããã£ããç»é¢ãæäŸããã ãã§ãªããèªèº«ãOpenAIäºæã®APIã²ãŒããŠã§ã€ãšããŠæ©èœããããã ããã©ãŠã¶ã§ã®å¯Ÿè©±æ€èšŒããšãVS Code飿ºããäžæäž¡åŸã§å®çŸ ã§ããŸãã æ¬èšäºã§ã¯ãæå
ã®ããŒã«ã«PCïŒ Windows WSL2 + docker ïŒäžã§ Open WebUI ãåãããAWSäžã®GPUã€ã³ã¹ã¿ã³ã¹ã§çšŒåããå®çªãªãŒãã³ãœãŒã¹ã¢ãã« Qwen/Qwen2.5-Coder-7B-Instruct ãž SSHããŒããã©ã¯ãŒã çµç±ã§ã»ãã¥ã¢ã«çŽçµãããŒã¯ã³ããªãŒãªèªåŸã³ãŒãã£ã³ã°ç°å¢ãå®çŸããæé ãšããŠããŠãã玹ä»ããŸãïŒ ãªããOpen WebUIããæ¡çšããã®ãïŒ # ð ãã®ã»ã¯ã·ã§ã³ã®èŠç¹ vLLMåäœã ãšCUIãçŽå©ãã«ãªããã¡ã§ãããOpen WebUIãæãããšã§ããã©ãŠã¶ã§ã®æ°è»œãªå¯Ÿè©±æ€èšŒããšãVS Codeããã®OpenAIäºæAPIå©çšãã®äž¡æ¹ãããŒã«ã«URLåºå®ïŒ http://localhost:3000 ïŒã§äž¡ç«ã§ããŸãã èªåã®æšè«åºç€ãšã¯ã©ã€ã¢ã³ãã®éã« Open WebUI ãæãããšã«ã¯ãéçºäœéšã«ãããŠå€§ããªã¡ãªããããããŸãã flowchart TD subgraph LocalPC ["ããŒã«ã«éçºç°å¢ (Windows + WSL2)"] Browser["ãã©ãŠã¶ (Webãã£ããUI)<br>http://localhost:3000"] Cline["VS Code (Clineæ¡åŒµæ©èœ)<br>Base URL: http://localhost:3000/api<br>API Key: Open WebUIçºè¡ããŒ"] subgraph DockerEnv ["Docker on WSL2 (ããŒã 3000)"] OpenWebUI["Open WebUI<br>ã»ChatGPTã©ã€ã¯ãªãªããUI<br>ã»APIããŒçºè¡ & ãŠãŒã¶ãŒç®¡ç<br>ã»OpenAIäºæAPIãããã· (/api)"] end SSHTunnel["SSH ãã³ãã« ã¯ã©ã€ã¢ã³ã<br>(ssh -N -f -L 8000:localhost:8000)"] Browser -->|1. Webãã£ãã & èšå®æäœ| OpenWebUI Cline -->|2. OpenAIåœ¢åŒ APIãªã¯ãšã¹ã| OpenWebUI OpenWebUI -->|"3. HTTP: 8000 (å
éšè»¢é)"| SSHTunnel end subgraph AWS ["AWS æ±äº¬ãªãŒãžã§ã³ (ap-northeast-1)"] subgraph EC2Env ["EC2: g6.xlarge (äœ¿ãæšãŠ)ãããŒã8000ã¯å€éšéå
¬éã"] SSHD["SSHD (ããŒã22ã®ã¿éæŸ)"] vLLM["Docker: vLLM (ããŒã8000)<br>OpenAIäºæ æšè«ãµãŒããŒ<br>Qwen/Qwen2.5-Coder-7B-Instruct"] LocalStorage[("/opt/dlami/nvme<br>(ã€ã³ã¹ã¿ã³ã¹ã¹ã㢠NVMe)")] SSHD -->|4. å
éšã«ãŒãããã¯è»¢é| vLLM LocalStorage --> vLLM end S3[("Amazon S3<br>(ã¢ãã«ä¿ç®¡: Qwen2.5-Coder-7B)")] S3 -->|åäžãªãŒãžã§ã³é é«éåæ<br>ãããŒã¿è»¢éç¡æã| LocalStorage end SSHTunnel == ã€ã³ã¿ãŒãããè¶ãã«SSHæå·åéä¿¡ (ããŒã22) ==> SSHD 1. ãWebãã£ããããšãVS Code飿ºãã®äžç³äºé³¥ # Open WebUIã¯ããã©ãŠã¶ããChatGPT / Claudeãšåçã®æŽç·ŽãããWeb UIãæäŸããŠãããŸãã ã³ãŒãã£ã³ã°ãšãŒãžã§ã³ãã«å€§ããªã¿ã¹ã¯ãä»»ããåã«ã ããã®ã¢ãã«ã¯æ¥æ¬èªã®æç€ºã«ã©ãçãããïŒãã颿°ã®ãããã¿ã€ãã¯ã©ãäœããïŒãããã©ãŠã¶äžã§æè»œã«å¯Ÿè©±ã»æ€èšŒ ã§ããŸãã äŒè©±å±¥æŽã®ä¿åãããã³ãããã³ãã¬ãŒã管çãMarkdownã³ãŒããã€ã©ã€ããªã©ãæ¥åžžçãªLLMããã³ããšã³ããšããŠãéåžžã«äŸ¿å©ã§ãã 2. OpenAIäºæAPIãããã·ïŒ /api ïŒã®æšæºæèŒ # Open WebUIã¯åãªãç»é¢è¡šç€ºããŒã«ã«ãšã©ãŸããŸãããèªèº«ã OpenAIäºæã®APIã²ãŒããŠã§ã€ ãšããŠæ¯ãèãæ©èœãåããŠããŸãã èšå®ç»é¢ããç¬èªã® APIã㌠ãçºè¡å¯èœã å€éšããŒã«ïŒClineãªã©ïŒãã http://localhost:3000/api ãå©ãã ãã§ãOpen WebUIãèªèšŒã»ãã°èšé²ãè¡ãã€ã€ãèåŸã®vLLMãžãªã¯ãšã¹ããå®å
šã«ã«ãŒãã£ã³ã°ããŠãããŸãã 3. SSHããŒããã©ã¯ãŒãã«ãããæ¥ç¶å
URLã®å®å
šåºå®åããšå®å
šæ§ # äœ¿ãæšãŠéçšã®EC2ã¯èµ·åããšã«åçãããªãã¯IPãå€ãããŸãã EC2åŽã®ã»ãã¥ãªãã£ã°ã«ãŒãã§ã¯ ããŒã8000ãå€éšå
¬éãããSSHïŒããŒã22ïŒã®ã¿éæŸ ã ããŒã«ã«PCïŒWSL2ïŒãã ssh -N -f -L 8000:localhost:8000 ã§æå·åãã³ãã«ã確ç«ã Open WebUIã¯ãã¹ããããã¯ãŒã¯çµç±ã§åžžã«ããŒã«ã«ã® http://127.0.0.1:8000/v1 ã«æ¥ç¶ã ClineåŽã®æ¥ç¶å
ãåžžã« http://localhost:3000/api ã§åºå® ã§ããŸããEC2ãäœåºŠåèµ·åã»ç Žæ£ããŠããšãã£ã¿ããã©ãŠã¶ã®èšå®å€æŽã¯äžèŠã§ãã ãªããšãŒãžã§ã³ãã«ãClineããéžã¶ã®ãïŒ # vLLMãšçµã¿åãããAIã³ãŒãã£ã³ã°æ¡åŒµæ©èœãšã㊠Cline ãéžå®ããçç±ã¯æç¢ºã§ãïŒ OpenAIäºæAPIã®ãã€ãã£ããµããŒã : ç¹å®ã®ãããã€ãå°çšããŒã«ãšã¯ç°ãªããClineã¯å
¬åŒã«ãOpenAI Compatibleããããã€ãã«å¯Ÿå¿ããŠããŸããç¬èªã¹ããŒãã®å€æã«æ©ãŸãããããšãªããæšæºç㪠/v1/chat/completions ãšã³ããã€ã³ããžæ¥µããŠã¹ã ãŒãºã«æ¥ç¶ã§ããŸãã VS Codeãšãã£ã¿ãšã®äžäœæãšèªåŸå®è¡å : ãµã€ãããŒã®ãã£ããããæç€ºãåºãã ãã§ããã¡ã€ã«ããªãŒã®èµ°æ»ãã³ãŒãå·®åïŒDiffïŒã®æç€ºã»é©çšãçµ±åã¿ãŒããã«ã§ã®ãã«ãããã¹ãå®è¡ãŸã§ããšãã£ã¿å
ã§å®çµããŠèªåŸå®è¡ããŠãããŸãã Plan / Act ã¢ãŒãã«ãã確å®ãªã¿ã¹ã¯éè¡ : èšèšã»æ¹é決å®ãè¡ããPlanã¢ãŒãããšãå®éã®ãã¡ã€ã«ç·šéã»ã³ãã³ãå®è¡ãè¡ããActã¢ãŒãããã·ãŒã ã¬ã¹ã«è¡ãæ¥ã§ãããªãŒãã³ãœãŒã¹ã¢ãã«ïŒ7Bã32Bã¯ã©ã¹ïŒã§ãè±ç·ããã«çå®ãªã³ãŒãã£ã³ã°ãé²ããããŸãã ç°å¢æ§ç¯ã¹ããã # Step 1: WSL2 + Docker ã§ Open WebUI ãèµ·å # ð ãã®ã¹ãããã§ããããš WSL2äžã§å
¬åŒDockerã³ã³ãããç«ã¡äžããŸãããã¹ããããã¯ãŒã¯ïŒ --net=host ïŒã䜿ãããšã§ãåŸè¿°ã®SSHãã³ãã«ãšã·ãŒã ã¬ã¹ã«çŽçµãããŸãã ãŸãã¯æå
ã®WSL2ç°å¢ã§ãOpen WebUIããèµ·åããŸãã å
¬åŒã®Dockerã³ã³ããã€ã¡ãŒãžãæäŸãããŠãããããDocker ComposeãŸã㯠docker run ã³ãã³ãäžçºã§ç«ã¡äžãããŸãã æ¹æ³A: Docker Compose ã§èµ·åïŒæšå¥šïŒ # docker-compose.open-webui.yml services: open-webui: image: ghcr.io/open-webui/open-webui:main container_name: open-webui restart: always network_mode: host environment: # ããŒã3000ã§åŸ
ã¡åã - PORT=3000 # SSHãã³ãã«ïŒlocalhost:8000ïŒãOpenAIäºæããã¯ãšã³ããšããŠæå® - OPENAI_API_BASE_URL=http://127.0.0.1:8000/v1 - OPENAI_API_KEY=none volumes: - open-webui-data:/app/backend/data volumes: open-webui-data: docker compose -f docker-compose.open-webui.yml up -d æ¹æ³B: docker run ã³ãã³ãã§èµ·å docker run -d --net=host \ -v open-webui-data:/app/backend/data \ -e PORT=3000 \ -e OPENAI_API_BASE_URL=http://127.0.0.1:8000/v1 \ -e OPENAI_API_KEY=none \ --name open-webui \ --restart always \ ghcr.io/open-webui/open-webui:main --> Information ð¡ ãªããã¹ããããã¯ãŒã¯ïŒ network_mode: host / --net=host ïŒã䜿ãã®ãïŒ WSL2ç°å¢ã§SSHããŒããã©ã¯ãŒãïŒ ssh -L 8000:localhost:8000 ïŒãå®è¡ãããšãSSHããã»ã¹ã¯ãã¹ãã®ã«ãŒãããã¯ã¢ãã¬ã¹ïŒ 127.0.0.1:8000 ïŒã®ã¿ã§åŸ
ã¡åããŸãã Dockerã®éåžžã®ããªããžãããã¯ãŒã¯ïŒ -p 3000:8080 ïŒã§ã³ã³ãããåãããšã host.docker.internal çµç±ã®ã¢ã¯ã»ã¹ã¯Dockerä»®æ³NICïŒ docker0 ïŒããå
¥ã£ãŠããããã 127.0.0.1 ã«ãããã€ã³ãããŠããªãSSHãã³ãã«ã«ãã±ãããå±ããæ¥ç¶ãšã©ãŒïŒConnection refusedïŒã«ãªã£ãŠããŸããŸãã ãã¹ããããã¯ãŒã¯ã䜿çšããããšã§ãã³ã³ãããWSL2ãã¹ããšåäžã®ãããã¯ãŒã¯ç©ºéïŒ 127.0.0.1 ïŒãå
±æãããããäœèšãªèšå®ãæ°ã«ãã http://127.0.0.1:8000/v1 ã§ç¢ºå®ã«çŽçµã§ããŸãã èµ·ååŸããã©ãŠã¶ã§ http://localhost:3000 ãéããŸãã â» ååã¢ã¯ã»ã¹æã«ç®¡çè
ã¢ã«ãŠã³ãïŒååã»ã¡ãŒã«ã»ãã¹ã¯ãŒãïŒã®äœæç»é¢ã衚瀺ãããŸããæå
ã®ããŒã«ã«ç°å¢ã§ãã®ã§ãã奜ã¿ã®æ
å ±ã§ãµã€ã³ã¢ããããŠãã ããã â» æ¬èšäºã®ç»é¢ãã£ããã£ã§ã¯ããµã€ã³ã€ã³åŸã«å·Šäžã®ãŠãŒã¶ãŒã¢ã€ã³ã³ â \rightarrow â ãèšå®ïŒSettingsïŒã â \rightarrow â ãå
šè¬ïŒGeneralïŒã â \rightarrow â ãèšèªïŒLanguageïŒã ã§è¡šç€ºèšèªã ãæ¥æ¬èªã ã«èšå®ããŠããŸãïŒè±èªUIã®ãŸãŸã§ãåé¡ãªãå©çšå¯èœã§ãïŒã Step 2: EC2èµ·å ïŒ æå·åSSHãã³ãã«ãèªåç¢ºç« # ð ãã®ã¹ãããã§ããããš ã³ãã³ã1çºã§EC2ïŒGPUïŒã®èµ·åãUserDataã«ããvLLMã®èªåã»ããã¢ãããå®å
šãªæå·åSSHãã³ãã«ïŒããŒã8000ïŒã®ããã¯ã°ã©ãŠã³ã確ç«ãŸã§ãå
šèªååããŸãã --> Information ð ã¹ã¯ãªããå®è¡åã®ãã§ãã¯ãªã¹ãïŒåææ¡ä»¶ïŒ ããŒã«ã«ç°å¢ : Windows (WSL2) + Docker ãå°å
¥æžã¿ã§ããããš EC2ããŒã㢠: ~/.ssh/ é
äžã«ç§å¯éµïŒ .pem ïŒãååšããããš IAMããŒã« : S3èªã¿åãïŒã¢ãã«ååŸçšïŒæš©éãæã€IAMããŒã«ïŒäŸ: EC2-S3-FullAccess-Profile ïŒãäœææžã¿ã§ããããš AWS CLI : äºåã« aws configure ã§èªèšŒãéã£ãŠããããš EC2ã€ã³ã¹ã¿ã³ã¹ã®èªåæ§ç¯ãšæ¥ç¶ã¯ã以äžã®2ã€ã®ã¹ã¯ãªããã§è¡ããŸãïŒ 02_ec2_userdata.sh : EC2ã®èµ·åæã«èªåå®è¡ãããS3ããã¢ãã«ãåæããããŒã«åŒã³åºãïŒTool CallingïŒãæå¹åããvLLMã³ã³ãããèµ·åããUserDataã¹ã¯ãªãã 02_ec2_launch_and_tunnel.sh : ããŒã«ã«PCããEC2ã€ã³ã¹ã¿ã³ã¹ãèµ·åããäžèšUserDataãæµã蟌ãã§æå·åSSHãã³ãã«ãèªå確ç«ããã¹ã¯ãªãã 1. EC2å
éšã®èªåæ§ç¯ã¹ã¯ãªããïŒ 02_ec2_userdata.sh ïŒ ãŸãã¯ãEC2èµ·åæã«ãµãŒããŒå
éšã§å®è¡ãããUserDataã¹ã¯ãªããã§ãã第1åã®ã¹ã¯ãªãããããŒã¹ã«ãèªåŸåã³ãŒãã£ã³ã°ãšãŒãžã§ã³ãïŒClineïŒãOpen WebUIããã®ããŒã«åŒã³åºãïŒTool CallingïŒã«å¯Ÿå¿ããããã vLLMã®èµ·ååŒæ°ã« --enable-auto-tool-choice ããã³ --tool-call-parser hermes ã远å ããŠããŸãã 02_ec2_userdata.shïŒã¯ãªãã¯ã§å±éïŒ #!/bin/bash set -euo pipefail # ============================================================================== # 02_ec2_userdata.sh # EC2èµ·åæã«å®è¡ãããUserDataã¹ã¯ãªãã # # åæ: # - AMI: Ubuntu 22.04 Deep Learning AMI (NVIDIA Driver & Dockerå°å
¥æžã¿) # - ã€ã³ã¹ã¿ã³ã¹ã¿ã€ã: g6.xlarge (NVIDIA L4 GPU: 24GB VRAM, 250GB NVMe SSDä»å±) # - IAMããŒã«: S3(ReadOnly/FullAccess) åã³ ECR(ReadOnly) æš©éã¢ã¿ããæžã¿ # ============================================================================== LOG_FILE="/var/log/userdata-vllm.log" exec > >(tee -a "${LOG_FILE}") 2>&1 echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] UserData å®è¡éå§ ===" # èšå®ãã©ã¡ãŒã¿ AWS_REGION="${AWS_REGION:-ap-northeast-1}" S3_BUCKET_NAME="${S3_BUCKET_NAME:-my-llm-models-tokyo}" HF_MODEL_ID="${HF_MODEL_ID:-Qwen/Qwen2.5-Coder-7B-Instruct}" SERVED_MODEL_NAME="${SERVED_MODEL_NAME:-Qwen/Qwen2.5-Coder-7B-Instruct}" VLLM_PORT="8000" GPU_MEMORY_UTILIZATION="0.90" MAX_MODEL_LEN="16384" DOCKER_IMAGE="${DOCKER_IMAGE:-vllm/vllm-openai:latest}" echo "ååŸã¢ãã«(HF) : ${HF_MODEL_ID}" echo "å
¬éã¢ãã«å : ${SERVED_MODEL_NAME}" echo "S3ãã±ãã : s3://${S3_BUCKET_NAME}" # 1. ããŒã«ã« NVMe ã€ã³ã¹ã¿ã³ã¹ã¹ãã¢ïŒ250GBïŒã®æ€åºãšæŽ»çš # â» AWS Deep Learning AMI (DLAMI) ã¯ãèµ·åæã«ããŒã«ã«NVMeãèªåã§ /opt/dlami/nvme ã«ããŠã³ãããŠãããŸã NVME_DIR="/opt/dlami/nvme" if mountpoint -q "${NVME_DIR}" || [ -d "${NVME_DIR}" ]; then echo "DLAMIæ¢å®ã® NVMe ããŠã³ã (${NVME_DIR}) ãæ€åºããŸãããã¢ãã«ïŒDockeré åãšããŠæŽ»çšããŸã..." mkdir -p "${NVME_DIR}/models" "${NVME_DIR}/docker" mkdir -p /data ln -sfn "${NVME_DIR}/models" /data/models else # DLAMI以å€ã®AMIãæªããŠã³ãæã®ãã©ãŒã«ããã¯åŠç NVME_DEV=$(lsblk -d -n -o NAME,SIZE | grep -E '250G|232G' | head -n1 | awk '{print $1}') if [ -n "${NVME_DEV}" ]; then echo "ããŒã«ã« NVMe SSD (/dev/${NVME_DEV}) ãæ€åºããŸããã/data ã«ããŠã³ãããŸã..." mkfs.ext4 -F "/dev/${NVME_DEV}" || true mkdir -p /data mount -o noatime "/dev/${NVME_DEV}" /data || true else mkdir -p /data fi mkdir -p /data/models /data/docker NVME_DIR="/data" fi LOCAL_MODEL_ROOT="/data/models" LOCAL_MODEL_DIR="${LOCAL_MODEL_ROOT}/${HF_MODEL_ID}" mkdir -p "${LOCAL_MODEL_DIR}" chmod 777 "${LOCAL_MODEL_ROOT}" # 2. Docker & containerd ã®ããŒã¿é åã NVMe ã«é
眮ããEBSæ¯æžé²æ¢ïŒã¬ã€ã€ãŒå±éãçéå # â» Docker 24+ ããã³ containerd 㯠/var/lib/containerd ã«ã¹ãããã·ã§ãããå±éããããã # äž¡æ¹ã 250GB NVMe SSD ã«ãã€ã³ãããŠã³ãã㊠40GB EBS ã®ãã£ã¹ã¯æºæ¯ (no space left on device) ãå®å
šã«é²æ¢ããŸã echo "Docker/containerd ã忢ã㊠NVMe é åãžã®ãã€ã³ãããŠã³ããèšå®ããŸã..." systemctl stop docker containerd || true mkdir -p "${NVME_DIR}/docker" "${NVME_DIR}/containerd" mkdir -p /var/lib/docker /var/lib/containerd # æ¢åããŒã¿ãããã°ç§»è¡ cp -a /var/lib/docker/* "${NVME_DIR}/docker/" 2>/dev/null || true cp -a /var/lib/containerd/* "${NVME_DIR}/containerd/" 2>/dev/null || true mount --bind "${NVME_DIR}/docker" /var/lib/docker mount --bind "${NVME_DIR}/containerd" /var/lib/containerd if ! grep -q "/var/lib/docker" /etc/fstab; then echo "${NVME_DIR}/docker /var/lib/docker none defaults,bind 0 0" >> /etc/fstab fi if ! grep -q "/var/lib/containerd" /etc/fstab; then echo "${NVME_DIR}/containerd /var/lib/containerd none defaults,bind 0 0" >> /etc/fstab fi mkdir -p /etc/docker cat <<EOF > /etc/docker/daemon.json { "data-root": "/var/lib/docker" } EOF systemctl daemon-reload systemctl start containerd systemctl start docker # 3. ã¢ãã«ããŒã¿ã®æºå (S3ã«ããã°é«éåæãç¡ããã°EC2äžã§Hugging FaceããçŽæ¥ååŸããŠS3ãžããã¯ã¢ãã) echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] ã¢ãã«ããŒã¿ã®æºå確èª... ===" S3_SRC="s3://${S3_BUCKET_NAME}/models/${HF_MODEL_ID}" echo "S3ã¿ãŒã²ãã: ${S3_SRC}/ (ãªãŒãžã§ã³: ${AWS_REGION})" aws configure set default.s3.max_concurrent_requests 20 # IAMã¯ã¬ãã³ã·ã£ã«ãšS3çéã®åŸ
æ© (èµ·åçŽåŸã¯ã¡ã¿ããŒã¿ãµãŒãã¹ããã®STSããŒã¯ã³åæ ã«æ°ç§ãããå Žåããã) echo "IAMèªèšŒããã³S3ãã±ããæ¥ç¶ã確èªäž..." for i in {1..15}; do if aws s3 ls "s3://${S3_BUCKET_NAME}" --region "${AWS_REGION}" >/dev/null 2>&1; then echo "S3ãã±ãããžã®æ¥ç¶ã確èªããŸããã" break fi echo "S3æ¥ç¶/IAMèªèšŒåŸ
æ©äž ($i/15)..." sleep 2 done HAS_S3_MODEL=false echo "S3äžã®ã¢ãã«ååšãã§ãã¯ãå®è¡äž: aws s3 ls ${S3_SRC}/ --region ${AWS_REGION}" S3_CHECK=$(aws s3 ls "${S3_SRC}/" --region "${AWS_REGION}" 2>&1 || true) echo "S3ãã§ãã¯çµæ:" echo "${S3_CHECK}" if echo "${S3_CHECK}" | grep -E '(\.safetensors|\.bin|\.json)' >/dev/null; then HAS_S3_MODEL=true fi if [ "${HAS_S3_MODEL}" = "true" ]; then echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] S3äžã«ã¢ãã«ãçºèŠããŸãããS3ããé«éåæããŸã... ===" aws s3 sync "${S3_SRC}" "${LOCAL_MODEL_DIR}" \ --region "${AWS_REGION}" \ --no-progress else echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] S3äžã«ã¢ãã«ããããŸãããEC2äžã§çŽæ¥Hugging Faceããé«éååŸããŸã... ===" python3 -m pip install -U "huggingface_hub[cli]" || pip3 install -U "huggingface_hub[cli]" || true echo "Hugging Face ('${HF_MODEL_ID}') ããã¢ãã«ãçŽæ¥ããŠã³ããŒãäž..." python3 -c " import sys from huggingface_hub import snapshot_download try: snapshot_download(repo_id='${HF_MODEL_ID}', local_dir='${LOCAL_MODEL_DIR}', local_dir_use_symlinks=False) print('Hugging Faceããã®ããŠã³ããŒãã«æåããŸããã') except Exception as e: print(f'ããŠã³ããŒããšã©ãŒ: {e}', file=sys.stderr) sys.exit(1) " echo "ããŠã³ããŒãå®äºã容é:" du -sh "${LOCAL_MODEL_DIR}" fi echo "ã¢ãã«æºåå®äºãããŒã«ã«å®¹é確èª:" du -sh "${LOCAL_MODEL_DIR}" # 4. vLLMã³ã³ããã®èµ·å echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] vLLMã³ã³ããèµ·å ===" CONTAINER_NAME="vllm-server" # ECR ã€ã¡ãŒãžã®å Žåã¯ãã°ã€ã³èªèšŒãå®è¡ if [[ "${DOCKER_IMAGE}" == *".dkr.ecr."* ]]; then echo "ECR ã€ã¡ãŒãžãæ€åºããŸããããã°ã€ã³èªèšŒãå®è¡äž..." ECR_REGISTRY=$(echo "${DOCKER_IMAGE}" | cut -d'/' -f1) aws ecr get-login-password --region "${AWS_REGION}" | docker login --username AWS --password-stdin "${ECR_REGISTRY}" || true fi # æ¢åã³ã³ãããããã°åæ¢ã»åé€ if docker ps -a --format '{{.Names}}' | grep -q "^${CONTAINER_NAME}$"; then echo "æ¢åã® ${CONTAINER_NAME} ã忢ã»åé€ããŸã..." docker rm -f "${CONTAINER_NAME}" fi docker run -d \ --name "${CONTAINER_NAME}" \ --restart unless-stopped \ --gpus all \ --ipc=host \ -p "${VLLM_PORT}:8000" \ -v "${LOCAL_MODEL_ROOT}:/models" \ "${DOCKER_IMAGE}" \ --model "/models/${HF_MODEL_ID}" \ --served-model-name "${SERVED_MODEL_NAME}" \ --gpu-memory-utilization "${GPU_MEMORY_UTILIZATION}" \ --max-model-len "${MAX_MODEL_LEN}" \ --trust-remote-code \ --enable-auto-tool-choice \ --tool-call-parser hermes # 5. ãã«ã¹ãã§ã㯠(èµ·ååŸ
æ©) echo "vLLM ãµãŒããŒã®èµ·åãã«ã¹ãã§ãã¯ãéå§ããŸã (ããŒã ${VLLM_PORT})..." MAX_RETRIES=120 # ååèµ·åã»CUDAã°ã©ãæ§ç¯ã«äœè£ãæããã (æå€§10å) RETRY_COUNT=0 while [ ${RETRY_COUNT} -lt ${MAX_RETRIES} ]; do if curl -s "http://127.0.0.1:${VLLM_PORT}/health" > /dev/null 2>&1; then echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] vLLMãµãŒããŒãæ£åžžã«èµ·åããŸããïŒ ===" break fi echo "èµ·ååŸ
æ©äž... (${RETRY_COUNT}/${MAX_RETRIES})" sleep 5 RETRY_COUNT=$((RETRY_COUNT + 1)) done if [ ${RETRY_COUNT} -eq ${MAX_RETRIES} ]; then echo "èŠå: vLLMãã«ã¹ãã§ãã¯ãã¿ã€ã ã¢ãŠãããŸããã'docker logs ${CONTAINER_NAME}' ã確èªããŠãã ããã" else # èµ·åæåæ: HFããçŽæ¥ããŠã³ããŒãããŠããå Žåã¯ãè£ã§S3ãžèªåããã¯ã¢ãã (I/Oåªå
床ãäžããŠæšè«ãé»å®³ããªã) if [ "${HAS_S3_MODEL}" = "false" ]; then echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] èµ·åå®äºã確èªã次å以éã®é«éåæã®ãããè£ã§S3ãžããã¯ã¢ãããéå§ããŸã ===" ( if ! aws s3 ls "s3://${S3_BUCKET_NAME}" --region "${AWS_REGION}" 2>/dev/null; then if [ "${AWS_REGION}" = "us-east-1" ]; then aws s3api create-bucket --bucket "${S3_BUCKET_NAME}" 2>/dev/null || true else aws s3api create-bucket --bucket "${S3_BUCKET_NAME}" --region "${AWS_REGION}" --create-bucket-configuration LocationConstraint="${AWS_REGION}" 2>/dev/null || true fi fi ionice -c 3 aws s3 sync "${LOCAL_MODEL_DIR}" "${S3_SRC}" --region "${AWS_REGION}" --no-progress 2>/dev/null || \ aws s3 sync "${LOCAL_MODEL_DIR}" "${S3_SRC}" --region "${AWS_REGION}" --no-progress 2>/dev/null || true echo "[$(date '+%Y-%m-%d %H:%M:%S')] S3ã¢ãã«ããã¯ã¢ããå®äºïŒæ¬¡åããã¯S3ããè¶
é«éåæãããŸãã" ) > /var/log/s3-backup.log 2>&1 & fi fi # 6. 1æéã¢ã€ãã«æã®èªåã·ã£ããããŠã³ïŒèªçTerminateïŒããŒã¢ã³èµ·å echo "=== ã¢ã€ãã«èªåçµäºããŒã¢ã³ãèšå®ã»èµ·åããŸã ===" cat <<'EOF' > /usr/local/bin/auto-idle-shutdown.sh #!/bin/bash IDLE_LIMIT_SEC=3600 # 1æé (3600ç§) IDLE_COUNT=0 CHECK_INTERVAL=300 # 5åããã«ãã§ã㯠while true; do sleep "${CHECK_INTERVAL}" # çŽè¿5åéã®vLLMãžã®æšè«ãªã¯ãšã¹ãæ°ããã°ããã«ãŠã³ã REQ_COUNT=$(docker logs --since 5m vllm-server 2>&1 | grep -c "POST /v1" || true) if [ "${REQ_COUNT}" -eq 0 ]; then IDLE_COUNT=$((IDLE_COUNT + CHECK_INTERVAL)) echo "[$(date '+%Y-%m-%d %H:%M:%S')] ã¢ã€ãã«ç¶ç¶äž: ${IDLE_COUNT}s / ${IDLE_LIMIT_SEC}s" if [ "${IDLE_COUNT}" -ge "${IDLE_LIMIT_SEC}" ]; then echo "[$(date '+%Y-%m-%d %H:%M:%S')] 1æéã¢ã€ãã«ç¶æ
ãç¶ç¶ãããããèªåçµäº(Terminate)ãå®è¡ããŸãã" shutdown -h now exit 0 fi else IDLE_COUNT=0 # ãªã¯ãšã¹ãããã£ããã¿ã€ããŒãªã»ãã fi done EOF chmod +x /usr/local/bin/auto-idle-shutdown.sh nohup /usr/local/bin/auto-idle-shutdown.sh > /var/log/auto-idle-shutdown.log 2>&1 & echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] UserData å
šåŠçå®äº (èªåã¢ã€ãã«ç£èŠçšŒåäž) ===" 2. EC2èµ·å ïŒ æå·åSSHãã³ãã«èªå確ç«ã¹ã¯ãªããïŒ 02_ec2_launch_and_tunnel.sh ïŒ ç¶ããŠãããŒã«ã«PCããäžèšUserDataãæž¡ããŠEC2ãèµ·åããSSHãã³ãã«ãããã¯ã°ã©ãŠã³ãã§èªåééãããã¹ã¯ãªããã§ãã 02_ec2_launch_and_tunnel.shïŒã¯ãªãã¯ã§å±éïŒ #!/bin/bash set -euo pipefail # ============================================================================== # 02_ec2_launch_and_tunnel.sh # EC2 GPUã€ã³ã¹ã¿ã³ã¹ãèµ·åããSSHããŒããã©ã¯ãŒãã§å®å
šã«vLLMãããŒã«ã«(8000)ã«æ¥ç¶ããã¹ã¯ãªãã # # ç¹åŸŽ: # - EC2ã®ããŒã8000ãã€ã³ã¿ãŒãããã«äžåå
¬éãããããŒã22(SSH)ã®ã¿ã§éçš # - ããŒã«ã«PCã§SSHãã³ãã«(-L 8000:localhost:8000)ãèªåç¢ºç« # - Open WebUI ã¯ããŒã«ã«(http://127.0.0.1:8000/v1)ãåãã ããªã®ã§èšå®åºå®ïŒ # ============================================================================== SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" USER_DATA_FILE="${USER_DATA_FILE:-${SCRIPT_DIR}/02_ec2_userdata.sh}" INSTANCE_STATE_FILE="${SCRIPT_DIR}/.current_instance_id" TUNNEL_PID_FILE="${SCRIPT_DIR}/.current_ssh_tunnel_pid" # --- AWS èšå® --- AWS_REGION="${AWS_REGION:-ap-northeast-1}" INSTANCE_TYPE="${INSTANCE_TYPE:-g6.xlarge}" # NVIDIA L4 GPU (24GB VRAM) AMI_ID="${AMI_ID:-}" IAM_ROLE_NAME="${IAM_ROLE_NAME:-EC2-S3-ReadOnly-Profile}" SECURITY_GROUP_IDS="${SECURITY_GROUP_IDS:-}" SUBNET_ID="${SUBNET_ID:-}" KEY_NAME="${KEY_NAME:-my-vllm-models-hackathon-2026}" KEY_PATH="${KEY_PATH:-${HOME}/.ssh/${KEY_NAME}.pem}" EBS_SIZE_GB="${EBS_SIZE_GB:-40}" # --- ã¢ãã« & UserData èšå® --- S3_BUCKET_NAME="${S3_BUCKET_NAME:-my-vllm-models-hackathon-2026-$(aws sts get-caller-identity --query Account --output text)-ap-northeast-1-an}" HF_MODEL_ID="${HF_MODEL_ID:-Qwen/Qwen2.5-Coder-7B-Instruct}" SERVED_MODEL_NAME="${SERVED_MODEL_NAME:-Qwen/Qwen2.5-Coder-7B-Instruct}" MAX_MODEL_LEN="${MAX_MODEL_LEN:-16384}" GPU_MEMORY_UTILIZATION="${GPU_MEMORY_UTILIZATION:-0.90}" DOCKER_IMAGE="${DOCKER_IMAGE:-vllm/vllm-openai:latest}" echo "=== 1. èšå®ç¢ºèª ===" if [ ! -f "${USER_DATA_FILE}" ]; then echo "ãšã©ãŒ: UserDataã¹ã¯ãªãããèŠã€ãããŸãã: ${USER_DATA_FILE}" echo "第1åã® 02_ec2_userdata.sh ãé
眮ããããç°å¢å€æ° USER_DATA_FILE ãæå®ããŠãã ããã" exit 1 fi echo "䜿çšããSSHç§å¯éµ: ${KEY_PATH}" # äžæUserDataã¹ã¯ãªãããçæããŠç°å¢å€æ°ã泚å
¥ TEMP_USERDATA=$(mktemp) trap 'rm -f "${TEMP_USERDATA}"' EXIT sed -e "s|^AWS_REGION=.*|AWS_REGION=\"${AWS_REGION}\"|" \ -e "s|^S3_BUCKET_NAME=.*|S3_BUCKET_NAME=\"${S3_BUCKET_NAME}\"|" \ -e "s|^HF_MODEL_ID=.*|HF_MODEL_ID=\"${HF_MODEL_ID}\"|" \ -e "s|^SERVED_MODEL_NAME=.*|SERVED_MODEL_NAME=\"${SERVED_MODEL_NAME}\"|" \ -e "s|^MAX_MODEL_LEN=.*|MAX_MODEL_LEN=\"${MAX_MODEL_LEN}\"|" \ -e "s|^GPU_MEMORY_UTILIZATION=.*|GPU_MEMORY_UTILIZATION=\"${GPU_MEMORY_UTILIZATION}\"|" \ -e "s|^DOCKER_IMAGE=.*|DOCKER_IMAGE=\"${DOCKER_IMAGE}\"|" \ "${USER_DATA_FILE}" > "${TEMP_USERDATA}" if [ -z "${AMI_ID}" ]; then echo "Ubuntu 22.04 Deep Learning AMI ãèªåæ€çŽ¢äž..." AMI_ID=$(aws ec2 describe-images \ --region "${AWS_REGION}" \ --owners amazon \ --filters "Name=name,Values=Deep Learning OSS Nvidia Driver AMI GPU PyTorch * (Ubuntu 22.04)*" "Name=state,Values=available" \ --query 'sort_by(Images, &CreationDate)[-1].ImageId' \ --output text) echo "䜿çšAMI ID: ${AMI_ID}" fi # SSHå°çšã»ãã¥ãªãã£ã°ã«ãŒãã®èªåååŸãŸãã¯äœæ if [ -z "${SECURITY_GROUP_IDS}" ]; then SG_NAME="vllm-ssh-tunnel-sg" SG_ID=$(aws ec2 describe-security-groups \ --region "${AWS_REGION}" \ --filters "Name=group-name,Values=${SG_NAME}" \ --query 'SecurityGroups[0].GroupId' --output text 2>/dev/null || true) if [ -z "${SG_ID}" ] || [ "${SG_ID}" = "None" ]; then echo "SSHå°çšã»ãã¥ãªãã£ã°ã«ãŒã (${SG_NAME}) ãäœæããŸã..." DEFAULT_VPC=$(aws ec2 describe-vpcs --region "${AWS_REGION}" --filters "Name=isDefault,Values=true" --query 'Vpcs[0].VpcId' --output text) SG_ID=$(aws ec2 create-security-group \ --region "${AWS_REGION}" \ --group-name "${SG_NAME}" \ --description "Allow SSH port 22 only for vLLM tunnel" \ --vpc-id "${DEFAULT_VPC}" \ --query 'GroupId' --output text) aws ec2 authorize-security-group-ingress \ --region "${AWS_REGION}" --group-id "${SG_ID}" \ --protocol tcp --port 22 --cidr "0.0.0.0/0" fi SECURITY_GROUP_IDS="${SG_ID}" fi # --- 2. EC2 ã€ã³ã¹ã¿ã³ã¹èµ·å --- echo "=== 2. EC2ã€ã³ã¹ã¿ã³ã¹èµ·å (äœ¿ãæšãŠãšãã§ã¡ã©ã«ä»æ§) ===" INSTANCE_ID=$(aws ec2 run-instances \ --region "${AWS_REGION}" \ --image-id "${AMI_ID}" \ --instance-type "${INSTANCE_TYPE}" \ --key-name "${KEY_NAME}" \ --iam-instance-profile "Name=${IAM_ROLE_NAME}" \ --security-group-ids ${SECURITY_GROUP_IDS} \ --instance-initiated-shutdown-behavior terminate \ --block-device-mappings "[{\"DeviceName\":\"/dev/sda1\",\"Ebs\":{\"VolumeSize\":${EBS_SIZE_GB},\"VolumeType\":\"gp3\",\"DeleteOnTermination\":true}}]" \ --user-data "file://${TEMP_USERDATA}" \ --tag-specifications "ResourceType=instance,Tags=[{Key=Name,Value=vllm-openwebui-server}]" \ --query 'Instances[0].InstanceId' \ --output text) echo "ã€ã³ã¹ã¿ã³ã¹èµ·åãªã¯ãšã¹ãå®äº: ${INSTANCE_ID}" echo "${INSTANCE_ID}" > "${INSTANCE_STATE_FILE}" echo "ã€ã³ã¹ã¿ã³ã¹ã®èµ·åå®äºãåŸ
æ©äž..." aws ec2 wait instance-running --region "${AWS_REGION}" --instance-ids "${INSTANCE_ID}" PUBLIC_IP=$(aws ec2 describe-instances \ --region "${AWS_REGION}" \ --instance-ids "${INSTANCE_ID}" \ --query 'Reservations[0].Instances[0].PublicIpAddress' \ --output text) echo "ãããªãã¯IP : ${PUBLIC_IP}" # --- 3. SSHããŒããã©ã¯ãŒãæ¥ç¶ (æå·åãã³ãã«ç¢ºç«) --- echo "=== 3. SSHããŒããã©ã¯ãŒãæ¥ç¶ (æå·åãã³ãã«ç¢ºç«) ===" while ! nc -z -w 3 "${PUBLIC_IP}" 22 2>/dev/null; do sleep 3 done echo "EC2 SSHDå¿ç確èªïŒ" if [ -f "${TUNNEL_PID_FILE}" ]; then OLD_PID=$(cat "${TUNNEL_PID_FILE}" | tr -d '[:space:]') kill -9 "${OLD_PID}" 2>/dev/null || true rm -f "${TUNNEL_PID_FILE}" fi ssh -i "${KEY_PATH}" \ -o StrictHostKeyChecking=no \ -o UserKnownHostsFile=/dev/null \ -o ServerAliveInterval=15 \ -o ServerAliveCountMax=3 \ -N -f -L 8000:localhost:8000 \ "ubuntu@${PUBLIC_IP}" TUNNEL_PID=$(pgrep -f "ssh.*-L 8000:localhost:8000.*ubuntu@${PUBLIC_IP}" | head -n1 || true) if [ -n "${TUNNEL_PID}" ]; then echo "${TUNNEL_PID}" > "${TUNNEL_PID_FILE}" fi echo "SSHãã³ãã«ç¢ºç«å®äºïŒ (PID: ${TUNNEL_PID})" # --- 4. vLLMãµãŒããŒã®åæåïŒãã«ã¹ãã§ãã¯åŸ
æ© --- echo "=== 4. vLLM ãµãŒããŒã®èµ·ååŸ
æ© (http://localhost:8000/health) ===" while ! curl -s -m 3 "http://localhost:8000/health" > /dev/null 2>&1; do sleep 10 done echo "==========================================================" echo " å
šå·¥çšãå®äºããŸããïŒ" echo " EC2 Instance ID: ${INSTANCE_ID}" echo " SSH Tunnel : localhost:8000 -> EC2:8000 (æå·åäž)" echo " Web UI URL : http://localhost:3000" echo "==========================================================" # å®è¡ã³ãã³ã export KEY_NAME="my-vllm-models-hackathon-2026" export IAM_ROLE_NAME="EC2-S3-FullAccess-Profile" ./02_ec2_launch_and_tunnel.sh ãã®ã¹ã¯ãªããã¯ä»¥äžã®åŠçãå
šèªåã§å®è¡ããŸãïŒ aws ec2 run-instances ã§GPUã€ã³ã¹ã¿ã³ã¹ãèµ·åïŒ DeleteOnTermination: true ããã³ --instance-initiated-shutdown-behavior terminate ãæç€ºïŒã ã»ãã¥ãªãã£ã°ã«ãŒãã¯ããŒã22ïŒSSHïŒã®ã¿èš±å¯ã§OK ïŒããŒã8000ãå€éšéæŸããå¿
èŠã¯ãããŸããïŒã ã€ã³ã¹ã¿ã³ã¹ã®èµ·åå®äºåŸããããªãã¯IPãååŸã ã€ã³ã¹ã¿ã³ã¹ã®SSHDå¿çã確èªåŸã ããã¯ã°ã©ãŠã³ãã§SSHããŒããã©ã¯ãŒããèªåç¢ºç« ïŒ ssh -N -f -L 8000:localhost:8000 ubuntu@<PUBLIC_IP> ïŒã ããŒã«ã«çµç±ïŒ http://localhost:8000/health ïŒã§ vLLM ã®èµ·åå®äºãåŸ
æ©ã --> Information â ïž ç¬¬1åããã®é²åç¹ïŒãšãŒãžã§ã³ã飿ºã«åããèµ·åãã©ã¡ãŒã¿ã®ãã¥ãŒãã³ã° 第1åã®UserDataïŒã·ã³ãã«ãªãã£ããæ€èšŒçšïŒãããæ¬èšäºã®UserDataïŒ 02_ec2_userdata.sh ïŒããã³èµ·åã¹ã¯ãªããã§ã¯ãCline飿ºããã³Open WebUIã§ã®ããŒã«å©çšãèŠæ®ããŠä»¥äžã®ãã©ã¡ãŒã¿ã倿Žã»è¿œå ããŠããŸãã MAX_MODEL_LEN=16384 ïŒã³ã³ããã¹ãé·ã 4,096 ãã 16,384 ãžæ¡åŒµïŒ éåžžã®ãã£ããAIãšç°ãªãã Clineãªã©ã®èªåŸã³ãŒãã£ã³ã°ãšãŒãžã§ã³ãã¯ååãªã¯ãšã¹ãæã«ãã·ã¹ãã ããã³ããããããŒã«å®çŸ©ãããããžã§ã¯ãã®ç°å¢æ
å ±ããªã©ãäžæ¬éä¿¡ãããããããã³ããã ãã§çŽ4,000ããŒã¯ã³è¿ããæ¶è²» ããŸããvLLMããã©ã«ãïŒ4096ïŒã®ãŸãŸã ãšãæ°åŸåŸ©ã®ã³ãŒãä¿®æ£ã§ 400 BadRequest: maximum context length exceeded ãšã©ãŒãçºçããããã16kïŒ16,384ïŒã«æ¡åŒµããŠããŸãã GPU_MEMORY_UTILIZATION=0.90 ïŒVRAMå©çšçã 0.85 ãã 0.90 ãžåŒãäžãïŒ ã³ã³ããã¹ãé·ã16kãžæ¡åŒµããããšã§ãã¢ãã«ã®æšè«æã«å¿
èŠãªKVãã£ãã·ã¥ïŒKey-Value CacheïŒã®ã¡ã¢ãªãããããªã³ããå¢å ããŸããg6.xlargeïŒNVIDIA L4 24GB VRAMïŒã®ã¡ã¢ãªç©ºéãæå€§éã«æŽ»ããããã£ãã·ã¥æ¯æžãé²ãããã« 0.90 ãžåŒãäžããŠããŸãã --enable-auto-tool-choice & --tool-call-parser hermes ïŒUserDataã§ã®Tool Calling / 颿°åŒã³åºãã®æå¹åïŒ Open WebUI ã Cline ã¯ãã¢ãã«ã«ãã¡ã€ã«æäœãã¿ãŒããã«ã³ãã³ããWebæ€çŽ¢ãå®è¡ãããããã«ããŒã«åŒã³åºãïŒFunction Calling / tool_choice: "auto" ïŒãçºè¡ããŸããUserDataïŒ 02_ec2_userdata.sh ïŒå
ã® docker run åŒæ°ã«ãããã远å ããªããš "auto" tool choice requires --enable-auto-tool-choice and --tool-call-parser to be set ãšãããšã©ãŒãçºçããŸããQwen2.5ã¢ãã«ã¯ Hermes 圢åŒã®ããŒã«åŒã³åºãããã³ããããµããŒãããŠãããããããŒãµãŒã« hermes ãæå®ããŠæå¹åããŠããŸãã --> Information ð¡ ã³ã©ã ïŒã³ã³ããã¹ãé·ã¯ããã«æ¡åŒµã§ããïŒïŒ32kèšå®ãšFP8 KVãã£ãã·ã¥ïŒ ã16kã§ãååã ãã巚倧ãªã³ãŒãããŒã¹ãèªã¿èŸŒãŸããããã« 32k ã 64k ãŸã§æ¡åŒµã§ããªããïŒããšæããããããããŸãããçµè«ããèšããšã ããã«æ¡åŒµããããšã¯ååå¯èœ ã§ãïŒ å人å©çšãªã MAX_MODEL_LEN=32768 ïŒ32kïŒãä»ããå©çšå¯èœ : Qwen2.5-Coder-7B 㯠GQAïŒGrouped Query AttentionïŒãæ¡çšããŠãããKVãã£ãã·ã¥ã®ã¡ã¢ãªãããããªã³ããéåžžã«å°ããã32k ããŒã¯ã³ã§ã 1 ãªã¯ãšã¹ããããçŽ 1.9 GB ã«åãŸããŸããL4 GPUïŒ24GB VRAMïŒã®ã¢ãã«ããŒãåŸã®ç©ºãïŒçŽ 6.6 GBïŒã§ããã°ãå人ã2人å©çšãªã MAX_MODEL_LEN=32768 ã§ãå®å®ããŠåäœããŸããæ¬èšäºã§ 16k ãæšæºãšããã®ã¯ãåŸåã§è¿°ã¹ãã3ã5人ã®ããŒã ã§çžä¹ãããéã®ã¡ã¢ãªæ¯æžïŒPreemptionïŒãé²ãå®å
šããŒãžã³ãã®ããã§ãã ããã«äŒžã°ãè£ã¯ã¶ïŒFP8 KVãã£ãã·ã¥ïŒ : g6.xlarge ã® NVIDIA L4 GPU 㯠FP8 æŒç® ã«ãã€ãã£ã察å¿ããŠããŸããvLLM èµ·ååŒæ°ã« --kv-cache-dtype fp8 ã远å ããã ãã§ã KVãã£ãã·ã¥ã®æ¶è²»ã¡ã¢ãªãåæžïŒçŽ 28 KB / tokenïŒ ã§ããŸããããã䜿ãã° 32k ã 64k ã§ãè€æ°äººã®äžŠè¡ã¢ã¯ã»ã¹ã«èããããŸãã æ³šæç¹ïŒãã¬ãŒããªãïŒ : ã³ã³ããã¹ãé·ã䌞ã°ãããããšãåéïŒTTFT: Time To First Token / æåã®1æåãåºããŸã§ã®åŸ
ã¡æéïŒãé·ããªãã»ãã7Bã¢ãã«ã§ã¯ããã³ããäžå€®éšã®æç€ºãèªã¿èœãšãããããªãïŒLost in the MiddleçŸè±¡ïŒåŸåããããŸããå®çšäžã®ã¬ã¹ãã³ã¹é床ãšç²ŸåºŠã®ãã©ã³ã¹ãšããŠã¯ 16kã32k ä»è¿ãæãå¿«é©ã§ãã # ã¹ã¯ãªããå®è¡ãã°ã®ã€ã¡ãŒãž === 1. èšå®ç¢ºèª === 䜿çšããSSHç§å¯éµ: /home/user/.ssh/my-key.pem === 2. EC2ã€ã³ã¹ã¿ã³ã¹èµ·å (äœ¿ãæšãŠãšãã§ã¡ã©ã«ä»æ§) === ã€ã³ã¹ã¿ã³ã¹èµ·åãªã¯ãšã¹ãå®äº: i-0123456789abcdef0 ã€ã³ã¹ã¿ã³ã¹èµ·åå®äºïŒ ãããªãã¯IP : 54.xxx.xxx.xxx === 3. SSHããŒããã©ã¯ãŒãæ¥ç¶ (æå·åãã³ãã«ç¢ºç«) === EC2 SSHDå¿ç確èªïŒ SSHãã³ãã«ç¢ºç«å®äºïŒ (PID: 12345) ããŒã«ã«ã® http://localhost:8000 ãå®å
šã«EC2å
éšã®vLLMãžè»¢éãããŸãã === 4. vLLM ãµãŒããŒã®èµ·ååŸ
æ© (http://localhost:8000/health) === ............................... vLLM ãµãŒããŒãæ£åžžã«å¿çããŸããïŒ ========================================================== å
šå·¥çšãå®äºããŸããïŒ SSH Tunnel : localhost:8000 -> EC2:8000 (æå·åäž) Web UI URL : http://localhost:3000 ========================================================== ç»é¢ã«å®äºã¡ãã»ãŒãžã衚瀺ãããæç¹ã§ãAWSäžã®vLLMãšããŒã«ã«ç°å¢ãæå·åãã³ãã«ã§çŽçµãããŸããïŒ Step 3: ãã©ãŠã¶ã§ãã£ããç¢ºèª ïŒ APIããŒã®çºè¡ # 1. ãã©ãŠã¶ãããã£ããåäœç¢ºèª ãã©ãŠã¶ã§ http://localhost:3000 ãéããŸãã äžéšã®ã¢ãã«éžæãã«ããŠã³ã« Qwen/Qwen2.5-Coder-7B-Instruct ãèªåèªèãããŠããã°æºåå®äºã§ãïŒ ãããã«ã¡ã¯ïŒèªå·±ç޹ä»ãšãåŸæãªããã°ã©ãã³ã°èšèªãæããŠãã ãããã ãšå
¥åããŠã¿ãŸããããGPUããã¹ã ãŒãºã«æ¥æ¬èªã®ã¹ããªãŒãã³ã°å¿çãè¿ã£ãŠããã¯ãã§ãããŸãã¯ããã§æšè«åºç€ã®æ£åžžæ§ã確èªã§ããŸãã --> Information ð¡ ãã©ãŠã¶ãã£ããæã®ã¯ã³ãã€ã³ãïŒçµã¿èŸŒã¿ããŒã«ã®è§£é€ïŒ ãããã£ããæã«ã¢ãã«ãåçãã代ããã« {"name": "ask_user", ...} ã®ãããªJSON圢åŒã®åŒæ°ãåºåããŠããŸãå Žåã¯ãã¢ãã«ã«çµã¿èŸŒã¿ããŒã«ãçŽä»ããŠããŸãã å·Šäžã®ãŠãŒã¶ãŒã¢ã€ã³ã³ãã ãèšå®ïŒSettingsïŒã â \rightarrow â ãã¢ãã«ïŒModelsïŒã ïŒãŸãã¯ã¯ãŒã¯ã¹ããŒã¹ã®ã¢ãã«ç®¡çïŒãéãã察象ã¢ãã«ïŒ Qwen/Qwen2.5-Coder-7B-Instruct ïŒããç·šéãã§éããŠã çµã¿èŸŒã¿ããŒã«ã«ããããŠãŒã¶ãŒã«è³ªåïŒAsk UserïŒãã®ãã§ãã¯ãè§£é€ ããŠä¿åããŠãã ããã ããã§äœèšãªããŒã«åŒã³åºããè¡ãããéåžžã®ããã¹ãã§ã¹ã ãŒãºã«å¯Ÿè©±ã§ããããã«ãªããŸãïŒâ»Step 4ã§æ¥ç¶ããCline飿ºæã¯ãClineåŽãç¬èªã®ããŒã«å®çŸ©ãé©åã«å¶åŸ¡ãããã圱é¿ãããŸããïŒã 2. Clineæ¥ç¶çš APIããŒã®çºè¡ ClineããOpen WebUIãçµç±ããŠã¢ã¯ã»ã¹ããããã®APIããŒãçºè¡ããŸãã 管çè
èšå®ã§APIããŒãæå¹å : å·Šäžã®ãŠãŒã¶ãŒã¢ã€ã³ã³ãã ã管çè
ããã«ïŒAdmin PanelïŒã â \rightarrow â ãèšå®ïŒSettingsïŒã â \rightarrow â ãã·ã¹ãã ïŒSystemïŒã â \rightarrow â ãèªèšŒïŒAuthenticationïŒã ãéãã ãAPI ããŒïŒAPI KeyïŒã ãONã«ãªã£ãŠããããšã確èªããŸãïŒâ»OFFã®å Žåã¯ONã«ããŠå³äžã®ãä¿åããã¯ãªãã¯ããŸãïŒã å人ã®APIããŒãçºè¡ : å·Šäžã®ãŠãŒã¶ãŒã¢ã€ã³ã³ãã ãèšå®ïŒSettings / ãããã£ãŒã«ïŒã â \rightarrow â ãã¢ã«ãŠã³ãïŒAccountïŒã ãéããŸãã ãAPI ããŒã ã»ã¯ã·ã§ã³ã«ãã ãïŒ æ°ããã·ãŒã¯ã¬ããããŒãäœæã ïŒãŸãã¯ããŒäœæã¢ã€ã³ã³ïŒãã¯ãªãã¯ããŸãã çæãããAPIããŒæååïŒâ» sk- 圢åŒã§ã¯ãªãè±æ°åã®é·ãããŒã¯ã³æååã衚瀺ãããŸãïŒãã³ããŒããŠæ§ããŠãããŸãã Step 4: VS CodeãClineãã®æ¥ç¶èšå®ãšå®è¡ # ð ãã®ã¹ãããã§ããããš VS Codeã®æ¡åŒµæ©èœãClineãã«Open WebUIã®ãšã³ããã€ã³ããšAPIããŒãèšå®ããããŒã¯ã³ç¡å¶éã®èªåŸã³ãŒãã£ã³ã°ãéå§ããŸãã ããããVS Codeããèªåã®vLLMç°å¢ãžæ¥ç¶ããŸãïŒ 1. Cline ã®ã€ã³ã¹ããŒã« VS Codeã®æ¡åŒµæ©èœããŒã±ãããã¬ã€ã¹ã§ ãClineã ãæ€çŽ¢ããŠã€ã³ã¹ããŒã«ããŸãã 2. ãããã€ãèšå® ãµã€ãããŒã® Cline ã¢ã€ã³ã³ïŒããããïŒãã¯ãªãã¯ããäžéšã®æ¯è»ã¢ã€ã³ã³ïŒSettingsïŒãéããŸãã 以äžã®é
ç®ãèšå®ããŸãïŒ èšå®é
ç® å
¥åå€ åè API Provider OpenAI Compatible ãã«ããŠã³ããéžæ Base URL http://localhost:3000/api Open WebUIã®ãšã³ããã€ã³ãïŒæ«å°Ÿã® /api ã«æ³šç®ïŒ â»ãã Cline ããã®æ¥ç¶æã« 404 Not Found ãè¿ãå Žåã¯ãBase URL ã http://localhost:3000/api/v1 ã«å€æŽããŠã詊ããã ããã OpenAI Compatible API Key çºè¡ããAPIããŒæåå Step 3ã§ååŸããOpen WebUIã®ã㌠Model ID Qwen/Qwen2.5-Coder-7B-Instruct vLLMã§æäŸããŠããã¢ãã«å Context Window Size 16384 vLLMã® max_model_len ïŒ16kïŒã«åããã Max Output Tokens 8192 ïŒãŸã㯠4096 ïŒ 1ãªã¯ãšã¹ããããã®æå€§åºåããŒã¯ã³æ° --> Information â ïž ããŒã¯ã³æ°èšå®ã®æ³šæç¹ïŒéèŠïŒ Clineã®åæèšå®ã§ã¯æå€§åºåããŒã¯ã³ïŒ max_tokens ïŒã 32000 ã«èšå®ãããŠããããšããããŸãããã®å€ãããã¯ãšã³ãïŒvLLMïŒã®æå€§ã³ã³ããã¹ãé·ïŒ 16384 ïŒãè¶
ããŠãããšãvLLMãã以äžã®ãšã©ãŒãè¿ãããŠæ¥ç¶ã«å€±æããŸãïŒ max_tokens=32000 cannot be greater than max_model_len=16384. Please request fewer output tokens. å¿
ã ãContext Window Sizeãã 16384 ã ãMax Output Tokensãã 8192 ïŒãŸã㯠4096 ïŒ ã«èšå®ããŠãã ããïŒé
ç®ã衚瀺ãããŠããªãå Žåã¯ãèšå®ç»é¢ã®ãMODEL CONFIGURATIONãããAdvanced Settingsããå±éããŠãã ããïŒã â»ããStep 2ã®ã³ã©ã ãåèã«vLLMã32kïŒ32,768ïŒã§èµ·åããå Žåã¯ããããã 32768 ãš 8192 ã«èšå®ããŠãã ããã å
¥ååŸãèšå®ç»é¢äžéšã®ãDoneããŸãã¯ãSaveããã¯ãªãã¯ããŸãã 3. åäœç¢ºèªïŒèªåŸã³ãŒãã£ã³ã°ãå®è¡ïŒ VS Codeã§æ°èŠã®ç©ºãã©ã«ããéããClineã®ãã£ããå
¥åæ¬ã«éçºã¿ã¹ã¯ãäŸé ŒããŠã¿ãŸãããã 空ã®ãããžã§ã¯ããããPythonã§ã·ã³ãã«ãªTODO管çCLIããŒã«ãäœæããŠãã ããã - ã¿ã¹ã¯ã®è¿œå ã»äžèŠ§è¡šç€ºã»å®äºæ©èœãæããã - Pythonæšæºã® unittest ã䜿ã£ãåäœãã¹ãã³ãŒããäœæãã - ã¿ãŒããã«ã§ãã¹ããå®è¡ãããã¹ãŠæåããããšã確èªãã éä¿¡ãããšãClineãèªåŸçã«ãããžã§ã¯ãæ§æãèãããã¡ã€ã«äœæãã³ãŒãèšè¿°ãå§ããŸãã ããŒã«ã«ç«¯æ«ããOpen WebUIãçµç±ããæå·åSSHãã³ãã«ãéã£ãŠAWSäžã®GPUã§çšŒåãã Qwen/Qwen2.5-Coder-7B-Instruct ããé«éã«ããŒã¯ã³ãã¹ããªãŒãã³ã°ãããVS Codeäžã§ãã¡ã€ã«ïŒ todo.py , test_todo.py ãªã©ïŒãé æ¬¡äœæã»ç·šéãããŠãããŸãã ããã«Actã¢ãŒãã§ããã°ãçµ±åã¿ãŒããã«ã§ãã¹ãã³ãã³ããå®è¡ããŠåäœç¢ºèªãŸã§èªåã§è¡ã£ãŠãããŸãã ãã©ãŠã¶ã®Open WebUI管çç»é¢ã®å©çšãã°ã«ããªã¯ãšã¹ãããã£ããèšé²ãããŠããã®ã確èªã§ããŸãã --> Information ð§ ã€ãŸã¥ãããããã€ã³ããšè§£æ±ºçïŒQ&AïŒ Q1. ãAPIããŒãç¡å¹ / 401 Unauthorizedããšèšããã â \rightarrow â Open WebUIã®ããŒã¯ sk-... 圢åŒã§ã¯ãªãè±æ°åã®é·ãæååã§ãããŸãã管çè
ããã«ã®ãèªèšŒïŒAuthenticationïŒãã§ ãAPI ããŒããæå¹ïŒONïŒ ã«ãªã£ãŠãããå床ã確èªãã ããã Q2. ã404 Not Foundãã§ãšã³ããã€ã³ããèŠã€ãããªã â \rightarrow â Open WebUIã®ããŒãžã§ã³ã«ãã£ãŠã¯ãã¹ãç°ãªããŸããBase URL ã http://localhost:3000/api ãã http://localhost:3000/api/v1 ã«å€æŽããŠã詊ããã ããã Q3. ã400 BadRequest: max_tokens cannot be greater than max_model_lenããåºã â \rightarrow â Clineã® Max Output Tokens ïŒæ¢å®å€32000ãªã©ïŒããvLLMã® max_model_len ïŒ16384ïŒãè¶
ããŠããŸããClineèšå®ã§ 8192 ãŸã㯠4096 ã«äžããŠãã ããã Q4. ãæ¥ç¶ãšã©ãŒïŒConnection refusedïŒãã«ãªã â \rightarrow â SSHãã³ãã«ãåæãããŠããããOpen WebUIãããªããžãããã¯ãŒã¯ã§èµ·åããŠããå¯èœæ§ããããŸããããã¯ã°ã©ãŠã³ãã§ ssh -L 8000:localhost:8000 ãçåããŠããããOpen WebUIã --net=host ã§åããŠããã確èªããŠãã ããã å®éã«åãããŠã¿ãææ # å®éã«èªåã® Qwen/Qwen2.5-Coder-7B-Instruct ããã¯ãšã³ãã§Clineã䜿ã£ãŠã¿ãŠæããã¡ãªããã¯ä»¥äžã®éãã§ãã åŸé課éãæ°ã«ããªããå¿ççå®å
šæ§ã : å
¬åŒAPIã䜿ã£ãŠãããšããé·ããã°ã巚倧ãªãœãŒã¹ã³ãŒããå
šéšèªãŸãããäœåããŒã¯ã³ïŒäœåïŒæ¶è²»ããã ãããâŠâŠããšç¡æèã«ãã¬ãŒããããããã¡ã§ãããããèªåGPUãªãã äœåäžããŒã¯ã³æ¶è²»ããããã課éã¯ã€ã³ã¹ã¿ã³ã¹ã®çšŒåæéåã®ã¿ ãæ°å
Œããªã巚倧ãªã³ãŒãããŒã¹ããã¹ãåºåãäžžããšæŸã蟌ããŸãã é«éãªã¬ã¹ãã³ã¹ : vLLMã®æé©åãããæšè«ãšã³ãžã³ã®ãããã§ãæ±äº¬ãªãŒãžã§ã³éã®ã¬ã€ãã³ã·ãå«ããŠéåžžã«ã¬ã¹ãã³ã¹ãè¯å¥œã§ãã å®å
šãªãã©ã€ããŒãæ§ïŒã»ãã¥ã¢éä¿¡ : ã³ãŒããããã³ããããµãŒãããŒãã£ã®APIãããã€ãã«éä¿¡ãããªãã ãã§ãªããEC2ãšã®éãSSHãã³ãã«ã§åŒ·åã«æå·åãããŠãããããæ©å¯æ§ã®é«ã瀟å
ã³ãŒãã®æ€èšŒã«ãå®å¿ã§ãã ð¡ ããŒã ã§ã·ã§ã¢ã§ããïŒ åæã«äœäººããã䜿ããã®ã # ð ãã®ã»ã¯ã·ã§ã³ã®èŠç¹ 24GB VRAMïŒL4ïŒç°å¢ã§ã¯ããšã³ãžãã¢ã®ãæèæéããèæ
®ãããš 1å°ããã3ã5人ã®ã·ã§ã¢ãæãã³ã¹ãããã©ãŒãã³ã¹é«ãå®çšç ã§ãã å人ã§ã®å©çšã¯ãã¡ãããçŸå Žã®ãšã³ãžãã¢ãšããŠã¯ãããŒã ã¡ã³ããŒæ°äººã§1å°ã®æšè«ãµãŒããŒãã·ã§ã¢ïŒçžä¹ãïŒããŠäœ¿ãããïŒããšããç¹ãæ°ã«ãªããšããã§ãã æšè«ãµãŒããŒïŒ g6.xlarge : NVIDIA L4 / 24GB VRAMïŒã®ã¹ããã¯ãšClineã®ç¹æ§ãèžãŸãããšãå®çšçãªäººæ°ã®ç®å®ã¯ä»¥äžã®éãã§ãã å©çšåœ¢æ
æšå¥šäººæ° äœ¿çšæã»äœæ å¿«é©ïŒå°æïŒ 1 ã 2 人 åŸ
ã¡æéã»ãŒãªãã60ã80 tokens/sec ã®ã¹ããªãŒãã³ã°é床ãååæŽ»çšå¯èœã å®çšçãªããŒã å©çš (â
æšå¥š) 3 ã 5 人 å®åã§æããã©ã³ã¹ãè¯ãèŠæš¡ ã誰ãã®ãªã¯ãšã¹ããšå€å°è¢«ã£ãŠãäœæ20ã30 tokens/secãç¶æãååå¿«é©ã æ··éïŒèš±å®¹éçïŒ 6 ã 8 人 ãªã¯ãšã¹ããéãªããšåéïŒTTFT: æåã®1æåãåºããŸã§ïŒã«æ°ç§ã®åŸ
ã¡ãçºçãå§ããã å³ããïŒéæšå¥šïŒ 10 äººä»¥äž ãã¥ãŒåŸ
ã¡ãé床äœäžãé »çºãVRAMãã£ãã·ã¥æº¢ãã®ãªã¹ã¯ãé«ãŸãã ãªãã3ã5人ãããã¹ããã©ã³ã¹ãªã®ãïŒ KVãã£ãã·ã¥ïŒæèã¡ã¢ãªïŒã®å®¹é : VRAM 24GBã®ãã¡ãã¢ãã«æ¬äœïŒçŽ15GBïŒãé€ãã空ãã¡ã¢ãªïŒçŽ6.5ã7GBïŒãäŒè©±æèã®ãã£ãã·ã¥çšããŒã«ã«ãªããŸããèªåŸåãšãŒãžã§ã³ãã¯ã³ãŒãå
šäœã倧éã«èªãããã1ãªã¯ãšã¹ããããçŽ300ã500MBãæ¶è²»ããåæã«ã¡ã¢ãªä¿æã§ããã¢ã¯ãã£ããªäŒè©±ã¯ç©ççã«12ã14æ¬çšåºŠã§ãã ãšã³ãžãã¢ã®ãæèæéãã®ååš : ãšã³ãžãã¢ã¯åžžã«ããŒããŒããå©ããŠããã³ãããéãç¶ããŠããããã§ã¯ãããŸããããããã³ããéä¿¡ â \rightarrow â æšè«ïŒ15ã30ç§ïŒ ãã®ããšããçæã³ãŒãã®ç¢ºèªã»ãã«ãã»ãã¹ã â \rightarrow â æèïŒ3ã5åéã¯æšè«ãŒãïŒ ããšãããµã€ã¯ã«ãæã¿ãŸãã1人ãããã®æšè«çšŒåçã¯å®è³ª10ã15%çšåºŠã®ããã 3ã5äººèŠæš¡ã®ããŒã ã§ããã°ãªã¯ãšã¹ãã®è¡çªãèªç¶ãšåé¿ããã1å°ã®GPUãã¹ãã¬ã¹ãªãã·ã§ã¢å¯èœ ã§ãã ã³ã¹ãé¢ã§èŠãŠãã g6.xlarge ã®ãªã³ããã³ãæéïŒçŽ $1.38/h â 1æéãããçŽ 228 å â»1ãã«=165åæç®ïŒã3ã5人ã§å²ãã°ã 1人1æéãããçŽ 45 ã 75 å ãã¢ãã«ãä¿ç®¡ããŠããS3ã®ã¹ãã¬ãŒãžè²»ïŒæé¡ çŽ 62 åïŒãšåãããŠããæ¥µããŠé«ãè²»çšå¯Ÿå¹æã§ããŒã éçºã«å°å
¥ã§ããŸãã æ€èšŒçµäºæã¯ã¯ã³ã³ãã³ãã§å®å
šç Žæ£ # äœæ¥ãçµãã£ãããæŸçœ®èª²éãé²ãããã«ã€ã³ã¹ã¿ã³ã¹ãTerminateããŸãã 04_ec2_terminate.shïŒã¯ãªãã¯ã§å±éïŒ #!/bin/bash set -euo pipefail # ============================================================================== # 04_ec2_terminate.sh # æ€èšŒçµäºæã«EC2ã€ã³ã¹ã¿ã³ã¹ãå³åº§ã«å®å
šç Žæ£(Terminate)ããã¹ã¯ãªãã # # ãã€ã³ã: # - EBSããªã¥ãŒã ããšåé€ãããããã忢äžã®ã¹ãã¬ãŒãžèª²éãå®å
šã«ãŒãã«ããŸãã # ============================================================================== SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" INSTANCE_STATE_FILE="${SCRIPT_DIR}/.current_instance_id" TUNNEL_PID_FILE="${SCRIPT_DIR}/.current_ssh_tunnel_pid" AWS_REGION="${AWS_REGION:-ap-northeast-1}" INSTANCE_ID="${1:-}" if [ -z "${INSTANCE_ID}" ] && [ -f "${INSTANCE_STATE_FILE}" ]; then INSTANCE_ID=$(cat "${INSTANCE_STATE_FILE}" | tr -d '[:space:]') fi if [ -z "${INSTANCE_ID}" ]; then echo "ãšã©ãŒ: çµäºå¯Ÿè±¡ã®ã€ã³ã¹ã¿ã³ã¹IDãæå®ãããŠããŸããã" echo "䜿çšäŸ: ./04_ec2_terminate.sh <i-xxxxxxxxxxxxxxxxx>" exit 1 fi echo "=== EC2ã€ã³ã¹ã¿ã³ã¹ã®å®å
šçµäº (Terminate) ===" echo "察象ã€ã³ã¹ã¿ã³ã¹ID: ${INSTANCE_ID}" echo "ãªãŒãžã§ã³ : ${AWS_REGION}" echo "" echo "â» EBSããªã¥ãŒã (DeleteOnTermination=true)ãé£åããŠå®å
šåé€ãããŸãã" aws ec2 terminate-instances \ --region "${AWS_REGION}" \ --instance-ids "${INSTANCE_ID}" \ --output table echo "ã€ã³ã¹ã¿ã³ã¹ã®çµäºå®äºãåŸ
æ©äž..." aws ec2 wait instance-terminated \ --region "${AWS_REGION}" \ --instance-ids "${INSTANCE_ID}" rm -f "${INSTANCE_STATE_FILE}" # ããã¯ã°ã©ãŠã³ãã®SSHãã³ãã«ããã»ã¹ã忢 if [ -f "${TUNNEL_PID_FILE}" ]; then TUNNEL_PID=$(cat "${TUNNEL_PID_FILE}" || true) if [ -n "${TUNNEL_PID}" ] && kill -0 "${TUNNEL_PID}" 2>/dev/null; then echo "SSHãã³ãã«ããã»ã¹ (PID: ${TUNNEL_PID}) ã忢ããŸã..." kill "${TUNNEL_PID}" 2>/dev/null || true fi rm -f "${TUNNEL_PID_FILE}" fi echo "==========================================================" echo " ã€ã³ã¹ã¿ã³ã¹ããã³EBSããªã¥ãŒã ã®å®å
šç Žæ£ãå®äºããŸããïŒ" echo " ãã以éãæ¬ã€ã³ã¹ã¿ã³ã¹ã«é¢ãã課éïŒã³ã³ãã¥ãŒã/EBSå
±ã«ïŒã¯äžåçºçããŸããã" echo "==========================================================" # å®è¡ã³ãã³ã ./04_ec2_terminate.sh èµ·åã¹ã¯ãªãããèšé²ããŠãããã€ã³ã¹ã¿ã³ã¹IDãšSSHãã³ãã«ã®ããã»ã¹IDãèªåã§èªã¿èŸŒã¿ã EC2ã»EBSããªã¥ãŒã ã®å®å
šç Žæ£ãšãããŒã«ã«ã®SSHãã³ãã«ããã»ã¹ã®çµäºãã¯ã³ã³ãã³ãã§ã¯ãªãŒã³ã«å®äº ããŠãããŸãã ããã§åæ¢äžã®ã¹ãã¬ãŒãžèª²éã1åãããšãçºçããŸããã --> Information ðŽ çè
ã®å®è©±ïŒæ€èšŒäžã«å¯èœã¡ããŠããèªåçµäºã¿ã€ããŒãåäœããŠããã話 å®ã¯ä»åã®æ€èšŒäžãå€éã«ã¢ãã«ã®å¿çé床ãããã³ããã®æåã詊ããŠããæäžããã£ããPCãéãããŸãŸå¯èœã¡ããŠæãè¿ããŠããŸããŸããâŠâŠã æèµ·ããŠãGPUã€ã³ã¹ã¿ã³ã¹ãç«ã¡äžãã£ã±ãªãã«ããŠããŸã£ãããâŠâŠããšçŠããªããAWSãããžã¡ã³ãã³ã³ãœãŒã«ã確èªãããšãããUserDataã«ä»èŸŒãã§ããã ã1æéã¢ã€ãã«èªåçµäºããŒã¢ã³ã ãæ£åžžã«åäœããŠãããæšè«ãªã¯ãšã¹ããéçµ¶ããŠããã¡ããã©1æéåŸã«ã€ã³ã¹ã¿ã³ã¹ãèªåçã«TerminateïŒç Žæ£ïŒãããŠããŸããã 远å ã®èª²éã¯æå°éïŒæ°ååçšåºŠïŒã§æžã¿ãŸããã ãšãã§ã¡ã©ã«èšèšãšã¢ã€ãã«ç£èŠã«ããèªåçµäºã®æãé£ã¿ãã身ããã£ãŠå®æããäœéšã§ããã ãŸãšã # ä»åã¯ãååã®èšäºã§äœæããvLLMèªåèµ·åç°å¢ããäžæ©é²ããŠã ãOpen WebUI ã«ãããªãããªWeb察話ïŒAPIã²ãŒããŠã§ã€æ©èœããšãSSHããŒããã©ã¯ãŒãã«ããå®å
šãªé信路確ç«ããçµã¿åãããããšã§ãVS Codeã®èªåŸåã³ãŒãã£ã³ã°ãšãŒãžã§ã³ããClineãã®ããã¯ãšã³ããå®å
šèªåå ããŠã¿ãŸããã Webãã£ãããšã³ãŒãã£ã³ã°ãšãŒãžã§ã³ãã®äž¡ç« : ãã©ãŠã¶ãã察話æ€èšŒãã€ã€ãçºè¡ããAPIããŒã§ãã®ãŸãŸVS CodeïŒClineïŒããèªåŸã³ãŒãã£ã³ã°ãå®è¡ã Open WebUIã«ããå®å¿ã®ä¿å®æ§ : äžçäžã§æ¯æãããæŽ»çºãªã³ãã¥ããã£ã«ãããã»ãã¥ãªãã£ãæ°æ©èœã®è¿œåŸãç€ç³ã SSHããŒããã©ã¯ãŒãã®äžæäž¡åŸ : ããŒã8000ãã€ã³ã¿ãŒãããã«æããæå·åãã€ã€ãBase URLãããŒã«ã«åºå®åããããšã§IPå€ååé¡ãåæã«è§£æ±ºã ããŒã¯ã³ããªãŒãªèªåŸéçºç°å¢ : ã€ã³ã¹ã¿ã³ã¹çšŒåè²»çšã®ã¿ã®å®é¡æèŠã§ãã³ãŒãã£ã³ã°ãšãŒãžã§ã³ããæ°å
Œããªã掻çšã§ããç°å¢ãæ§ç¯ã æè»œã«GPUãèµ·åãã䜿ãçµãã£ããç Žæ£ãããšãã§ã¡ã©ã«éçšã ãããããã¢ãã³ãªããã³ããšã³ããšãªãŒãã³ãœãŒã¹ã¢ãã«ã®çµã¿åãããäœãªã¹ã¯ã§è©Šãããšãã§ããŸããèå³ã®ããæ¹ã¯ãã²æŽ»çšããŠã¿ãŠãã ããã
ã¿ãªãããããã«ã¡ã¯ãAWS ãœãªã¥ãŒã·ã§ã³ã¢ãŒããã¯ãã®ééã§ããä»é±ãçæ AI ã«é¢ãã 1 é±éã®ã¢ããããŒãããå±ãããŸãã 9 æ 17 æ¥ã«æŽæ°ããã About Amazon ã®èšäºã AWSãç±³åœãšã¢ã€ã«ã©ã³ããçµã¶æµ·åºã±ãŒãã« Fastnet ãå±é ãã§ã¯ãç±³åœã¡ãªãŒã©ã³ãå·ãšã¢ã€ã«ã©ã³ãã®ã³ãŒã¯çãçµã¶å€§è¥¿æŽæšªæã®æµ·åºå
ãã¡ã€ããŒã±ãŒãã« Fastnet ã玹ä»ãããŠããŸãã2028 幎ã®éçšéå§æã«ã¯ 320 Tbps ãè¶
ããèšèšå®¹éïŒHD æ ç» 1,250 äžæ¬ã®åæã¹ããªãŒãã³ã°ã«çžåœïŒãåããåŸæ¥ã®ã±ãŒãã«åå»ããé¢ããéžæãå°ç¹ã«ãã£ãŠãä»ã®æµ·åºã±ãŒãã«ã«åé¡ãèµ·ããŠããµãŒãã¹ãç¶ç¶ã§ããçµè·¯ã®å€æ§æ§ã確ä¿ããŸããå¢ãç¶ãã AI ã®ãã©ãã£ãã¯ãèŠæ®ããèšèšã§ãçæ AI ããšãŒãžã§ã³ããæ¯ããåå°ãšãªããããã¯ãŒã¯å±€ã«ã AWS ã®æè³ãç¶ããŠããããšãåãããŸããAWSãæ¯ããã€ã³ãã©ã®è£åŽã«èå³ãããæ¹ã¯æ¯éèªãã§ã¿ãŠãã ããã ãŸãããæŒäŒã¿ã® 30 åã§ææ°æ
å ±ãç¥ããã ããããAWS ãã§ã¯ãAI ãããŒãã«ããäŒãäºå®ãããŠããŸããæ¯éã«ã¬ã³ããŒããã§ãã¯ããŠãåå ãã ããã ããã§ã¯ 9 æ 14 æ¥é±ã®çæ AI with AWSçéã®ãã¥ãŒã¹ãèŠãŠãããŸãããã ããŸããŸãªãã¥ãŒã¹ AWSçæAIåœå
äºäŸããã°ã AWS Professional Services ãšå®çŸãã第äžèåã«ã©ãªã±èŽææ¡ç¹ AI ã®éçº ã æ ªåŒäŒç€Ÿç¬¬äžèåãš Amazon Web Services Japan ã®å
±åå·çèšäºã§ããéä¿¡ã«ã©ãªã±ãDAMãã·ãªãŒãºã®æ¡ç¹æ©èœãé«åºŠåããããã第äžèå㯠AWS Professional Services ãšå
±åã§äººéã®èŽæã«å³ããæå£°è©äŸ¡ AIãèŽææ¡ç¹ã¢ãã«ããéçºãããã©ãã°ã·ããã¢ãã« LIVE DAM WAO! ã«æèŒãããæ¡ç¹æ©èœãç²Ÿå¯æ¡ç¹Ai Heartãã®äžæ žãšããŠæŽ»çšããŠããŸããåŸæ¥ã®æ©æ¢°æ¡ç¹ã¯é³çšã»ãªãºã ã»ããã©ãŒããªã©ã®é³é¿ãã©ã¡ãŒã¿ãæ©æ¢°çã«è©äŸ¡ããæ¹åŒã§ã人éãå¿å°ãããšæããæå£°ã®ãã¥ã¢ã³ã¹ãååã«è©äŸ¡ã§ãããæ©æ¢°çã«é«åŸç¹ãçããæ¡ç¹æãããé倧è©äŸ¡ããã¡ãšãã課é¡ããããŸãããæãå°é£ã ã£ãã®ã¯ã人éã®èŽæãã衚ãæåž«ããŒã¿ã®äœæã§ãåœåã® 5 段é尺床æ³ã¯å¯©æ»å¡ã®ãã¬ã倧ããã£ããããAWS Professional Services ã®ææ¡ã§ 2 ã€ã®æå£°ãèŽãæ¯ã¹ãäžå¯Ÿæ¯èŒæ³ã«åãæ¿ããçŽ 15 äžåã®ã©ãã«äœæ¥ãçµãŠ Bradley-Terry æ³ã§èŽæã¹ã³ã¢ã«å€æããŠããŸããæå±é³æºã¯ãªãŒãã³ãœãŒã¹ã®æ·±å±€åŠç¿ã¢ãã« Audio Embedding Generator ã§ 1 ç§ããšã« 128 次å
ã®ãã¯ãã«ã«å€æããAWS Fargate for Amazon ECS ã«ããæå€§ 1,000 䞊åã®åºç€ã§çŽ 13 äžãã¡ã€ã«ã 1.5 æéã§åŠçããŸãããã©ããªã³ã°ã«ã¯ Amazon SageMaker Ground Truthãã¢ãã«ã®åŠç¿ã«ã¯ AutoGluon Tabular ãš Amazon SageMaker AI ã䜿ãã補ååã®éã«ã¯ DAM 端æ«ã®ã¹ããã¯ã«åããã軜éåãè¡ã£ãŠããŸããäººã®ææ§ãšããå®éåãã«ãããã®ãæåž«ããŒã¿ã«èœãšã蟌ãå·¥çšã®å·¥å€«ã¯ãä»åéã®æ©æ¢°åŠç¿ã«ãåèã«ãªããŸãã AWSçæAIåœå
äºäŸããã°ã ãå¯çš¿ãæ ªåŒäŒç€Ÿã¬ã¹ã¿ãŒãAmazon Bedrock ã§é¡§å®¢èª²é¡ãšã°ã«ãŒãã®è§£æ±ºåãã€ãªãæ
å ±ãã©ãããã©ãŒã ãæ§ç¯ ã åå°äœã»é»åéšåã®è²©å£²ããœãªã¥ãŒã·ã§ã³æäŸãªã©ãæãããæ ªåŒäŒç€Ÿã¬ã¹ã¿ãŒã«ããå¯çš¿èšäºã§ããäºæ¥é åã®æ¡å€§ãšã°ã«ãŒãåç·šã§é¡§å®¢åºç€ãåæãç¥èŠãåºããäžæ¹ãä»ã®äŒç€Ÿã»äºæ¥ã»éšéãäœãåŸæãšããã©ã®é¡§å®¢ãšæ¥ç¹ãæã€ã®ããææ¡ãã«ãããšãã課é¡ã«å¯Ÿãã忣ããŠããå¶æ¥æ
å ±ãäžã€ã®åå°ã«éãã AI æ
å ±ãã©ãããã©ãŒã ãæ§ç¯ããŠããŸããäžæ žãšãªãã¬ã¹ã¿ãŒãããã³ã°ãµãŒãã¹ïŒRMSïŒã¯ã顧客ããŒãºãšè§£æ±ºææ®µãçµã³ã€ãããããã³ã°ã®ä»çµã¿ã§ãããšåæã«ã顧客ã»ååŒå®çžŸã»æ
åœè
ã»åæã»è°äºé²ãªã©ãé¢ä¿æ§ãä¿ã£ããŸãŸèç©ããã°ã«ãŒãå
±éã®ããŒã¿ãŠã§ã¢ããŠã¹ã§ããæ
å ±ã®æµãããããŒã¿åããèç©ã»çµ±åããåŒãåºããŠææ¡ãžã€ãªããã® 3 段éã«æŽçããAI è°äºé²ã§ã¯åè«ã®é²é³ã Amazon Transcribe ã§æåèµ·ããã»è©±è
åé¢ããããã§ Amazon Bedrock äžã® Anthropic Claude ãè°äºé²ãšããŠæŽçããAI ãã£ãããããã§ã¯ LangGraph ã§æ§ç¯ãããšãŒãžã§ã³ãã Amazon Bedrock AgentCore Runtime äžã§åãããAmazon Bedrock Knowledge Bases ãš Amazon OpenSearch Serverless ã«ãã RAGïŒæ€çŽ¢æ¡åŒµçæïŒã§ç€Ÿå
ææžãè°äºé²ãæ€çŽ¢ããŸããé²é³æã®åæååŸãè°äºé²ããšã«åç
§å¯Ÿè±¡ãžå«ãããã®éžæãç«¶åæ
å ±ã®é²èЧå¶éã人ã«ããæçµå€æãšãã£ãéçšã«ãŒã«ã«å ããã¢ãã«ã®è¿œå åŠç¿ãš RAG ã§ã®åç
§ãæ··åããªããããAI ã«åŠç¿ããããã§ã¯ãªãã瀟å
AI åçæã®åç
§å¯Ÿè±¡ã«å«ãããããšè¡šçŸãã工倫ã玹ä»ãããŠããŸãã AWSçæAIåœå
äºäŸããã°ã NTTãã³ã¢ ã¢ãã€ã«ã€ãããŒã·ã§ã³ããã¯éšã«ããã AI-DLC å®è·µïŒç¬¬1åïŒïŒãã£ãžã«ã«AIé åã§ã®MLéçºãžã®é©çš ã æ ªåŒäŒç€ŸNTTãã³ã¢ ã¢ãã€ã«ã€ãããŒã·ã§ã³ããã¯éšããAWS ãæå±ãã AI-DLCïŒAI-Driven Development LifecycleïŒã® TTTïŒTrain The TrainerïŒã«åå ãããã£ãžã«ã« AIïŒçŸå®äžçã§ç©ççã«åäœãã AIïŒé åã®æ©æ¢°åŠç¿ãã€ãã©ã€ã³ã 3 æ¥éã®ããŒã éçºã§æ§ç¯ããåãçµã¿ããå
š 2 åã§ç޹ä»ããå¯çš¿èšäºã®ç¬¬ 1 åã§ãã察象㯠SO-101 ããããã¢ãŒã ã§ããã¥ãŒããæã¡äžãããã¿ã¹ã¯ã§ãæš¡å£åŠç¿ã¢ãã«ïŒACTïŒã¯äººæã§åéãã 10 ä»¶ã®ãã¢ããŒã¿ã§ã¯æåç 10%ãNVIDIA ã® COSMOS ã Mimic ã«ããããŒã¿å¢å¹
ã§ 45% ãŸã§åäžãããã®ã®æ¹åãé æã¡ã«ãªã£ããããæš¡å£åŠç¿ã§åŸãåäœç¥èã軜éãªããªã·ãŒã«èžçã匷ååŠç¿ã§æ¹åãã RPDïŒRefined Policy DistillationïŒè«æã®ã¢ãããŒããæ¡çšããŠããŸããå人ã AI ãšå¯Ÿè©±ããªããé²ãã Vibe Coding ã§ã¯å€æãã³ã³ããã¹ããèç©ãããªããšããèª²é¡æèãããèŠä»¶ã®æ§é åãšèšèšã¬ãã¥ãŒãéèŠãã AI-DLC ã ML éçºã«é©çšããInception ãã§ãŒãºã§ã¯ããŒã å
šå¡ã Kiro ãå²ãã¢ãã¹ã¿ã€ã«ã§è«æãå°éæ
å ±ãèªã¿èŸŒãŸããªããã4 ã€ã®ã¿ã¹ã¯ãªã¹ããš 3 ã€ã®å®è£
ãŠããããå®çŸ©ããŸãããKiro ã«ããèšèšã¬ãã¥ãŒã§ã¯ããã§ãã¯ãã€ã³ã圢åŒã®äžäžèŽãå
¥å次å
ã®é£ãéããªã© 11 åã®äžæŽåãå®è£
åã«æ€åºããInception ãã§ãŒãºã ãã§ 30 以äžã®æ§é åããã¥ã¡ã³ããçæããŠããŸãããã³ãŒããåããåºåãæ£ãããªããäžå
·åãèµ·ãããã ML éçºã§ãèšè𿮵éã®æŽåæ§ãã§ãã¯ãææ»ãã®åæžã«ã€ãªãããšãã宿ãèªãããŠããŸãã AWSçæAIåœå
äºäŸããã°ã NTTãã³ã¢ ã¢ãã€ã«ã€ãããŒã·ã§ã³ããã¯éšã«ããã AI-DLC å®è·µïŒç¬¬2åïŒïŒ2ããŒã 䞊è¡éçºã®å®éšçµæãšç¥èŠ ã 第 2 åã¯ãConstruction ãã§ãŒãºã«ããã 2 ããŒã 䞊è¡éçºã®å®éšçµæãšç¥èŠã§ããäž¡ããŒã ã¯èžçãã PPOïŒåŒ·ååŠç¿ïŒãè©äŸ¡ãŸã§ã®ãã€ãã©ã€ã³æ§é ãå
±æãã€ã€ãããŒã ãã³ã¯ã¯ KL ããã«ãã£ã®å¹ææ€èšŒãããŒã ãã«ãŒã¯èžçåæåãã®ãã®ã®å¹ææ€èšŒãšã现éšã®èšèšå€æãåããŠæ¯èŒããŸãããå®è£
éå§çŽåŸã« ACT ã®åŠç¿ç°å¢æ§ç¯ã«æ³å®ä»¥äžã®å·¥æ°ãããããšå€æããããŒã ãã«ãŒã¯ãAI-DLC ã®ããã»ã¹ã«åŸã£ãŠ Inception ãã§ãŒãºã«ç«ã¡æ»ããã¿ã¹ã¯ãªã¹ãã®åªå
åºŠãæ ¹æ ã«ã¹ã³ãŒããçµãè»éä¿®æ£ãè¡ã£ãŠããŸãã3 æ¥éã®çµæã¯ãæš¡å£åŠç¿ã®ã¿ã®ããŒã¹ã©ã€ã³ 45% ã«å¯ŸããããŒã ãã«ãŒã§èžçãã 64%ãèžçãªã 90% ãšãèžçåæåã¯é广ãã«èŠãããã®ã§ããããTTT åŸã«æ§é åãããå®éšèšé²ãèªã¿è¿ã㊠Inception ã«ç«ã¡æ»ã£ããšããã座æšå€æã®æ¬ èœãçå ã ã£ãããšãæ°æéã§å€æããŸããã座æšå€æãä¿®æ£ãæå€±é¢æ°ã倿ŽããŠåèžçããããã§ PPO ãå®è¡ããçµæãæåç㯠97% ã«å°éããèžçãªãã® 90% ãçµ±èšçã«ææã«äžåã£ãŠããŸãã1 æ¥ã§ 3 åã®å®éšãµã€ã¯ã«ãåããããšãå°éå®¶ãäžåšã§ããã€ãã©ã€ã³ãæ§ç¯ã§ãå°éå®¶ã¯åè³ªã®æçµç¢ºèªã«éäžã§ããç¶æ
ã«ãªã£ãããšããããŠå€±æã®èšé²ã次ã®ãµã€ã¯ã«ã®åºçºç¹ã«ãªãããšããAI-DLC ã ML å®éšã«é©çšããå©ç¹ãšããŠæŽçãããŠããŸãã ããã°èšäºã ãéå¬å ±åããã¡ãã·ã§ã³ã»ã¢ãã¬ã«æ¥çåã 第äžåãã¬ããžå
±æäŒ ã SMART ããå§ãŸãæ¥çå
±é課é¡ãžã®ææŠãšåŠã³ã®å Ž ã 2026 幎 7 æ 29 æ¥ã«éå¬ãããããã¡ãã·ã§ã³ã»ã¢ãã¬ã«æ¥çã®ãå®¢æ§ 6 瀟 20 åãåå ãããã¬ããžå
±æäŒã®éå¬å ±åã§ããAWS Prototyping Program ããçãŸã 2026 幎 4 æã« GitHubïŒaws-samplesïŒã§å
¬éãããåºèæ¥åæ¯æŽ AI ãšãŒãžã§ã³ã SMARTïŒStore Manager Agent for Retail TechïŒãšãKiro ãæŽ»çšããååããŒããã£ã³ããèµ·ç¹ã«ãå瀟ãåãçµãã§ãã AI ãšãŒãžã§ã³ãéçºã®å®è·µãã¬ããžãäŒæ¥ã®å£æ ¹ãè¶ããŠå
±æããå Žã§ãããµã¶ããŒãªãŒã° IRIS æ§ã¯ãã°ã«ãŒãã®é£²é£ãã©ã³ãã§ããéººå± çªäžã察象ã«ãSMART ãããŒã¹ãšããé±å ±ã»æå ±ã®èªåçææ©èœã Amazon BedrockãAmazon EventBridgeãAWS LambdaãAmazon S3 TablesãAmazon AthenaãAmazon SNS ãªã©ã§çŽ 1 ã¶æåã§éçºããåºè PoC ã§ã¯çŽ 15 åããã£ãŠããé±å ±äœæã 0 åã«ãªããçŸåšã¯å
š 4 åºèã§å©çšãå§ãŸã£ãŠããŸãããžã³ãºæ§ã¯åºèåºèº«ã§ IT æªçµéšã®ã¡ã³ããŒã Kiro ãšãšãã« 2 é±éã§ãAmazon Transcribe ã«ããé³å£°ããã¹ãåãAmazon Bedrock ã«ããææ
åæã»ãã€ã³åé¡ãæ¹åæ¡ã®èªåçæãExcel åºåãŸã§ãè¡ãåºèãã£ãŒãããã¯åé Web ã¢ããªãæ§ç¯ããã¢ã³ããšã¹ã㣠HD æ§ã¯ãAI ã¯å€æããªããäœæŠãè€æ°æç€ºããäººãæ±ºããããšããèšèšææ³ã®ããš Amazon Bedrock AgentCore ãæŽ»çšããåšåº«æ¶å Agent ã®éçºã 2.5 ã¶æé²ããŠããŸãã ããã°èšäºã ã»ãã¥ãªãã£ã«ããã AI ã®çŸåšå°: ä¿¡é Œæ§ç¯ã«æãéèŠãªææšã®æž¬å® ã AWS ã¯ãAI ã¢ãã«ãå®éã®è匱æ§ãšãå±éºã«èŠããŠãæ¬åœã¯å®å
šãªã³ãŒãããåºå¥ã§ããããçŽæ¥æž¬å®ããåã®ãã³ãããŒã¯ Deception Benchmark ãå
¬éããŸããã16 ã®ããã°ã©ãã³ã°èšèªã70 ãè¶
ãã CWEïŒCommon Weakness EnumerationïŒã«ããŽãªã«ããã 14,822 åã®ãµã³ãã«ã§æ§æããããã©ã¡ãŒã¿åãããã¹ããŒãã¡ã³ãã§ SQL ã€ã³ãžã§ã¯ã·ã§ã³ã®ãã¹ãéããããŠãã Flask ãšã³ããã€ã³ãã®ããã«ãè匱æ§ãã¿ãŒã³ã¯èŠãããç·©åçã«ãã£ãŠæªçšäžå¯èœã«ãªã£ãŠããã³ãŒããå«ãŸããŸããåŸæ¥ã®ãã³ãããŒã¯ã¯ AI ãè匱æ§ãçºèŠã»æªçšã§ããããæž¬ããã®ã§ããããæ¬ãã³ãããŒã¯ã¯èª€æ€åºãèŠåããé²åŸ¡åŽã®é©åçãæž¬ãç¹ãæ°ããã5 瀟 12 ã¢ãã«ãè©äŸ¡ããçµæãæšæºçãªããã³ããã§ã¯é©åçã 50% å°åã°ã«ãšã©ãŸããåœéœæ§çïŒå®å
šãªã³ãŒããè匱ãšå€å®ããçïŒãšåœé°æ§çïŒå®éã®è匱æ§ãèŠéãçïŒã®äž¡æ¹ãæ¬çªå©çšã®æäœåºæºãšãã 10% æªæºã«æããããæ§æã¯ãããŸããã§ããããšã¯ã¹ããã€ãã®å®èšŒãæ±ããããã³ããã§ã¯åœéœæ§çã 17ã74 ãã€ã³ãäžããäžæ¹ã§å®éã®è匱æ§ã® 7ã44% ãèŠéããªã©ãã©ã®ã¢ãã«ã«ãåã倱æãã¿ãŒã³ãèŠãããŸãããµã³ãã«ãšè©äŸ¡ã¯ãŒã¯ãããŒã¯ GitHub ã§å
¬éãããŠããããã³ãããŒã¯ãæèšã®åé¡ã«ãªããªãããã©ãã«ã¯éå
¬éã§ããAI ã»ãã¥ãªãã£ããŒã«ãè©äŸ¡ããéã¯ãè匱æ§ãçºèŠã§ãããã ãã§ãªãã©ã®ãããã®é »åºŠã§èª€ããããã³ããŒã«ç¢ºèªãããªã¹ã¯ã®é«ãã³ãŒããã¹ã§ã¯äººéã®æ€èšŒãšçµã¿åãããããšãæšå¥šãããŠããŸãã ããã°èšäºã èªåæšè«ã«ç«ã¡ã¯ã ãã 3 ã€ã®é£é¡ ã Amazon ã® vice president å
Œ distinguished scientist ã§ãã Byron Cook æ°ã 2025 幎 8 æã« Amazon Science Blog ã«å
¬éããèšäºã®ç¿»èš³ã§ããçæ AI ããŒã¹ã®ã·ã¹ãã ã§æ£ããæšè«ãå®çŸããéã«æãåä»ãª 3 ã€ã®åŽé¢ãšããŠããããŸããªèªç¶èšèªãæ§é åãããèšèªãžå€æããããšãçµ¶ããå€åãæã«ã¯ççŸããã«ãŒã«ã®ããšã§äœãççãšããããå®çŸ©ããããšããããŠçµã¿åããã®æ°ã倩æåŠçã«ãªãäžã§ç¢ºå®çã«æšè«ããããšãæããAmazon Bedrock Guardrails ã®èªåæšè«ãã§ãã¯ïŒAutomated Reasoning checksïŒãããããã«ã©ã察åŠããŠãããã解説ããŠããŸããèªç¶èšèªã®å€æã§ã¯ã圢åŒèšèªãžã®å€æåè£ãè€æ°çæããŠãœã«ããŒã§ç䟡ãã©ããã蚌æã»å蚌ããæå³ãé£ãéãã°ãŠãŒã¶ãŒã«ç¢ºèªãæ±ããŸãã確å®çãªæšè«ã§ã¯ SATïŒå
è¶³å¯èœæ§åé¡ïŒãœã«ããŒã掻çšãã€ã€ãèªèº«ã®å€å®çµæãåç
§ããŠççŸãçãã«ãŒã«ã®ããã«æ£ããçããååšããªãã±ãŒã¹ã Gödel ã®äžå®å
šæ§å®çãšçµã³ä»ããç¡ççŸæ§ãšå®å
šæ§ãåæã«æºãããªãäžã§ AWS ã¯ç¡ççŸæ§ãéžãã ãšè¿°ã¹ãŠããŸããèªåæšè«ãã§ãã¯ã®èæ¯ã«ããèãæ¹ãçè§£ããã®ã«åœ¹ç«ã€èšäºã§ãã ããã°èšäºã ã¯ãããŠã®èªåæšè« ã åãã Byron Cook æ°ã 2021 幎 12 æã« Amazon Science Blog ã«å
¬éããèšäºã®ç¿»èš³ã§ãäžèšãèªåæšè«ã«ç«ã¡ã¯ã ãã 3 ã€ã®é£é¡ããèªãåã®äºåç¥èãšããŠããããã§ããèªåæšè«ã«ã€ããŠãŸã£ããç¥èã®ãªãæ¥çã®å®åè
åãã«æžãããŠãããå¿
èŠãªåæç¥èã¯çã C ãš Python ã®ã³ãŒãæçãèªããããšã ãã§ããx + y == y + x ãè¿ã颿°ã false ãè¿ãåŸããã unsigned int ã®å
šçµã¿åããã§ç¶²çŸ
çã«ãã¹ããããš 1,360 幎以äžãããäžæ¹ãèªåæšè«ããŒã«ã¯ä»£æ°ã䜿ã£ãŠããªç§åäœã§çããåºãããšããäŸããå§ãŸããã«ãŒããå¿
ã忢ããããæšè«ããå°ãè€éãªäŸãéããŠãããŒã«ãå¶åŸ¡æ§é ãæçµçã«çã«ãªãããšãåžžã«çã§ããããšãã©ãæšè«ããŠããããçŽæçã«èª¬æããŸããæ«å°Ÿã«ã¯æžç±ãåœéäŒè°ãããŒã«ãè¬æŒãããã°ãžã®ãªã³ã¯ãè±å¯ã«ãŸãšããããŠãããããã«åŠã³ããæ¹ã®åºçºç¹ã«ãªããŸãã ããã°èšäºã èªåæšè«ã«ããæ°åŠçç¢ºå®æ§ã® 10 幎: Automated Reasoning Group ãæ©ãã é ã ãã¡ããåããByron Cook æ°ã 2026 幎 8 æã« Amazon Science Blog ã«å
¬éããèšäºã®ç¿»èš³ã§ã2016 幎ã«çºè¶³ãã Amazon ã® Automated Reasoning GroupïŒARGïŒã® 10 å¹Žãæ¯ãè¿ããŸãã2016 幎ã®ç¬¬ 1 å Demo Day ã§ç޹ä»ããããVPC ãããã¯ãŒã¯ã«é¢ãã質åã«çããããŒã« Tiros 㯠Amazon Inspector ã®ãããã¯ãŒã¯ã»ãã¥ãªãã£åæã Reachability Analyzer ã®åºç€ã«ãªããããããæŽŸçãã Zelkova 㯠S3 Block Public Access ã IAM Access Analyzer ãªã©ããªã·ãŒãåæããããŒã«ã®åºç€ã«ãªã£ãŠããŸããçŸåš ARG ã®æ¬çªãµãŒãã¹ã¯ 1 æ¥ãããæ°ååä»¶ã®ã¯ãšãªãåŠçããçæ AI åãã«ã¯ Amazon Bedrock Guardrails ã®èªåæšè«ãã§ãã¯ãã¢ãã«ã®å¿çãããªã·ãŒã«ç
§ãããŠåœ¢åŒè«çã§æ€èšŒããŠããŸãïŒæ€èšŒç²ŸåºŠã¯æå€§ 99%ïŒãèªåæšè«ã AWS ã®ã»ãã¥ãªãã£ãšä¿¡é Œæ§ãã©ãæ¯ããŠããã®ãããã®å
šäœåãã€ãããèšäºã§ãã ããã°èšäºã ãšãŒãžã§ã³ãå AI ã«ãã ERP ããžãã¹ããã»ã¹éçšã®å€é© ã ãã倧æäŒæ¥ã® Direct ShipïŒçŽéïŒè«æ±æ¥åã§ã¯ãERP ã«ãããæäœæ¥ã®äŸå€åŠçãè«æ±ã®é
å»¶ãåçèªèãžã®åœ±é¿ãæããŠããŸãããAccenture 㯠Amazon Bedrock ã Amazon Bedrock AgentCore ãªã©ãçšãããšãŒãžã§ã³ãå AI ãœãªã¥ãŒã·ã§ã³ã 5 é±éã§çšŒåãããSOPïŒæšæºäœæ¥æé æžïŒããžã§ããšã€ããçµç¹å
ã®ãã¬ããžãäžå
åããŠèªç¶èšèªã§è³ªåã§ãã Digital Assistant ãšãSAP S/4HANA ãèªèšŒçšã® Okta ãšãã£ãæ¢åãšã³ã¿ãŒãã©ã€ãºã·ã¹ãã ãšã®çµ±åæ©èœãæäŸããŠããŸããã¢ãŒããã¯ãã£ã¯ãåºç€ã¢ãã«ãæäŸãã Amazon BedrockãããŒã«ã®éžæãšã¯ãŒã¯ãããŒã®ãªãŒã±ã¹ãã¬ãŒã·ã§ã³ãæ
ã Strands Agents SDKãè€æ°ã¿ãŒã³ã®äŒè©±ã³ã³ããã¹ããä¿æãã Amazon Bedrock AgentCoreãSAP S/4HANA ãžå®å
šã«æ¥ç¶ãã AWS LambdaãäºååŠçããäŸå€ã¬ããŒããä¿åãã Amazon RDSãã¬ããŒãããŒã¿ã®ããŒããå¶åŸ¡ãã AWS Step Functions ã® 6 ã€ã®ãµãŒãã¹ã§æ§æãããŠããŸããè€æ°ã·ã¹ãã ãè¡ãæ¥ããã« SAP ããŒã¿ãžå³æã¢ã¯ã»ã¹ã§ãã䟡å€ã®é«ã泚æãäºåŸå¯Ÿå¿ã§ã¯ãªãããã¢ã¯ãã£ãã«åŠçã§ããããã«ãªã£ãã»ããæ°ããããŒã ã¡ã³ããŒã察話ãéããŠçµç¹ã®ãã¬ããžã«ã¢ã¯ã»ã¹ã§ããããã«ãªã£ãç¹ãææãšããŠæããããåããã¿ãŒã³ã¯èª¿éãåšåº«ç®¡çãªã©ä»ã® SAP ã¢ãžã¥ãŒã«ã«ãæ¡åŒµã§ãããšããŠããŸãã ããã°èšäºã ERPäŸå€åŠçãAWSãšãŒãžã§ã³ãåæšæºäœæ¥æé æžïŒSOPïŒã§èªåå ã ERP ã®äŸå€åŠçã AI ãšãŒãžã§ã³ãã§èªååããããã®ãã¬ãŒã ã¯ãŒã¯ãšãªãã¡ã¬ã³ã¹ã¢ãŒããã¯ãã£ã解説ãã翻蚳èšäºã§ããè«æ±æžã®äŸå€ãè³Œè²·çºæ³šïŒPOïŒã®æ¿èªãããã¯ãææ¬¡æ±ºç®ãªã©ã§çºçããæäœæ¥ã®ä»å
¥ã«å¯ŸããSAP ãŠãŒã¹ã±ãŒã¹åãã® AWS Agentic AI Solutions Framework ãšããã®äžæ žãšãªããšãŒãžã§ã³ãåæšæºäœæ¥æé æžïŒAgentic SOPïŒã玹ä»ããŠããŸããAgentic SOP ã¯ãæ¥åããã»ã¹ããšã«å¥ã
ã®ãšãŒãžã§ã³ããäœãã®ã§ã¯ãªãããã¬ããžããŒã¹ãã SOP ãåçã«è§£éããSAP ãšé SAP ã·ã¹ãã ããŸããã§è€æ°ã¹ãããã®äŸå€ãèªåŸçã«è§£æ±ºããåäžã® AI ãšãŒãžã§ã³ãã§ãå€æãæ¿èªãå¿
èŠãªç®æã§ã¯ãã¥ãŒãã³ã»ã€ã³ã»ã¶ã»ã«ãŒãã®å¶åŸ¡ãåããŸãããã¬ãŒã ã¯ãŒã¯ã¯ãã¢ããã€ã¶ãªãŒã¢ãŒãããç£ç£ä»ãå®è¡ãèªåŸçãªè§£æ±ºãžã𿮵éçã«ä¿¡é Œãç²åŸããä»çµã¿ãSOP é§åã®çµ±åãšãŒãžã§ã³ãã¢ãŒããã¯ãã£ã決å®è«çã§ç£æ»å¯èœãªã¢ã¯ã·ã§ã³ã®ããã®ã¬ãŒãä»ã MCPïŒModel Context ProtocolïŒãµãŒããŒãID ãæèããã»ãã¥ãªãã£ãšã³ã³ãã©ã€ã¢ã³ã¹ãç£æ»æ°Žæºã®æ°žç¶çãªç¶æ
管çãšãã 5 ã€ã®ã³ã¢æ©èœã§æ§æãããŸãããªãã¡ã¬ã³ã¹ã¢ãŒããã¯ãã£ã§ã¯ãAmazon EventBridge ãã¹ã±ãžã¥ãŒã«å®è¡ãã AWS Lambda ã§ SAP OData ãµãŒãã¹ããäŸå€ãæ€ç¥ããAmazon DynamoDB ã«ç¶æ
ãšç£æ»èšŒè·¡ãèšé²ããªãããAmazon Bedrock AgentCore äžã® Strands ãšãŒãžã§ã³ãã Amazon Bedrock Knowledge Bases ãã SOP ãš SAP OData API 仿§ãååŸã㊠SAP ãžã®æäœãå®è¡ããå¿
èŠã«å¿ã㊠Amazon SES çµç±ã§äººéãžãšã¹ã«ã¬ãŒã·ã§ã³ããŸããããã°ããŒãã«è£œé äŒæ¥ã§ã¯ã1,000 ä»¶ãè¶
ããã¢ã¯ãã£ã㪠PO ã«ãŸããã 2 å 5,000 äžãã«è¶
ã®è³Œè²·ç®¡çã«ãããŠã1 決ç®ãµã€ã¯ã«ããã 30 æ¥è¶
ããã£ãŠããæäœæ¥ã PO ãããæ°åã§å®äºããããã«ãªã£ããšããŠããŸãã ããã°èšäºã æå AWS 補é 2026 幎 9 æå· ã è£œé æ¥åãã« 8 æã«å
¬éãããããã°ãšãµãŒãã¹ã¢ããããŒãããŸãšããæåèšäºã§ãã仿ã®ããã¯ã¢ãããããã¯ã¯ããšãŒãžã§ã³ãã«çŸå Žãä»»ãããšããå¢çç·ãã©ãã«åŒãããã§ãPoC ã§ã¯åããã®ã«æ¬çªã«èŒããããªãçç±ã®å€ãã¯ãã¢ãã«ã®ç²ŸåºŠã§ã¯ãªããã©ããŸã§ AI ã«å€æããããããæ±ºãŸã£ãŠããªãããšã«ãããšææããŠããŸããã³ãã«ããã«ã¿æ§ã®ãæªæ¥ã®å®éšå®€ãã§ã¯ AI ã®æ
åœãç®æšè²ã»æäœåè£ã»åæ¢æ¡ä»¶ãžåè§£ãã JSON ã®äžé衚çŸãŸã§ã«çµã£ãŠåº§æšå¶åŸ¡ã¯äººãèšèšããæ±ºå®è«çãªå¶åŸ¡å±€ãæ
ãããšãSUMCO æ§ã® SynchroFabAI ã§ã¯ AI ã«ä»»ããã®ã¯ç°åžžç¶æ
ãšå æé¢ä¿ã®æšæž¬ãŸã§ã§æäœã¯äººéã宿œããããšãAWS Summit ã® Physical AI ãã¢ã§ã¯ãšãŒãžã§ã³ãã®æš©éãã倿Žã§ããïŒäººã®æ¿èªãèŠãïŒå€ã§åŒ·å¶ããããã® 3 段ã«åã£ãããšãªã©ãAI ã®å€æãšçŸå®äžçãžã®æäœãçŽçµãããªãå
±éã®æ§å³ãåãäžããŠããŸããå¢çãæ±ºããç©å·®ããšããŠã¯ Amazon Science ã® SOP-Bench ãæããäžèŠãªããŒã«ã远å ãããšæåçãã»ãŒåæžããå®éšçµæã玹ä»ããããã§ã決ããå¢çã Amazon Bedrock AgentCore ã®æéçããªã·ãŒã AgentCore Payments ã§ã€ã³ãã©åŽãã匷å¶ããèãæ¹ããŸãšããŠããŸãã ããã°èšäºã Kiro ã® GPTâ5.6 ã¢ãã«ã 100 äžããŒã¯ã³ã®ã³ã³ããã¹ããŠã£ã³ããŠã«å¯Ÿå¿ ã Kiro ã® IDEãCLIãWeb ã®ãã¹ãŠã§ãGPTâ5.6 SolãTerraãLuna ã 100 äžããŒã¯ã³ã®ã³ã³ããã¹ããŠã£ã³ããŠã«å¯Ÿå¿ããŸããã272K ãã 1M ãžã®æ¡å€§ã«ãããã³ãŒãããŒã¹å
šäœãé·æããã¥ã¡ã³ããé·ãç¶ãããã«ãã¿ãŒã³ã®ãšãŒãžã§ã³ãå±¥æŽãããã£ã³ã¯åå²ãèŠçŽãæãŸã现éšã倱ããªããŸãŸ 1 åã®ãªã¯ãšã¹ãã§åŠçã§ããŸããèšäºã§ã¯ãã¬ã¬ã·ãŒç§»è¡ãäŸåé¢ä¿ã®ãããã³ã°ãšãã£ããªããžããªèŠæš¡ã®çè§£ãAPI ã¬ã€ã€ãŒãã¹ããŒããã¢ããªã±ãŒã·ã§ã³ã®ç¶æ
ã絡ã¿åããã°ã®ãšã³ãããŒãšã³ãã®ãããã°ãã»ãã·ã§ã³ã®å
šå±¥æŽãèŠçã«æ®ãããŸãŸé²ããé·æéã®ãšãŒãžã§ã³ãã£ãã¯ãªã¿ã¹ã¯ã® 3 ã€ãã1 åã®ãã¹ã§å¯èœã«ãªãä»äºã®äŸãšããŠæããŠããŸãã ããã°èšäºã Kiro Web ã®èªåŸã¢ãŒãã§æè¡çè² åµã«å€§èŠæš¡ã«ç«ã¡åãã ã Kani Rust Verifier ã CBMC ãšãã£ããªãŒãã³ãœãŒã¹ã®åœ¢åŒæ€èšŒããŒã«ã®ä¿å®ãéçºãæ
ã AWS Automated Reasoning Group ãã2025 幎 11 ææç¹ã§ 916 ä»¶ãã£ããªãŒãã³ issue ã« Kiro Web ã®èªåŸã¢ãŒãã§åãçµãã äºäŸã§ããapp.kiro.dev ã§ã¿ã¹ã¯ãèšè¿°ããããGitHub issue ã« kiro ã©ãã«ãä»ããããã³ã¡ã³ãã§ /kiro ãšã¡ã³ã·ã§ã³ãããšãKiro ã¯éé¢ããããµã³ãããã¯ã¹ã«ãªããžããªãã¯ããŒã³ããissue ãšé¢é£ã³ãŒãã®åæãäœæ¥ã®åè§£ã倿Žã®å®è£
ããã¹ãã¹ã€ãŒãå
šäœã®å®è¡ãçµãŠãã«ãªã¯ãšã¹ããéããŸããKiro ã¯ããŒãžæš©éãæããã人éãæžããã³ãŒããšåãæ¿èªèŠä»¶ã®å¯Ÿè±¡ã«ãªããŸãã2 ãæã§ Kiro 㯠87 ä»¶ã®ãªãŒãã³ issue ã«å¯Ÿå¿ãããã«ãªã¯ãšã¹ããæåºããããã¯ãããŸã§ã® 22 ãæã§ããŒã ã察å¿ãã 94 ä»¶ã«è¿«ãæ°ã§ãããŒãžããã Kiro çæã³ãŒããæã¡èŸŒãã ãªã°ã¬ãã·ã§ã³ã¯ãŒãã§ããã2 幎以äžããã¯ãã°ã«æ®ã£ãŠãã Kani ã³ã³ãã€ã©ã®ã¯ã©ãã·ã¥ã® issue ã人éã®äœæ¥ 5 åæªæºã§ä¿®æ£ãšãªã°ã¬ãã·ã§ã³ãã¹ããå«ããã«ãªã¯ãšã¹ãã«ã€ãªããã±ãŒã¹ã¹ã¿ãã£ã®ã»ããCI ã¯éããä¿®æ£ãæ€èšŒããŠããªããã¹ããã¢ãŒããã¯ãã£çã«èª€ã£ãä¿®æ£ããã©ãããã©ãŒã åºæã®å€±æããã©ãŒãããéåãšãã£ãããŸããããªãã£ããã¿ãŒã³ã玹ä»ãããŠããŸãã ããã°èšäºã Claude Fable 5.1 ã Kiro ã§å©çšå¯èœã«ãªããŸãã ã Anthropic ã® Claude Fable 5.1 ããKiro ã®ãšã³ã¿ãŒãã©ã€ãºé¡§å®¢åãã«å©çšå¯èœã«ãªããŸããããã°ä¿®æ£ã颿°ã®ãªãã¡ã¯ã¿ãªã³ã°ãšãã£ãã€ã³ã¿ã©ã¯ãã£ããªã¿ã¹ã¯ãå€§èŠæš¡ãªãªãã¡ã¯ã¿ãªã³ã°ãé·æéã®èªåŸå®è¡ã®ãããªè€æ°ã¹ãããã«ãããã¿ã¹ã¯ãå€§èŠæš¡ãªã³ãŒãããŒã¹å
šäœã«ãŸãããæšè«ãå¿
èŠãšããã»ãã¥ãªãã£ãã·ã¹ãã ã¬ãã«ã®è€éãªã¿ã¹ã¯ã® 3 çš®é¡ã§å°éç¹ãåŒãäžãããšããŠããŸããã¢ãã«ã¯ã»ãã·ã§ã³å
šäœãéããŠèšç»ãä¿æããKiro ã® spec é§åã®ã¢ãããŒãã«ããã¿ã¹ã¯ãæåããªããšå€æãããå Žåã«ã¯æ©æã«åæ¢ããŠã¯ã¬ãžããã®æ¶è²»ãæããŸãã ããã°èšäºã Kiro Crew ã§ãœãããŠã§ã¢ãã¡ã¯ããªãŒãæ§ç¯ãã1 é±éã§ 1000 ä»¶ã® PR ãããŒãžããæ¹æ³ ã Kiro Crew ããã«ã¿ã€ã ã§éçºãã 3 人ã®ãšã³ãžãã¢ãã7 æ¥éã§ 1,000 ä»¶ã®ãã«ãªã¯ãšã¹ããããŒãžããçµç·¯ãæ¯ãè¿ã£ãŠããŸãã1 æ¥ããã 120 ä»¶ãè¶
ãããã«ãªã¯ãšã¹ãã¯ãã¹ãŠ CI ãšã¬ãã¥ãŒãéã£ãŠããããã®æ°åã¯çã£ããã®ã§ã¯ãªãã䞊è¡éçºã®éçã«ã¶ã€ãããã³ã« 1 人ãããå€ãã®ã»ãã·ã§ã³ãåããé²ãæ¹ãçã¿åºããŠããçµæã ãšããŠããŸããKiro Crew èªäœã¯ãã® 3 人ãäžå¿ã« 500 人è¿ãã³ãã¥ããã£ã³ã³ããªãã¥ãŒã¿ãŒãšãšãã«éçºãããŠããŸãããã®å€åã¯ã1 ã»ãã·ã§ã³ãæäœæ¥ã§åãæ®µéãè€æ°ã®ã¿ãã人éãã€ãªã段éãmemoryã»ããã·ã¥ããŒãã»cronã»workflow ã§ã»ãã·ã§ã³ãæž©ãŸã£ãç¶æ
ããå§ãŸã段éïŒ10ã20 ã»ãã·ã§ã³ïŒãtriageã»å®è£
ã»ã¬ãã¥ãŒã»ããŒãžãç¬ç«ããã¹ããŒãžãšãã¥ãŒã§ã€ãªã agent pipeline ã®æ®µéïŒ20 ã»ãã·ã§ã³ä»¥äžïŒããããŠã»ãã·ã§ã³ã®å€åŽã«ç«ã€ãšãŒãžã§ã³ãããŽãŒã«ã®åè§£ã»å²ãåœãŠã»å·¡åã»åãå
¥ãã»é åºä»ããæ
ã人éã¯ãŽãŒã«ãæã€ã ãã«ãªã Crew Mode ã®æ®µéïŒ50 ã»ãã·ã§ã³ä»¥äžïŒã® 5 ã€ã«æŽçãããŠããŸããåæã«ããšãŒãžã§ã³ãéã®èª¿æŽãmemory ã®å¢çããã¹ãåŽã§åŒ·å¶ããæš©éå¶åŸ¡ããšãŒãžã§ã³ããæžãæããããªãç£æ»ãã°ãšãã 4 ã€ã®ã¬ããã³ã¹äžã®åé¡ãšãæ°çŸã»ãã·ã§ã³èŠæš¡ã§ç«ã¡äžããã³ã¹ãã®åé¡ã«ãèžã¿ããã§ããŸãã ãµãŒãã¹ã¢ããããŒã æ°ãã AgentCore Runtime ã Amazon Bedrock AgentCore ã§å©çšå¯èœã« Amazon Bedrock AgentCore å
ã®ãµãŒããŒã¬ã¹ microVM ã³ã³ãã¥ãŒãã§ãã AgentCore Runtime ã®æ¬¡äžä»£çãå©çšå¯èœã«ãªããŸãããæ°ãã Runtime ã¯ãã»ãã·ã§ã³äžã«äœ¿ãããªããªã£ãã¡ã¢ãªãååãã匟åçãªã¡ã¢ãªç®¡çã«ãã£ãŠããŒã¯å€ã§ã¯ãªãå®éã®äœ¿çšéã«å¯ŸããŠèª²éãããããã«ãªãããšãŒãžã§ã³ãç°å¢ãäžåºŠæºåããŠã¹ãããã·ã§ãããåããæ°ããã€ã³ã¹ã¿ã³ã¹ã¯ãããã埩å
ããä»çµã¿ã«ãã£ãŠãã³ã³ããã€ã¡ãŒãžã®ãµã€ãºãåæå®è¡æ°ã«é¢ä¿ãªãäžè²«ããã³ãŒã«ãã¹ã¿ãŒãæéãå®çŸããŸããäºåããããžã§ãã³ã°äžèŠããŒããžã®ã¹ã±ãŒã«ãããŒããŠã§ã¢ã§åŒ·å¶ãããã»ãã·ã§ã³åé¢ã䜿ã£ãåã ãã®æ¯æããšãããµãŒããŒã¬ã¹ã¢ãã«ã¯ãã®ãŸãŸã§ããæ±äº¬ãªãŒãžã§ã³ãå«ãç±³åœæ±éšïŒããŒãžãã¢åéšããªãã€ãªïŒãç±³åœè¥¿éšïŒãªã¬ãŽã³ïŒã欧å·ïŒã¢ã€ã«ã©ã³ãïŒãã¢ãžã¢ãã·ãã£ãã¯ïŒæ±äº¬ïŒã§å©çšã§ããã©ã³ã¿ã€ã ã®äœæãŸãã¯æŽæ°æã« platformVersion ã V2 ã«èšå®ããããšã§äœ¿ãå§ããããŸãã Moonshot AI ã® Kimi K3 ã Amazon Bedrock ã§äžè¬æäŸéå§ Moonshot AI ã® Kimi K3 ã Amazon Bedrock ã§äžè¬æäŸéå§ãšãªããŸãããMoonshot AI ã«ããã°ãKimi K3 ã¯åç€Ÿã§æã髿§èœãªã¢ãã«ã§ã2.8 å
ãã©ã¡ãŒã¿ã«å°éããåã®ãªãŒãã³ã¢ãã«ã§ãããã€ãã£ããªããžã§ã³æ©èœãš 100 äžããŒã¯ã³ã®ã³ã³ããã¹ããŠã£ã³ããŠãçµã¿åãããŠãããå€§èŠæš¡ãªããžããªã«ãŸãããé·æéã®ã³ãŒãã£ã³ã°ã»ãã·ã§ã³ãã¹ãã£ã³ããããŒãžãã¹ã¯ãªãŒã³ã·ã§ãããå«ãè€æ°ããã¥ã¡ã³ãã®åæãé·ãç¶ããšãŒãžã§ã³ãã¯ãŒã¯ãããŒã«åããŠããŸããã¯ãã¹ãªãŒãžã§ã³æšè«ãéããŠãAmazon Bedrock ãå©çšã§ãããã¹ãŠã® AWS ãªãŒãžã§ã³ã§å©çšã§ããŸãã Qwen3.6-35B-A3B-NVFP4 ãš Wan2.1-T2V-1.3B-Diffusers ã¢ãã«ã Amazon SageMaker JumpStart ã§å©çšå¯èœã« NVIDIA ã® Qwen3.6-35B-A3B-NVFP4 ãš Alibaba ã® Wan2.1-T2V-1.3B-Diffusers ã Amazon SageMaker JumpStart ã§å©çšå¯èœã«ãªããŸãããQwen3.6-35B-A3B-NVFP4 㯠Alibaba ã® Qwen3.6-35B-A3B ã NVIDIA ãéååããã¢ãã«ã§ãç·ãã©ã¡ãŒã¿ 35B ã®ãã¡ããŒã¯ã³ããã 3BïŒ256 ã®ãšãã¹ããŒãã®ãã¡ 8 ã€ïŒã®ã¿ã掻æ§åãã Mixture-of-Experts æ§æã§ãã262K ããŒã¯ã³ã®ã³ã³ããã¹ããŠã£ã³ããŠã¯ YaRN ã¹ã±ãŒãªã³ã°ã§çŽ 1M ãŸã§æ¡åŒµã§ããNVIDIA ã® ModelOpt ãã¬ãŒã ã¯ãŒã¯ã§ NVFP4 ã«éååããããšã§ãäŒè©±ã¿ãŒã³ããŸããã thinking ã®ä¿æããã«ãããŒã¯ã³äºæž¬ãè€æ°ã¹ãããã®ãšãŒãžã§ã³ããã€ãã©ã€ã³åãã®ããŒã«åŒã³åºãããã¡ã¢ãªäœ¿çšéãæããªããå©çšã§ããŸããWan2.1-T2V-1.3B-Diffusers 㯠1.3B ãã©ã¡ãŒã¿ã®ããã¹ãããåç»ãžã®çæã¢ãã«ã§ã8.19 GB ã® VRAM ã§åäœããRTX 4090 ã§ 5 ç§ã® 480p åç»ãçŽ 4 åã§çæã§ããŸãããããã SageMaker JumpStart ã®ã¢ãã«ã«ã¿ãã°ã SageMaker Python SDK ãããããã€ã§ããŸãã Ministral-3-3B-Instruct-2512 ãš Ministral-3-8B-Instruct-2512 ã¢ãã«ã Amazon SageMaker JumpStart ã§å©çšå¯èœã« Mistral AI ã® Ministral 3 ãã¡ããªãŒãããMinistral-3-3B-Instruct-2512 ãš Ministral-3-8B-Instruct-2512 ã Amazon SageMaker JumpStart ã§å©çšå¯èœã«ãªããŸããããããããšããžå±éããªãœãŒã¹ã®éãããç°å¢åãã«èšèšããããããžã§ã³å¯Ÿå¿ã®ã³ã³ãã¯ããªèšèªã¢ãã«ã§ãã3B ã¢ãã«ã¯ 3.4B ã®èšèªã¢ãã«ãš 0.4B ã®ããžã§ã³ãšã³ã³ãŒãã§æ§æãããFP8 ã§ã¯ 8GB ã® VRAM ã«åãŸããªãã 256K ããŒã¯ã³ã®ã³ã³ããã¹ããŠã£ã³ããŠã«å¯Ÿå¿ããè±èªããã©ã³ã¹èªãã¹ãã€ã³èªããã€ãèªãäžåœèªãæ¥æ¬èªãéåœèªãã¢ã©ãã¢èªãå«ãæ°åèšèªã§ã®æç€ºè¿œåŸãã·ã¹ãã ããã³ãããžã®é«ãéµå®æ§ãæ§é å JSON åºåã䌎ããã€ãã£ããªé¢æ°åŒã³åºãã Apache 2.0 ã©ã€ã»ã³ã¹ã§æäŸããŸãã8B ã¢ãã«ã¯ 8.4B ã®èšèªã¢ãã«ãš 0.4B ã®ããžã§ã³ãšã³ã³ãŒãã§æ§æãããFP8 ãªã 12GB ã® VRAM ã«åãŸãããã倧ã㪠Mistral Small 3.2 24B ã«å¹æµããèœåãåããŸããSageMaker JumpStart ã®ã¢ãã«ã«ã¿ãã°ã SageMaker Python SDK ãããããã€ã§ããŸãã Gemma-4-31B-it-assistant ãš Gemma-4-31B-IT-NVFP4 ã¢ãã«ã Amazon SageMaker JumpStart ã§å©çšå¯èœã« Google DeepMind ã® Gemma-4-31B-it-assistant ãš NVIDIA ã® Gemma-4-31B-IT-NVFP4 ã Amazon SageMaker JumpStart ã§å©çšå¯èœã«ãªããŸãããGemma 4 ã®ãã©ãã°ã·ããã§ãã 31B ã® dense ã¢ãã«ãããã«ç²ŸåºŠçãšéååçã®äž¡æ¹ã§å©çšã§ããŸããGemma-4-31B-it-assistant ã¯ã¢ã·ã¹ã¿ã³ãåãã«ãã¥ãŒãã³ã°ãããã¢ãã«ã§ãããã¹ããšç»åïŒãã¬ãŒã åãšããŠã®åç»ãå«ãïŒãå
¥åãšããŠããã¹ããåºåãã256K ããŒã¯ã³ã®ã³ã³ããã¹ããŠã£ã³ããŠãš 140 以äžã®èšèªã«å¯Ÿå¿ããŸãã granite-speech-4.1-2bãkanana-2-30b-a3b-instructãOpenFold3 ã¢ãã«ã Amazon SageMaker JumpStart ã§å©çšå¯èœã« IBM ã® granite-speech-4.1-2bãKakao ã® kanana-2-30b-a3b-instructãOpenFold Consortium ã® OpenFold3 ã® 3 ã¢ãã«ã Amazon SageMaker JumpStart ã§å©çšå¯èœã«ãªããŸãããgranite-speech-4.1-2b ã¯è±èªããã©ã³ã¹èªããã€ãèªãã¹ãã€ã³èªããã«ãã¬ã«èªãæ¥æ¬èªã察象ãšããå€èšèªã®èªåé³å£°èªèïŒASRïŒãšåæ¹åã®é³å£°ç¿»èš³ïŒASTïŒåãã«æ§ç¯ããã 2B ãã©ã¡ãŒã¿ã®ã¢ãã«ã§ãåèªèª€ãç 5.33%ããªã¢ã«ã¿ã€ã ãã¡ã¯ã¿ãŒçŽ 231 ã®æ§èœã Apache 2.0 ã©ã€ã»ã³ã¹ã§æäŸããŸããkanana-2-30b-a3b-instruct 㯠Kakao ãéçºããéåœèªã»è±èªãã€ãªã³ã¬ã«ã®æç€ºè¿œåŸãšãšãŒãžã§ã³ãå AI ã¯ãŒã¯ãããŒåãã¢ãã«ã§ãMulti-head Latent AttentionïŒMLAïŒãš Mixture-of-ExpertsïŒMoEïŒãæ¡çšãã30B ã®ç·ãã©ã¡ãŒã¿ã®ãã¡ãã©ã¯ãŒããã¹ããšã« 3B ã®ã¿ã掻æ§åãYaRN ã¹ã±ãŒãªã³ã°ã§æå€§ 128K ããŒã¯ã³ã«å¯Ÿå¿ããŸããOpenFold3 㯠OpenFold Consortium ãšã³ãã³ãã¢å€§åŠã® AlQuraishi Lab ãéçºããæ¡æ£ããŒã¹ã®ã¢ãã«ã§ãã¿ã³ãã¯è³ªãDNAãRNAãå°ååãªã¬ã³ããå«ãçäœååè€åäœã®å
šååæ§é äºæž¬ãè¡ããã³ã³ãã¥ãŒã¿æ¯æŽåµè¬ãªã©ã®ç ç©¶ã«æŽ»çšã§ããŸãã Amazon SageMaker AI ããã¬ãŒãã³ã°ãžã§ããšåŠçãžã§ãã®ã€ã³ã¹ã¿ã³ã¹åªå
ãªã¹ãã«å¯Ÿå¿ Amazon SageMaker AI ã®ãã¬ãŒãã³ã°ãžã§ããšåŠçãžã§ãã§ãã€ã³ã¹ã¿ã³ã¹ã®åªå
ãªã¹ããæå®ã§ããããã«ãªããŸããããããŸã§ã¯ãžã§ãæå
¥æã« 1 ã€ã®ã€ã³ã¹ã¿ã³ã¹ã¿ã€ãããæå®ã§ãããéèŠã®é«ã GPU ã§ã¯ãã®ã€ã³ã¹ã¿ã³ã¹ã確ä¿ããããŸã§åŸ
ã€ããè€éãªãªãã©ã€ããžãã¯ãçµãããç°ãªãã€ã³ã¹ã¿ã³ã¹ã¿ã€ãã§è€æ°ã®ãžã§ããåæã«æå
¥ããŠå¯ŸåŠããå¿
èŠããããŸãããä»åã®ã¢ããããŒãã§ã¯ãããšãã° ml.g6.48xlarge ã 2 å°ããŸã㯠ml.g5.48xlarge ã 4 å°ãšãã£ãåªå
é äœä»ãã®ãªã¹ããæž¡ããšãSageMaker ããªã¹ããé ã«ç¢ºèªãã容éã確ä¿ã§ããæåã®æ§æã§ãžã§ããèµ·åããŸããåããžã§ãæå
¥ã®äžã§ããªã³ããã³ããšäºçŽæžã¿ã® SageMaker Flexible Training Plans ã®ã©ã¡ããã容éã調éããããèšå®ã§ããŸããæ¢åã®ãã¬ãŒãã³ã°ã»åŠçãžã§ãã® API ã®ç¯å²ã§äœ¿ããSageMaker ãå©çšã§ãããã¹ãŠã® AWS ãªãŒãžã§ã³ã§ CLIãAPIãSDKãã³ã³ãœãŒã« UI ããå©çšã§ããŸãã Amazon Q Console ã§ CloudTrail ã€ãã³ããèªç¶èšèªã§åæ AWS CloudTrail ã Amazon Q Console ãšçµ±åãããAWS ã¢ã«ãŠã³ãã®ã¢ã¯ãã£ããã£ãèªç¶èšèªã§èª¿æ»ã§ããããã«ãªããŸãããã¯ãšãªãæžããããã°ãã¡ã€ã«ãæäœæ¥ã§è§£æãããããã«ãCloudTrail ã®ãã¬ã€ã«ãé©åã«èšå®ãããŠãããããã®ã³ã°ã®ã«ãã¬ããžã«æãããªãããã©ã®ããŒã¿ã€ãã³ããœãŒã¹ãèšé²ããŠããããšãã£ãèšå®ã®ç¢ºèªãããç¹å®ã® IAM ããŒã«ã«èª°ãã¢ã¯ã»ã¹ããããVPC èšå®ã«ã©ããªå€æŽãå ããããããéå» 1 é±éã«äžæ£ãªã¢ã¯ã»ã¹è©Šè¡ããªãã£ãããšãã£ãã»ãã¥ãªãã£èª¿æ»ãç¹å®ã®ãªãœãŒã¹ãäœæã»åé€ããã®ã¯èª°ããã©ã® API åŒã³åºãããšã©ãŒãçºçãããŠãããããªãè«æ±ãæ¥å¢ããã®ããšãã£ãéçšäžã®ãã©ãã«ã·ã¥ãŒãã£ã³ã°ãŸã§è³ªåã§ããŸããAmazon Q Console ããµããŒããããŠãããã¹ãŠã® AWS åçšãªãŒãžã§ã³ã§å©çšã§ããŸãã Amazon Quick ãåå¥ã·ãŒãã®çæãšç»åããã®åæäœæã«å¯Ÿå¿ Amazon Quick ã® Generate Analysis ãæ¡åŒµãããããã·ã¥ããŒããããéãäœãããã® 2 ã€ã®æ¹æ³ã远å ãããŸãããGenerate Sheet ã§ã¯ãæ¢åã®åæã®äžã«è¿œå ãããã·ãŒããèªç¶èšèªã§èª¬æãããšãããŒã¿ã«åãããŠéžã°ããããžã¥ã¢ã«ããã£ã«ã¿ãŒã³ã³ãããŒã«ãå幎æ¯ãåææ¯ãšãã£ãèšç®ãã£ãŒã«ããå«ãã·ãŒãã远å ãããããžã¥ã¢ã«ã 1 ã€ãã€æäœæ¥ã§çµãŸãªããŠãåæãæ¡åŒµã§ããŸããç»åããã®åæçæã§ã¯ãä»ã® BI ããŒã«ã®ããã·ã¥ããŒããå«ãæ¢åããã·ã¥ããŒãã®ç»åãããã³ããã«æ·»ä»ãããšãAmazon Quick ããµããŒãããç¯å²ã§ç·šéå¯èœãªåæãšããŠåäœæããŸããããŒã³ãæç¹ã§ã¯ Enterprise ãµãã¹ã¯ãªãã·ã§ã³ / Author Pro ãŠãŒã¶ãŒãå©çšã§ããçµç¹ãã¢ã¯ã»ã¹ãå¶éããŠããªãå Žå㯠Author ã Amazon Quick Enterprise ã®äžéšãšã㊠2026 幎 12 æãŸã§ããã¢ãŒã·ã§ã³ã¢ã¯ã»ã¹ã§å©çšã§ããŸããAmazon Quick ãå©çšã§ãããã¹ãŠã® AWS ãªãŒãžã§ã³ã§äžè¬æäŸãããŠããŸãã Kiro IDE 1.1 : Agent Artifacts ãšãã€ãã£ã ARM64 ãã«ã Kiro IDE 1.1 ã§ã¯ããšãŒãžã§ã³ãã®åºåãåŸããèŠè¿ããææç©ãšããŠæ±ã Agent Artifacts ãå ãããŸãããããã¥ã¡ã³ããå³ãã³ãŒããç»åãªã©ã®ãšãŒãžã§ã³ãåºåããã£ããã®å±¥æŽã«åãããããæ°žç¶çãªã¢ãŒãã£ãã¡ã¯ããšããŠæ®ããäŒè©±ããã³ã³ãã¯ããªãã¬ãã¥ãŒãéããAgent Focus ã§ãã£ããã®æšªã«å
šäœã衚瀺ããŠã¬ãã¥ãŒãããAgent Focus ã®ã³ã³ããã¹ãããã«ããåŸã§æ»ãããšãã£ãäœ¿ãæ¹ãã§ããŸããããã㊠Windows ãš Linux åãã®ãã€ãã£ã ARM64 ãã«ããæäŸãããx64 ãšãã¥ã¬ãŒã·ã§ã³ã«é ŒããããŠã³ããŒãããŒãžããåãã©ãããã©ãŒã çšã® ARM64 çãéžã¹ãŸãããšãã£ã¿ã®åºç€ã¯ Code OSS 1.131 ã«æŽæ°ãããã³ã³ãã¯ã·ã§ã³ãããäŒè©±ãé©åãªã³ã³ããã¹ããä¿æããããã«ãªã£ãã»ããMCP ã®å€±æãåããããããªããHooks ã®ä¿¡é Œæ§ãåäžãããšã³ã¿ãŒãã©ã€ãºãããã¡ã€ã«ãéžæãããªãŒãžã§ã³ãžãªã¯ãšã¹ããã«ãŒãã£ã³ã°ããããã«ãªããŸããã Kiro Model : GPT-5.6 SolãTerraãLuna ã 1M ã³ã³ããã¹ããŠã£ã³ããŠã«ã¢ããã°ã¬ãŒã 2026 幎 9 æ 14 æ¥ä»ã® Kiro ã®ã¢ãã« changelog ã§ããKiro IDEãCLIãWeb ã§ GPT-5.6 SolãTerraãLuna ã®ã³ã³ããã¹ããŠã£ã³ããŠã 272K ãã 1M ããŒã¯ã³ã«æ¡åŒµãããããã㊠GPT-5.6 ãã¡ããªãŒã®ã¯ã¬ãžããåçãæŽæ°ãããŸããã詳现ã¯äžèšã®ããã°èšäºã Kiro ã® GPTâ5.6 ã¢ãã«ã 100 äžããŒã¯ã³ã®ã³ã³ããã¹ããŠã£ã³ããŠã«å¯Ÿå¿ ãããåç
§ãã ããã Kiro CLI 2.22 : ãã«ã¹ã¯ãªãŒã³ãã£ãããšã»ãã·ã§ã³äžèЧã®å¹çå Kiro CLI 2.22 ã§ã¯ãã€ã³ã¿ã©ã¯ãã£ã㪠TUI ã»ãã·ã§ã³ãš Lite ã»ãã·ã§ã³ã§ãã«ã¹ã¯ãªãŒã³ãã£ããã䜿ããããã«ãªããŸããã /fullscreen ãšå
¥åãããšãçŸåšã®äŒè©±ãã·ã§ã«ã®å±¥æŽãšã¯ç¬ç«ããã¹ã¯ããŒã«å¯èœãªå°çšã®ã¿ãŒããã«ç»é¢ã«ç§»ããããäžåºŠ /fullscreen ãšå
¥åãããšã€ã³ã©ã€ã³è¡šç€ºã«æ»ããŸããV2 ãš V3 ã®ã©ã¡ãã§ãå©çšã§ããããŠã¹ãã¿ããããããããŒããŒãã§ã¹ã¯ããŒã«ããã¯ãªãã¯ãšãã©ãã°ã§éžæããããã¹ããã³ããŒã§ããŸããä»åŸã® TUI ã»ãã·ã§ã³ãåžžã«ãã«ã¹ã¯ãªãŒã³ã§å§ãããå Žå㯠/settings ã® Display ã§ Start fullscreen ããªã³ã«ããŸããV3 ã®ã»ãã·ã§ã³ããã·ã¥ããŒããæŽçããã /sessions ã§ã¯æ€çŽ¢ã»ãã£ã«ã¿ãŒã»ãœãŒãã»ã°ã«ãŒãåã®ã³ã³ãããŒã«ãã»ãã·ã§ã³äžèЧããåé¢ãããæçµå©çšé ã®ãã©ãããªäžèЧãšããŠéããæçµå©çšã»ã»ãã·ã§ã³åã»ã¡ãã»ãŒãžæ°ã§ã®ãœãŒããšéžæå
容ã®èšæ¶ã«å¯Ÿå¿ããTab ããŒã§ã³ã³ãããŒã«ãšçµæã®éãç§»åã§ããŸããããããŠãé·æéã«ãããäœæ¥ã®ä¿¡é Œæ§ãæ¹åãããŠããŸãã Kiro Model : Claude Fable 5.1 ã®ãã¬ãã¥ãŒã Kiro Enterprise åãã«å±ééå§ Kiro Enterprise ã®çµç¹åãã«ãClaude Fable 5.1 ã®ãã¬ãã¥ãŒã Kiro ã®åã¯ã©ã€ã¢ã³ãã§æ®µéçã«å±éããå§ããŸããã1M ã®ã³ã³ããã¹ããŠã£ã³ããŠãš 6 åã®ã¯ã¬ãžããåçã§æäŸãããæšè«ã¯ç±³åœæ±éšïŒããŒãžãã¢åéšïŒïŒus-east-1ïŒã®ã¿ã§å®è¡ãããŸããæå¹åã®æé ãããŒã¿ä¿æã®æ±ããªã©è©³çްã¯äžèšã®ããã°èšäºã Claude Fable 5.1 ã Kiro ã§å©çšå¯èœã«ãªããŸãã ãããåç
§ãã ããã æåŸã«çæ AI ã®æŽ»çšãæ€èšãããŠããäŒæ¥ã®çæ§ã«åããŠãAWS ãžã£ãã³ã§ã¯ã AWS ãžã£ãã³çæ AI å®çšåæšé²ããã°ã©ã ãããçšæããŠããŸãããã²ã掻çšãã ããã ä»é±ã¯ä»¥äžã§ããããã§ã¯ããŸãæ¥é±ãäŒãããŸãããïŒ èè
ã«ã€ã㊠éé æäžé (Aiichiro Noma) AWS Japan ã®ãœãªã¥ãŒã·ã§ã³ã¢ãŒããã¯ããšããŠãè£œé æ¥ã®ã客æ§ãäžå¿ã«æ¥ã
ã¯ã©ãŠã掻çšã®æè¡æ¯æŽãè¡ãªã£ãŠããŸããããŒã¿ããŒã¹ãããŒã¿åæãªã©ãããŒã¿ãæ±ãé åã奜ãã§ããæè¿ããŒããè²ãŠãã®ã«ããã£ãŠãŸãã
ã¿ãªãããããã«ã¡ã¯ããœãªã¥ãŒã·ã§ã³ã¢ãŒããã¯ã㮠倧å ã§ãã9 æã«å
¥ãäžæ®µãšæ¶Œãããªã£ãŠããŸããããããããéããã§ããããã仿ã¯ããšãŒãžã§ã³ãã«çŸå Žãä»»ãããšããå¢çç·ãã©ãã«åŒããããããã¯ã¢ãããããã¯ãšããŠãå±ããã€ã€ã8 æã«å
¬éãããè£œé æ¥åãã®ããã°ãšãµãŒãã¹ã¢ããããŒããã玹ä»ããŸãããªãããªã³ã¯å
ã«ã¯è±èªã®èšäºãå«ãŸããŠããŸãããæ¥æ¬èªã®è§£èª¬ãæ·»ããŠããŸãã®ã§ãã²ã芧ãã ããã ããã¯ã¢ãããããã¯: ãšãŒãžã§ã³ãã«çŸå Žãä»»ãããšããå¢çç·ãã©ãã«åŒãã PoC ã§ã¯åããã®ã«æ¬çªã«èŒããããªãçç±ã®å€ãã¯ãã¢ãã«ã®ç²ŸåºŠã§ã¯ãªããã©ããŸã§ AI ã«å€æããããããæ±ºãŸã£ãŠããªãããšã«ãããŸããä»åã玹ä»ããŠããèšäºã®ããã€ãã§ã¯ãåãåãã«å¥ã®è§åºŠããçããŠããŸããã AI ã«å€æãä»»ããå®è¡ã¯å¥ã®å±€ã§å¶åŸ¡ãã ã³ãã«ããã«ã¿æ§ã®ãæªæ¥ã®å®éšå®€ã ã§ã¯ãææéçºã®å®éšããç·è²ãäœã£ãŠãã ããããšèªç¶èšèªã§æç€ºã§ããŸãããã ãã¢ãã«ã¯åº§æšãåäœåãçæããŸãããæ
åœã¯ç®æšè²ã»æäœåè£ã»åæ¢æ¡ä»¶ãžåè§£ãã JSON ã®äžé衚çŸãŸã§ã§ã座æšå¶åŸ¡ã¯äººãèšèšããæ±ºå®è«çãªå¶åŸ¡å±€ãæ
ããŸãã圹å²ãçµã£ãã®ã§ã軜é㪠Claude Haiku ç³»ã§ãæç«ããŸãã SUMCO æ§ã® SynchroFabAI ãåãæ§å³ã§ãAI ã«ä»»ããã®ã¯ãç°åžžç¶æ
ã®æšæž¬ããšãå æé¢ä¿ã®æšæž¬ããŸã§ã§ãããæäœã¯äººéã宿œããŸãã AWS Summit ã§ã® Physical AI ãã¢æ§ç¯ ã«ãããŠãããšãŒãžã§ã³ãã®æš©éãã倿Žã§ããïŒäººã®æ¿èªãèŠãïŒå€ã§åŒ·å¶ããããã® 3 段ã«åãããšã§å®å
šæ§ãä¿ã¡ãªãããããããåããã¢ãæ§ç¯ããŸããããããã«å
±éããã®ã¯ãAI ã®å€æãšçŸå®äžçãžã®æäœãçŽçµãããããã®éã«äººã®ç¢ºèªã決å®è«çãªå¶åŸ¡ãå€éšãã匷å¶ãããæš©éå¶åŸ¡ã眮ããŠããç¹ã§ãã ã§ã¯ãã©ããŸã§ãAIã«ä»»ããã©ãããã人ãå¶åŸ¡å±€ã«æž¡ãã¹ãã§ããããããã®å¢çã¯ãã¢ãã«ã®æ§èœã ãã§ã¯æ±ºããããŸããã8 æã«å
¬è¡šããã Amazon Science ã®è«æã§ææ¡ãããŠãã SOP-Bench ã§ã¯ãæšæºäœæ¥æé æžïŒSOPïŒã AI ãšãŒãžã§ã³ãã«å®è¡ãããŠæåçãæž¬å®ããŠããŸãã11 ã®ã¢ãã«ã§è©Šããçµæãæ°ããã¢ãã«ãå¿
ãé«ãæåçã瀺ãããã§ã¯ãããŸããã§ããããŸããããŒã«æ§æãæ¯èŒããå®éšã§ã¯ãå¿
èŠãªããŒã«ã ããäžããå Žåã«æ¯ã¹ãäžèŠãªããŒã«ã远å ãããšæåçãã»ãŒåæžããŸãããèªç€Ÿã®æé ãšå®éã®ããŒã«æ§æã§æ§èœã枬ããå®å®ããŠå®è¡ã§ããç¯å²ã ããAIã«å§ããããšããAI ãšäººéã®å¢çãæ±ºããçŸå®çãªæ¹æ³ã§ãããã ããå¢çãæ±ºããã ãã§ã¯ååã§ã¯ãããŸãããå®éçšã§ã¯ããã®å¢çãæè¡çãªå¶çŽãšããŠåŒ·å¶ããå¿
èŠããããŸãã æ±ºããå¢çãã€ã³ãã©åŽã§åŒ·å¶ãã 8 æã¯ Amazon Bedrock AgentCore ã«ãã®æ¹åã®æ©èœã 2 ã€å ãããŸããã æéçããªã·ãŒ ã¯ããããŸã§ã®æäœå±¥æŽãèžãŸããŠåãªã¯ãšã¹ããè©äŸ¡ããèªå¯ã«ãŒã«ã§ãäœæ¥é åºã®åŒ·å¶ãç¹æš©æäœåã®äººéæ¿èªãèšå®ã§ããŸãã AgentCore Payments ã§ã¯æ¯æãäžéãã€ã³ãã©å±€ã§åŒ·å¶ã§ããŸãã ãå±éºãªæäœãããªãã§ãã ããããšããã³ããã«æžãã®ãšããããããã®æäœãèš±å¯ãããªãç¶æ
ãäœãã®ã¯ããŸã£ããå¥ã®ããšã§ããåŸè
㯠OT ã®ã€ã³ã¿ãŒããã¯ã«è¿ãèãæ¹ã§ãããšãŒãžã§ã³ããçŸå Žã«åºãããã«å¿
èŠãªã®ã¯ãã¢ãã«ãè³¢ãããããšã ãã§ãªããä»»ããªãç¯å²ãå
ã«æ±ºãããã®å¢çãå€éšãã匷å¶ããããšãªã®ãããããŸããã çŽè¿ã§éå¬äºå®ã®ã€ãã³ã 9/14 â 9/19 IMTS 2026 åç±³æå€§çŽã®å·¥äœæ©æ¢°å±ç€ºäŒãã·ã«ãŽã§éå¬ãããŸããAWS ãããŒã¹ãåºå±äºå®ã§ãéåã³ã³ãã¥ãŒãã£ã³ã°ãšè£œé æ¥ãããŒãã«ãã AWS äž»å¬ã®ã¬ã»ãã·ã§ã³ããããŸãã 10/13 â 10/16 CEATEC 2026 JEITA äž»å¬ã®ããžã¿ã«ã€ãããŒã·ã§ã³ã®ç·åå±ç€ºäŒãå¹åŒµã¡ãã»ã§éå¬ãããŸããããŒãã¯ãTransformation -äŒæ¥ããç£æ¥ãããããŠç€ŸäŒãå€ãã-ãã§ãã AWS ã Hall 4 ã§ãå®å·é»æ©æ§ãšãäžç·ã«å±ç€ºãäºå®ããŠããŸãã 10/26 â 10/31 JIMTOF2026 äžçæå€§çŽã®å·¥äœæ©æ¢°èŠæ¬åžãæ±äº¬ããã°ãµã€ãã§éå¬ãããŸãã 11/30 â 12/4 AWS re:Invent 2026 AWS æå€§ã®åŠç¿ã€ãã³ããã©ã¹ãã¬ã¹ã§éå¬ãããŸãã2,200 ãè¶
ããã»ãã·ã§ã³ãäºå®ãããŠããŸãã 補é é¢é£ããã°ã®ãçŽ¹ä» 8/3 Engineering Development Hub : A unified workbench to accelerate product development 補åéçºããŒã ã¯ã åæãããããŒã«ã»ããŒã¿ãµã€ãã»èšç®ãªãœãŒã¹å¶çŽ ãšãã課é¡ã«æ¥ã
çŽé¢ããŠããŸãã Engineering Development Hub (EDH) ã¯ãè€éãªã·ã¹ãã ã®èšèšã»ãã¹ãã»æ€èšŒã«å¿
èŠãªã¢ããªã±ãŒã·ã§ã³ã»èšç®ã»ããŒã¿ã1ã€ã®ãªãŒãã³ãœãŒã¹ç°å¢ã«çµ±åãããã¯ã©ãŠãããŒã¹ã®ãšã³ãžãã¢ãªã³ã°ã¯ãŒã¯ãã³ãã§ãã Amazon Lab126 ã Rivian ãªã©ã®é¡§å®¢ãæ¢ã«EDHãæŽ»çšããŠãããNVIDIA Isaac Sim ã§ã®ãã£ãžã«ã«AIæš¡å£åŠç¿ãè»èŒã€ã³ãã©ãã€ã³ã¡ã³ãéçºãªã©ã®å®äŸã玹ä»ããŠããŸãã å€§èŠæš¡ããŒããŠã§ã¢éçºãé«éåãããèšèšã»éçºéšéã®æ¹ã«ããããã§ãã 8/6 Run HPC Simulations faster with Siemens Teamcenter and AWS ParallelCluster ãè§£æã®é çªåŸ
ã¡ã§èšèšãæ¢ãŸãããšãã課é¡ããTeamcenter Simulation ãš AWS ParallelCluster ã®é£æºã§è§£ããèšäºã§ããèšèšãéžãã§ãžã§ããæããã°å
¥åã¯èªåã§çœ®ãããèšç®ããŒãã¯çµããã°æ¶ããŸããæ°æ¥ã®èšèšã¹ã¿ãã£ãæ°æéã«ã è§£æã®ãªãŒãã¿ã€ã ççž®ãæ€èšããŠãã CAEã»è§£æéšéã®æ¹ã«ããããã§ãã 8/7 Leading FMEG Player Builds Manufacturing Control Tower on AWS å·¥å Žããšã«ããŒã¿ãéããŠãããšãç°åžžã«æ°ã¥ãã®ã¯æé
ãã«ãªã£ãŠãããšãªããŸããæ¬èšäºã§ã¯ã€ã³ãã®å€§æé»èšæ©åšã¡ãŒã«ãŒãçŽ 15 å·¥å Žã 4 å±€æ§æã§ã€ãªããé害åŸã®æææ±ºå®ã 24 æéè¶
ãã 2 æéæªæºã«ãæ ç¹è¿œå ã®å·¥æ°ã 1 å·¥å Žããã 20% æªæºïŒåŸæ¥ã¯ 80ã100%ïŒã«çž®ããäºäŸãã玹ä»ããŠããŸãã è€æ°æ ç¹ã® OT ããŒã¿çµ±åãããããåºããæ¹ã«ããããã§ãã 8/18 SUMCO ãæããAmazon Redshift Ã çæ AI ã«ããåå°äœãŠã§ãŒã補é DX æ ªåŒäŒç€Ÿ SUMCO æ§ãšã®å
±èã§ãããããã¯ãŒã¯åé¢ãšæš©éåé¢ã«ããã»ãã¥ã¢ãª AWS åºç€äžã«ãããŒã¿åæãã€ãã©ã€ã³ã® RedPulse ãšèªç¶èšèªã§ã®ããŒã¿åæãå®çŸãã SynchroFabAI ãç©ã¿äžããéçãèªãããŸãã ã»ãã¥ãªãã£ãæ
ä¿ãã€ã€ãæ©æ¢°åŠç¿ã«ããåè³ªäºæž¬ããå質ã«åŒ·ãå¯äžãããã©ã¡ãŒã¿ã®èŠå åæãªã©ã«ããããŒã¿åæã®åãçµç¹å
šäœã«åºããŠããéçšãã芧ããã ããŸãã 8/19 Agentic AI ã§ã€ãªãã¢ãã»ãµãŒãã¹ã®æ¹åãµã€ã¯ã« ãªãªãŒã¹åŸã«æºãŸãéçšããŒã¿ããæ¬¡ã®éçºã«äžåºŠãæ»ã£ãŠããªãããã®åå ããããŒã¿ã®ãµã€ãããšã人æã®ãµã€ããã«åãåããAmazon Quick ã§åããæ¹æ³ã§ããAI èªèº«ã仮説ãç«ãŠãŠæ€èšŒãŸã§é²ã¿ãŸãã 補åã®æ¹åãµã€ã¯ã«ãåãããéçºã»å質éšéã®æ¹ã«ããããã§ãã 8/20 Amazon Bedrock ãšãããã£ã¯ã¹ã§ç®æããæªæ¥ã®å®éšå®€ã ã³ãã«ããã«ã¿æ ªåŒäŒç€Ÿæ§ãšã®å
±èã§ããææéçºã®å®éšãèªç¶èšèªã§æç€ºãããšãããããã¢ãŒã ãå®éã«æãåãããçµæãé»åå®éšããŒãã«æ»ããšããéã«ãŒããçŽ 2 ãæã§å®è£
ãããŠããŸããéçºã«ã¯ Kiro CLI ãæŽ»çšãããŠããã çæ AI ããã£ããã®å€ã®å®æ©å¶åŸ¡ãžåºãããç ç©¶éçºéšéã®æ¹ã«ããããã§ãã 8/21 Accelerating Chip Tape-out with AWS Unified Operations åå°äœäŒæ¥ãAWSäžã§EDAïŒé»åèšèšèªååïŒã¯ãŒã¯ããŒããå®è¡ããéãã€ã³ãã©ã®å¯çšæ§ã»æ§èœããããçŽæã«çŽçµããŸãã AWS Unified Operations ã¯AWSã®æäžäœãµããŒãå±€ã«ããããå°ä»»ããŒã ããã¢ãŒããã¯ãã£æ¯æŽã»è¿
éãªã€ã³ã·ãã³ã察å¿ã»è²¡åæé©åã»ã»ãã¥ãªãã£ç£èŠãæäŸããŸããæ¬èšäºã§ã¯ã12 ãæã®ããŒãã¢ãŠãå·¥çšã«æ²¿ã£ãŠ Unified Operations ãã©ã®ããã«æ¯æŽãè¡ãã®ãã玹ä»ããŸãã é«å¯çšæ§ãæ±ãããã HPC ã¯ãŒã¯ããŒããæ±ããæ¹ã«ããããã§ãã 8/21 SOP-Bench: A new benchmark for evaluating AI agents on real business procedures Amazon Science ãçºè¡šãããæšæºäœæ¥æé æžïŒSOPïŒã AI ãšãŒãžã§ã³ãã«å®è¡ãããå
¬éãã³ãããŒã¯ã§ããååº«ç¹æ€ãå±éºç©åé¡ãå«ãã12 æ¥åé åã»2,000 è¶
ã®ã¿ã¹ã¯ãå®éã«åãããŒã«ãšæ£è§£ä»ãã§çšæãããšãŒãžã§ã³ãã®ãèªç€Ÿã®æé ãè¶³ããŠè©äŸ¡ããããšãã§ããŸãã ãšãŒãžã§ã³ããæ¬çªã«èŒããåã®ç©å·®ããæ¬²ããæ¹ã«ããããã§ãã 8/24 ãœãããŠã§ã¢éçºã AI ãšãŒãžã§ã³ãã§å éãã ââ TOPPAN ãäœéšãã SDLC äž»èŠãã§ãŒãºã®æå¿ã TOPPAN æ ªåŒäŒç€Ÿæ§ãšã®å
±èã§ãã20 åã Kiro CLI ãæŽ»çšããSDLC ã® Researchã»Planã»Release ãAI ãšå調ããªããåãäœéšãè¡ããŸãããã¬ã¬ã·ãŒã³ãŒãããèšèšæžã埩å
ããæå¿ãããAWS MCP Server ãé Œãã« CI/CD ãçµãæè§ŠãççŽã«èªãããŸãã AI ãæŽ»çšããéçºã®å¹çåã«èå³ã®ããæ¹ã«ããããã§ãã 9/1 AWS Summit Japan 2026 Physical AI ãã¢ã®è£åŽ Part 1: äŒç»ããã¹ããŒãžå¶äœãã¢ããªã±ãŒã·ã§ã³éçºãŸã§ 6 æã® Summit ã§å±ç€ºãããAI ãšãŒãžã§ã³ããè¡ã®é害ç©ãèªåŸçã«èŠã€ããŠçä»ããããã¢ããã©ãäœã£ããã®èšé²ã§ãã10 åå
šå¡ãå
Œåã§ã宿©ã䜿ã£ãçµ±åã«å
ãŠãããã®ã¯æ¬çªåã®çŽ 1 ãæãšããéé
·ãªæ¡ä»¶ã®äžã§ãäŒç»ã®å¯èŠåãã 3D ã¢ããªã³ã°ãå®è£
ã説æå¡è³æãªã©ã®å
šå·¥çšãçæ AI ãšäŒŽèµ°ããéçšã玹ä»ããŠããŸãã AI ã䜿ã£ãéçºããã»ã¹ã®åã¥ããã«é¢å¿ã®ããæ¹ã¯ãããããèªããšå
šäœåãã€ãããŸãã 9/1 AWS Summit Japan 2026 Physical AI ãã¢ã®è£åŽ Part 2: ããããéçºç·š äžèšãã¢ã®ããããåŽã§ããFANUC 瀟補ååãããã 2 å°ãã¯ã©ãŠãã® AI ãšãŒãžã§ã³ããšé£æºããããã¢éçºã®è£åŽãã玹ä»ããŠãããŸããç»åããåäœæä»€ãŸã§ã 1 ã€ã®ã¢ãã«ã§åºãæ¹åŒãæ¡ããªãã£ãçç±ãã³ãŒãã£ã³ã°ãšãŒãžã§ã³ãã®æš©éãã倿Žã§ããïŒäººã®æ¿èªãèŠãïŒãšãŒãžã§ã³ãã®å€ã§åŒ·å¶ããããã® 3 ã€ã«åã£ãç·åŒãããããŠæå
ã®åããä¿ã€ææã AI ã誀ã£ãŠç¡å¹åããçµéšãããçŠæ¢ãšä»£æ¿æé ã¯ã»ããã§æžããã«è³ã£ãçµç·¯ãŸã§ãä»»ããç¯å²ã®æ±ºãæ¹ãå
·äœçã«èªãããŸãã ä»å·ã®ããã¯ã¢ãããããã¯ã®å®äŸç·šãšããŠãããããŠãèªã¿ãã ããã 補é é¢é£ã®äž»èŠãªãµãŒãã¹ã¢ããããŒã 8/3 Amazon SageMaker AI ããã«ãã¡ã€ã³ãã¥ãŒãã³ã°ã«å¯Ÿå¿ 25 以äžã®ãªãŒãã³ãœãŒã¹ã¢ãã«ã§å
šãã©ã¡ãŒã¿ãŒãæŽæ°ã§ããŸããèšåã®ååŒããšã®ç¬Šçãæ€æ»åºæºãšãã£ãçµç¹åºæã®èªåœããã¢ãã«ã«æ·±ãèŠã蟌ãŸããããšãã«ãå©çšããã ããŸãã 8/4 AWS Security Hub Extended ããœãããŠã§ã¢ãµãã©ã€ãã§ãŒã³ã®ã»ãã¥ãªãã£ã«å¯Ÿå¿ å€éšããåã蟌ããªãŒãã³ãœãŒã¹éšåã«æªæããã³ãŒããæ··ãã£ãŠããªããããã¢ããªã«çµã¿èŸŒãåã«æ€åºã»é®æã§ããŸãã 8/6 AgentCore ã«æç³»åããªã·ãŒãšã¬ãŒãå¶éã远å ããã¯ã¢ãããããã¯ã§ã玹ä»ããæ©èœã§ããå®å
ããšã®ãªã¯ãšã¹ãæ°ã»ããŒã¯ã³æ°ã®äžéã䜵ããŠèšå®ã§ããŸãã 8/7 AWS Parallel Computing Service ã FedRAMPã»SOCã»ISOã»PCI ã®å¯Ÿè±¡ã« ãããŒãžã HPC ãµãŒãã¹ã§ãããParallel Computing Service ãSOCãISO ãªã©ã®äž»èŠãªç¬¬äžè
èªèšŒã®å¯Ÿè±¡ã«ãªããŸãããçµ±å¶ã»ç£æ»èŠä»¶ãå£ã«ãªã£ãŠããæè¡èšç®éšéã®å°å
¥å€æãåŸæŒãããŸãã 8/11 AWS Glue ãã SageMaker Unified Studio ãžã¯ã³ã¯ãªãã¯ã§ã¢ã¯ã»ã¹ AWS Glue ãšåãæš©éã®ãŸãŸã¯ãšãªã»å質ãã§ãã¯ã»ãã€ãã©ã€ã³æ§ç¯ãžç§»ããŸããããŒã¿ã«ã¿ãã°ã®æŽåããåæã»AI 掻çšãŸã§ããããŒã«ãè¡ãæ¥ããã«é²ããããŸãã 8/18 AgentCore payments ãäžè¬æäŸéå§ ãšãŒãžã§ã³ããææã® API ãèªãèŠã€ããŠäœ¿ããæ±ºæžãŸã§è¡ããŸããæ¯æãäžéã¯ã€ã³ãã©åŽã§åŒ·å¶ãããã®ã§ãå€éšããŒã¿ãéœåºŠè²·ã調éç³»ãšãŒãžã§ã³ããçµ±å¶äžã§éçšã§ããŸãã 8/19 Amazon SageMaker ã®ããŒãããã¯ã Trusted Identity Propagation ã«å¯Ÿå¿ å
±æããŒã«ã§ã¯ãªãå©çšè
æ¬äººã® ID ã§ããŒã¿åç
§ãå¶åŸ¡ã§ãã誰ãäœãèŠããã AWS CloudTrail ã«æ®ããŸããå質ããŒã¿ãèšèšæ
å ±ã®é²èЧç¯å²ãéšéã»æ ç¹ã§åãããåæåºç€ã«ãå©çšããã ããŸãã æåŸãŸã§èªãã§ããã ãããããšãããããŸããã 仿ã¯ãAI ã«ä»»ããç¯å²ã®æ±ºãæ¹ãšããã®å¢çãä»çµã¿ã§å®ãæ¹æ³ãã玹ä»ããŸãããæ¥æããè£œé æ¥ã«ããã AI 掻çšã®ãã³ãããå±ãããŸããããã§ã¯ããŸãæ¥æãäŒãããŸãããïŒ èè
ã«ã€ã㊠倧å éŒïŒRyo OmaeïŒ ãœãªã¥ãŒã·ã§ã³ã¢ãŒããã¯ã 倧å éŒïŒRyo OmaeïŒã¯ãã¢ããŸã³ ãŠã§ã ãµãŒãã¹ ãžã£ãã³ååäŒç€Ÿã®ãœãªã¥ãŒã·ã§ã³ã¢ãŒããã¯ãã§ããè£œé æ¥ã®ã客æ§ãäžå¿ã«ãã¯ã©ãŠã掻çšã®æè¡æ¯æŽãè¡ã£ãŠããŸãã奜ããªé åã¯æ©æ¢°åŠç¿ãçæ AI ã»ãããã£ã¯ã¹ã§ãæè¿ã¯ Physical AI ãã¢ã®æ§ç¯ã«æ³šåããŠããŸãã















