1. ã¯ããã«
AIã«ããéçºæ¯æŽãäžè¬çã«ãªãäžãè€æ°ã®AIããŒã«ãäœç³»çã«éçºããã»ã¹ãžçµã¿èŸŒãããšã§ããã倧ããªæ¥åå¹çåãæåŸ
ã§ããŸãã
æ¬èšäºã§ã¯ã瀟å
ããŒã«ãResource Visualizerãã®æ©èœè¿œå ã顿ã«ã仿§çå®ã髿§èœãªçæAIãGeminiããå®è£
ãèªåŸåAIãœãããŠã§ã¢ãšã³ãžãã¢ãDevinããšã圹å²ãåæ
ãããéçºã¯ãŒã¯ãããŒãæ€èšŒããŸããããã®å
·äœçãªããã»ã¹ãšãåŸããã广ãä»åŸã®èª²é¡ã«ã€ããŠå ±åããŸãã
ãã®èšäºããçããã®çŸå Žã§AIãçµã¿åãããéçºããã»ã¹ãæ€èšããäžã§ã®äžã€ã®åèã«ãªãã°å¹žãã§ãã
2. æ€èšŒã®èæ¯ãšäœ¿çšããŒã«
Resource Visualizerãšã¯
ä»åãæ€èšŒã®å¯Ÿè±¡ãšããã®ã¯ãç§ãã¡ã瀟å
ã§å©çšããŠããæ§æç®¡çããŒã«ãResource VisualizerïŒä»¥äžãRVïŒãã§ããRVã¯ãèšå®ç»é¢ããç»é²ããããããžã§ã¯ãããšã«AWSã¢ã«ãŠã³ããGoogle Cloudãããžã§ã¯ãã®ãªãœãŒã¹æ
å ±ãååŸããããŒã¿ã®æœåºã»å å·¥ãè¡ã£ãåŸãBacklogã®WikiããŒãžã«ç®¡ç衚ãåºåããããŒã«ã§ãã
å¹³æ¥ã®æ·±å€0æã«å®æå®è¡ãããçŸåšã§ã¯çŽ1600ãããžã§ã¯ãã®ãªãœãŒã¹æ
å ±ãååŸã»æŽæ°ããŠããŸãã

䟿å©ãªããŒã«ã§ããäžæ¹ã察å¿ãµãŒãã¹ãäžã€è¿œå ããäœæ¥ã«ã¯äžèšã®ãããªäžé£ã®å®åçãªéçºã¿ã¹ã¯ãçºçããæéãããããšãã課é¡ããããŸããã
- 仿§ã®æŽãåºããšããã¥ã¡ã³ãäœæ
- AWS SDKãå©çšããæ å ±ååŸåŠçã®å®è£
- ååŸããŒã¿ãæŽåœ¢ããåŠçã®å®è£
- åäœç¢ºèªã®ããã®ãã¹ããªãœãŒã¹æºå
ä»åã¯ãã®ãRVãžã®AWSãµãŒãã¹æ°èŠè¿œå ãã顿ã«ãAIã«ããéçºèªååã詊ã¿ãŸãã
䜿çšããAIããŒã«
ä»åã¯ãç¹æ§ã®ç°ãªã2ã€ã®AIãã驿驿ãã§äœ¿ãåããŸããã
- èšè𿝿Žåœ¹ïŒGemini
é«åºŠãªå¯Ÿè©±èœåãšæšè«èœåãæã¡ãææ§ãªèŠä»¶ãã仿§ãå ·äœåãããããããã壿ã¡ãã«é©ããŠããŸããä»åã¯ã仿§ã®æŽçãããã¥ã¡ã³ãäœæãæ¯æŽããŠããããŸããã - å®è£
æ
åœïŒDevin
èªç¶èšèªã®æç€ºã«åºã¥ãããªããžããªã®åæãã³ãŒãã£ã³ã°ããã«ãªã¯ãšã¹ãäœæãŸã§ãèªåŸçã«å®è¡ããAIãœãããŠã§ã¢ãšã³ãžãã¢ã§ããä»åã¯ãå®çŸ©ããã仿§æžãå ã«ããå®è£ äœæ¥ãæ åœããŠããããŸããã
3. å ·äœçãªæ€èšŒããã»ã¹
ããã§ã¯ãAIãšã®åæ¥ããã»ã¹ãæç³»åã«æ²¿ã£ãŠå ·äœçã«ã玹ä»ããŸããä»åã¯ãAmazon Cognito ãŠãŒã¶ãŒããŒã«ãã®æ å ±ãRVã«è¿œå ããããšããã¿ã¹ã¯ã«ææŠããŸããã
ãStep 1ïŒGeminiã«ãã仿§ç宿¯æŽã
ãŸããå®è£
ã®ã€ã³ããããšãªãã仿§æžããäœæããŸããDevinã®ãããªèªåŸåAIã¯ãæç€ºãå
·äœçã§æç¢ºã§ããã»ã©æ§èœãçºæ®ããããããäœãããã©ã®ããã«ãå®è£
ããŠã»ãããã詳现ã«å®çŸ©ãã仿§æžãäžå¯æ¬ ã§ãã
ãããããŒãããåºåé
ç®ãæŽãåºããå©çšããAPIã調ã¹ãããŒã¿ã®å å·¥æ¹æ³ãå®çŸ©ããã®ã¯æéã®ãããäœæ¥ã§ããããã§ããã®ãæŒ ç¶ãšããç¶æ
ãã仿§ãåæãããŠãããäœæ¥ãGeminiã«æäŒã£ãŠãããããšã«ããŸããã
é²ãæ¹
Geminiãšã®å¯Ÿè©±ãéããŠã以äžã®ãããªé ç®ãè©°ããŠãããŸããã
- CognitoãŠãŒã¶ãŒããŒã«ããååŸãã¹ãæ å ±ã¯äœã
- ãã®æ å ±ãååŸããã«ã¯ãã©ã®boto3ïŒAWS SDK for PythonïŒã®APIãåŒã¶ã¹ãã
- APIã®ã¬ã¹ãã³ã¹ãããã©ã®å€ãå©çšããã
- è€æ°ã®APIãçµã¿åãããå Žåãã©ã®ããã«ããŒã¿ãå å·¥ã»æŽåœ¢ããã
- 仿§ã®æ€èšãšäžŠè¡ããŠãæçµçãªåºåã€ã¡ãŒãžãæŽãããã®ãµã³ãã«è¡šãäœæ
ãã€ã³ã
Devinã®ãããªèªåŸåAIã«æ£ç¢ºã«å®è£ ããŠãããã«ã¯ã人éãèªã仿§æžä»¥äžã«ãææ§ããæé€ããè©³çŽ°ãªæç€ºãäžå¯æ¬ ã§ãããã®ããããã©ã®APIã䜿ããã¬ã¹ãã³ã¹ã®ã©ã®éšåããã©ã®ããã«å å·¥ãããããšãã£ãã¬ãã«ãŸã§ä»æ§ãå ·äœåããããšãæèããŸããããã®è©³çްãªä»æ§æžããããåŸå·¥çšã®AIã«ããå®è£ ã®å質ãå·Šå³ããæãéèŠãªãã€ã³ããšãªããŸãã

çµæ
人éãæææ±ºå®ãšã¬ãã¥ãŒã«éäžã§ããããšã«å ãã仿§å€æŽãå³åº§ã«ãµã³ãã«è¡šãžåæ ãããããšãã§ããããã確èªäœæ¥ãã¹ã ãŒãºã«é²ã¿ãŸãããããã«ããã仿§çå®å šäœã®æéãççž®ãã€ã€ãGeminiã®ææ¡ã«ãã£ãŠèæ ®æŒããé²ãããã粟床ã®é«ã仿§æžãäœæããããšãã§ããŸããã
ãStep 2ïŒDevinã«ããå®è£ ã®èªååã
詳现ãªä»æ§æžã宿ããããæ¬¡ã«Step 1ã§äœæããGitHub Issueãå ã«ãDevinã«ããå®è£ ãè¡ããŸããã
é²ãæ¹
Devinã«äžããæåã®ããã³ããã¯ãããã以äžã®ãããªå 容ã§ãã
ãã®ãªããžããªã§ãGitHub Issue #271 ã«èšè¿°ãããæ©èœãå®è£ ããŠãã ããã æ¢åã®ãœãŒã¹ã³ãŒããåæããèŠçŽããã¿ãŒã³ã«åŸã£ãŠãã ããã - äœæ¥çšã« `devin/feature/MSPDEV-2673` ãšããååã®ãã©ã³ããäœæããŠãã ããã - `src/processor/aws/cognito` ãã£ã¬ã¯ããªãäœæããŠãã ããã - Issueã«èšèŒãããåºåé ç®ã«åºã¥ããå¿ èŠãªãã¡ã€ã«ãäœæããŠãã ããã - å®äºããããã«ãªã¯ãšã¹ããäœæããŠãã ããã Input folders: - src/processor/aws - src/lib/botoutil
ãã®æç€ºãæž¡ããšãDevinã¯ãã©ã³ãã®äœæããã³ãŒãã£ã³ã°ããã«ãªã¯ãšã¹ãã®äœæãŸã§ã®äžé£ã®äœæ¥ãèªåŸçã«é²ããŠãããŸããããæåã®ãã«ãªã¯ãšã¹ãã確èªãããšãå ã®ä»æ§æžã«èæ ®æŒãããã£ãããåºåããã衚ã®è¡šçŸãããå°ãåãããããããããšãã£ãä¿®æ£ç¹ãèŠã€ãããŸãããããã§ã人éãã¬ãã¥ãŒããŠèŠã€ããä¿®æ£ç¹ã察話圢åŒã§ãã£ãŒãããã¯ãå®è£ ãä¿®æ£ããŠãããããšããããåããäœåºŠãç¹°ãè¿ããŠäœæ¥ãå®äºãããŸããã
ãã€ã³ã
RVã®ãµãŒãã¹è¿œå ã«ã¯å ±éã®äœæ¥ãã¿ãŒã³ãååšããŸããããã§ãDevinã«ã¯ãInput foldersé äžã®æ¢åå®è£ ãåèã«ããŠããã®ãã¿ãŒã³ãåŠç¿ããããã«ããšæç€ºããŸãããäžé£ã®ããåããçµãäœæ¥ãå®äºãããšãDevinã¯ãããŸã§ã®ãã£ãŒãããã¯ãå ã«ããã®å®åçãªæç€ºããKnowledgeããšããŠä¿åããããšãææ¡ããŠãããŸãããã®ææ¡ãåãå ¥ããŠKnowledgeã远å ããããšã§ã次å以éãåæ§ã®ã¿ã¹ã¯ãäŸé Œããéã«æç€ºãç°¡ç¥åã§ããäœæ¥ã®åçŸæ§ãé«ããããšãã§ããŸããã
ïŒåèïŒKnowledge Suggestions â Devin DocsïŒ
4. AI掻çšã®å¹æå®çžŸãšèŠããŠãã課é¡
åŸããã广
- å·¥æ°ã®å€å: ãµãŒãã¹è¿œå äœæ¥ã¯å€§ããã仿§çå®ããšãå®è£ ãã®2段éã«åãããŸããå®è£ äœæ¥ã«ã€ããŠã¯ãä»åã®ãããªã·ã³ãã«ãªãµãŒãã¹ã®å ŽåããããŸã§æäœæ¥ã§çŽ4æéããã£ãŠãããã®ããAIãžã®æç€ºãšã¬ãã¥ãŒãå«ããŠçŽ1æéã§å®äºããå€§å¹ ãªæéççž®ãå®çŸã§ããŸããã仿§çå®ã®å·¥æ°ã«ã€ããŠããGeminiã«ä»æ§æžããµã³ãã«è¡šã®äœæãšãã£ãããã¥ã¡ã³ãäœæ¥ãä»»ããããããšã§ãã¹ã ãŒãºã«äœæ¥ãé²ããããšãã§ããŸããã
- äœæ¥å 容ã®å€å: 人éã¯ã³ãŒãã1è¡ãæžãããšãªããAIãžã®çç¢ºãªæç€ºåºããšãAIãäœæããææç©ã®ã¬ãã¥ãŒãšãããããäžæµã®ã¿ã¹ã¯ã«éäžããããšãã§ããŸããã
- 仿§ã®å質: Geminiãšã®å¯Ÿè©±ãéããŠä»æ§ãæ€èšããéçšã§ã人éã ãã§ã¯èŠèœãšããŠããå¯èœæ§ã®ããé ç®ã仿§ã«çã蟌ãããšãã§ããçµæãšããŠã¢ãŠããããã®å質åäžã«ç¹ãããŸããã
èŠããŠãã課é¡
äžæ¹ã§ãAIãæŽ»çšããäžã§ã®é£ãããèŠããŠããŸããã
- ã¬ãã¥ãŒã®é£æåºŠ: èªèº«ã§å®è£ ã³ãŒããæžããŠããªãããããµãŒãã¹ã®çްãã仿§ããšããžã±ãŒã¹ã®èæ ®ãååãã倿ããã®ãé£ãããšæããŸãããããã¯ä»ã®ã¡ã³ããŒãå®è£ ããã³ãŒããã¬ãã¥ãŒããæèŠã«è¿ãã§ãããããªããã®å®è£ ã«ããã®ãããšããèæ¯ãAIã«çŽæ¥åãããšãé£ãããããããæ éãªç¢ºèªãæ±ããããŸãã
- ãã¹ãã®éç: å®è£ ããæ©èœã®ãã¹ãçšã«ãæ§ã ãªãã¿ãŒã³ã®CognitoãªãœãŒã¹ãäœæããCloudFormationãã³ãã¬ãŒãã®çæãAIã«äŸé ŒããŸããããããããã®ã¿ã¹ã¯ã¯DevinãGeminiã®åæ¹ã«ãšã£ãŠå°é£ã ã£ãããã§ããã³ãŒãã«ã¯çŸããªãããã®èšå®ãšãã®èšå®ã¯äž¡ç«ã§ããªãããšãã£ãAWSç°å¢ç¹æã®è€éãªå¶çŽãAIãå®å šã«çè§£ããç¶²çŸ çãªãã³ãã¬ãŒããçæããããšã¯ãçŸç¶ã§ã¯ãŸã é£ããé åã®ããã§ããã
èå¯ïŒAIã®åŸæãªããšã人éãããã¹ãããš
ä»åã®æ€èšŒãããAIã¯ã©ããªèª²é¡ã解決ã§ããäžèœãªããŒã«ãšããããã§ã¯ãªãããšãæ¹ããŠåãããŸãããããããã®ããŒã«ã®åŸæã»äžåŸæãçè§£ãã人éãé©åã«äœæ¥ãåãåããã驿驿ãã®èãæ¹ãäžå¯æ¬ ã§ãã
- Gemini: ãŒãããæ å ±ãæŽçããäœç³»åãããçºæ£âåæãã®ããã»ã¹ãåŸæã
- Devin: æç¢ºãªãŽãŒã«ãšæé ã«åºã¥ããæ¢åã®ã«ãŒã«ã«æ²¿ã£ãŠé»ã ãšäœæ¥ãããå®è¡ããåŸæã
ç¹ã«ä»åã®RVã®ããã«ãåŠçãããçšåºŠãã¿ãŒã³åãããŠãããåèã«ã§ããæ¢åå®è£ ãè±å¯ã«ãããããžã§ã¯ãã§ã¯ããã®åæ ãéåžžã«ããŸãæ©èœããŸããã人éãæ ãã¹ãã¯ãAIã«æž¡ãã仿§ã®ç²ŸåºŠããäžããããšãšãAIã®ææç©ããã¬ãã¥ãŒãããããšããã®2ç¹ãããããžã§ã¯ãã®æåŠãåããéèŠãªãã€ã³ããšèšãããã§ãã
5. ãŸãšã
æ¬èšäºã§ã¯ã瀟å
ããŒã«Resource Visualizerã®æ©èœè¿œå ã«ãããŠããGeminiã«ãã仿§çå®ããšãDevinã«ããå®è£
ããšããAIã®åæ¥ããã»ã¹ãæ€èšŒããçµæãå ±åããŸããã
ä»åã®æ€èšŒã§ã¯ãRVãæã€ãå®è£
ãã·ã³ãã«ã§ããµã³ãã«ãšãªãæ¢åã³ãŒããå€ãããšããç¹æ§ããAIã®èœåãæå€§éã«åŒãåºãäžã§æå©ã«åããããšã¯ééããããŸããããããããã®ã仿§ã®ç²ŸåºŠãäžããå®è£
ãAIã«ä»»ããããšããã¢ãããŒãã¯ãä»ã®ãããžã§ã¯ãã«ãããŠãå¿çšã§ããå¯èœæ§ããããŸãã
ãŸããä»åã®æ€èšŒã§ã¯ä»æ§çå®ãGeminiãšã®å¯Ÿè©±åœ¢åŒã§è¡ããŸãããããã®ããã»ã¹èªäœãããã«å¹çåããããŒã«ãç»å ŽããŠããŸããæè¿çºè¡šããããkiroãã¯ãAIãšã®åæ¥ãåæãšããã仿§æžé§åéçºããã³ã³ã»ããã«æ²ããæ°ããIDEã§ãã
ããã³ããããèŠä»¶ã»èšèšã»ã¿ã¹ã¯ãæ§é åãã仿§æžãçæãããããå
ã«éçºãé²ãããšããã¢ãããŒãã¯ããŸãã«ç§ãã¡ãä»åå®è·µããã¯ãŒã¯ãããŒãšéãªããŸããä»åŸã¯ããã®ãããªAIãã€ãã£ããªéçºç°å¢ã掻çšããããšã§ã仿§çå®ããå®è£
ãŸã§ã®é£æºãããã«ã·ãŒã ã¬ã¹ã«ãªãã®ã§ã¯ãªãããšæåŸ
ããŠããŸãã
AIã®åºåå質ã¯ã人éãäžããã€ã³ãããïŒæç€ºã仿§ïŒã®è³ªã«å€§ããäŸåããŸããããã«AIã«ãè¯ãä»äºããããŠããããããšããããã³ãããšã³ãžãã¢ãªã³ã°ããã£ã¬ã¯ã·ã§ã³ã®ã¹ãã«ã¯ãä»åŸã®ãšã³ãžãã¢ã«ãšã£ãŠéèŠãªèŠçŽ ã®äžã€ã«ãªããããããŸããã
AIããŒã«ã¯ãéçºã«ãããå®åçãªäœæ¥ãå¹çåããç§ãã¡ãšã³ãžãã¢ãããåµé çã§æ¬è³ªçãªèª²é¡è§£æ±ºã«æéã䜿ãããã®åŒ·åãªãµããŒããšãªãåŸãŸããæ¬èšäºã®æ€èšŒå
容ããçããã®çŸå Žã§AI掻çšã®å¯èœæ§ãæ¢ãäžã§ã®äžã€ã®åèã«ãªãã°å¹žãã§ãã