Software Engineer ã®ããã® Prompt æŽ»çš | Developer eXperience Day 2024ã¬ããŒã
2024幎7æ16æ¥ãš17æ¥ã®ïŒæ¥éã«ããã£ãŠéå¬ããããDeveloper eXperience Day 2024ãã®ã»ãã·ã§ã³ã®äžããããSoftware Engineer ã®ããã® Prompt 掻çšãã®ã¬ããŒãããå±ãããŸããæ¥æ¬ãã€ã¯ããœããæ ªåŒäŒç€Ÿã®ã·ãã¢ã¯ã©ãŠããœãªã¥ãŒã·ã§ã³ã¢ãŒããã¯ããç å±±å€§ææ°ã«ãããSoftware Engineer ã®ããã® Prompt 掻çšããšé¡ãããè¬æŒãè¡ãããã
æ¬è¬æŒã¯äž»ã«ãœãããŠã§ã¢éçºè
åãã«ãããã³ããã«ããLLMïŒå€§èŠæš¡èšèªã¢ãã«ïŒæŽ»çšã®éèŠæ§ãšããœãããŠã§ã¢éçºããã»ã¹å
šäœã«ãããLLMã®æŽ»çšæ¹æ³ã«çŠç¹ãåœãŠããã®ã§ããã
ç å±±æ°ã®è¬æŒè³æã¯SpeakerDeckã«ãŠå
¬éãããŠããã
https://speakerdeck.com/dahatake
ãŸããæ¬å
¬æŒã§è¡ããããã¢ã«ãŠäœ¿çšãããPromptã¯GitHubã«ãŠå
¬éãããŠããã
ãããã¿ã€ãéçº:
ChatGPT-Prompt-Sample-Japanese/Software Enginner/Webã¢ããªã®ãããã¿ã€ãéçº
åäœãã¹ã:
ChatGPT-Prompt-Sample-Japanese/Software Enginner/åäœãã¹ã
ç»å£è
æ¥æ¬ãã€ã¯ããœããæ ªåŒäŒç€Ÿ
ã·ã㢠ã¯ã©ãŠã ãœãªã¥ãŒã·ã§ã³ ã¢ãŒããã¯ã
ç å±± å€§ææ°

ãPromptããããšãã®å€§åã

è¬æŒã®åé ã§ç å±±æ°ã¯ãèªèº«ã®åœ¹å²ããã£ãŒã«ããšã³ãžãã¢ãªã³ã°ã§ãããã·ã¹ãã éçºã®æè¡æ¯æŽããµã³ãã«ã³ãŒãäœæãæè¿ã§ã¯ç¹ã«ããã³ããäœæã«å€ãã®æéãå²ããŠãããšèª¬æããã
ç å±±æ°ã¯äŒå Žã«ãæ¯æ¥PromptããŠããŸããïŒããšåããããããšããå§ããããã³ãããæžãç¶ããããšã®éèŠæ§ã匷調ããªããè¬æŒãé²ããã
ãšãŒãžã§ã³ããæ§ã
ãªããŒã«ãç»å Žããäžã§ããçµå±ã¯ããã³ãããåºç€ãšãªãããšã説æããããã³ããã®çè§£ãäžå¯æ¬ ã§ãããšè¿°ã¹ãããŸããRAGã䜿çšãããšããŠããããã°ã®éã«ã¯ããã³ãããéèŠã§ãããããã³ããã®äžèº«ãçè§£ããããšãããšã³ãžãã¢ãšããŠã®åºç€ã匷åããããšã«ã€ãªãããšãè¿°ã¹ãã

ãŸããLLMãçæããã¢ãŠããããã¯å
šãŠããã©ãããã§ããã宿åã«ã¯ãªããªãããšã匷調ããã
ãããã³ããã®ç²ŸåºŠãäžããŠå®æåãäœãããšã¯ããªãã»ããè¯ãããšããã¿ã¹ã¯ãšäœæ¥ã®ããªã¥ãŒã ãèŠãŠãé©åãªã¿ã€ãã³ã°ã§åãäžãã倿ãå¿
èŠã§ãããšè¿°ã¹ãã
ãŸããAPIã®ããã«1åã®ã³ãŒã«ã§å šãŠãæžãŸããããšããã®ã§ã¯ãªããè€æ°ã®ã¿ãŒã³ã§ããã³ãããé²ããŠããããšãéèŠã ãšãããLLMãæŽ»çšããã¢ããªã±ãŒã·ã§ã³éçºã«ãããŠããããã¯ãŠãŒã¶ãŒäœéšã«åæ ããã¹ãã ãšããã
åç §ããŒã¿ãšãããæŽ»çšããæœåºã倿

ç å±±æ°ã¯ãä»äºã§LLMã䜿çšããéã®3ã€ã®ãã€ã³ãã玹ä»ããã
- åç §ããŒã¿ã®æŽ»çšïŒå¯èœãªéãåç §ããŒã¿ãå ¥ããããšã§ãééãããã«ã·ããŒã·ã§ã³ãé²ãããã粟床ã®é«ãçµæãåŸãããããã®åç §ããŒã¿ã掻çšããŠãå€æãšæœåºãè¡ã£ãŠããã
- æœåºïŒç¹å®ã®é¡åã®æ å ±ãããã¯ã¢ããããæ©èœã掻çšããããšã§ããã
- 倿ïŒã³ã¡ã³ãããããã°ã©ã ã³ãŒããçæããããæ¥æ¬èªãè±èªã«ç¿»èš³ãããããæ©èœã掻çšããããšã§ããã

ãã®äžã§ãç¹ã«æœåºã掻çšããäŸãšããŠãç å±±æ°ã¯èªèº«ã®ã¡ãŒã«ã§ã®æŽ»ç𿹿³ã解説ããã
LLMã®ãæ§é åãããããŒã¿ã®æœåºãåŸæã§ããããšããç¹æ§ã掻ãããã客æ§ããéä¿¡ãããŠããã¡ãŒã«ãããæå®ããé
ç®ãæœåºãåé¡ãããšãããã®ã ã
ããã«ãã£ãŠãã客æ§ã®èŠæãçŽ æ©ãè§£éããããšãã§ãããšããã
ãããã£ã掻çšãéããŠã人éãè¡ããšæéã®ãããäœæ¥ãå¹ççã«åŠçã§ããããšã説æããã
ããã«ãããžã¿ã«ããŒã¿ã®éèŠæ§ã匷調ããããçŸåšã®ã¢ãã«ã«ã¯å¶éããããã®ã®ãå°æ¥çã«ã¯ãã倧éã®ããŒã¿ãæ±ããããã«ãªããããå°æ¥çãªæŽ»çšãèŠè¶ããŠä»ã®ãã¡ã«ããžã¿ã«ããŒã¿ãå®å šã«ä¿ç®¡ããŠããããšãéèŠã§ãããšããã
ãã¢ã³ã¹ãã¬ãŒã·ã§ã³ãPromptã ãã§ã©ããŸã§åºæ¥ãã®ãïŒã

è¬æŒã®åŸåéšåã§ã¯å®éã®ãã¢ã亀ããªãããèŠä»¶å®çŸ©ããå®è£ ããã¹ããŸã§ã®äžé£ã®éçºããã»ã¹ã«ãããããã³ãããšLLMã®æŽ»çšæ¹æ³ã玹ä»ããããç å±±æ°ã¯ã芳å è ã¢ããªããäŸãšããŠãçŽ15åãšããçæéã§ä»¥äžã®ã¹ãããã宿Œããã
- èŠä»¶å®çŸ©ãšãŠãŒã¹ã±ãŒã¹ã®äœæ
- æ©èœèŠä»¶ãšéæ©èœèŠä»¶ã®èšå®
- ã¢ããªã±ãŒã·ã§ã³ã¢ãŒããã¯ãã£ã®èšèš
- ããŒã¿ã¢ãã«ã®äœæ
- ãµã³ãã«ããŒã¿ã®çæ
- ããŒã¿ããŒã¹ã¹ããŒãã®äœæ
- ç»é¢ã®äœæ
- ããã³ããšã³ãïŒVue.jsïŒãšããã¯ãšã³ãïŒAzure FunctionsïŒã®ã³ãŒãçæ
ç å±±æ°ã¯ããã®ææ³ã䜿çšããããšã§ã顧客ãšã®äŒè©±äžã«ãªã¢ã«ã¿ã€ã ã§ãããã¿ã€ããäœæããè¿ éãªãã£ãŒãããã¯ãåŸãããšãã§ãããšèª¬æããããŸãããã®æ¹æ³ã¯ããã¥ã¡ã³ãäœæãèšèšå³ã®äœæãåäœããé圢ã®äœæãŸã§ç¶²çŸ ã§ããããšã瀺ãããã
åäœãã¹ãã«æã

è¬æŒã§ã¯åäœãã¹ãã®éèŠæ§ã匷調ãããããããŸãLLMã«ãã£ãŠå¹ççã«è¡ãããšãã§ãããšããã
GitHub Copilotãªã©ã®ããŒã«ãåäœãã¹ããèªåçæããæ©èœãæäŸããŠããããæ¥åèŠä»¶ãšã®æŽåæ§ã確ä¿ããã«ã¯äžååã§ãããšã®ææããã£ãããããã«ããŒããããã«ã詳现ãªåäœãã¹ãã®ä»æ§æžãäœæããŠãã ããããšããæç€ºã«ãã£ãŠãLLMããã¹ã仿§æžãäœæãããã¢ã宿œãããããã®ãã¢ãéããŠãLLMã䜿çšããŠæ¥åèŠä»¶ããåäœãã¹ãã®é圢ãäœæããããžãã¹ãšå®è£ ã®æŽåæ§ãåãããšã®éèŠæ§ãšãã®æ¹æ³ã説æãããã
ãŸãããã¹ãã±ãŒã¹ã®çްååããã¹ãããŒã¿ã®äœæãªã©ãéåžžã¯æéã®ãããäœæ¥ãLLMãæŽ»çšããããšã§å¹çåã§ããããšã瀺ãããã
ããŒãžã§ã³æå®ã®éèŠæ§

ãããŸã§ã®èª¬æã®äžã§ãç å±±æ°ã¯ããã€ãã®å®è·µçãªã¢ããã€ã¹ãæäŸããã
ãã®äžã®äžã€ã«ããšã©ãŒã®å€ããç°å¢ã®åé¡ã§ããããšãããã®ããã£ããç å±±æ°ã®çµéšã«ãããšãLLMãçæããã³ãŒãã®ãšã©ãŒã®å€ãã¯ç°å¢ã®åé¡ã§ãããå ·äœçã«ã¯ãããŒãžã§ã³ã®éããããã±ãŒãžãå€ããå¿ èŠãªããã±ãŒãžãã€ã³ã¹ããŒã«ãããŠããªãããšãªã©ãäž»ãªåå ã§ãããšããã
äŸãã°ãnpmã³ãã³ããå®è¡ãããšææ°ããŒãžã§ã³ã®ããã±ãŒãžãã€ã³ã¹ããŒã«ãããããLLMãçæããã³ãŒãã¯ããããå€ãããŒãžã§ã³ãæ³å®ããŠããå¯èœæ§ãããããããã£ãåé¡ãè§£æ¶ããããã«ãããã³ããã§ããŒãžã§ã³ãæç€ºçã«æå®ããããšã§ããšã©ãŒãæžãããçæãããã³ãŒãããã®ãŸãŸåäœããå¯èœæ§ãé«ãŸããšèª¬æããã
é³å£°å ¥åãšLLMã®çµã¿åãã

ãã¢ã®æåŸã§ç å±±æ°ã¯ãé³å£°å ¥åãšLLMãçµã¿åãããã¢ãããŒãã玹ä»ãããWindows ã®é³å£°èªèæ©èœã䜿çšããç å±±æ°ãé³å£°ã§WebããŒãžã®ä»æ§ã説æããããããLLMãè§£éããŠå³åº§ã«ã³ãŒããçæãããšãããã®ã ã
ç å±±æ°ãå®çŸãããæ©èœããç»é¢ã«è¡šç€ºãããã¹ããã®ããã€ã¯ã«åãã£ãŠè©±ããŠãããšããããæåèµ·ãããããŠããããããLLMãè§£éããŠå³åº§ã«ã³ãŒããçæãããŠãã£ãã
å®éã«çæãããã³ãŒããå®è¡ããŠã¿ããšãæéã«å¿ããæšæ¶æã®çæãå ¥åãã§ãã¯ãªã©ãè¡ããã詳现ãªèŠä»¶ãé³å£°æç€ºã ãã§å®è£ ã§ããããšã瀺ãããã
æåŸã«
ç å±±æ°ã¯ãçŸåšã®LLMã«ãããé³å£°èªèã®ç²ŸåºŠã¯ãŸã é«ããªããšããªããããæã ã®æå³ãæ±²ãã§åããã®ãäœã£ãŠããããšããããšã¯ç¥ã£ãŠããã¹ãã ãšããã
æè¡ã®é²å±ã«ã€ããŠãçŸåšæã ã䜿çšããŠããæè¡ã¯ãŸã éåã°ã§ãããããããããã«åªãããã®ã次ã ãšç»å Žããããšè¿°ã¹ãLLMã®æªæ¥ãžã®æåŸ æã瀺ãããç å±±æ°ã¯è¬æŒã®æåŸãããã£ãšããã³ãããæŽ»çšããŠãããæ¥œããæ¥ã ã«ããŠããã ãããããšããåŒã³ããã§ç· ãæ¬ã£ãã
èå¯
ãããã³ããã®å®æåºŠãé«ããŠã宿åãäœãããšããŠãã人ãå€ãããLLMãäœã£ãŠãããã¢ãŠããããã¯ãããŸã§ããã©ããã§ãããæ°žé ã«å®æåã«ã¯ãªããªããã
ç å±±æ°ãè¿°ã¹ããããã®èšèããéåžžã«å°è±¡ã«æ®ãã»ãã·ã§ã³ã ã£ãã
ãŸããè€æ°ã®ã¿ãŒã³ãç¹°ãè¿ããªãã粟床ãé«ããŠããããšããæèããŠããªããšå®è·µã§ããªãå Žåãããã®ã§æ°ãã€ãããã
ç§ã«ããããã³ãããé·æã«ããŠã1ã€ã®ããã³ããã ãã§ãã§ããéãè¯ãçµæãè¿åŽãããããã«çްãããã¥ãŒãã³ã°ãç¹°ãè¿ããçµéšãäœåºŠãããã
ä»åã®ã»ãã·ã§ã³ã¯ãããããä»ãŸã§ã®ããæ¹ãçã¿ããšãŠãè¯ãæ©äŒãšãªã£ãã
ã»ãã·ã§ã³å ã§ã®ã芳å è ã¢ããªãäœãããã¢ããéåžžã«å®è·µçã§ããããããå 容ã ã£ããç§ããšã³ãžãã¢ãšããŠèŠä»¶å®çŸ©ãããããäºæ¥ãµã€ããšæã¡åãããããããšãããããããã³ããããã£ãããšæŽ»çšããŠãLLMã§èšèšãå®è£ ããããŸã§çæéã«å®æœã§ããã®ã§ããã°ãèªèã®ãããããªãåæžã§ãããšæããã
å šäœãéããŠãåé ã®ç å±±æ°ã«ãããæ¯æ¥PromptããŠããŸããïŒããšããåãããã®æå³ãšãããããããšãã©ãã»ã©éèŠãããåããå 容ã ã£ãããã²å®è·µããŠããããã
ããããã€ãã³ã
é¢é£ããã€ãã³ã

Developer eXperience Day 2024 -âéçºè ...
2024幎07æ16æ¥ (ç«)ããããã®èšäº

çæAIÃæ¥å掻çšã®ãã€ã³ãããAzure OpenAI Serviceå®è·µã¬ã€ããèè ããšã³ãžãã¢ã«äŒæ

FastLabelã»LayerXã»LINEã®ãšã³ãžãã¢ãæãããçæAIÃãããã¯ãéçºã§çŽé¢ãã課é¡ãšä¹ãè¶ãæ¹ã










