Upgrade to Pro — share decks privately, control downloads, hide ads and more …

NOT A HOTEL
AIコンシェルジュ「Kevin」の開発秘話

K
March 18, 2023

NOT A HOTEL
AIコンシェルジュ「Kevin」の開発秘話

YAPC::Kyoto 2023 Reject Con で話してきました。
GPT を中心に AI コンシェルジュの開発内容をお話ししました。

Zendesk の話はこちら
https://speakerdeck.com/codehex/yu-yue-sisutemuto-zendesk-noniariarutaimulian-xi-akitekutiya

K

March 18, 2023
Tweet

More Decks by K

Other Decks in Programming

Transcript

  1. /05")05&-

    "*ίϯγΣϧδϡʮ,FWJOʯͷ։ൃൿ࿩
    (15 ͱ%JBMPH
    fl
    PX$9ʹΑΔϗςϧۀք΁ͷֵ໋

    (15ͷํʹॏ͖Λஔ͍ͯ·͢

    :"1$,ZPUP3FKFDU$PO

    View Slide

  2. 8)0".*
    +645461&326*$,

    View Slide

  3. !DPEFIFY !$PEF)FY
    w ੲ͸0LJOBXBQNΛӡӦͯ͠·ͨ͠
    w ࠓ͸/05")05&-ͰίϯγΣϧδϡ
    ؔ࿈ͷπʔϧΛ։ൃΛ͍ͯ͠·͢

    View Slide

  4. /05")05&-ͷαʔϏε֓ཁ

    View Slide

  5. View Slide

  6. ϗςϧʹ΋Ͱ͖Δผ૳Λ
    ࢖͍͍ͨ෼͚ͩߪೖ͕Ͱ͖Δ
    ࢖Θͳ͍࣌ʹϗςϧି͠ग़͠Ͱऩӹ͕ಘΒΕΔ
    શࠃͷϋ΢εΛ૬ޓར༻Ͱ͖Δʢࠓޙੈք΁ʣ

    View Slide

  7. ϓϨεϦϦʔε

    View Slide

  8. "*ίϯγΣϧδϡʮ,FWJOʯͷ໨త
    ʮ,FWJOʯͰ࣮ݱ͍ͨ͜͠ͱ

    View Slide

  9. ࣌ؒ೔ͷॊೈͳରԠ

    View Slide

  10. ίϯγΣϧδϡʹ͍ͭͯ
    w ͓٬༷͸/05")05&-ͷΞϓϦΛܦ༝ͯ͠$4
    ͱνϟοτΛߦ͑Δ
    w /05")05&-ͷ֤ϋ΢εʹӡӦελοϑ͕ࡏத
    ͍ͯ͠Δ
    w ӡӦελοϑ$4͚ͩͲ͓٬༷͔Β͢Δͱ

    Ͳͬͪ΋ίϯγΣϧδϡ

    View Slide

  11. νϟοτͷ༷ࢠ

    View Slide

  12. ࣌ؒ೔ͷॊೈͳରԠ
    w $4ରԠʹ͸Ӧۀ͕࣌ؒଘࡏ͢Δ
    w ಇ͖͗͢๷ࢭͷ؍఺
    w ࣌ؒ೔ɺ͓٬༷ͷཁ๬ʹॊೈʹରԠͰ͖Δ
    Α͏ʹ͢Δ
    w ैۀһͷෛ୲΋ݮΒ͠ɺैۀһͷಇ͖͗͢Λ๷͙
    ͜ͱͰɺΑΓྑ͍࣭ͷߴ͍αʔϏεΛఏڙ͢Δ

    View Slide

  13. ͓٬༷ʹ࠷େݶͷՁ஋Λఏڙ͢Δ

    View Slide

  14. ͓٬༷ʹ࠷େݶͷՁ஋Λఏڙ
    w "*͕Ͱ͖Δ͜ͱʢߏ૝ʣ
    w Ұྲྀͷελοϑͷ͓͢͢Ίͷҿ৯ళ΍ΞΫςΟϏ
    ςΟͳͲɺ࣭ͷߴ͍৘ใΛఏҊ
    w ώτ͕Ͱ͖Δ͜ͱ
    w ྉཧ΍ਗ਼૟ͳͲɺ଺ࡏʹຬ଍͍͚ͯͨͩ͠ΔΑ͏
    ͳΦϖϨʔγϣϯ

    View Slide

  15. ׆༻͍ͯ͠Δٕज़
    νϟοτج൫ɺνϟοτϑϩʔ΍ࡶஊɾఏҊ

    View Slide

  16. w νϟοτج൫
    w 4VOTIJOF$POWFSTBUJPO
    w νϟοτϑϩʔ
    w %JBMPH
    fl
    PX$9
    w ࡶஊɾఏҊ
    w (15 (15 -BOH$IBJO
    ׆༻͍ͯ͠Δٕज़

    View Slide

  17. ׆༻͍ͯ͠Δٕज़

    View Slide

  18. 4VOTIJOF$POWFSTBUJPOT
    GPSNFSMZTNPPDIJP

    View Slide

  19. w $4͕ސ٬ͱ͞·͟·ͳਓؾϝοηʔδϯάΞϓϦ
    Λ௨ͯ͡ίϛϡχέʔγϣϯΛͱΔ͜ͱ͕Ͱ͖Δϓ
    ϥοτϑΥʔϜ
    w νϟοτ؅ཧɺϦονϝοηʔδϯάɺΞΧ΢ϯ
    τ؅ཧͳͲͷ"1*͕͋Δ
    w $4͸;FOEFTLܦ༝Ͱνϟοτͷ΍ΓऔΓ͕Մೳ
    4VOTIJOF$POWFSTBUJPO

    View Slide

  20. IUUQTUJOZVSMDPNZDLCZD
    $4ଆͷνϟοτͷ֓ཁʹ͍ͭͯ͸ͪ͜Βʂ

    View Slide

  21. 伴͸4XJUDICPBSE

    View Slide

  22. 4XJUDICPBSE

    View Slide

  23. w #PUͱώτΛ੾Γସ͑Δ͜ͱ͕Ͱ͖Δ࢓૊Έ
    w 1BTTDPOUSPM
    w ႈ౳ੑ͕୲อ͞Ε͍ͯΔɻ4XJUDICPBSEͷ޲ઌ
    Λมߋ͢Δ࢓૊Έ
    w νϟοτϧʔϜ͸ݱࡏ4XJUDICPBSE͕Ͳ͜ʹ޲
    ͍ͯΔ͔೺Ѳ͢Δ͜ͱ͕Մೳ
    w ͜ΕʹΑΓϝοηʔδͷૹ৴ઌΛ੾Γସ͑ΒΕΔ
    4XJUDICPBSE

    View Slide

  24. w /05")05&-Ͱ͸%JBMPH
    fl
    PX$9͕த৺
    w ;FOEFTL $4
    ΁੾ΓସΘΓɺ%JBMPH
    fl
    PX$9΁
    ໭ͬͯ͘Δ
    w (15΁੾ΓସΘΓɺ%JBMPH
    fl
    PX$9΁໭ͬͯ͘Δ
    4XJUDICPBSE

    View Slide

  25. 4XJUDICPBSE
    %JBMPH
    fl
    PX$9 (15
    $4 ;FOEFTL

    4UBSU

    View Slide

  26. %JBMPH
    fl
    PX$9

    View Slide

  27. w ($1্Ͱఏڙ͞ΕΔɺର࿩ܕ"*։ൃϓϥοτ
    ϑΥʔϜ
    w ձ࿩ͷഎܠͳͲͷঢ়ଶΛอ࣋Ͱ͖ΔͨΊෳࡶͳձ࿩
    Ͱ΋ɺߏ଄Խ͞Εͨσʔλ΁ม׵Ͱ͖Δ
    w 8FCIPPLΛར༻ͯ͠"1*ݺͼग़͠΋Մೳ
    w ݺͼग़͞Εͨ"1*Ͱ͸ߏ଄Խ͞ΕͨσʔλΛऔಘ
    Ͱ͖Δ
    %JBMPH
    fl
    PX$9

    View Slide

  28. $4΋ר͖ࠐΜͰϑϩʔઃܭΛ͠·ͨ͠

    View Slide

  29. w ࠓճ͸࣌ؒͷ౎߹্ׂѪ😇
    w ஌ݟ͕શવωοτʹ΋ͳͯ͘େมͰͨ͠ʜ
    w Ͳ͔͜Ͱ࿩͍ͨ͠
    %JBMPH
    fl
    PX$9

    View Slide

  30. (15 (15

    View Slide

  31. w 0QFO"*͕ఏڙ͢ΔδΣωϨʔςΟϒ"*ͷ"1*Λ
    ར༻ʢ$IBU$PNQMFUJPO

    w %JBMPH
    fl
    PX$9ͷߏஙࡁΈձ࿩ϑϩʔͰ͸ิ͑Β
    Εͳ͍෦෼Λαϙʔτ͢Δ
    w ݱঢ়͸ࡶஊͱ؍ޫ஍ͷ৘ใఏڙͷΈ
    (15 (15

    View Slide

  32. -BOH$IBJO🦜

    View Slide

  33. w --. -BSHF-BOHVBHF.PEFM
    ͱ૊Έ߹Θͤͯ
    ΞϓϦέʔγϣϯΛߏங͢ΔͨΊͷϥΠϒϥϦ
    w ΞϓϦέʔγϣϯ಺Ͱར༻Ͱ͖ΔػೳΛϢʔβʔ
    ͔ΒͷೖྗΛجʹͲΕΛ࢖͏͔൑அ࣮ͯ͠ߦ
    w 3F"DU3FBTPO"DU

    -BOH$IBJO🦜

    View Slide

  34. w ʮਪ࿦ʯ ߦಈཧ༝ͷਪ࿦
    ʮߦಈʯ ཧ༝ʹैͬͯ
    ߦಈ
    ͷ૬৐ޮՌʹΑΓɺϞσϧ͸ಈతͳਪ࿦Λ࣮
    ߦͯ͠ɺߦಈ͢ΔͨΊͷܭըΛ࡞੒ɺҡ࣋ɺௐ੔Ͱ
    ͖Δ
    3F"DU

    View Slide

  35. 3F"DU

    View Slide

  36. 3F"DU

    View Slide

  37. ࢼͨ͜͠ͱ

    View Slide

  38. [FSPTIPUSFBDUEFTDSJQUJPO
    %PDVNFOU2VFTUJPO"OTXFSJOH
    ݕࡧ݅਺ΛݮΒ͢
    ࢼͨ͜͠ͱ

    View Slide

  39. [FSPTIPUSFBDUEFTDSJQUJPO
    %PDVNFOU2VFTUJPO"OTXFSJOH
    ݕࡧ݅਺ΛݮΒ͢
    ࢼͨ͜͠ͱ

    View Slide

  40. w 3F"DUϑϨʔϜϫʔΫΛར༻ͯ͠πʔϧͷઆ໌ͷΈ
    ʹج͍ͮͯ࢖༻͢ΔπʔϧΛܾఆ͢Δ
    w (PPHMF1SPHSBNNBCMF4FBSDI&OHJOFͱ
    QHWFDUPSΛར༻ͨ͠ྨࣅݕࡧΛπʔϧͱͯ͠༻
    ҙ
    w IUUQTTVQBCBTFDPNCMPHPQFOBJ
    FNCFEEJOHTQPTUHSFTWFDUPS
    [FSPTIPUSFBDUEFTDSJQUJPO

    View Slide

  41. w 5IPVHIU"DUJPO πʔϧͷબ୒
    0CTFSWBUJPO
    5IPVHIU 'JOBM"OTXFS
    ͦΕͧΕςΩετ
    ੜ੒Λߦ͏ʢͦΕͧΕϦΫΤετʣ
    w ͜ͷϓϩηεΛԿճ͔܁Γฦ͢
    [FSPTIPUSFBDUEFTDSJQUJPO

    View Slide

  42. View Slide

  43. w 0QFO"* $IBU$PNQMFUJPO"1*
    ͷϨεϙϯε͕஗
    ͍ɺશମͰN͘Β͍
    w ୯ମͳΒ໿T͘Β͍͔͔Δ
    w 0QFO"*ͷΤϥʔ͕ଟ͍
    w -BOH$IBJO͕ظ଴͢Δϝοηʔδͷੜ੒ʹࣦഊͷΤ
    ϥʔ +40/ੜ੒

    w (PPHMFͷ݁Ռ͔Β݁࿦Λग़͢͜ͱ͸গͳ͔ͬͨ
    w λΠτϧͱεχϖοτ͕खʹೖΔɻ͜ͷத͔Β݁࿦Λ
    ग़͢ͷ͕೉͍ͬ͠Ά͍

    View Slide

  44. w 0QFO"*ͷϨεϙϯε͕஗͍ɺશମͰN͘Β͍
    w ୯ମͳΒ໿T͘Β͍͔͔Δ
    w 0QFO"*ͷΤϥʔ͕ଟ͍
    w -BOH$IBJO͕ظ଴͢Δϝοηʔδͷੜ੒ʹࣦഊͷ
    Τϥʔ +40/ੜ੒

    w (PPHMFͷ݁Ռ͔Β݁࿦Λग़͢͜ͱ͸গͳ͔ͬͨ
    w λΠτϧͱεχϖοτ͕खʹೖΔɻ͜ͷத͔Β݁
    ࿦Λग़͢ͷ͕೉͍ͬ͠Ά͍

    View Slide

  45. w ओʹτʔΫϯ্ݶΛ௒͑ͨΑͷΤϥʔͱँࡑͷΤϥʔ
    w 5IFTFSWFSIBEBOFSSPSQSPDFTTJOHZPVS
    SFRVFTU4PSSZBCPVUUIBU:PVDBOSFUSZZPVS
    SFRVFTU PSDPOUBDUVTUISPVHIPVSIFMQDFOUFS
    BUIFMQPQFOBJDPNJGZPVLFFQTFFJOHUIJTFSSPS
    1MFBTFJODMVEFUIFSFRVFTU*%ʜJOZPVSFNBJM

    w ँࡑͷΤϥʔ͸ϦΫΤετ਺͕૿Ճ͢ΔͱΤϥʔ͕૿͑Δ
    w ݴ͏௨ΓʹϦτϥΠ͢Δͱ΋ͬͱ૿͑Δ
    0QFO"*ͷΤϥʔ͕ଟ͍

    View Slide

  46. ࣮ࡍͷϝʔϧͷճ౴
    3FRVFTU*%Λ͚ͭͯϝʔϧ
    Կ෼͔଴ͬͯϦτϥΠͯ͠Ͷʂ
    ଓ͘Α͏ͩͬͨΒɺ͍Ζ͍Ζ৘ใΛ
    ఴ෇ͯ͠ૹͬͯͶʂ

    View Slide

  47. 3FRVFTU*%ͱ͸ʜ
    😇

    View Slide

  48. [FSPTIPUSFBDUEFTDSJQUJPO
    %PDVNFOU2VFTUJPO"OTXFSJOH
    ݕࡧ݅਺ΛݮΒ͢
    ࢼͨ͜͠ͱ

    View Slide

  49. w πʔϧΛQHWFDUPSΛར༻ͨ͠ྨࣅݕࡧͷΈʹߜΔ
    w ಘΒΕͨݕࡧ݁ՌʢυΩϡϝϯτʣΛαϚϥΠζ͠
    ͯɺͦͷத͔Βճ౴Λ୳͢
    w 0QFO"*΁ͷϦΫΤετ਺ΛݮΒ͢
    %PDVNFOU2VFTUJPO"OTXFSJOH

    View Slide

  50. w πʔϧΛQHWFDUPSΛར༻ͨ͠ྨࣅݕࡧͷΈʹߜΔ
    w ಘΒΕͨݕࡧ݁ՌʢυΩϡϝϯτʣΛαϚϥΠζ͠
    ͯɺͦͷத͔Βճ౴Λ୳͢
    w 0QFO"*΁ͷϦΫΤετ਺ΛݮΒ͢
    %PDVNFOU2VFTUJPO"OTXFSJOH

    View Slide

  51. τʔΫϯͷ্ݶ͕͋ΔͷͰυΩϡϝϯτ΋จࣈ਺
    ͳͲͰ෼ׂ ࣈ͘Β͍
    ͯ͠ɺͦΕͧΕΛ
    0QFO"*ʹཁ໿ͯ͠΋Β͏
    ͦΕͧΕαϚϥΠζͨ݁͠ՌΛҰͭʹ·ͱΊͯཁ
    ໿͢Δ CZ0QFO"*

    ࠷ऴ݁Ռʹ୳͍ͯ͠Δ࣭໰ͷ಺༰͕͋Δ͔֬ೝ
    CZ0QFO"*

    αϚϥΠζճ౴ͷ୳ࡧ

    View Slide

  52. NT௒͑ͯΔ෦෼͕0QFO"* $PNQMFUJPO

    View Slide

  53. w ϦΫΤετ਺͸·ͩଟ͍͕Τϥʔ਺͸ݮͬͨ
    w Ϩεϙϯε࣌ؒ͸T͘Β͍ʹͳͬͨ
    w %#ʹొ࿥͞ΕͯΔ಺༰ʹج͍࣭ͮͨ໰ͳΒճ౴Λ
    ฦͯ͘͠ΕΔ

    View Slide

  54. [FSPTIPUSFBDUEFTDSJQUJPO
    %PDVNFOU2VFTUJPO"OTXFSJOH
    ݕࡧ݅਺ΛݮΒ͢
    ࢼͨ͜͠ͱ

    View Slide

  55. .BQ3FEVDFΞϧΰϦζϜΛ࢖༻
    IUUQTMBOHDIBJOSFBEUIFEPDTJPFOMBUFTU
    NPEVMFTJOEFYFT
    [email protected]
    ฒྻͰॲཧͯ͠Δͱॻ͔Ε͍ͯΔ͕τϨʔεΛݟͨ
    ײ͡௚ྻ
    ͱΓ͔͋͑ͣ݅Β݅΁
    ݕࡧ݅਺ΛݮΒ͢

    View Slide

  56. ੺࿮͕υΩϡϝϯτͷཁ໿ͯ͠Δ෦෼

    View Slide

  57. .BQ3FEVDFΞϧΰϦζϜΛ࢖༻͍ͯͨ͠
    IUUQTMBOHDIBJOSFBEUIFEPDTJPFOMBUFTU
    NPEVMFTJOEFYFT
    [email protected]
    ฒྻͰॲཧͯ͠Δͱॻ͔Ε͍ͯΔ͕τϨʔεΛݟͨ
    ײ͡௚ྻ
    ͱΓ͔͋͑ͣ݅Β݅΁
    ݕࡧ݅਺ΛݮΒ͢

    View Slide

  58. ੺࿮͕υΩϡϝϯτͷཁ໿ͯ͠Δ෦෼

    View Slide

  59. ౰ͨΓલ͚ͩͲ෼ׂɺจॻͷཁ໿ϩδοΫ͸T
    T΁ݮͬͨ
    શମͰT͘Β͍
    ਫ਼౓͸མͪͨײ͢͡Δ
    ݕࡧ݅਺ΛݮΒ͢

    View Slide

  60. ࠷ऴ݁Ռ

    View Slide

  61. ࠓޙʹ͍ͭͯ
    ʮ,FWJOʯΛͲ͏ਐԽ͍͔ͤͯ͘͞

    View Slide

  62. w ෳࡶͳϑϩʔͷ੔ཧ
    w νϟοτʹدͤ͗ͯ͢Δ෦෼΋͋Δͱࢥ͏ͷͰɺ
    ΞϓϦͷػೳͱͯ͠Ҡߦ͍͖͍ͯͨ͠
    w Ͱ͖Δ͚ͩ৘ใఏڙͷΈΛߦ͏Α͏ʹ࣮૷͍ͯ͠
    ͖͍ͨ
    w ೖྗͷϩδοΫ͕େม
    ࠓޙʹ͍ͭͯ %JBMPH
    fl
    PX$9

    View Slide

  63. w σʔλΛ૿΍͢
    w ճ౴ͷਫ਼౓Λ্͛Δɻ·ͩ݅͘Β͍
    w 0QFO"*ͷϨεϙϯε͕஗͍ɺΤϥʔ͕ଟ͍
    w Ωϟογϡઓུɺཁ໿ϩδοΫͰ(15Λ࢖
    ༻ɺϩδοΫͷมߋ
    ࠓޙʹ͍ͭͯ (15

    View Slide

  64. ͕࣌ؒͳ͍ͷͰ͍ͬͺׂ͍Ѫ͠·͕ͨ͠ʜ

    ͱΓ͋͑ͣΊͪΌͪ͘Όେม😇

    View Slide

  65. $50ͱਓ͚ͩͰ։ൃ͍ͯ͠ΔͷͰ

    ஥ؒΛืू͍ͯ͠·͢ʂ (15෦෼͸ਓ

    View Slide

  66. ͓·͚

    View Slide

  67. εϥΠυͷߏ੒ɺλΠτϧ͸
    $IBU(15͕ߟ͑·ͨ͠

    View Slide

  68. View Slide

  69. $IBU(15Ϛδ͍͢͝

    View Slide