Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
VoiceText Web APIでのGolang利用事例のご紹介
Search
tmaeda
January 21, 2015
Technology
2
2.2k
VoiceText Web APIでのGolang利用事例のご紹介
Golang meetup in Sapporo 2015/01/21 #sapgolang
tmaeda
January 21, 2015
Tweet
Share
More Decks by tmaeda
See All by tmaeda
アクターモデルの話
tmaedax
7
1.7k
Jupyter(主にnotebook)のご紹介
tmaedax
1
1.3k
それ NArray でできるよ
tmaedax
18
11k
AngularJSのご紹介
tmaedax
12
6.4k
静的型付き関数型言語のススメ
tmaedax
3
1.4k
Other Decks in Technology
See All in Technology
ハッカソン by 生成AIハッカソンvol.05
1ftseabass
PRO
0
150
FOSS4G 2025 KANSAI QGISで点群データをいろいろしてみた
kou_kita
0
260
Claude Code Actionを使ったコード品質改善の取り組み
potix2
PRO
6
2.6k
250627 関西Ruby会議08 前夜祭 RejectKaigi「DJ on Ruby Ver.0.1」
msykd
PRO
2
370
高速なプロダクト開発を実現、創業期から掲げるエンタープライズアーキテクチャ
kawauso
1
340
2025-06-26_Lightning_Talk_for_Lightning_Talks
_hashimo2
2
110
LangChain Interrupt & LangChain Ambassadors meetingレポート
os1ma
2
220
AWS テクニカルサポートとエンドカスタマーの中間地点から見えるより良いサポートの活用方法
kazzpapa3
2
610
asken AI勉強会(Android)
tadashi_sato
0
140
解析の定理証明実践@Lean 4
dec9ue
1
200
Tech-Verse 2025 Keynote
lycorptech_jp
PRO
0
1.3k
生成AIで小説を書くためにプロンプトの制約や原則について学ぶ / prompt-engineering-for-ai-fiction
nwiizo
4
3.6k
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
69
11k
GraphQLとの向き合い方2022年版
quramy
49
14k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Statistics for Hackers
jakevdp
799
220k
Side Projects
sachag
455
42k
Visualization
eitanlees
146
16k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
KATA
mclloyd
30
14k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
How STYLIGHT went responsive
nonsquared
100
5.6k
Transcript
7PJDF5FYU8FC"1* Ͱͷ(PMBOHར༻ࣄྫ ͷ͝հ !UNBFEB͑ʹ͠ςοΫ (PMBOHNFFUVQJO4BQQPSP
!UNBFEB w ג ͑ʹ͠ςοΫͰΤϯδχΞΛ͍ͯ͠·͢ɻ w3VCZͷࣄ͕ଟ͍Ͱ͢ɻ w࠷ۙ5ZQF4DSJQUͱ͔3FBDUͱ͔ JQZUIPO QBOEBTͱ͔ʹڵຯ͕͋Γ·͢ɻ wԑ͋ͬͯɺ͙͜͜Β͍গ͚ͩ͠(P͍ͬͯ ·͢ɻ
ຊͷ͓ w7PJDF5FYU8FC"1*ͷ͝հ w(PΛͬͯΈͯͷײ
7PJDF5FYU8FC"1* w)0:"αʔϏεגࣜձ༷͕ࣾӡӦ͍ͯ͠Δߴ ࣭Ի߹αʔϏεͰ͢ɻ w8FC"1*ͷΠϯλʔϑΣʔε෦ฐࣾͰ։ൃ ͷ͓ख͍Λ͖ͤͯ͞·ͨ͠ɻ
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”
7PJDF5FYU8FC"1*ͷߏ Portal(Rails) Wrapper (Go)! ར༻ऀ VoiceText Engine Ի߹αʔόʔ Heroku Postgre!
SQL ɾϩά ɾϢʔβʔ ೝূɺϩάॻࠐ Ϣʔβʔ! ొ Ϣʔβʔొ LoadBalancer APIར༻
গ͠ͷؒɺσϞ͔ͶͯɺVoiceText Ͱ͠·͢ɻ showͰ͢ɻςϨϏ౦ژܥྻʮϞϠ ϞϠ͞·͊ʙͣ2ʯͱ͍͏൪ͷφ ϨʔγϣϯΛ୲͍ͯ͠·͢ɻ
ͳͥ(Pʁ wͱฒྻੑ w$ͷϥΠϒϥϦͱͷੑ w։ൃޮ hikariͰ͢ɻ
ͳͥ(Pʁ wͱฒྻੑ w$ͷϥΠϒϥϦͱͷੑ w։ൃޮ takeruͰ͢ɻ
ͳͥ(Pʁ wͱฒྻੑ w$ͷϥΠϒϥϦͱͷੑ w։ൃޮ harukaͰ͢ɻ
ͳͥ(Pʁ wͱฒྻੑ w$ͷϥΠϒϥϦͱͷੑ w։ൃޮ bearͰ͢ɻ
σϞ͓͠·͍ santaͰ͢ɻ
ྑ͔ͬͨͱ͜Ζ GoΛͬͯΈͯ
࣮ߦ w$΄ͲϝϞϦཧϙΠϯλͷཧʹؾΛΘ ͳͯ͘ࡁΉ͕ɺ$ͱಉఔͷ͕ͰΔɻ wHPSPVUJOFͱDIBOOFMΛར༻ͯ͠ɺൺֱత؆୯ʹ ϚϧνίΞΛ׆͔͢ฒྻϓϩάϥϛϯά͕Ͱ͖ Δɻ
$ͱͷੑ wඞཁ࠷খݶͷखଓ͖ Ͱɺ$Ͱॻ͔Εͨ֎ ෦ϥΠϒϥϦͷؔ Λݺͼग़ͤΔɻ package rand ! /* #include
<stdlib.h> */ 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)) }
੩తνΣοΫ wίϯύΠϧ࣌ʹ੩తܕνΣοΫ͕ಇ͘ͷͰɺ ͠ΐʔͳ͍ϛείϯύΠϧ࣌ʹ͛Δɻ wͦͷଞɺએݴͨ͠ͷʹͬͯͳ͍มͱ͔ɺͬ ͯͳ͍ύοέʔδͱ͔ࢦఠͯ͘͠Εͯɺ݁ߏ ɻ
ॆ࣮ͷϥΠϒϥϦ wඞཁ࠷ݶͷϥΠϒϥϦඪ४Ͱଗ͍ͬͯΔɻ wɺจࣈྻɺਖ਼نදݱɺྻNBQͳͲͷ ίϯςφɺ࣌ؒɺύʔαʔɺ04ɺωοτϫʔ Ϋɺ҉߸ɺѹॖɺϩάͳͲͳͲɻ wΦʔϓϯιʔεͷϥΠϒϥϦ͍Ζ͍Ζ͋Δɻ
γϯϓϧͳݴޠ༷ wΫϥεͳ͍͚ͲɺܕʹϝιουΛੜͤΔͷͰ ࠔΒͳ͍ɻ wྫ֎ॲཧػೳͳ͍͚ͲɺෳฦΓͰͦΜͳʹ ࠔΒͳ͍ɻ w(FOFSJDTͳ͍͚ͲɺྻͱNBQͰཁૉͷܕΛ ࢦఆͰ͖ΔͷͰɺଟ͘ͷέʔεͰࠔΒͳ͍ɻ
HPGNU wݴޠඪ४ͷίʔσΟϯάن͕͋ͬͯɺHPGNUί ϚϯυΛ͏ͱܗͰ͖ΔͷͰɺίʔσΟϯά نʹ·ͭΘΔफڭઓ૪͕ى͖Δස͕গͳ͍ɻ
ݴޠ༷͕҆ఆ w݁ߏසൟʹ(PͷόʔδϣϯΞοϓ͕ߦΘΕΔ ͕ɺେ͖͘ڍಈ͕มΘͬͯޓੑͷ͕ى͖ Δɺͱ͍͏͜ͱ͕͋·Γͳ͔ͬͨʢগͳ͘ͱ ͜Ε·Ͱʣɻ
ͪΐͬͱෆຬͳͱ͜Ζ
දݱྗ͕গͳΊ w(FOFSJDTཉ͍͠ wతσʔλܕͱύλʔϯϚονཉ͍͠
ϥΠϒϥϦͷػೳ࣭ w͍ظؒɺଟ͘ͷਓʹ͍ࠐ·Εͨڥ +BWBͱ ͔3VCZͱ͔ ͱൺֱ͢ΔͱɺϥΠϒϥϦͷػೳ ࣭͕·ͩख़͍ͯ͠ͳ͍ײ͡ɻ wࣗಈςετڥ wจࣈίʔυมʢ͍ΘΏΔʮμογϡʯ ͱ͔ʣ wGPSL
FYFDඇޮ
·ͱΊ
·ͱΊ wଟগͷෆຬ͋Δͷͷɺશମతʹඇৗʹ όϥϯεͷऔΕͨྑ͍ݴޠɾڥͰେม࣮༻త ͳͷͰେม͓͢͢ΊͰ͖·͢ɻ w7PJDF5FYU8FC"1*ΛͲ͏ͧ͝ርʹɻ ͬͯgolang