Transformers 2

[ML OPS] transformers inference (ft. colab, onnx, gpu)

자연어처리에서는 transformers가 pretrained 모델도 많이 제공하고 있다보니 정말 많이 활용되는 것 같습니다. ML ops의 역할 중에 하나가, 인퍼런스 속도를 최적화하는 것이라는 생각이 되는데요. transformers를 간단하게 인퍼런스 해보는 코드에서 시작하여, 실시간 서비스에서 활용할 수 있는 수준까지 개선해보는 과정을 소개해보도록 하겠습니다. 0. colab 오늘 소개하는 내용들은 GPU도 활용해야 하는데, 노트북을 사용하다보니 GPU가 없어서 colab(https://colab.research.google.com/)을 사용해보도록 하겠습니다. colab에서는 무료로도 간단하게 GPU를 테스트 정도는 해볼 수 있도록 제공하고 있습니다. colab을 기본적으로 켰을 땐, GPU가 할..

huggingface/transformers에 컨트리뷰트 해보기

자연어처리를 공부해보았다면 누구나 경험해보았을만큼 유명한 huggingface의 transformers에 contribute를 해보았습니다. 처음으로 오픈소스에 컨트리뷰트 해보아서 머지가 되고, 릴리즈에 포함이 되었을 때는 너무나도 뿌듯함을 감출 수 없었습니다. 그래서 오늘은 컨트리뷰트했던 과정을 남겨두고자 합니다. 1. 컨트리뷰트하게 된 계기 최근 deep learning 모델을 서빙하면서, onnx를 필수로 사용을 하고 있습니다. huggingface의 transformers에서는 쉽게 onnx로 변경 할 수 있는 모듈(https://huggingface.co/docs/transformers/main/en/serialization#onnx)을 제공하고 있습니다. 가이드를 보면, 아래와 같이 trans..

나의 이야기 2022.05.28