Model의 역할 및 운영 상태 확인하기

작성자 이호영 수정일 2022-10-28 11:11

#TwinReader, #분석, #모델, #model

아티클 관련 제품: TwinReader

이 글을 읽으면

  • Twinreader에서 사용하는 model의 역할과 운영 상태를 확인하는 방법을 알아보겠습니다.


기본 지식

  • pod란 kubernetes application의 최소 단위로 하나 이상의 linux 컨테이너 모음입니다. 
  • 'nvidia' 명령어를 사용하여 현재 사용 중인 gpu memory를 확인 가능합니다.

        ① 현재 server에 탑재 되어있는 gpu로 '현재 사용 중인 memory/gpu 총 memory' 를 표시합니다.

        ② 모델들의 PID를 표시합니다.

        ③ PID 별로 사용중인 gpu memory 표시합니다.


Model의 역할

  • - Twinreader 내부에서 요청이 들어온 문서에서 글자 분류 및 인식한 글자 위치를 파악하는 역할을 합니다.
  • - Twinreader에서 사용 하는 모델은 다음과 같습니다.
    model약어설명

    Classification

    -

    요청이 들어온 문서를 인식하여 분류해주는 모델

    chkdetectionchkCheckbox를 추출해주는 모델
    detection

    std

    문서의 글자 영역을 탐지하는 모델
    recognitionstr문서의 글자를 인식하는 모델
    rotationrot요청이 들어온 후 이미지의 전 처리 및 이미지 보정하는 모델
    tcdetectiontcd셀 영역 탐지 모델
    iddecttionidd신분증 영역 인식 모델

Model이 운영되고 있는 pod의 상태 확인

  • twinreader의 모델들은 'core-server'로 시작하는 이름을 가진 pod 위에 적재 되어 운영 중입니다.


  1. 현재 운영 중인 pod 목록 확인
    kubectl get pod
                  NAME                                       READY   STATUS      RESTARTS   AGE 
    core-client-7d9ccd8d74-brrrd                              1/1    Running        1        8d
    core-server-classification-deployment-678dd7d488-fc7m2    1/1    Running        1        8d
    core-server-etc-deployment-99dc8d8df-6tjft                1/1    Running        1        5d
    core-server-ocr-deployment-85f6d68878-sbmtb               1/1    Running        2        5d
    fs-deployment-78996664f4-4xzgh                            1/1    Running        2        5d
    gunicorn-post-test-deploy-8b565fff6-hsghq                 1/1    Running        1        5d
    ingress-nginx-admission-create-fllnk                      0/1    Completed      0       35d
    ingress-nginx-admission-patch-x79v4                       0/1    Completed      0       35d
    ingress-nginx-controller-7586f485b7-9mtwx                 1/1    Running        2       35d
    mgr-deployment-7b54cb98fb-rklkw                           1/1    Running        1        8d
    mysql-59f96bbcb8-t9qw7                                    1/1    Running        2       34d
    test-core-deployment-7489647d98-brqwc                     1/1    Running        1       11d
    webui-deployment-8db895bd4-zcqhb                          1/1    Running        1       11d


    > core-serverd의 READY를 통해 운영 중인 pod의 수를 파악할 수 있습니다.
    > STATUS을 통해 현재 운영 중인pod의 상태를 확인 할 수 있습니다.

  2. core-server pod로 model 상태 확인
    kubectl logs -f core-server-[pod name]
    +--------------+---------+--------+
    | Model        | Version | Status |
    +--------------+---------+--------+
    | chkdetection | 1       | READY  |
    | detection    | 4       | READY  |
    | iddetection  | 1       | READY  |
    | recognition  | 3       | READY  |
    | rotation     | 3       | READY  |
    +--------------+---------+--------+


Model 별 사용 중인 GPU Memory 확인

- 기본 지식에서 사용한 nvidia-smi 명령어를 사용하여 확인해 보도록 하겠습니다.


  1. 명령어를 통해 model의 PID 확인ps -ef | grep model
  2. nvidia-smi로 PID당 사용 중인 memory 확인

마치며

  • 위의 과정을 통해 twinreader의 현재 운영 상태나 혹은 문서 이미지의 분류가 되지 않았을 경우 model의 상태를 확인 할 수 있습니다.


아티클이 유용했나요?

훌륭합니다!

피드백을 제공해 주셔서 감사합니다.

도움이 되지 못해 죄송합니다!

피드백을 제공해 주셔서 감사합니다.

아티클을 개선할 수 있는 방법을 알려주세요!

최소 하나의 이유를 선택하세요
CAPTCHA 확인이 필요합니다.

피드백 전송

소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.

02-558-8300