简单介绍几个:
1:图灵开放平台
简介:实名认证以后天天提供 100次免费调用,超过以后就要收费了,可玩性比较高,智能程度较高。python
2:小 i 机器人git
简介:调用次数无限制,可是基本上智能让它讲讲笑话之类的,聊天就别想了web
3:腾讯 Ai 开放平台算法
简介:调用次数无限制,功能巨多,图片识别,语音合成,智能对话,翻译。。。json
下面即是python+腾讯AI 开放平台实现的闲聊机器人,控制台版的,有须要的话能够使用 wxpy 这个库,将其加入到web 版的微信里面去,实现微信的智能问答。api
import hashlib import time import random import string from urllib.parse import quote import requests def curlmd5(src): m = hashlib.md5(src.encode('UTF-8')) # 将获得的MD5值全部字符转换成大写 return m.hexdigest().upper() def get_params(plus_item): # 请求时间戳(秒级),用于防止请求重放(保证签名5分钟有效) t = time.time() time_stamp = str(int(t)) # 请求随机字符串,用于保证签名不可预测 nonce_str = ''.join(random.sample(string.ascii_letters + string.digits, 10)) # 应用标志,这里修改为本身的id和key app_id = '2135xxxxxxxxxxxxxxxx' app_key = 'UMPuHxxxxxxxxxxxxxW' params = { 'app_id' : app_id, 'question' : plus_item, 'time_stamp':time_stamp, 'nonce_str':nonce_str, 'session':'10000' } sign_before = '' # 要对key排序再拼接 for key in sorted(params): # 键值拼接过程value部分须要URL编码,URL编码算法用大写字母,例如%E8。quote默认大写。 sign_before += '{}={}&'.format(key, quote(params[key], safe='')) # 将应用密钥以app_key为键名,拼接到字符串sign_before末尾 sign_before += 'app_key={}'.format(app_key) # 对字符串sign_before进行MD5运算,获得接口请求签名 sign = curlmd5(sign_before) params['sign'] = sign return params def get_text(plus_item): # 聊天的API地址 url = "https://api.ai.qq.com/fcgi-bin/nlp/nlp_textchat" # 获取请求参数 plus_item = plus_item.encode('utf-8') payload = get_params(plus_item) # r = requests.get(url,params=payload) r = requests.post(url,data=payload) return r.json()["data"]["answer"] if __name__ == '__main__': while True: text = input('input:') print(text) if text == 'tt': break answer = get_text(text) print('bot see:' + answer)