Google baru-baru ini membuka proyek seq2seq google seq2seq
Tensorflow meluncurkan Dynamic_rnn untuk menggantikan bucket asli. Proyek ini didasarkan pada model seq2seq dari Dynamic_rnn.
Di sini saya telah membuat beberapa prediksi percakapan. Korpus Cina sendiri relatif langka. Secara teoritis, semakin banyak korpus, semakin baik modelnya, tetapi akan menemui banyak masalah baru, jadi saya tidak akan menjelaskannya di sini.
Materi dialog ada di Q.txt A.txt di direktori data dan dapat diganti dengan materi dialog Anda sendiri.
# 新增小黄鸡语料
# 添加
python prepare_dialog.py 5000
seq = Seq2seq()
# 训练
seq.train()
# 预测
seq.predict("天气")
# 重新训练
seq.retrain()
me > 天气
AI > 地点: 重庆
气温: 7
注意: 天气较凉,较易发生感冒,请适当增加衣服。体质较弱的朋友尤其应该注意防护。
Proyek ini telah menambahkan dukungan Aksi, dan Anda dapat menyesuaikan fungsi Anda sendiri. Dukungan untuk beberapa putaran sesi akan ditambahkan nanti!
Di file action.py, daftarkan tag tindakan Anda sendiri dan antarmuka yang sesuai, seperti:
# 注意:参数为固定参数
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
}
Tip: Parameter antarmuka untuk sementara diperbaiki dan akan diperbarui nanti.
Sementara itu, korpus pelatihan dirancang sebagai berikut:
# Q.txt
天气
# A.txt
__Weather__