Submit Search
Upload
Clojure で chatbot 作るライブラリ作った
•
0 likes
•
3,396 views
Masashi Iizuka
Follow
Tokyo.clj#23 での発表資料。 Clojure で chatbot を作るためのライブラリ jubot の紹介
Read less
Read more
Technology
Report
Share
Report
Share
1 of 10
Download now
Download to read offline
Recommended
Tizen 2.0 alpha でサポートされなかった native api
Tizen 2.0 alpha でサポートされなかった native api
Naruto TAKAHASHI
Pythonで電卓アプリ(デスクトップ)を作成する
Pythonで電卓アプリ(デスクトップ)を作成する
Jun Okazaki
LT#7 Hello coffeeしてきた
LT#7 Hello coffeeしてきた
Shingo Inoue
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
Hisateru Tanaka
Pyconjp2014_implementations
Pyconjp2014_implementations
masahitojp
どこでも動くゲームを作るためのベタープラクティス
どこでも動くゲームを作るためのベタープラクティス
5mingame2
『こなへん』ができるまで ☆リリース直前編☆
『こなへん』ができるまで ☆リリース直前編☆
5mingame2
Python × Herokuで作る 雑談slack bot
Python × Herokuで作る 雑談slack bot
dcubeio
Recommended
Tizen 2.0 alpha でサポートされなかった native api
Tizen 2.0 alpha でサポートされなかった native api
Naruto TAKAHASHI
Pythonで電卓アプリ(デスクトップ)を作成する
Pythonで電卓アプリ(デスクトップ)を作成する
Jun Okazaki
LT#7 Hello coffeeしてきた
LT#7 Hello coffeeしてきた
Shingo Inoue
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
Hisateru Tanaka
Pyconjp2014_implementations
Pyconjp2014_implementations
masahitojp
どこでも動くゲームを作るためのベタープラクティス
どこでも動くゲームを作るためのベタープラクティス
5mingame2
『こなへん』ができるまで ☆リリース直前編☆
『こなへん』ができるまで ☆リリース直前編☆
5mingame2
Python × Herokuで作る 雑談slack bot
Python × Herokuで作る 雑談slack bot
dcubeio
Goでこれどうやるの? 入門
Goでこれどうやるの? 入門
zaru sakuraba
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
ThinReports
Hashicorpツールズ
Hashicorpツールズ
Uchio Kondo
Cake php + php unitによる実践的ユニットテスト
Cake php + php unitによる実践的ユニットテスト
慶信 若松
Boost.Logとfluentdで始めるログ活用術
Boost.Logとfluentdで始めるログ活用術
Toshiki Teramura
Pythonで画面付きのアプリを作成する
Pythonで画面付きのアプリを作成する
Jun Okazaki
OSS Reporting Solution ThinReports
OSS Reporting Solution ThinReports
ThinReports
PHPデプロイツールの世界
PHPデプロイツールの世界
Yuuki Takezawa
PHPとJavaScriptの噺
PHPとJavaScriptの噺
Shogo Kawahara
PyCon JP 2014 plone terada
PyCon JP 2014 plone terada
Manabu Terada
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
Yoshifumi Kawai
node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成
shigeki_ohtsu
当番をランダムに割り当ててみる ~ on-dutyTable.py ~
当番をランダムに割り当ててみる ~ on-dutyTable.py ~
genroku
PHP x AWS でスケーラブルなシステムをつくろう
PHP x AWS でスケーラブルなシステムをつくろう
Taiji INOUE
Ansibleに貢献してみよう
Ansibleに貢献してみよう
Michihito Shigemura
ページャ lessを使いこなす
ページャ lessを使いこなす
Toshiyuki Shimono
ふつうのcore.async
ふつうのcore.async
Tsutomu Yano
PHPの今とこれから2015
PHPの今とこれから2015
Rui Hirokawa
Webブラウザで使える文献Web API取得結果のスプレッドシート化 ~ Google Colab始めました ~
Webブラウザで使える文献Web API取得結果のスプレッドシート化 ~ Google Colab始めました ~
genroku
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
Yoshifumi Kawai
Jbatch実践入門 #jdt2015
Jbatch実践入門 #jdt2015
Norito Agetsuma
リアルタイムOsのカスタマイズ
リアルタイムOsのカスタマイズ
Kazuhiro Takahashi
More Related Content
What's hot
Goでこれどうやるの? 入門
Goでこれどうやるの? 入門
zaru sakuraba
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
ThinReports
Hashicorpツールズ
Hashicorpツールズ
Uchio Kondo
Cake php + php unitによる実践的ユニットテスト
Cake php + php unitによる実践的ユニットテスト
慶信 若松
Boost.Logとfluentdで始めるログ活用術
Boost.Logとfluentdで始めるログ活用術
Toshiki Teramura
Pythonで画面付きのアプリを作成する
Pythonで画面付きのアプリを作成する
Jun Okazaki
OSS Reporting Solution ThinReports
OSS Reporting Solution ThinReports
ThinReports
PHPデプロイツールの世界
PHPデプロイツールの世界
Yuuki Takezawa
PHPとJavaScriptの噺
PHPとJavaScriptの噺
Shogo Kawahara
PyCon JP 2014 plone terada
PyCon JP 2014 plone terada
Manabu Terada
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
Yoshifumi Kawai
node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成
shigeki_ohtsu
当番をランダムに割り当ててみる ~ on-dutyTable.py ~
当番をランダムに割り当ててみる ~ on-dutyTable.py ~
genroku
PHP x AWS でスケーラブルなシステムをつくろう
PHP x AWS でスケーラブルなシステムをつくろう
Taiji INOUE
Ansibleに貢献してみよう
Ansibleに貢献してみよう
Michihito Shigemura
ページャ lessを使いこなす
ページャ lessを使いこなす
Toshiyuki Shimono
ふつうのcore.async
ふつうのcore.async
Tsutomu Yano
PHPの今とこれから2015
PHPの今とこれから2015
Rui Hirokawa
Webブラウザで使える文献Web API取得結果のスプレッドシート化 ~ Google Colab始めました ~
Webブラウザで使える文献Web API取得結果のスプレッドシート化 ~ Google Colab始めました ~
genroku
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
Yoshifumi Kawai
What's hot
(20)
Goでこれどうやるの? 入門
Goでこれどうやるの? 入門
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Hashicorpツールズ
Hashicorpツールズ
Cake php + php unitによる実践的ユニットテスト
Cake php + php unitによる実践的ユニットテスト
Boost.Logとfluentdで始めるログ活用術
Boost.Logとfluentdで始めるログ活用術
Pythonで画面付きのアプリを作成する
Pythonで画面付きのアプリを作成する
OSS Reporting Solution ThinReports
OSS Reporting Solution ThinReports
PHPデプロイツールの世界
PHPデプロイツールの世界
PHPとJavaScriptの噺
PHPとJavaScriptの噺
PyCon JP 2014 plone terada
PyCon JP 2014 plone terada
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成
当番をランダムに割り当ててみる ~ on-dutyTable.py ~
当番をランダムに割り当ててみる ~ on-dutyTable.py ~
PHP x AWS でスケーラブルなシステムをつくろう
PHP x AWS でスケーラブルなシステムをつくろう
Ansibleに貢献してみよう
Ansibleに貢献してみよう
ページャ lessを使いこなす
ページャ lessを使いこなす
ふつうのcore.async
ふつうのcore.async
PHPの今とこれから2015
PHPの今とこれから2015
Webブラウザで使える文献Web API取得結果のスプレッドシート化 ~ Google Colab始めました ~
Webブラウザで使える文献Web API取得結果のスプレッドシート化 ~ Google Colab始めました ~
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
Similar to Clojure で chatbot 作るライブラリ作った
Jbatch実践入門 #jdt2015
Jbatch実践入門 #jdt2015
Norito Agetsuma
リアルタイムOsのカスタマイズ
リアルタイムOsのカスタマイズ
Kazuhiro Takahashi
Dotnetconf2017
Dotnetconf2017
Yoshiyuki Taniguchi
cs-11. Python の条件分岐と繰り返し,ステップ実行
cs-11. Python の条件分岐と繰り返し,ステップ実行
kunihikokaneko1
Fluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent Bit
Seiya Mizuno
LogicFlow 概要
LogicFlow 概要
Tomoyuki Obi
【CEDEC2018】CPUを使い切れ! Entity Component System(通称ECS) が切り開く新しいプログラミング
【CEDEC2018】CPUを使い切れ! Entity Component System(通称ECS) が切り開く新しいプログラミング
Unity Technologies Japan K.K.
【Agile Forum in Gifu】 Visual Studio 2010 でみる、アジャイル開発における開発支援ツールの活用
【Agile Forum in Gifu】 Visual Studio 2010 でみる、アジャイル開発における開発支援ツールの活用
智治 長沢
IL2CPPに関する軽い話
IL2CPPに関する軽い話
Wooram Yang
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
Developers Summit
エキ Py 読書会02 2010/9/7
エキ Py 読書会02 2010/9/7
Tetsuya Morimoto
DevOps for Small Starter
DevOps for Small Starter
大要 伊藤
【関東GPGPU勉強会#3】OpenCVの新機能 UMatを先取りしよう
【関東GPGPU勉強会#3】OpenCVの新機能 UMatを先取りしよう
Yasuhiro Yoshimura
Kanonによるはじめてのアジャイル開発
Kanonによるはじめてのアジャイル開発
Takashi Okamoto
PythonのGUI_2018 with NSEG
PythonのGUI_2018 with NSEG
Jun Okazaki
20160215 04 java ee7徹底入門 jbatch
20160215 04 java ee7徹底入門 jbatch
Jun Inose
Introduction to boost test
Introduction to boost test
Kohsuke Yuasa
PL/Pythonで独自の集約関数を作ってみる
PL/Pythonで独自の集約関数を作ってみる
Uptime Technologies LLC (JP)
JavaOne2013報告会 JavaFX Update
JavaOne2013報告会 JavaFX Update
Takashi Aoe
Jspmとtypescriptで開発する
Jspmとtypescriptで開発する
Taketoshi 青野健利
Similar to Clojure で chatbot 作るライブラリ作った
(20)
Jbatch実践入門 #jdt2015
Jbatch実践入門 #jdt2015
リアルタイムOsのカスタマイズ
リアルタイムOsのカスタマイズ
Dotnetconf2017
Dotnetconf2017
cs-11. Python の条件分岐と繰り返し,ステップ実行
cs-11. Python の条件分岐と繰り返し,ステップ実行
Fluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent Bit
LogicFlow 概要
LogicFlow 概要
【CEDEC2018】CPUを使い切れ! Entity Component System(通称ECS) が切り開く新しいプログラミング
【CEDEC2018】CPUを使い切れ! Entity Component System(通称ECS) が切り開く新しいプログラミング
【Agile Forum in Gifu】 Visual Studio 2010 でみる、アジャイル開発における開発支援ツールの活用
【Agile Forum in Gifu】 Visual Studio 2010 でみる、アジャイル開発における開発支援ツールの活用
IL2CPPに関する軽い話
IL2CPPに関する軽い話
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
エキ Py 読書会02 2010/9/7
エキ Py 読書会02 2010/9/7
DevOps for Small Starter
DevOps for Small Starter
【関東GPGPU勉強会#3】OpenCVの新機能 UMatを先取りしよう
【関東GPGPU勉強会#3】OpenCVの新機能 UMatを先取りしよう
Kanonによるはじめてのアジャイル開発
Kanonによるはじめてのアジャイル開発
PythonのGUI_2018 with NSEG
PythonのGUI_2018 with NSEG
20160215 04 java ee7徹底入門 jbatch
20160215 04 java ee7徹底入門 jbatch
Introduction to boost test
Introduction to boost test
PL/Pythonで独自の集約関数を作ってみる
PL/Pythonで独自の集約関数を作ってみる
JavaOne2013報告会 JavaFX Update
JavaOne2013報告会 JavaFX Update
Jspmとtypescriptで開発する
Jspmとtypescriptで開発する
Recently uploaded
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
sugiuralab
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
Recently uploaded
(9)
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
Clojure で chatbot 作るライブラリ作った
1.
CLOJURE でCHATBOT 作るライブラリ 作った2015/02/21 Tokyo.clj#23 @uochan
2.
JUBOT
3.
何ができるか? チャットサービスでの利用 Slack repl (開発用) データの永続化 Redis メモリ(開発用) タスクのスケジュール実行 ex) 朝7時におはようと言わせる
4.
3つの特徴 1. ただの関数 2. repl
での効率的な開発 3. コンポーネント
5.
ただの関数 入力を処理する関数を書くだけ シンプル ただの関数なのでテストが書きやすい (defn ping-handler "jubot ping
- reply with 'pong'" [{text :text}] (if (= "ping" text) "pong"))
6.
REPL での効率的な開発 ;; repl
adapter の開始 user=> (start) ;; in: repl 上で bot にメッセージを送る特殊関数 user=> (in "jubot ping") jubot=> pong ;; ping-handler の修正を反映 user=> (restart) user=> (in "jubot ping") jubot=> PONG!!
7.
コンポーネント stuartsierra/component adapter, brain は全てcomponent Slack,
Redis以外への対応も簡単
8.
はじめ方 leiningen のテンプレートあります $ lein
new jubot YOUR_JUBOT_PROJECT $ cd YOUR_JUBOT_PROJECT $ lein repl user=> (start)
9.
最後に ドキュメントはまだ整理中です https://github.com/liquidz/jubot
10.
ご静聴ありがと うございまし た!
Download now