LoginSignup
58
17

More than 5 years have passed since last update.

Single Hellがツライので彼女を造ってみた

Last updated at Posted at 2016-12-05

この記事は、[カノジョできないエンジニア Advent Calendar 2016] の5日目の記事です。

私「今年も彼女が出来ないまま年末を迎えることになるのか…」
???「彼女が出来ないなら造ればいいじゃないか」
私「そ、そうか! 出来ないなら作ればいい… 出来ないなら自分で造ってしまえばいいんだ!」

ということで自分好みの彼女を造ろうと思います。

どうやって彼女を造るか

彼女を造る方法はたくさん有ります。この記事を見ているであろうエンジニアの皆さんであれば色々思いつきますよね?

  • 水35Lと炭素20Kgとアンモニア4L... その他諸々を用意して錬成する
  • アンドロイドを造ってAIを人並に進化させる
  • 現実を微分するか二次元を積分する

告白する?確率論的に上記の手法のほうが優れている気がするのですがいかがでしょうか?駄目ですかそうですか

色々手法は存在しますが今回は最近よく使われているSlack上に造っていこうと思います.

Slack上で彼女と会話したい

Slack上に彼女を造る方法もたくさん存在します。

  • hubot
  • botkit
  • webhookと適当なスクリプト

まだまだ他にもたくさんあると思いますが今回はMicrosoft Bot FrameworkとMicrosoft Azureで彼女を造っていこうと思います。

Microsoft Bot Framework とは

今年3月に「Build 2016」で発表されたBot作成用フレームワークです。
Bot本体の作成と他のサービスへの接続を別々に考えながら開発することが出来るのでとてもおすすめです!

彼女の作成手順

今回は以下のような工程で造って行きます.

  • Bot Frameworkの環境構築
  • Botの作成
  • Azure へのアップロード
  • Bot Directoryへの公開
  • Slackとの接続

では駆け足で造っていきます

環境構築

まずはここからテンプレートをダウンロードしてきます。
ダウンロードした物はVisual Studioのテンプレートフォルダにそのまま入れます。
必要であればここからデバッグ用のエミュレータもダウンロードしておきましょう。

Azureはここから使えるように準備しておきます。
(学生ならこちら!)

Botの作成

早速造っていきます。
プロジェクトをテンプレートから作成して

01.png

コントローラ内のPostメソッドにBotの会話パターンを仕込んで

02.png

出来上がりです!

03.png

Azureへのアップロード

出来上がったボットはWeb APIベースの物なのでAzure App servicesに公開します。

04.png

Bot Directoryへの公開

Botを使うためには登録する必要があるので登録します。

05-2.png

登録すると2つの鍵とパスワードを手に入れられるのでそれをプロジェクトのWeb.Configに書き込んでもう1回アップロードします。

06.png

Slackとの接続

Bot Connectorを使ってSlackと連携します。

公式サイトから先程登録した自分のBotからSlackのConnectを選択します。

07.png

必要な情報を召喚したいSlackから引っ張ってきて…
登録をして…
11.png

チャンネルに招待すれば完了です!

13.png

彼女が造れた!

12.png

これさえできれば今日から貴方も自分好みの彼女を造れるのです!
私「これでクリスマスは悲しくないぞ!」


クリスマスの夜、彼の部屋からはすすり泣く声が聞こえましたとさ

終わりに

Bot Frameworkは本当に簡単にBotを作成できるツールです。もちろん賢いBotを作るためには形態素解析や機械学習等専門的な知識が必要になりますが、他のサービスとの連携や公開等は非常に簡単ですし、Cognitive Serviceをはじめとする様々なAPIと組み合わせれば比較的簡単により人間に近いコミュニケーションが出来るBotを作る事ができます。年末のお休み期間にお試ししてみると楽しいですよ! QiitaにもBot Frameworkのチュートリアルが何個か載っているので気になったかたは是非是非やってみてください!

追伸:Bot作りは楽しいですがやっぱり彼女も欲しいです

58
17
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
58
17