머신러닝 & 딥러닝/자연어처리

대학교 AI 질의응답 챗봇 만들기 - 14. 챗봇 API 개선하기(3)

by seokii 2022. 11. 16.
728x90
반응형

0. 포스팅 목록 & GitHub

(깃허브 스타 버튼 눌러주시면 글 작성에 큰 도움이 됩니다!)

https://github.com/Seokii/Chatbot4Univ

 

GitHub - Seokii/Chatbot4Univ: 대학생을 위한 AI 질의응답 챗봇 만들기

대학생을 위한 AI 질의응답 챗봇 만들기. Contribute to Seokii/Chatbot4Univ development by creating an account on GitHub.

github.com

https://seokii.tistory.com/146

 

[Project] 대학생을 위한 AI 질의응답 챗봇 만들기

1. GitHub https://github.com/Seokii/Chatbot4Univ GitHub - Seokii/Chatbot4Univ: 대학교 재학생을 위한 AI 질의응답 챗봇 대학교 재학생을 위한 AI 질의응답 챗봇. Contribute to Seokii/Chatbot4Univ development by creating an account o

seokii.tistory.com

 

1. 챗봇 서버의 이미지 처리

제가 기획한 챗봇에서는 사용자에게 학교 건물의 위치혹은 모습에 대한 사진을 보여주면,

이용자 편의성이 더 증가할 것이라고 생각했습니다.

그래서, 이미지를 표시할 수 있는 템플릿을 만들고,

답변 데이터를 불러올 때 이미지 경로를 함께 던져주면

챗봇 플랫폼 내에서 표시해 줄 수 있도록 구현했습니다.

 

2. 이미지 템플릿(HTML)

<!-- /chatbot_api/templates/img.html -->

<!doctype html>
<html>
  <head>
  </head>
  <body>
    {% if True %}
    <img src="{{ url_for('static', filename=image_file) }}">
    {% endif %}
  </body>
</html>

HTML을 통해 static 폴더에서 지정한 이미지 파일을 img태그를 통해 표시해 줄 수 있도록 작성했습니다.

 

 

3. Flask API

# /chatbot_api/app.py

@app.route('/images/<image_file>', methods=['GET'])
def image(image_file):
    return render_template('img.html', image_file='/resize_images/'+image_file+'_resize.jpg')

기존의 /hello, /query 코드의 아래에 위와 같은 GET 방식의 라우팅을 추가했습니다.

 

4. 이미지 저장

이미지는 다음과 같이 /chatbot_api/static/images의 경로에 모두 저장했습니다.

1.png ~ 44.png의 파일은 학교 지도에서 각 건물의 위치를 나타내는 사진입니다.

사진에 맞게 파일명을 잘 맞추어 사용하면 될 것 같습니다.

 

 

5. 이미지 출력 결과

챗봇 소켓 서버와 API 서버를 실행한 후,

'127.0.0.1:5000/images/1'의 실행 결과입니다.

원하는 이미지가 잘 출력되는 것을 확인할 수 있습니다.

 

 

728x90
반응형

댓글