Skip to content

boostcampaitech2/final-project-level3-nlp-09

Repository files navigation

Twenty-Questions Game

팀원 소개

김다영 김다인 박성호 (PM) 박재형 서동건 정민지 최석민
Data, Serving Data, MLOps Data, MLOps, Serving Data,
Front-End
Data, Modeling Data, MLOps, Serving Data, Modeling, MLOps

Project Flow

Model Overview

Extraction-based MRC model

BoolQA Model

boolq_model


Product Overview

  • API Product
    • Dockerizing two API server.
    • Provide differenet CUDA environments for two model.
  • Web Product
    • Dockerizing flask web server.
    • Asynchronous connection for two API server.
  • CI/CD
    • Airflow
      • Retrain Boolean QA Model.
      • Evaluate retrained model.
      • Upload model to Huggingface Hub.
    • Github Action
      • Build docker image of API product
      • Execute Github Runner to deploy new docker image.

Airflow

Airflow documnet

API server

API document

API Demo

# Boolean QA Model Demo
$ ./bm-demo.sh
# Extraction-based QA Model Demo
$ ./em-demo.sh

API Docker Build

$ sudo ./build.sh

Front-end

Front-end Demo

$ cd app
$ pip install -r requirements.txt
$ python myapp.py

Front-end Docker Build

$ sudo docker-compose up -d --build app

Model

Train, Inference environments

$ pip install -r BoolQA_model/requiremnets.txt
$ pip install -r QA_model/requiremnets.txt

Infrenece testing of Boolean QA model

$ python 

Train Extraction-based model

$ python train.py

Infrenece testing of Extraction-based model

$ python test_extraction_qa_inference.py

Reference

Model

BoolQ: Exploring the Surprising Difficulty of Natural Yes/No Questions(Clark et al., 2019)

klue/roberta-large

Software

Web Frameworks