Slide 1

Slide 1 text

7PJDF5FYU8FC"1* Ͱͷ(PMBOHར༻ࣄྫ ͷ͝঺հ !UNBFEB͑ʹ͠ςοΫ (PMBOHNFFUVQJO4BQQPSP

Slide 2

Slide 2 text

!UNBFEB w ג ͑ʹ͠ςοΫͰΤϯδχΞΛ͍ͯ͠·͢ɻ w3VCZͷ࢓ࣄ͕ଟ͍Ͱ͢ɻ w࠷ۙ͸5ZQF4DSJQUͱ͔3FBDUͱ͔ JQZUIPOQBOEBTͱ͔ʹڵຯ͕͋Γ·͢ɻ wԑ͋ͬͯɺ͜͜೥͙Β͍গ͚ͩ͠(P࢖͍ͬͯ ·͢ɻ

Slide 3

Slide 3 text

ຊ೔ͷ͓࿩ w7PJDF5FYU8FC"1*ͷ͝঺հ w(PΛ࢖ͬͯΈͯͷײ૝

Slide 4

Slide 4 text

7PJDF5FYU8FC"1* w)0:"αʔϏεגࣜձ༷͕ࣾӡӦ͍ͯ͠Δߴ඼ ࣭Ի੠߹੒αʔϏεͰ͢ɻ w8FC"1*ͷΠϯλʔϑΣʔε෦෼͸ฐࣾͰ։ൃ ͷ͓ख఻͍Λͤͯ͞௖͖·ͨ͠ɻ

Slide 5

Slide 5 text

7PJDF5FYU8FC"1* curl "https://api.voicetext.jp/v1/tts" \ -o "test.wav" \ -u "YOUR_API_KEY:" \ -d "text=͓͸Α͏͍͟͝·͢" \ -d “speaker=hikari" \ -d “emotion=happiness” \ -d “emotion_level=2”

Slide 6

Slide 6 text

7PJDF5FYU8FC"1*ͷߏ੒ Portal(Rails) Wrapper (Go)! ར༻ऀ VoiceText Engine Ի੠߹੒αʔόʔ Heroku Postgre! SQL ɾϩά ɾϢʔβʔ ೝূɺϩάॻࠐ Ϣʔβʔ! ొ࿥ Ϣʔβʔొ࿥ LoadBalancer APIར༻

Slide 7

Slide 7 text

গ͠ͷؒɺσϞ΋͔ͶͯɺVoiceText Ͱ࿩͠·͢ɻ showͰ͢ɻςϨϏ౦ژܥྻʮϞϠ ϞϠ͞·͊ʙͣ2ʯͱ͍͏൪૊ͷφ ϨʔγϣϯΛ୲౰͍ͯ͠·͢ɻ

Slide 8

Slide 8 text

ͳͥ(Pʁ w଎౓ͱฒྻੑ w$ͷϥΠϒϥϦͱͷ਌࿨ੑ w։ൃޮ཰ hikariͰ͢ɻ

Slide 9

Slide 9 text

ͳͥ(Pʁ w଎౓ͱฒྻੑ w$ͷϥΠϒϥϦͱͷ਌࿨ੑ w։ൃޮ཰ takeruͰ͢ɻ

Slide 10

Slide 10 text

ͳͥ(Pʁ w଎౓ͱฒྻੑ w$ͷϥΠϒϥϦͱͷ਌࿨ੑ w։ൃޮ཰ harukaͰ͢ɻ

Slide 11

Slide 11 text

ͳͥ(Pʁ w଎౓ͱฒྻੑ w$ͷϥΠϒϥϦͱͷ਌࿨ੑ w։ൃޮ཰ bearͰ͢ɻ

Slide 12

Slide 12 text

σϞ͓͠·͍ santaͰ͢ɻ

Slide 13

Slide 13 text

ྑ͔ͬͨͱ͜Ζ GoΛ࢖ͬͯΈͯ

Slide 14

Slide 14 text

࣮ߦ଎౓ w$΄Ͳ͸ϝϞϦ؅ཧ΍ϙΠϯλͷ؅ཧʹؾΛ࢖Θ ͳͯ͘ࡁΉ͕ɺ$ͱಉఔ౓ͷ଎౓͕ͰΔɻ wHPSPVUJOFͱDIBOOFMΛར༻ͯ͠ɺൺֱత؆୯ʹ ϚϧνίΞΛ׆͔͢ฒྻϓϩάϥϛϯά͕Ͱ͖ Δɻ

Slide 15

Slide 15 text

$ͱͷ਌࿨ੑ wඞཁ࠷খݶͷखଓ͖ Ͱɺ$Ͱॻ͔Εͨ֎ ෦ϥΠϒϥϦͷؔ਺ Λݺͼग़ͤΔɻ package rand ! /* #include */ import "C" ! func Random() int { // Cͷੈքͷrandom()ؔ਺Λݺͼग़ͯ͠ // ݁ՌΛgoͷੈքͷintʹม׵ͯ͠ฦ͢ return int(C.random()) } ! func Seed(i int) { // goͷੈքͷintܕͷiΛCͷੈքͷuintʹม׵ͯ͠ɺ // Cͷੈքͷsrandomؔ਺ʹҾ਺ͱͯ͠౉͢ C.srandom(C.uint(i)) }

Slide 16

Slide 16 text

੩తνΣοΫ wίϯύΠϧ࣌ʹ੩తܕνΣοΫ͕ಇ͘ͷͰɺ ͠ΐʔ΋ͳ͍ϛε͸ίϯύΠϧ࣌ʹ๷͛Δɻ wͦͷଞɺએݴͨ͠ͷʹ࢖ͬͯͳ͍ม਺ͱ͔ɺ࢖ͬ ͯͳ͍ύοέʔδͱ͔΋ࢦఠͯ͘͠Εͯɺ݁ߏ਌ ੾ɻ

Slide 17

Slide 17 text

ॆ࣮ͷϥΠϒϥϦ wඞཁ࠷௿ݶͷϥΠϒϥϦ͸ඪ४Ͱଗ͍ͬͯΔɻ w਺஋ɺจࣈྻɺਖ਼نදݱɺ഑ྻ΍NBQͳͲͷ ίϯςφɺ࣌ؒɺύʔαʔɺ04ɺωοτϫʔ Ϋɺ҉߸ɺѹॖɺϩάͳͲͳͲɻ wΦʔϓϯιʔεͷϥΠϒϥϦ΋͍Ζ͍Ζ͋Δɻ

Slide 18

Slide 18 text

γϯϓϧͳݴޠ࢓༷ wΫϥεͳ͍͚ͲɺܕʹϝιουΛੜ΍ͤΔͷͰ ࠔΒͳ͍ɻ wྫ֎ॲཧػೳͳ͍͚Ͳɺෳ਺ฦΓ஋ͰͦΜͳʹ ࠔΒͳ͍ɻ w(FOFSJDTͳ͍͚Ͳɺ഑ྻͱNBQͰ͸ཁૉͷܕΛ ࢦఆͰ͖ΔͷͰɺଟ͘ͷέʔεͰ͸ࠔΒͳ͍ɻ

Slide 19

Slide 19 text

HPGNU wݴޠඪ४ͷίʔσΟϯάن໿͕͋ͬͯɺHPGNUί ϚϯυΛ࢖͏ͱ੔ܗͰ͖ΔͷͰɺίʔσΟϯά ن໿ʹ·ͭΘΔफڭઓ૪͕ى͖Δස౓͕গͳ͍ɻ

Slide 20

Slide 20 text

ݴޠ࢓༷͕҆ఆ w݁ߏසൟʹ(PͷόʔδϣϯΞοϓ͕ߦΘΕΔ ͕ɺେ͖͘ڍಈ͕มΘͬͯޓ׵ੑͷ໰୊͕ى͖ Δɺͱ͍͏͜ͱ͕͋·Γͳ͔ͬͨʢগͳ͘ͱ΋ ͜Ε·Ͱ͸ʣɻ

Slide 21

Slide 21 text

ͪΐͬͱෆຬͳͱ͜Ζ

Slide 22

Slide 22 text

දݱྗ͕গͳΊ w(FOFSJDTཉ͍͠ w୅਺తσʔλܕͱύλʔϯϚονཉ͍͠

Slide 23

Slide 23 text

ϥΠϒϥϦͷػೳ΍඼࣭ w௕͍ظؒɺଟ͘ͷਓʹ࢖͍ࠐ·Εͨ؀ڥ +BWBͱ ͔3VCZͱ͔ ͱൺֱ͢ΔͱɺϥΠϒϥϦͷػೳ ΍඼࣭͕·ͩ੒ख़͍ͯ͠ͳ͍ײ͡ɻ wࣗಈςετ؀ڥ wจࣈίʔυม׵ʢ͍ΘΏΔʮ೾μογϡ໰୊ʯ ͱ͔ʣ wGPSLFYFDඇޮ཰໰୊

Slide 24

Slide 24 text

·ͱΊ

Slide 25

Slide 25 text

·ͱΊ wଟগͷෆຬ఺͸͋Δ΋ͷͷɺશମతʹ͸ඇৗʹ όϥϯεͷऔΕͨྑ͍ݴޠɾ؀ڥͰେม࣮༻త ͳͷͰେม͓͢͢ΊͰ͖·͢ɻ w7PJDF5FYU8FC"1*ΛͲ͏ͧ͝᩾ርʹɻ ࢖ͬͯgolang