如何使用 wit.ai 到 return 一个结果 (python)

How to use wit.ai to return one single result (python)

我最近在python和wit.ai胡闹。我已经能够在与机器人通信时使 .interactive() 工作,但我真的希望 .message() 工作,因为我想一次发送一条消息。我在网上看到你可以这样做:

client = Wit(access_token=token, actions=actions)
resp = client.message('hello')
print(resp)

但是,响应不是我想要的,实际上只是发送到服务器的消息。像这样:

{'msg_id': '516ffc83-f008-446a-979a-2da2207164a1', '_text': 'hello', 'entities': {'intent': [{'confidence': 0.9646306495169545, 'value': 'greeting'}]}}

我想从消息中获取回调并打印出来。 谢谢!

根据官方文档和我的个人经验,该响应不是发送到服务器的消息。确实是服务器对您的查询的响应。

检查 - https://wit.ai/docs/http/20160330#get-intent-via-text-link

"entities" 对象中的 "intent" 映射包含置信度度量(即 96.4%),它将查询 "hello" 预测为 "greeting"。现在,如果你想解析这个 JSON 响应,你可以这样做 -

callback = resp['_text']['entities']['intent']['value']
print(callback)