Kakao i Machine Learning::튜토리얼::Tensorflow로 학습하기::Console

페이지 이동경로

TensorFlow로 콘솔에서 학습하기

이 문서는 TensorFlow를 이용하여 MNIST 데이터세트를 학습하여 손글씨를 식별하는 모델을 Tensorflow Serving으로 배포하는 방법을 안내합니다. Pytorch와 Triton 사용 방법은 PyTorch로 학습하기 > Console 문서를 참고하시기 바랍니다.

학습 코드 준비

Python으로 작성된 Tensorflow 학습 코드를 준비합니다.

  1. 아래의 학습 코드를 mnist.py로 저장합니다.

    코드예제Tensorflow 학습 코드

    import argparse
    import os
    
    import tensorflow as tf
    
    def train():
        print("TensorFlow version: ", tf.__version__)
    
        parser = argparse.ArgumentParser()
        parser.add_argument('--output_dir', default='/app/outputs', type=str)   #실행 아웃풋 저장 위치 지정(지정하지 않을 경우 저장되지 않음)
        args = parser.parse_args()
    
        output_dir = args.output_dir
        version = 1
        export_path = os.path.join(output_dir, str(version))
    
        (x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.load_data()
        x_train, x_test = x_train / 255.0, x_test / 255.0
    
        model = tf.keras.models.Sequential([
            tf.keras.layers.Flatten(input_shape=(28, 28)),
            tf.keras.layers.Dense(128, activation='relu'),
            tf.keras.layers.Dropout(0.2),
            tf.keras.layers.Dense(10, activation='softmax')
        ])
    
        model.compile(optimizer=tf.keras.optimizers.SGD(learning_rate=0.01),
                      loss='sparse_categorical_crossentropy',
                      metrics=['accuracy'])
    
        print("Training...")
        tensorboard_callback = tf.keras.callbacks.TensorBoard(log_dir=os.path.join(output_dir, "logs"))  #TensorBoard 설정
        training_history = model.fit(x_train, y_train, batch_size=64, epochs=10,
                                     validation_split=0.2, callbacks=[tensorboard_callback])
    
        print('\\nEvaluate on test data')
        results = model.evaluate(x_test, y_test, batch_size=128)
        print('test loss, test acc:', results)
    
        model.save(export_path)
        print('"Saved model to {}'.format(export_path))
    
    if __name__ == '__main__':
        train()
    

  2. 터미널에서 아래 명령을 실행하여 학습 코드를 .tar.gz 파일로 압축하거나 mnist.tar.gz 파일을 직접 다운받습니다.

    코드예제파일 압축 Sample Code

    tar -zcvf mnist.tar.gz mnist.py
    

    mnist.tar.gz 파일

Step 1. 로그인 및 워크스페이스 진입하기

이 단계에서는 Kakao i Machine Learning에 로그인하고, 워크스페이스로 진입합니다.

로그인하기

가입한 KakaoCloud (공공) 계정으로 로그인합니다.

워크스페이스 진입하기

워크스페이스 목록에서 원하는 워크스페이스를 클릭해 홈 화면으로 진입합니다.

Step 2. 실험과 실행 만들기

이 단계에서는 새로운 실험을 만들고, 그에 속한 새로운 실행을 만듭니다. 실험이나 실행 개념에 대한 자세한 설명은 실험/실행 문서를 참고하시기 바랍니다.

안내
이 가이드에서 사용하는 학습 코드는 데이터세트 등록이 필요하지 않습니다. 학습 코드 실행 시 자체적으로 데이터세트를 다운로드합니다.

실험 만들기

  1. Kakao i Machine Learning 콘솔에서 실험 메뉴를 클릭 후, [실험 만들기] 버튼을 클릭합니다.

    실험 만들기 팝업창 그림실험 만들기 팝업창

  2. 실험 만들기 팝업창에서 실험에 필요한 정보를 입력하고 [만들기] 버튼을 클릭합니다.

    • 이름: 영어 대·소문자, 숫자, 일부 특수문자 (-, _)만 입력할 수 있습니다.
  3. 실험 화면으로 돌아가면, 실험 목록에서 방금 만든 실험을 확인할 수 있습니다.

실행 만들기

  1. Kakao i Machine Learning 콘솔에서 실험 메뉴를 클릭 후, 실험 목록에서 방금 만든 실험 이름을 클릭하여 실험 상세 페이지로 이동합니다.

  2. 실험 상세 페이지에서 좌측 상단의 [실행 만들기] 버튼을 클릭합니다.

  3. 1단계: 기본 설정 화면에서 실행에 필요한 정보를 입력하고, [다음] 버튼을 클릭합니다.

    실행 기본 설정 그림실행 기본 설정

    1단계: 기본 설정 화면 구성

    항목 설명
    기본 설정 정보
    실험 실험 만들기 단계에서 만든 실험 선택
    실행 이름 실행을 만드는 시간 기준으로 실행 이름이 자동으로 입력됨
    - 튜토리얼에서는 mnist-run 입력
    실행 설명(선택) 부가 설명이 필요한 경우 입력
    학습을 실행하고자 하는 인스턴스의 타입과 수량
    인스턴스 유형 GPU 포함을 선택
    인스턴스 타입 원하는 인스턴스 타입
    - 공공 클라우드 환경: 1A100-16-MO 카드 선택
    인스턴스 개수 위에서 선택한 인스턴스에 대해 원하는 수량 입력
    - 튜토리얼에서는 1 입력
    이미지 학습 실행에 사용할 이미지 선택
    - 가이드에서는 cosmos-tensorflow2.7.1-cuda11.2-cudnn8-py3.8-ubuntu20.04 선택

  4. 2단계: 실행 구성 화면에서 학습을 실행하기 위한 데이터세트와 소스 코드 등의 정보를 입력한 후, [다음] 버튼을 클릭합니다.

    실행 구성 설정 그림실행 구성 설정

    1단계: 실행 만들기 화면 구성
    항목 설명
    실행 인풋(선택) 학습에 사용할 데이터세트가 사전 등록된 경우 선택
    - 가이드에서는 선택하지 않음
    실행 아웃풋 학습 로그 및 결과물(모델)이 저장되는 위치
    - 아웃풋 저장 시, /app/outputs 경로에 저장됨
    학습에 사용할 데이터세트, 모델 코드 등이 저장된 위치
    파일 업로드 소스 디렉토리 파일 업로드
    - .tar.gz 형식 지원, 파일 크기 최대 100MB 지원
    - 튜토리얼에서는 사전 준비 단계에서 만든 mnist.tar.gz 파일 업로드
    명령어 학습을 시작할 명령어 입력
    - 튜토리얼에서는 python mnist.py --output_dir /app/outputs 입력
    - 최대 1,024자 입력 가능
    환경 변수(선택) 스크립트 실행에 필요한 환경 변수
    - 튜토리얼에서는 입력하지 않음
  5. 3단계: 검토 화면에서 지금까지 입력한 내용을 검토한 후 [만들기] 버튼을 클릭합니다.

    실행 검토 그림실행 검토

  6. 실행 목록으로 돌아가면 방금 만든 실행을 확인할 수 있습니다.

  7. 제출한 실행이 running 상태에서 학습이 완료된 completed 상태로 변경될 때까지 기다립니다.

    안내
    실행의 진행 과정 및 결과는 TensorBoard에서 조회할 수 있습니다.

미지원 기능 안내
공공 클라우드 환경에서는 모델 추론 및 배포 기능은 지원하지 않습니다. 자세한 내용은 공공 환경 주의사항 문서를 참고하시기 바랍니다.

Step 3. 모델 등록하기

모델은 ML 모델의 수명 주기를 관리할 수 있는 모델 저장소입니다. Kakao i Machine Learning 플랫폼에서 학습한 실행을 모델로 등록하거나, 외부에서 학습한 모델을 불러올 수 있습니다. 이 단계에서는 실행을 통해 학습된 모델을 등록합니다.

  1. Kakao i Machine Learning 콘솔에서 모델 메뉴를 클릭합니다.

  2. 모델 화면에서 우측 상단의 [모델 만들기] 버튼을 클릭합니다.

  3. 모델 만들기 화면의 모델 등록하기 탭에서 필요한 정보를 입력하고, [만들기] 버튼을 클릭합니다.

    모델 기본 설정 그림모델 기본 설정

    모델 등록하기 탭 화면 구성

    항목 설명
    모델 위치 새로운 모델 만들기 또는 기존 모델에 버전 추가하기 중 선택
    - 새로운 모델 만들기 선택
    모델 기본 설정 정보
    모델 이름 원하는 모델의 이름
    - 튜토리얼에서는 mnist-model 입력
    모델 설명(선택) 모델에 대한 상세한 설명이 필요한 경우 입력
    모델 별칭(선택) 특정 버전의 모델을 식별하는데 도움을 주는 키워드
    실험과 실행을 선택하면, 해당 실행의 결과로 학습된 모델을 자동으로 불러옴
    - 가이드에서는 이전 단계에서 생성한 실험과 실행을 선택
    실험/실행 생성한 실험과 실행을 선택
    - 해당 실행의 결과로 학습된 모델을 자동으로 불러옴
    - 튜토리얼에서는 앞 단계에서 생성한 실험과 실행을 선택
    실행 아웃풋 경로 아웃풋 모델이 저장된 경로
    - 가이드에서는 공란으로 비워둠
    태그(선택) 모델에 대한 태그가 필요한 경우 입력

  4. 모델 화면으로 돌아가면, 모델 목록에서 방금 만든 모델을 확인할 수 있습니다.

Step 4. 등록한 모델 배포하기

모델 서빙이란 학습된 모델이 포함된 인스턴스를 API 엔드포인트로 배포하는 것을 말합니다. 이 단계에서는 앞에서 학습하고 등록한 모델을 서빙하는 방법을 안내합니다.

안내
등록한 모델 배포 기능은 Tensorflow Serving과 Triton 프레임워크를 지원합니다. Triton에서는 TorchScript만 사용할 수 있습니다.

엔드포인트 만들기

  1. Kakao i Machine Learning 콘솔에서 엔드포인트 메뉴를 클릭합니다.

  2. 엔드포인트 화면의 우측 상단 [엔드포인트 만들기] 버튼을 클릭합니다.

  3. 1단계: 엔드포인트 화면에서 기본 정보를 입력하고 [다음] 버튼을 클릭합니다.

    엔드포인트 정보 입력 그림엔드포인트 정보 입력

    1단계: 엔드포인트 화면 구성

    항목 설명
    엔드포인트 기본 정보
    엔드포인트 이름 엔드포인트의 이름
    엔드포인트 설명(선택) 엔드포인트에 대한 상세한 설명이 필요할 경우 입력
    태그(선택) 엔드포인트에 대한 태그가 필요한 경우 입력

  4. 2단계: 배포 화면에서 배포 1에 이름과 포트 설정값을 입력하고 이미지를 선택합니다.

    안내
    배포는 최대 2개까지 만들 수 있으며, 이 튜토리얼에서는 하나의 배포를 만듭니다.

    엔드포인트 배포 생성 그림엔드포인트 배포 생성

    1단계: 엔드포인트 화면 구성

    항목 설명
    배포 이름 배포 이름
    - 튜토리얼에서는 mnist-deployment 입력
    배포 방식 배포 방식
    - NVIDA Trition Inference Serving 선택
    배포 이미지 배포할 이미지 선택
    - 등록한 모델 배포 기능은 Triton, TF Serving, Cosmos Serving 기본 이미지에서 지원
    - 튜토리얼에서는 cosmos-tritonserver-22.06-py3 선택
    Triton Config Triton 배포를 적용하기 위한 설정값 입력
    - 튜토리얼에서는 아래 예제를 참고하여 입력

    코드예제튜토리얼 코드용 Triton Config Sample Code

    platform: "pytorch_libtorch"
    input [
      {
        name: "input__0"
        data_type: TYPE_FP32
        dims: [ 1, 1, 28, 28 ]
      }
    ]
    output [
      {
        name: "output__0"
        data_type: TYPE_FP32
        dims: [ 1, 10 ]
      }
    ]
    

  5. 이미지 선택 후, 모델 설정 및 선택한 이미지에 맞는 추가 정보를 입력할 수 있습니다. 모델 설정 및 추가 정보를 입력하고 [다음] 버튼을 클릭합니다.

    1단계: 엔드포인트 화면 구성

    항목 설명
    모델 배포를 원하는 모델
    - 튜토리얼에서는 앞서 등록한 모델명 선택
    Tensorflow Serving Tensorflow Serving 이미지를 선택한 경우, 배포를 위한 상세 정보 입력
    - 사용자가 작성한 코드에 맞게 입력
    - 가이드에서는 변경 없이 진행
    인스턴스 구성 워크스페이스에 할당된 쿼터에서 내에서 원하는 인스턴스 타입과 개수 선택
    - 튜토리얼에서는 GPU 포함 1V100-4-MO 선택, 수량 1 입력
    환경 변수(선택) 환경 변수 설정이 필요한 경우 입력
    태그(선택) 배포에 대한 태그가 필요한 경우 입력

  6. 3단계: 트래픽 설정 화면에서 아무것도 변경하지 않고 [다음] 버튼을 클릭합니다.

    엔드포인트 트래픽 설정 그림엔드포인트 트래픽 설정

    튜토리얼 Tip!
    배포를 여러 개 만들 경우, 트래픽을 분할하는 비율이나 미러링 모드 활성화 여부를 지정할 수 있습니다.
    이 튜토리얼에서는 배포가 1개이므로 트래픽은 100%로 고정됩니다.

    3단계: 트래픽 화면 구성

    항목 설명
    미러링 모드 활성화(토글) 활성화 시, 메인 배포에 입력된 트래픽을 다른 배포에도 복제하여 전송
    - 메인 배포 선택 필요
    - 트래픽 비율은 100%로 고정
    트래픽 할당 비율 조정 각 배포에 배분할 트래픽 비율 입력
    - 숫자를 직접 입력하거나 슬라이더를 조정(5단위로 조정 가능)

  7. 4단계: 검토 페이지에서 입력한 내용을 검토한 후 [만들기] 버튼을 클릭합니다.

    엔드포인트 검토 그림엔드포인트 검토

배포한 모델 테스트하기

배포한 모델을 테스트하는 방법은 다음과 같습니다.

  1. Kakao i Machine Learning 콘솔에서 엔드포인트 메뉴를 클릭합니다.

  2. 엔드포인트 목록에서 방금 생성한 엔드포인트 이름을 클릭합니다.

  3. 엔드포인트 정보 탭의 기본 정보에서 엔드포인트와 API Key를 별도로 복사합니다.

    엔드포인트 기본 정보 그림엔드포인트 기본 정보

  4. 터미널에서 테스트 코드를 실행합니다.

    코드예제테스트 코드 Syntax

       curl -X POST {엔드포인트 주소}/v2/models/model/infer \
       --data-raw '{
       "inputs" : [
        {
          "name" : "input__0",
          "datatype":"FP32",
          "shape" : [ 1, 1, 28, 28 ],
          "data" : [[[[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,    0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,    0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.   0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.   0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.   0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.   0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,    0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,    0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0,    0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.07058823853731155, 0.16862745583057404, 0.30588236451148987, 0.   6117647290229797, 0.9921568632125854, 0.9921568632125854, 0.8235294222831726, 0.8549019694328308,    0.11764705926179886, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0,    0.0, 0.0, 0.0, 0.2235294133424759, 0.7803921699523926, 0.9921568632125854, 0.9882352948188782, 0.   9882352948188782, 0.9882352948188782, 0.9882352948188782, 0.9921568632125854, 0.9882352948188782,    0.8666666746139526, 0.24705882370471954, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0,    0.0, 0.0, 0.0, 0.0, 0.0, 0.4941176474094391, 0.9647058844566345, 0.9882352948188782, 0.   8392156958580017, 0.4941176474094391, 0.2862745225429535, 0.08235294371843338, 0.   08235294371843338, 0.08235294371843338, 0.529411792755127, 0.9843137264251709, 0.   5333333611488342, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.   08627451211214066, 0.929411768913269, 0.9254902005195618, 0.5686274766921997, 0.0, 0.0, 0.0, 0.0,    0.0, 0.0, 0.0, 0.7019608020782471, 0.9058823585510254, 0.21568627655506134, 0.250980406999588, 0.   16862745583057404, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.   3333333432674408, 0.9882352948188782, 0.3960784375667572, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,    0.08627451211214066, 0.9882352948188782, 0.9215686321258545, 0.9921568632125854, 0.   9372549057006836, 0.06666667014360428, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.   3333333432674408, 0.9921568632125854, 0.3294117748737335, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,    0.0, 0.6627451181411743, 0.9921568632125854, 0.9019607901573181, 0.4156862795352936, 0.   03529411926865578, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.3333333432674408, 0.   9882352948188782, 0.3294117748737335, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.   6627451181411743, 0.9882352948188782, 0.5137255191802979, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]   , [0.0, 0.0, 0.0, 0.0, 0.0, 0.3333333432674408, 0.9882352948188782, 0.5568627715110779, 0.   01568627543747425, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.04313725605607033, 0.8274509906768799, 0.   9882352948188782, 0.45098039507865906, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.   0, 0.0, 0.10980392247438431, 0.9372549057006836, 0.9882352948188782, 0.5411764979362488, 0.   250980406999588, 0.16862745583057404, 0.0, 0.0, 0.0, 0.0, 0.0, 0.08627451211214066, 0.   9882352948188782, 0.9882352948188782, 0.8274509906768799, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]   , [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.21960784494876862, 0.9882352948188782, 0.9882352948188782, 0.   9921568632125854, 0.9372549057006836, 0.8274509906768799, 0.8274509906768799, 0.8274509906768799,    0.1764705926179886, 0.0, 0.08627451211214066, 0.9882352948188782, 0.9882352948188782, 0.   8274509906768799, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.   0, 0.3490196168422699, 0.41960784792900085, 0.7254902124404907, 0.45098039507865906, 0.   4156862795352936, 0.07058823853731155, 0.0, 0.0, 0.08627451211214066, 0.9921568632125854, 0.   9921568632125854, 0.8313725590705872, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.   0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.08627451211214066, 0.   9882352948188782, 0.9882352948188782, 0.9529411792755127, 0.1882352977991104, 0.0, 0.0, 0.0, 0.0,    0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,    0.007843137718737125, 0.686274528503418, 0.9882352948188782, 0.9921568632125854, 0.   2823529541492462, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.   0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.6627451181411743, 0.9882352948188782, 0.   9921568632125854, 0.658823549747467, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.   0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.4941176474094391, 0.   9882352948188782, 0.9921568632125854, 0.7960784435272217, 0.03529411926865578, 0.0, 0.0, 0.0, 0.   0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.   0, 0.10588235408067703, 0.8980392217636108, 1.0, 0.9921568632125854, 0.08235294371843338, 0.0, 0.   0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.   0, 0.0, 0.0, 0.0, 0.5137255191802979, 0.9921568632125854, 0.9882352948188782, 0.   08235294371843338, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.   0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.3803921639919281, 0.9921568632125854, 0.   9882352948188782, 0.29019609093666077, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.   0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.7176470756530762, 0.   9882352948188782, 0.5960784554481506, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.   0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.16470588743686676, 0.   886274516582489, 0.38823530077934265, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.   0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,    0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,    0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]]]]
        }
      ]
    }'
    

    배포 모델 테스트 호출 방식

    메서드 요청 URL
    POST {엔드포인트 주소}/v2/models/model/infer

    테스트 코드 Parameters

    파라미터 설명
    엔드포인트 주소 엔드포인트 정보의 엔드포인트
    API Key 엔드포인트 정보의 API Key

  5. 정상적으로 실행된다면 아래와 같이 응답을 확인할 수 있습니다.

    코드예제정상 응답 실행 Sample Code

    {"model_name":"model","model_version":"1","outputs":[{"name":"output__0","datatype":"FP32","shape":[1,10],"data":[-7.412685394287109,-11.19141674041748,-2.4548983573913576,-4.434718132019043,-5.006168365478516,-5.374503135681152,-11.610991477966309,0.5824547410011292,-4.415952205657959,3.276334524154663]}]}%
    

Step 5. 리소스 정리하기

엔드포인트에 모델이 배포된 상태에서는 실제로 모델이 호출되지 않더라도 인스턴스가 계속해서 사용되며, 워크스페이스 컴퓨팅 자원 할당량을 차지합니다. 이를 원하지 않으면 엔드포인트와 모델 배포를 삭제해야 합니다.

주의
배포 테스트를 완료 후, 리소스 반납을 위해 엔드포인트를 반드시 삭제해야 합니다.
  1. Kakao i Machine Learning 콘솔에서 엔드포인트 메뉴를 클릭합니다.

  2. 엔드포인트 화면에서 엔드포인트 목록에서 생성한 엔드포인트 이름을 클릭합니다.

  3. 엔드포인트 이름 옆 [더보기] 아이콘을 클릭 후, 엔드포인트 삭제를 클릭합니다.

    엔드포인트 상세 화면 그림엔드포인트 상세 화면

  4. 엔드포인트 삭제 팝업창에서 텍스트 입력창에 삭제할 엔드포인트 이름을 입력 후, [삭제] 버튼을 클릭합니다.

    엔드포인트 삭제 그림엔드포인트 삭제

이 문서가 만족스러운 이유를 알려주세요.
이 문서에 아쉬운 점을 알려주세요.
평가해주셔서 감사합니다.

더 자세한 의견은 documentation@kakaoenterprise.com 으로 제보해주세요.