2016-02-08 11 views
9

私は現在、特定のタスクを実行するエージェントを作成するためにapi.aiを使用していますが、回答がない質問は、チャット中に何かを学ばせることができますか、私が話すことを意味します私の名前は 'John Cena 'と彼女はそれを保存してください、そして、私は彼女に再度尋ねるときはいつも、ボットはそれに答えるべきです。 api.ai webにログインして手動でエントリを追加する方法がありますが、プログラムや自動で何か回避策がありますか?練習に使ったファイルはgithubです。 DEMOapi.aiエージェントを動的に学習する方法は?

答えて

4

あなたは基本的にあなたのボットが事実を "学ぶ"必要があります。これを達成するにはさまざまな方法がありますが、最近では最も一般的な方法は知識をSemantic "Triples"に配置し、その知識をGraphリポジトリ(Neo4j、Titan、Spark Graphなど)に保存することです。あなたの例では、 "my name is John Cena"はトリプルのようなもの( "anubava"、 "Name"、 "John Cena")に変換されます。そうすると、次回にanubhavaとしてログインして「What is my name?」と尋ねると、「John Cena」を返すグラフ検索に変換されます。これを達成することは些細なことではなく、多少の微調整を必要とします。詳細については、herehereを確認してください。

最後に、私が知っている最も完全な解決策は、サーバーサイドソリューションです。ナレッジベース全体がモバイルデバイスに常駐したい場合は、そのリソースをインスピレーションとして使用し、組み込みデータベースを使用して独自のリンクデータリポジトリを構築することができます。

これが役に立ちます。がんばろう。

1

ユーザーの名前を保存して呼び出すには、基本的なデータ永続性機能を備えたWebフックを設定する必要があります。どんなデータベースやキーバリューストアも正常に動作します。

  1. は、ユーザーの名前をキャプチャ目的のためのウェブフックの履行を実装します。

    はここ内訳です。ウェブフックには、sessionIdまたはフロントエンドから/queryへのコールのコンテキストパラメータとして指定する固有の識別IDとともに名前を格納する必要があります。

  2. ユーザーの名前を読み取るインテント用にwebhook fulfillmentを実装します。 WebhookはIDで名前を検索し、ユーザーに名前を知らせる応答を返します。

履行ウェブフックを書くための高レベルのドキュメントはここにある:

https://docs.api.ai/docs/webhook

関連する問題