##百聞は一見にしかず
こんな感じのCSVファイルを準備します。
"鯖"
"鯵"
"鰈"
"鱸"
"鮑"
"鮪"
"鯨"
"鮭"
ライブラリを使ってアップロードすると・・・Entityが一瞬で出来上がります!
漢字から ローマ字、ひらがな、カタカナが作成されました。
#ライブラリの紹介
このライブラリにflounderという名前を付けました。flounderは日本語のCSVファイルを読み込んで、自動でEntityの登録とシノニムを作ってくれるライブラリです。
インストール方法
flounderはpykakasiと呼ばれる日本語をローマ字などに変換するライブラリを使用しているため、pykakasiのインストールが必須です。※本当はflounderに取り込みたかったのですが、諸事情により今回は取り込めませんでした。
pykakasiのインストール
pip install git+https://github.com/miurahr/pykakasi.git
flounderのインストール
pip install flounder
これでインストールは完了です。
Developer access tokenを取得
dialogflowからDeveloper access tokenを取得します。
CSVからEntityを作成
サンプルコード
from flounder.flounder import Flounder
flounder = Flounder(DEVELOPER_ACCESS_TOKEN)
create_request = flounder.create_request('Sushi', 'sushi.csv')
response = create_request.getresponse()
print (response.read())
print (response.status, response.reason)
CSVファイル
"鯖"
"鯵"
"鰈"
"鱸"
"鮑"
"鮪"
"鯨"
"鮭"
実行
$ python test_entity_upload.py
dialogflowのコンソールに新しくEntityが作成されていたら成功です
ご理解とご協力のお願い
flounderは、設計、ネーミング、エラー処理など、見直すべき課題が多くございます。まだまだ発展途上ですが、その辺を踏まえて使用して頂けたら幸いです。本当はこの状態で公開するのを躊躇しましたが、まずは公開して少しずつリファクタリングをしていこうという方針に舵を切りました。
ソースはgithubにございます。お気づきの点がございましたら、issueかプルリクを頂けたら幸いです。