Notice
Recent Posts
Recent Comments
Dharma
[Deep Learning] seq2seq 를 이용한 챗봇 (Neural Machine Chatbot) 웹 버젼 본문
저번 NMT를 이용한 챗봇(Console) 에 간단하게 웹 인터페이스(web interface) 를 붙여봤습니다. 저번 버젼에서 옵션같은 것을 조정하고 환경변수에 모델이 저장된 위치를 지정하고 웹만 띄우면 되는 버젼으로 가볍게 고쳤습니다.
교육(Train) 시키고 이런 것은 저번 포스트에서 다루었기 때문에 실제로 구동하는 것만 할 줄 알면 될것 같습니다. 웹 버젼은 장고를 이용해서 작성했으면 채널을 이용해서 간단한 웹소켓을 이용하는 식으로 만들었습니다.
다만 저반하고 달라진건 교육 시키는 방법 입니다. 저번에는 급하게 만드느라 package path 연결시키는 것을 무시했는데 이번에는 그걸 다 맞췄습니다.
python -m core.nmt \ --attention=scaled_luong \ --src=req --tgt=rep \ --vocab_prefix=/tmp/nmt_chat/vocab \ --train_prefix=/tmp/nmt_chat/train \ --dev_prefix=/tmp/nmt_chat/test \ --test_prefix=/tmp/nmt_chat/test \ --out_dir=/tmp/chat_model \ --num_train_steps=12000 \ --steps_per_stats=100 \ --num_layers=4 \ --num_units=128 \ --dropout=0.2 \ --metrics=bleu
이제 교육이 된 모델을 소유하고 있다면 ENV 에 그 내용을 추가해 줍니다.
export OUT_DIR='POSITION FOR MODEL'
PROJECT ROOT 로 이동해서
python manage.py runserver
하면 서버가 띄워지고 http://localhost:8000 으로 가서 확인이 가능합니다.
모든 소스는
https://github.com/crazia/NM-chatbot
에서 받을수 있습니다.