Watson Discovery で分割文書管理
自分向けの備忘録なので悪しからず.
日本語ところどころ変だけどもお気になさらず.
Retrieve and rank(以下R&R)で,文書を<h1>タグ分けて
1つのHTMLを読み込ませるだけで複数の文書を読み込ませてきた.
だが11月頭にR&Rが廃止,Discoveryに統合され,使い方が少々変わってしまった.
この統廃合に「今まで積み上げてきたノウハウがパーじゃないか!」と憤りを感じたが,そう嘆いてもR&Rは帰ってこないのでDiscoveryを叩いていこう.
Discoveryでは<h1>タグによる分割管理がデフォルトでは備わっておらず,R&Rに読み込ませていたHTMLファイルをそのまま読み込ませても,ただテキストが長い1つの文書として読み込まれる.改悪じゃん.
Discoveryをtoolで管理しようと思っても,言語選択で「日本語」が無いのね.日本語使いたければCurlでAPI使って作れって...いいじゃん日本語をtoolで選べるようにしてよ...
日本語のチュートリアルやリファレンスが皆無なためキータにはお世話になりっぱなし.
前者の記事には
Release Notesによると2017/10/3付でDocument segmentationという機能が搭載されたそうです。大きなHTML/Word/PDF文書をHTMLのH1-H6タグのレベルで分割するものだそうです。詳細はSplitting documents with document segmentationをご参照ください。(ちら読みした限りでは、注意点もいくつかありそうです)
流し見していたら読み飛ばしていた部分にさらっと分割管理のことが書かれていた.ありがとうございます...
どうやらConfigurationsをきちんと定義しないとダメらしい.
詳しくは
IBM Cloud Docs
configの追加
curl -X POST -u {usrname}:{pass} -H "Content-Type: application/json" -d @config.json "https://gateway.watsonplatform.net/discovery/api/v1/environments/{environ_id}/configurations?version=2017-11-07"
んでjsonも一緒に送る
{ "configuration_id": "a23c467d-1212-4b3a-5555-93e788a3622a", "name": "Example configuration", "conversions": { "segment": { "enabled": true, "selector_tags": ["h1"] } } }
これで文書読み込ませるときにConfigurationsをjsonで決めた名前の奴にしてから読み込ませたらOK
一応読み込ませたHTMLも書いておく
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>2017_01</title> </head> <body> <h1>2017_01_01</h1> <p>aaa</p> <h1>2017_01_02</h1> <p>bbb</p> <h1>2017_01_03</h1> <p>ccc</p> </body> </html>
最大50個までしか分割できなくて50個超えたやつは全部50番目に入る.
読み込ませた文書消す方法ってtoolでできる?CurlでAPI使うしか消せないよね・・・.
プログラミング自体まだ全然だからノウハウが無さ過ぎてとてもつらい.