まず、ラサは何ですか
ラサは、自動テキストと音声ベースの対話のためのオープンソースの機械学習の枠組みです。メッセージを理解するだけでなく、対話チャネルとメッセージングAPIを維持するために、
公式には、インストール(インストールラサおよびEASAのX)をお勧めします:
ラサ-X --extra-インデックスのURL HTTPSをインストールPIP:// pypi.rasa.com/simple
あなたはラサXを使用したくない場合は、代わりに実行してください
味をインストールするPIP
注意:
あなたが必要な場合があります任意のコンポーネントへの依存関係をインストールすることを確認したい、とあなたは追加の依存関係を気にしない場合は、すべてをインストールするには、次のコードを使用することができます
インストールPIP -r alt_requirements / requirements_full.txt
第二に、新しいプロジェクトを作成します
1.プロジェクトのラサを作成します。
--no-INIT溝プロンプト
このコマンドは、ラサのプロジェクトに必要なすべてのファイルが作成されます。あなたがバナーを逃した場合、あなたはプロジェクトをセットアップする方法についていくつか質問をされるでしょう。
これは、次のファイルを作成します。
あなたは空のファイルのアクションを見つけるのpython __init__.pyヘルプ カスタムコード操作actions.pyは config.yml 「* 」 NLUとコアモデルは、コンフィギュレーション 、他のサービスに接続credentials.ymlは詳細 データが /nlu.md 「* 」 あなたをNLUのトレーニングデータ、 データ /stories.md 「* 」 あなたの物語の domain.yml 「* 」 あなたのアシスタントのドメイン名の 詳細FBメッセンジャーや、他のチャンネルにendpoints.yml接続 モデル /<timestamp>.tar.gzあなたの初期モデル
すべてのファイルが作成されていることを確認するには、実行します。
LS -l
2.ドメインを定義します。
domain.ymlファイル
あなたは、ユーザーの意図は何かを言うことを期待しています。
エンティティは、あなたがメッセージからの情報を抽出したいです。
どのようなあなたのロボットが行うと言うことができるアクション
(例えば、ユーザの年齢など)のトラッキングセッション中の情報スロットを
テンプレートロボットあなたは、物事のテンプレート文字列を言うことができます
意図: - 挨拶 - さようなら - mood_affirm - mood_deny - mood_great - mood_unhappy アクション: - utter_greet - utter_cheer_up - utter_did_that_help - utter_happy - utter_goodbyeの テンプレート: utter_greet: -テキスト:" ねえ、どのようにしている!?" ボタン: -タイトル:" 偉大な" ペイロード:「偉大な」 -タイトル:「スーパー悲しいです「 ペイロード:」スーパー悲しい「 utter_cheer_up: -テキスト:」ここであなたを応援するためのものです:「 イメージ:」https://i.imgur.com/nGF1K8f.jpg 「 utter_did_that_help: -テキスト:」その助けあなたでしたか?" utter_happy: -テキスト:" に大きなキャリー!" utter_goodbye: -テキスト:" さようなら"
ラサコア内部の意思、エンティティとセッション状態を取り、次に実行するアクションのいずれかを選択します。アクションだけで、ユーザーに説明している場合、ラサは、(テンプレートの名前に正確に等しい行為は、上記の例をutter_greet)テンプレートマッチングドメインで検索し、すべての変数を埋めるために応答インチ だけでなく、メッセージを送信する動作のために、あなたはPythonのクラスとしてそれらを定義することができ、およびモジュールパスによって、ドメインでそれらを参照してください。
3.通訳を定義します
インタプリタは、メッセージを解析するための責任があります。それは自然言語理解(NLU)と構造化出力にメッセージを行います。この例では、この目的を達成するためにラサNLUを使用します。
ラサNLUでは、我々はラサNLU訓練へのデータ・フォーマットを処理することができる必要があり、当社のロボットへのユーザーのメッセージを定義する必要があります。このチュートリアルでは、NLUのトレーニングデータを取得するためにマークダウン形式を使用します。私たちは、その意図は、データ/ nlu.mdの例をいくつか作成します。
##目的:挨拶 -ねえ -こんにちは - HI -こんにちは -朝は良い 夜良い- - moin -ちょっとそこに -行きましょう -ちょっと男 -おはようございます - goodevening -良い午後 ##意志:さようなら -銅 -良いことで - CEE後で -おやすみ -良い午後は -さようなら -さようなら -素敵な一日を持っている -あなたの周りを参照してください -バイバイ -後であなたを参照してください ##目的:mood_affirmを -はい -確かに -もちろん 良い音- -正しい ##の意図: mood_deny -なし -決して -私はそうは思わない -それ好きではないん -手立て ##意思:mood_great -完璧な -非常に良い -素晴らしい -驚くべき -王様のように感じて -素晴らしい -私は非常に良い感じている -私は偉大だ -私が午前の驚くべき -私は世界を救うつもりです -スーパー -非常に良い -そこそこ完璧な -とても良い -ので、完璧な ##の意図:mood_unhappy -私の一日は、恐ろしいことでした -私は悲しい -私は非常によく感じていない -私は失望して -スーパー悲しい -私はとても悲しい -悲しい -非常に悲しい -不幸 -あまり良くない -非常に良いではありません -めちゃめちゃ悲しい -そうサアド -とても悲しいです
私たちは今、NLUモデルを訓練するために私たちのサンプルを使用することができます(最初のラサNLUとスペイシーをインストールしてください)
4.話を定義します
これまでのところ、我々はNLUモデルを持って、我々はそれを処理する必要があり、ロボットが行動し、入力フィールド(と本音を)取ることができますを定義します。我々はまだの中央部欠場何点ロボットの対話で何をすべきか私たちに伝えるために物語を。
物語、対話システムのトレーニングデータサンプル。(あなたがそれらを混在させることができる)物語を作成するには、2つの異なる方法があります。
- 手動で、物語を作成し、ファイルに直接それらを書きます
- インタラクティブな学習を使って物語を作成します。
私たちは、物語に直接書き込むことによってstories.md物語を作成します。識別子の開始と##列の物語。ロボット操作により指定アスタリスクで開始するユーザーは、破線で始まります。物語の最後は改行で表されます。
##幸せなパス<! -物語の名前-単なるデバッグのために- > *挨拶 - utter_greet * mood_great <! -ユーザ発話、フォーマット_intentで[エンティティ] - > - utter_happy ##悲しいパス1 <! -これは、すでに次の物語の始まりである- > *挨拶 - utter_greet <! -ボットの動作が実行する- > * mood_unhappy - utter_cheer_up - utter_did_that_help * mood_affirm - utter_happy ##悲しいパス2 *挨拶 - utter_greetを * mood_unhappy - utter_cheer_up - utter_did_that_help * mood_deny - utter_goodbye ##さよならを言う *さようなら - utter_goodbye
手書きの物語の直接の使用はインタラクティブな学習を使用するよりもはるかに高速であることに注意しながら、彼らはきちんと話を設定する必要があるため、スロットの使用には特に注意する必要があります
5.コマンド
ラサは、トレーニングデータ、操作およびコンフィギュレーションファイルの例を使用して新しいプロジェクトを作成するのinit。
あなたのデータや物語NLUトレーニングモデルを使用してラサの列車は、訓練されたモデル./保存モデル。
ラサインタラクティブ、インタラクティブな学習セッションを開始するチャットを通じて新しいトレーニングデータを作成します。
ラサシェルは訓練されたモデルをロードし、そしてあなたは、コマンドライン上の助手に話すことができます。
訓練されたラササーバの使用を開始するためのモデルラサラン。詳細については、サーバのマニュアルの実行を参照してください。
ラサは、サーバの動作を開始するようにラサSDKを使用して、アクションを実行します。
ラサは、物語を可視化する可視化します。
ラサテストNLUは、テストデータを使用し、テストの話はラサモデルを訓練しました。
ラサデータ分割NLU NLUデータ分割は、指定された割合に応じて行わ。
ラサデータは、異なるフォーマット間のNLU NLUトレーニングデータ変換を変換します。
使用可能なすべてのコマンドを表示する-hラサ。