03.04 自己動手實現4大免費聊天機器人:小冰、圖靈、騰訊、青雲客

聊天機器人(Chatterbot)是經由對話或文字進行交談的計算機程序。能夠模擬人類對話,通過

圖靈測試,如Siri、小愛同學、微軟小冰等。

​ 本教程將教你用Python實現4大免費且好用的聊天機器人:微軟小冰、圖靈機器人、騰訊閒聊、青雲客機器人

從簡單開始!


青雲客機器人

自己動手實現4大免費聊天機器人:小冰、圖靈、騰訊、青雲客

簡介

完全免費,支持功能:天氣、翻譯、藏頭詩、笑話、歌詞、計算、域名信息/備案/收錄查詢、IP查詢、手機號碼歸屬、人工智能聊天

不用註冊,不用申請key,拿來就用!


實現

<code>def qingyunke(msg):
url = 'http://api.qingyunke.com/api.php?key=free&appid=0&msg={}'.format(urllib.parse.quote(msg))
html = requests.get(url)
return html.json()["content"]
msg = '我好看嗎'
print("原話>>", msg)
res = qingyunke(msg)
print("青雲客>>", res)/<code>


輸出

<code>原話>> 我好看嗎
青雲客>> 你很美,在這世上你就是排第二的美人/<code>


圖靈機器人

自己動手實現4大免費聊天機器人:小冰、圖靈、騰訊、青雲客

簡介

圖靈機器人致力於“讓機器理解世界”,產品服務包括機器人開放平臺、機器人OS和場景方案。通過圖靈機器人,開發者和廠商能夠以高效的方式創建專屬的聊天機器人、客服機器人、領域對話問答機器人、兒童/服務機器人等。


需要註冊賬號,可以申請5個機器人,未認證賬戶每個機器人只能回3條/天,認證賬戶每個機器人能用100條/天。


申請

登錄後申請創建機器人,填入相關信息

自己動手實現4大免費聊天機器人:小冰、圖靈、騰訊、青雲客


自己動手實現4大免費聊天機器人:小冰、圖靈、騰訊、青雲客


在拓展中心開啟拓展功能

自己動手實現4大免費聊天機器人:小冰、圖靈、騰訊、青雲客

拿到API key,注意下面的密鑰不要打開!

自己動手實現4大免費聊天機器人:小冰、圖靈、騰訊、青雲客


實現

<code>def tuling(msg):
api_key = "1234"
url = 'http://openapi.tuling123.com/openapi/api/v2'
data = {

"perception": {
"inputText": {
"text": msg
},
},
"userInfo": {
"apiKey": api_key,
"userId": "1"
}
}
datas = json.dumps(data)
html = requests.post(url, datas).json()
if html['intent']['code'] == 4003:
print("次數用完")
return None
return html['results'][0]['values']['text']
msg = '我好看嗎'
print("原話>>", msg)
res = tuling(msg)
print("圖靈>>", res)/<code>


輸出

<code>原話>> 我好看嗎
圖靈>> 我說不好看你會生氣嗎?/<code>


微軟小冰

自己動手實現4大免費聊天機器人:小冰、圖靈、騰訊、青雲客

簡介

微軟小冰是領先的跨平臺人工智能機器人。微軟小冰注重人工智能在擬合人類情商維度的發展,強調人工智能情商,而非任務完成在人機交互中的基礎價值。

需要先領養小冰!通過微博關注微軟小冰,並向她發送一條消息,點擊她回的鏈接進行領養。

自己動手實現4大免費聊天機器人:小冰、圖靈、騰訊、青雲客

領養完成後,按F12打開調試窗口,在Cookie界面找到SUB值(非常重要

自己動手實現4大免費聊天機器人:小冰、圖靈、騰訊、青雲客

隨便發一條消息給小冰,在head界面找到

source值和uid值(非常重要

自己動手實現4大免費聊天機器人:小冰、圖靈、騰訊、青雲客

注意微博不能手動點註銷退出,不然上面獲取的值就失效了!!非常重要


實現

<code>def xiaobing(msg):
uid = '123'
source = '123'
SUB = '123'
url_send = 'https://api.weibo.com/webim/2/direct_messages/new.json'
data = {
'text': msg,
'uid': uid,
'source': source
}
headers = {
'cookie': 'SUB='+SUB,
'Content-Type': 'application/x-www-form-urlencoded',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36',
'Referer': 'https://api.weibo.com/chat/'
}
response = requests.post(url_send, data=data, headers=headers).json()
sendMsg = response['text']
time.sleep(1)

while True:
url_get = 'https://api.weibo.com/webim/2/direct_messages/conversation.json?uid={}&source={}'.format(uid, source)
response = requests.get(url_get, headers=headers).json()
getMsg = response['direct_messages'][0]['text']
if sendMsg == getMsg:
time.sleep(1)
else:
return getMsg

msg = '我好看嗎'
print("原話>>", msg)
res = xiaobing(msg)
print("小冰>>", res)/<code>


輸出

<code>原話>> 我好看嗎
小冰>> 呃..那勉為其難的給你鑑定下吧:/<code>


騰訊閒聊

自己動手實現4大免費聊天機器人:小冰、圖靈、騰訊、青雲客

簡介

騰訊閒聊服務基於AI Lab領先的NLP引擎能力、數據運算能力和千億級互聯網語料數據的支持,同時集成了廣泛的知識問答能力,可實現上百種自定義屬性配置,以及男、女不同的語言風格及說話方式,從而讓聊天變得更睿智、簡單和有趣。

需要註冊和申請,還需要加密處理。

這裡有個坑,自定義配置閒聊畫像千萬不能開啟,不然調用總出錯,我排查了很久!!!


申請

先創建應用

自己動手實現4大免費聊天機器人:小冰、圖靈、騰訊、青雲客

拿到ID和KEY

自己動手實現4大免費聊天機器人:小冰、圖靈、騰訊、青雲客


實現

<code>def tencent(msg):
APPID = '123'
APPKEY = '123'
url = 'https://api.ai.qq.com/fcgi-bin/nlp/nlp_textchat'
params = {
'app_id': APPID,
'time_stamp': str(int(time.time())),

'nonce_str': ''.join(random.choice(string.ascii_letters + string.digits) for x in range(16)),
'session': '10000'.encode('utf-8'),
'question': msg.encode('utf-8')
}
sign_before = ''
for key in sorted(params):
# 鍵值拼接過程value部分需要URL編碼,URL編碼算法用大寫字母,例如%E8。quote默認大寫。
sign_before += '{}={}&'.format(key, urllib.parse.quote(params[key], safe=''))
# 將應用密鑰以app_key為鍵名,拼接到字符串sign_before末尾
sign_before += 'app_key={}'.format(APPKEY)

# 對字符串sign_before進行MD5運算,得到接口請求籤名
sign = hashlib.md5(sign_before.encode('UTF-8')).hexdigest().upper()
params['sign'] = sign
# print(params)
html = requests.post(url, data=params).json()
return html['data']['answer']
msg= '我好看嗎'
print("原話>>", msg)
res = tencent(msg)
print("騰訊>>", res)/<code>


輸出

<code>原話>> 我好看嗎
騰訊>> 好看,在哪看/<code>


分享到:


相關文章: