【问题标题】:IBM Watson dialog emoji inputsIBM Watson 对话表情符号输入
【发布时间】:2016-06-26 04:31:21
【问题描述】:

Dialog 服务是否支持表情符号输入?

我能够使用以下两种方式输出表情符号:HTML 实体(十进制) HTML 实体(十六进制) http://www.fileformat.info/info/unicode/char/1f37b/index.htm

但是,我无法让对话服务理解表情符号输入。 Emojis in dialog conversation

【问题讨论】:

  • 利奥是对的。但是,为什么不在您的最终用户应用程序和对话 API 实例之间添加一个过滤器层,用“happyface”或“beer”之类的简单字符串替换表情符号字符的字符串
  • 酷,好主意,我不知道该怎么做,但我会研究一下。谢谢!
  • 查看 GitHub 上的 pizza demo code。他们本质上所做的是在 node.js 中构建一个中间件,将对话端点公开给用户的浏览器,而无需传递服务凭证或端点 url 等重要细节。您可以在第 55 行之前添加一个从 app.js 调用的 javascript 函数,该函数接受 req.body 中的对话输入,并为您有兴趣捕获的每个表情符号执行 string.replace(emoji, textreplacement)。然后像他们一样将结果发布到服务中
  • @JamesRavenscroft 请参阅我的答案以证明确实支持表情符号。当您为 IBM Watson 团队工作时,请改进您的文档。 Watson Dialog 的示例非常糟糕,而且很难让 Dialog 脚本正确。大量的试验和错误。

标签: ibm-watson watson-dialog


【解决方案1】:

你当然可以。这是一个例子:

<?xml version="1.0" encoding="UTF-8" ?>
<dialog xsi:noNamespaceSchemaLocation="WatsonDialogDocument_1.0.xsd"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<flow>
<folder label="Main">

输出一个初始提示:

  <output>
    <prompt>
      <item>Write something and I’ll echo it back to you.</item>
    </prompt>
  </output>

获取输入:

  <getUserInput>
    <input>
      <grammar>
        <item>(ANYTHING)={anything}</item>
      </grammar>
      <action varName="anything" operator="SET_TO">{anything.source}</action>
      <output>
        <prompt>
          <item>{anything}</item>
        </prompt>
      </output>
    </input>
  </getUserInput>

</folder>
</flow>

现在,我猜您已经尝试像 IBM 在其所有示例中那样捕获输入。但是这种方法会默默地丢弃许多非 ASCII 字符。这不是您想要捕获输入的方式。 (请参阅this SO answer 了解它丢弃的一些字符的列表。)

我是这样做的:

<entities>
  <entity name="ANYTHING">
    <value>
      <grammar>
        <item>!.*</item>
      </grammar>
    </value>
  </entity>
</entities>

感叹号表示我们正在使用正则表达式。 (! 之后的所有内容都是正则表达式。)此方法不会删除那么多字符,但会删除 &lt; 和 &gt;。可能是其他人。您可以使用相同的脚本找出哪些字符是安全的。

最后我们需要捕捉到的变量。

<variables>
  <var_folder name="Home">
    <var name="anything" type="TEXT" />
  </var_folder>
</variables>

</dialog>

完整示例请参见this gist。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-29
    • 2016-09-20
    • 1970-01-01
    • 1970-01-01
    • 2019-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多