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

    聊天機器人(Chatterbot)是經由對話或文字進行交談的計算機程序。能夠模擬人類對話,通過圖靈測試,如Siri、小愛同學、微軟小冰等。

 

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

 

從簡單開始!


 

青雲客機器人

簡介

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

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

 

實現

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)

 

輸出

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

 

圖靈機器人

簡介

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

 

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

 

申請

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

 

    可以接入微信個人號、微信公衆號、QQ個人號、API調用

 

    在拓展中心開啓拓展功能

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

 

實現

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)

 

輸出

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

 

微軟小冰

簡介

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

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

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

隨便發一條消息給小冰,在head界面找到source值和uid值(非常重要

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

 

實現

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)

 

輸出

原話>> 我好看嗎小冰>> 呃..那勉爲其難的給你鑑定下吧:http://t.cn/A67OgMYi

 

騰訊閒聊

簡介

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

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

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

 

申請

    ​先創建應用

    ​拿到ID和KEY

 

實現

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)

 

輸出

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章