ç£æ¥çšæ©æ¢°åŠç¿: 10 ã®èšèšåå
çŸåšãæ°ãããµãŒãã¹ãã¢ããªã±ãŒã·ã§ã³ããã®ä»ã®éèŠãªããã°ã©ã ãæ¯æ¥äœæãããŠãããSpaceX ãã±ãããå¶åŸ¡ããããã®ãœãããŠã§ã¢ãããã¹ããŒããã©ã³ãä»ããŠé£ã®éšå±ã«ããããããšå¯Ÿè©±ãããã®ãŸã§ãä¿¡ããããªãã»ã©ã®ãã®ãäœæã§ããããã«ãªããŸãã
ãããŠãæ ç±çãªã¹ã¿ãŒãã¢ããäŒæ¥ã§ãããæ®éã®ãã«ã¹ã¿ãã¯ãããŒã¿ãµã€ãšã³ãã£ã¹ãã§ããããã¹ãŠã®åå¿è ããã°ã©ããŒã¯ãé ããæ©ãããããã°ã©ãã³ã°ãšãœãããŠã§ã¢ã®äœæã«ã¯ãäœæ¥ãå€§å¹ ã«ç°¡çŽ åããç¹å®ã®ã«ãŒã«ãããããšã«æ°ã¥ãããšããããŸãã
ãã®èšäºã§ã¯ã10 èŠçŽ ã¢ããªææ³ã«åºã¥ããŠãç£æ¥çšæ©æ¢°åŠç¿ãã¢ããªã±ãŒã·ã§ã³/ãµãŒãã¹ã«ç°¡åã«çµ±åã§ããããã«ããã°ã©ã ããæ¹æ³ã«é¢ãã 12 ã®ååã«ã€ããŠç°¡åã«èª¬æããŸãã
ãã®èšäºã¯ãç£æ¥çšæ©æ¢°åŠç¿ã«é¢ããäžé£ã®èšäºã®ããããŒã°ã§ãã ãã®äžã§ãå®éã«ã¢ãã«ãäœæããŠå®çšŒåç°å¢ã«å°å
¥ããæ¹æ³ããã® API ãäœæããæ¹æ³ãããã³ã·ã¹ãã ã« ML ãçµã¿èŸŒãã ããŸããŸãªåéãäŒæ¥ã®äŸã«ã€ããŠããã«ã話ããŸãã
åå 1: XNUMX ã€ã®ã³ãŒãããŒã¹
æåã®æ®µéã§ã¯ããããç解ããã®ãæ ã㊠(ãŸãã¯äœããã®çç±ã§)ãGit ã®ããšãå¿ããŠããŸãããã°ã©ããŒãããŸãã 圌ãã¯ãã®èšèãå®å šã«å¿ããŠããŸããã€ãŸãããã©ã€ãå ã§ãã¡ã€ã«ãäºãã«æãåãããããã¹ããæãåãã ãã§ãããã«ãã£ãŠéä¿¡ããããããŸãã¯ã¯ãŒã¯ãããŒãæ·±ãèããã«ãããããç¬èªã®ãã©ã³ãã«ã³ããããã次ã«ãã®ãã©ã³ãã«ã³ãããããŸãããã¹ã¿ãŒã
ãã®ååã¯æ¬¡ã®ããã«è¿°ã¹ãŠããŸãã XNUMX ã€ã®ã³ãŒãããŒã¹ãšå€æ°ã®ãããã€ã¡ã³ãããããŸãã
Git ã¯éçšç°å¢ãšç 究éçº (R&D) ã®äž¡æ¹ã§äœ¿çšã§ããŸãããGit ã¯ããŸã䜿çšãããŸããã
ããšãã°ãç 究éçºãã§ãŒãºã§ã¯ãããŸããŸãªããŒã¿åŠçæ¹æ³ãšã¢ãã«ã䜿çšããŠã³ããããæ®ãããšãã§ããæé©ãªãã®ãéžæããŠãããã«äœæ¥ãç°¡åã«ç¶ããããšãã§ããŸãã
次ã«ãéçšç°å¢ã§ã¯ãããã¯ããããã®ãªããã®ã§ããã³ãŒããã©ã®ããã«å€åããããåžžã«èŠ³å¯ããã©ã®ã¢ãã«ãæè¯ã®çµæããããããã®ããã©ã®ã³ãŒããæçµçã«æ©èœããã®ããåäœãåæ¢ããã誀ã£ãçµæãçæããå§ããåå ã¯äœãªã®ããææ¡ããå¿ èŠããããŸãã ã ãããã³ãããã®ç®çã§ãã
ãŸãããããžã§ã¯ãã®ããã±ãŒãžãäœæããŠãããšãã° Gemfury ã«é 眮ããããããé¢æ°ãä»ã®ãããžã§ã¯ãã«ã€ã³ããŒãããã ãã§ãé¢æ°ã 1000 åæžãçŽããªããŠãæžãããã«ããããšãã§ããŸããããã«ã€ããŠã¯åŸã»ã©èª¬æããŸãã
åå 2: äŸåé¢ä¿ãæ確ã«å®£èšããŠåé¢ãã
åãããžã§ã¯ãã«ã¯ç°ãªãã©ã€ãã©ãªããããããããã©ããã«é©çšããããã«å€éšããã€ã³ããŒãããŸãã Python ã©ã€ãã©ãªã§ãã£ãŠããããŸããŸãªç®çã®ããã®ä»ã®èšèªã®ã©ã€ãã©ãªã§ãã£ãŠããã·ã¹ãã ããŒã«ã§ãã£ãŠããããªãã®ã¿ã¹ã¯ã¯æ¬¡ã®ãšããã§ãã
- äŸåé¢ä¿ãæ確ã«å®£èšããŸããã€ãŸãããããžã§ã¯ãã§äœ¿çšãããã€ã³ã¹ããŒã«ããå¿
èŠããããã¹ãŠã®ã©ã€ãã©ãªãããŒã«ãããã³ãããã®ããŒãžã§ã³ãå«ããã¡ã€ã«ã§ã (ããšãã°ãPython ã§ã¯ãPipfile ãŸãã¯requirements.txtã䜿çšããŠãããè¡ãããšãã§ããŸã)ãç解ããããã®ãªã³ã¯:
realpython.com/pipenv-guide ) - éçºäžã«ããã°ã©ã ã«ç¹åããäŸåé¢ä¿ãåé¢ããŸãã Tensorflow ãªã©ãããŒãžã§ã³ãé »ç¹ã«å€æŽãããåã€ã³ã¹ããŒã«ãããããããªãã§ãã?
ããããããšã§ãå°æ¥ããŒã ã«åå ããéçºè ã¯ããããžã§ã¯ãã§äœ¿çšãããã©ã€ãã©ãªãšãã®ããŒãžã§ã³ã«ããã«æ £ããããšãã§ããç¹å®ã®ãããžã§ã¯ãã«ã€ã³ã¹ããŒã«ãããŠããããŒãžã§ã³ãšã©ã€ãã©ãªèªäœã管çããæ©äŒãåŸãããŸããããã¯ãã©ã€ãã©ãªãŸãã¯ãã®ããŒãžã§ã³ã®éäºææ§ãåé¿ããã®ã«åœ¹ç«ã¡ãŸãã
ãŸããã¢ããªã±ãŒã·ã§ã³ã¯ãç¹å®ã® OS ã«ã€ã³ã¹ããŒã«ãããŠããå¯èœæ§ã®ããã·ã¹ãã ããŒã«ã«äŸåããªãã§ãã ããã ãããã®ããŒã«ã¯äŸåé¢ä¿ãããã§ã¹ãã§ã宣èšããå¿ èŠããããŸãã ããã¯ãããŒã«ã®ããŒãžã§ã³ (ããã³ãã®å¯çšæ§) ãç¹å®ã® OS ã®ã·ã¹ãã ããŒã«ãšäžèŽããªãç¶æ³ãé¿ããããã«å¿ èŠã§ãã
ãããã£ãŠãcurl ãã»ãšãã©ãã¹ãŠã®ã³ã³ãã¥ãŒã¿ã§äœ¿çšã§ããå Žåã§ããå¥ã®ãã©ãããã©ãŒã ã«ç§»è¡ãããšãã«ãcurl ãååšããªãã£ãããããŒãžã§ã³ãåœåå¿ èŠã ã£ããã®ã§ã¯ãªããªãå¯èœæ§ããããããäŸåé¢ä¿ã§ããã宣èšããå¿ èŠããããŸãã
ããšãã°ãrequirements.txt ã¯æ¬¡ã®ããã«ãªããŸãã
# Model Building Requirements
numpy>=1.18.1,<1.19.0
pandas>=0.25.3,<0.26.0
scikit-learn>=0.22.1,<0.23.0
joblib>=0.14.1,<0.15.0
# testing requirements
pytest>=5.3.2,<6.0.0
# packaging
setuptools>=41.4.0,<42.0.0
wheel>=0.33.6,<0.34.0
# fetching datasets
kaggle>=1.5.6,<1.6.0
åå 3: æ§æ
ããŸããŸãªéçºè ããAWS ã®ãã¹ã¯ãŒãããã®ä»ã®ããŒã䜿çšããŠã³ãŒãã GitHub ã®ãããªã㯠ãªããžããªã«èª€ã£ãŠã¢ããããŒãããç¿æ¥ç®ãèŠãããš 6000 ãã«ãããã«ã¯ 50000 ãã«ã®åéãæ±ããŠãããšãã話ãèããããšããã人ã¯å€ãã§ãããã
ãã¡ããããããã®ã±ãŒã¹ã¯æ¥µç«¯ã§ãããéåžžã«éèŠã§ãã è³æ Œæ
å ±ãæ§æã«å¿
èŠãªãã®ä»ã®ããŒã¿ãã³ãŒãå
ã«ä¿åããå Žåãééããç¯ãããšã«ãªããŸãããã®çç±ã説æããå¿
èŠã¯ãªããšæããŸãã
ããã«ä»£ããæ¹æ³ã¯ãæ§æãç°å¢å€æ°ã«ä¿åããããšã§ãã ç°å¢å€æ°ã«ã€ããŠè©³ããèªãããšãã§ããŸã
éåžžãç°å¢å€æ°ã«ä¿åãããããŒã¿ã®äŸã¯æ¬¡ã®ãšããã§ãã
- ãã¡ã€ã³å
- API URL/URI
- å ¬ééµãšç§å¯éµ
- é£çµ¡å ïŒã¡ãŒã«ãé»è©±ãªã©ïŒ
ããããããšã§ãæ§æå€æ°ãå€æŽãããå Žåã«ã³ãŒããåžžã«å€æŽããå¿ èŠããªããªããŸãã ããã«ãããæéãåŽåããéãç¯çŽã§ããŸãã
ããšãã°ãKaggle API ã䜿çšããŠãã¹ããå®è¡ããå Žå (ããšãã°ããœãããŠã§ã¢ãããŠã³ããŒãããã¢ãã«ãå®è¡ããŠãå®è¡æã«ã¢ãã«ãé©åã«æ©èœãããã©ããããã¹ããã)ãKaggle ã®ç§å¯éµ (KAGGLE_USERNAME ã KAGGLE_KEY ãªã©) ã¯æ¬¡ã®ããã«ãªããŸããç°å¢å€æ°ã«ä¿åãããŸãã
åå 4: ãµãŒãããŒãã£ã®ãµãŒãã¹
ããã§ã®èãæ¹ã¯ãã³ãŒãã®ç¹ã§ããŒã«ã« ãªãœãŒã¹ãšãµãŒãããŒã㣠ãªãœãŒã¹ã®éã«éãããªãããã«ããã°ã©ã ãäœæããããšã§ãã ããšãã°ãããŒã«ã«ã® MySQL ãšãµãŒãããŒãã£ã® MySQL ã®äž¡æ¹ã«æ¥ç¶ã§ããŸãã Google Maps ã Twitter API ãªã©ã®ããŸããŸãª API ã«ã€ããŠãåæ§ã§ãã
ãµãŒãããŒãã£ã®ãµãŒãã¹ãç¡å¹ã«ããããå¥ã®ãµãŒãã¹ã«æ¥ç¶ããã«ã¯ãäžã®æ®µèœã§èª¬æããããã«ãç°å¢å€æ°ã®æ§æå ã®ããŒãå€æŽããã ãã§ãã
ãããã£ãŠãããšãã°ãã³ãŒãå ã§ããŒã¿ã»ãããå«ããã¡ã€ã«ãžã®ãã¹ãæ¯åæå®ãã代ããã«ãpathlib ã©ã€ãã©ãªã䜿çšããŠãconfig.py ã§ããŒã¿ã»ãããžã®ãã¹ã宣èšããæ¹ãè¯ãã§ããããããããã°ãã©ã®ãµãŒãã¹ã䜿çšãããã«é¢ä¿ãªãã CircleCI ãªã©)ãããã°ã©ã ã¯ãæ°ãããµãŒãã¹ã®æ°ãããã¡ã€ã« ã·ã¹ãã ã®æ§é ãèæ ®ããŠãããŒã¿ã»ãããžã®ãã¹ãèŠã€ããããšãã§ããŸããã
åå 5. ãã«ãããªãªãŒã¹ãã©ã³ã¿ã€ã
ããŒã¿ ãµã€ãšã³ã¹ã®å€ãã®äººã ã¯ããœãããŠã§ã¢äœæã¹ãã«ãåäžãããããšã圹ç«ã€ãšèããŠããŸãã ããã°ã©ã ãã§ããã ãã¯ã©ãã·ã¥ãããã§ããã ãé·ãé害ãªãåäœããããã«ãããå Žåã¯ãæ°ããããŒãžã§ã³ããªãªãŒã¹ããããã»ã¹ã 3 ã€ã®æ®µéã«åå²ããå¿ èŠããããŸãã
- ã¹ããŒãž éäŒã åã ã®ãªãœãŒã¹ãå«ãã㢠ã³ãŒãããå¿ èŠãªãã¹ãŠã®ã³ãŒããšããŒã¿ãå«ãããããããã±ãŒãžã«å€æããŸãã ãã®ããã±ãŒãžã¯ã¢ã»ã³ããªãšåŒã°ããŸãã
- ã¹ããŒãž 解æŸãã â ããã§ã¯æ§æãã¢ã»ã³ããªã«æ¥ç¶ããŸããããããªããã°ããã°ã©ã ããªãªãŒã¹ã§ããŸããã ããã§ãå®å šã«ãªãªãŒã¹æºåå®äºã®ãªãªãŒã¹ãšãªããŸããã
- 次ã¯ã¹ããŒãžã§ã å±¥è¡ã ããã§ã¯ããªãªãŒã¹ããå¿ èŠãªããã»ã¹ãå®è¡ããŠã¢ããªã±ãŒã·ã§ã³ããªãªãŒã¹ããŸãã
ã¢ãã«ãŸãã¯ãã€ãã©ã€ã³å šäœã®æ°ããããŒãžã§ã³ããªãªãŒã¹ããããã®ãã®ãããªã·ã¹ãã ã«ããã管çè ãšéçºè ã®éã§åœ¹å²ãåé¢ããããŒãžã§ã³ã远跡ããããã°ã©ã ã®äžèŠãªåæ¢ãé²ãããšãã§ããŸãã
ãªãªãŒã¹ ã¿ã¹ã¯çšã«ãèªåã§å®è¡ããããã»ã¹ã .yml ãã¡ã€ã«ã«èšè¿°ã§ããããŸããŸãªãµãŒãã¹ãäœæãããŠããŸã (ããšãã°ãCircleCI ã§ã¯ãããã¯ããã»ã¹èªäœããµããŒããã config.yml ã§ã)ã Wheely ã¯ãããžã§ã¯ãã®ããã±ãŒãžãäœæããã®ãåŸæã§ãã
æ©æ¢°åŠç¿ã¢ãã«ã®ããŸããŸãªããŒãžã§ã³ãå«ãããã±ãŒãžãäœæããããããããã±ãŒãžåããŠãå¿ èŠãªããã±ãŒãžãšãã®ããŒãžã§ã³ãåç §ããŠãããããäœæããé¢æ°ã䜿çšã§ããŸãã ããã¯ã¢ãã«ã® API ãäœæããã®ã«åœ¹ç«ã¡ãããã±ãŒãžã Gemfury ãªã©ã§ãã¹ãã§ããããã«ãªããŸãã
åå 6. ã¢ãã«ã XNUMX ã€ä»¥äžã®ããã»ã¹ãšããŠå®è¡ãã
ããã«ãããã»ã¹ã¯ããŒã¿ãå ±æãã¹ãã§ã¯ãããŸããã ã€ãŸããããã»ã¹ã¯åå¥ã«ååšããå¿ èŠããããããããçš®é¡ã®ããŒã¿ã¯å¿ èŠã«å¿ããŠãããšãã° MySQL ãªã©ã®ãµãŒãããŒã㣠ãµãŒãã¹äžã«åå¥ã«ååšããå¿ èŠããããŸãã
ã€ãŸããããã»ã¹ ãã¡ã€ã« ã·ã¹ãã å ã«ããŒã¿ãä¿åããããšã¯æããã«äŸ¡å€ããããŸãããããããªããšã次åã®ãªãªãŒã¹/æ§æã®å€æŽããŸãã¯ããã°ã©ã ãå®è¡ãããã·ã¹ãã ã®è»¢éäžã«ããã®ããŒã¿ãæ¶å»ãããå¯èœæ§ããããŸãã
ãã ãäŸå€ããããŸããæ©æ¢°åŠç¿ãããžã§ã¯ãã®å Žåãè¿œå ã®ã©ã€ãã©ãªãããŒãžã§ã³ã«å€æŽãå ããããŠããªãå Žåãæ°ããããŒãžã§ã³ãèµ·åãããã³ã«ã©ã€ãã©ãªãåã€ã³ã¹ããŒã«ããå¿ èŠããªãããã«ãã©ã€ãã©ãªã®ãã£ãã·ã¥ãä¿åã§ããŸãã ããããããšã§ãã¢ãã«ãæ¥çã«æå ¥ãããŸã§ã«ãããæéãççž®ã§ããŸãã
ã¢ãã«ãè€æ°ã®ããã»ã¹ãšããŠå®è¡ããã«ã¯ãå¿ èŠãªããã»ã¹ãšãã®é åºãæå®ãã .yml ãã¡ã€ã«ãäœæããŸãã
åå 7: ãªãµã€ã¯ã«å¯èœæ§
ã¢ãã« ã¢ããªã±ãŒã·ã§ã³ã§å®è¡ãããããã»ã¹ã¯ãç°¡åã«éå§ããã³åæ¢ã§ããå¿ èŠããããŸãã ãããã£ãŠãããã«ãããã³ãŒãã®å€æŽãæ§æã®å€æŽãè¿ éã«å±éããè¿ éãã€æè»ã«æ¡åŒµããäœæ¥ããŒãžã§ã³ã®æ éã®å¯èœæ§ãé²ãããšãã§ããŸãã
ã€ãŸããã¢ãã«ã䜿çšããããã»ã¹ã¯æ¬¡ã®ããšãè¡ãå¿ èŠããããŸãã
- èµ·åæéãæå°éã«æããŸãã çæ³çã«ã¯ãèµ·åæé (èµ·åã³ãã³ããçºè¡ãããŠããããã»ã¹ãåäœãéå§ãããŸã§) ã¯æ°ç§ä»¥å ã§ããå¿ èŠããããŸãã äžã§èª¬æããã©ã€ãã©ãª ãã£ãã·ã¥ã¯ãèµ·åæéãççž®ããããã® XNUMX ã€ã®ææ³ã§ãã
- æ£ããçµäºããŸãã ã€ãŸãããµãŒãã¹ ããŒãã§ã®ãªãã¹ã³ã¯å®éã«ã¯äžæåæ¢ããããã®ããŒãã«éä¿¡ãããæ°ããèŠæ±ã¯åŠçãããŸããã ããã§ã¯ãDevOps ãšã³ãžãã¢ãšè¯å¥œãªã³ãã¥ãã±ãŒã·ã§ã³ã確ç«ãããããããã©ã®ããã«æ©èœããããèªåèªèº«ã§ç解ããå¿ èŠããããŸã (ãã¡ããåŸè ãæãŸããã§ãããã©ã®ãããžã§ã¯ãã§ãã³ãã¥ãã±ãŒã·ã§ã³ã¯åžžã«ç¶æãããå¿ èŠããããŸã)ã
åå 8: ç¶ç¶çãªå°å ¥/çµ±å
å€ãã®äŒæ¥ã¯ãã¢ããªã±ãŒã·ã§ã³éçºããŒã ãšå±éããŒã ãåé¢ããŠããŸã (ã¢ããªã±ãŒã·ã§ã³ããšã³ã ãŠãŒã¶ãŒãå©çšã§ããããã«ããŸã)ã ããã«ããããœãããŠã§ã¢éçºãšãã®æ¹åã®é²è¡ãå€§å¹ ã«é ããªãå¯èœæ§ããããŸãã ãŸãã倧ãŸãã«èšãã°ãéçºãšçµ±åãçµã¿åããããŠãã DevOps æåãå°ç¡ãã«ãªããŸãã
ãããã£ãŠããã®ååã§ã¯ãéçºç°å¢ã¯å®çšŒåç°å¢ã«ã§ããéãè¿ã¥ããã¹ãã§ãããšè¿°ã¹ãŠããŸãã
ããã«ããã次ã®ããšãå¯èœã«ãªããŸãã
- ãªãªãŒã¹æéãæ°ååççž®
- ã³ãŒãã®éäºææ§ã«ãããšã©ãŒã®æ°ãæžãããŸãã
- ãŸããéçºè ãšã¢ããªã±ãŒã·ã§ã³ããããã€ãã人ã ã XNUMX ã€ã®ããŒã ã«ãªããããã¹ã¿ããã®äœæ¥è² è·ã軜æžãããŸãã
ãããæäœã§ããããŒã«ã¯ãCircleCIãTravis CIãGitLab CI ãªã©ã§ãã
ã¢ãã«ã«ãã°ããè¿œå ããæŽæ°ããããã«èµ·åããããšãã§ããŸãããŸããé害ãçºçããå Žåã§ãããšã³ã ãŠãŒã¶ãŒãæ°ã¥ããªãããã«ããã«åäœããŒãžã§ã³ã«æ»ãããšãç°¡åã§ãã è¯å¥œãªãã¹ããããå Žåãããã¯ç¹ã«ç°¡åãã€è¿ éã«è¡ãããšãã§ããŸãã
å·®ç°ãæå°éã«æãã!!!
åå 9. ãã°
ãã° (ãŸãã¯ããã°ã) ã¯ãã¢ããªã±ãŒã·ã§ã³ (ã€ãã³ã ã¹ããªãŒã ) å ã§çºçããã€ãã³ãã§ãããéåžžã¯ããã¹ã圢åŒã§èšé²ãããŸãã ç°¡åãªäŸ: ã2020-02-02 - ã·ã¹ãã ã¬ãã« - ããã»ã¹åãã ãããã¯ãéçºè ãããââã°ã©ã ã®å®è¡äžã«äœãèµ·ãã£ãŠããããæåéã確èªã§ããããã«èšèšãããŠããŸãã ããã»ã¹ã®é²æç¶æ³ãèŠãŠãéçºè èªèº«ã®æå³ã©ããã«ãªã£ãŠãããã©ãããç解ããŸãã
ãã®ååã¯ããã°ããã¡ã€ã« ã·ã¹ãã å ã«ä¿åãã¹ãã§ã¯ãªããåã«ç»é¢ã«ãåºåãããå¿ èŠãããããšã瀺ããŠããŸããããšãã°ããããã·ã¹ãã ã®æšæºåºåã§å®è¡ããŸãã ãã®ããã«ããŠãéçºäžã«ã¿ãŒããã«å ã®ãããŒãç£èŠããããšãå¯èœã«ãªããŸãã
ããã¯ããã°ãä¿åããå¿ èŠããŸã£ãããªãããšãæå³ããŸãã? ãã¡ããéããŸãã ã¢ããªã±ãŒã·ã§ã³ã¯ãããè¡ãã¹ãã§ã¯ãªãããµãŒãããŒãã£ã®ãµãŒãã¹ã«ä»»ããŠãã ããã ã¢ããªã±ãŒã·ã§ã³ã¯ããªã¢ã«ã¿ã€ã 衚瀺ã®ããã«ãã°ãç¹å®ã®ãã¡ã€ã«ãŸãã¯ç«¯æ«ã«è»¢éããããæ±çšããŒã¿ ã¹ãã¬ãŒãž ã·ã¹ãã (Hadoop ãªã©) ã«è»¢éããããšããã§ããŸããã ã¢ããªã±ãŒã·ã§ã³èªäœã¯ããã°ãä¿åãããããã°ãšããåããããããŠã¯ãªããŸããã
åå 10. ãã¹ãããŠãã ãã!
ç£æ¥çšæ©æ¢°åŠç¿ã®å Žåãã¢ãã«ãæ£ããæ©èœããæå³ãããã®ãçæãããããšãç解ããå¿ èŠãããããããã®ãã§ãŒãºã¯éåžžã«éèŠã§ãã
ãã¹ã㯠pytest ã䜿çšããŠäœæã§ããååž°/åé¡ã¿ã¹ã¯ãããå Žåã¯å°ããªããŒã¿ã»ããã䜿çšããŠãã¹ãã§ããŸãã
深局åŠç¿ã¢ãã«ãåžžã«ç°ãªãçµæãçæããªãããã«ã深局åŠç¿ã¢ãã«ã«åãã·ãŒããèšå®ããããšãå¿ããªãã§ãã ããã
ãã㯠10 ã®ååã®ç°¡åãªèª¬æã§ããããã¡ãããããããã©ã®ããã«æ©èœããããå®éã«è©ŠããŠã¿ãããšãªãã«äœ¿çšããããšã¯å°é£ã§ãããã®ããããã®èšäºã¯ãäœææ¹æ³ã説æããäžé£ã®èå³æ·±ãèšäºã®åºç« ã«ãããŸãããç£æ¥çšæ©æ¢°åŠç¿ã¢ãã«ãããããã·ã¹ãã ã«çµ±åããæ¹æ³ãããã³ãããã®ååãã©ã®ããã«ç§ãã¡å šå¡ã®ç掻ã楜ã«ãããã«ã€ããŠèª¬æããŸãã
ãŸããåžæã«å¿ããŠèª°ã§ãã³ã¡ã³ããæ®ãããšãã§ããã¯ãŒã«ãªååã䜿çšããããåªããŸãã
åºæïŒ habr.com