Google abrió recientemente un proyecto seq2seq google seq2seq
tensorflow lanzó dinámica_rnn para reemplazar el depósito original. Este proyecto se basa en el modelo seq2seq de dinámica_rnn.
Aquí he construido algunas predicciones de conversación. El corpus chino en sí es relativamente escaso, cuanto más corpus, mejor será el modelo, pero encontrará muchos problemas nuevos, por lo que no los explicaré aquí.
Los materiales de diálogo están en Q.txt A.txt en el directorio de datos y pueden reemplazarse con sus propios materiales de diálogo.
# 新增小黄鸡语料
# 添加
python prepare_dialog.py 5000
seq = Seq2seq()
# 训练
seq.train()
# 预测
seq.predict("天气")
# 重新训练
seq.retrain()
me > 天气
AI > 地点: 重庆
气温: 7
注意: 天气较凉,较易发生感冒,请适当增加衣服。体质较弱的朋友尤其应该注意防护。
Este proyecto ha agregado soporte de acción y puede personalizar sus propias funciones. ¡Se agregará soporte para múltiples rondas de sesiones más adelante!
En el archivo action.py, registre su propia etiqueta de acción y la interfaz correspondiente, como por ejemplo:
# 注意:参数为固定参数
def act_weather(model, output_str, raw_input):
#TODO: Get weather by api
page = requests.get("http://wthrcdn.etouch.cn/weather_mini?city=重庆")
data = page.json()
temperature = data['data']['wendu']
notice = data['data']['ganmao']
outstrs = "地点: %sn气温: %sn注意: %s" % ("重庆", temperature.encode("utf-8"), notice.encode("utf-8"))
return outstrs
actions = {
"__Weather__":act_weather
}
Consejos: Los parámetros de la interfaz se corrigen temporalmente y se actualizarán más adelante.
A su vez, el corpus de formación se diseña de la siguiente manera:
# Q.txt
天气
# A.txt
__Weather__