2023. 8. 30. 19:44ㆍAI/LLM
LLMOps를 설명하려면 MLOps를 알아야 합니다.
MLOps란?
ML(Machine Learning, 머신 러닝)과 Ops(Operations, 운영)의 합성어입니다.
MLOps는 머신 러닝 모델을 안정적이고 효율적으로 배포 및 유지 관리하는 것을 목표로 하는 패러다임입니다.
또는 머신 러닝 프로그램의 개발, 배포, 관리 및 모니터링을 위한 연속적인 작업 프로세스 및 방법론입니다.
DevOps (Development and Operations) 개념을 머신러닝에 적용한 것입니다.
LLMOps란?
LLMOps는 "LLM"과 "Ops"의 합성어로 MLOps의 한 패러다임입니다.
프로덕션 환경에서 대규모 언어 모델을 배포하고 유지 관리하여 규모와 성능에 대한 기대치를 충족하는 데 중점을 둡니다.
LLMOps를 사용하면 대규모 언어 모델을 효율적으로 배포, 모니터링 및 유지 관리할 수 있습니다.
기존의 머신 러닝 운영(MLOps)과 마찬가지로 LLMOps는 데이터 과학자, DevOps 엔지니어 및 IT 전문가의 협업이 필요합니다.
중요한 최신 기술이 등장하면 이 새로운 플랫폼을 구현하기 위한 도구와 인프라를 구축해야 할 필요성과 기회가 생깁니다.
(중략)
이러한 새로운 유형의 AI 선택과 집중을 지칭하는 약어로 'LLMOps'라는 용어가 유행할 것으로 예상합니다. 예를 들어, 기초 모델 미세 조정을 위한 도구, 코드 없는 LLM 배포, GPU 액세스 및 최적화, 신속한 실험, 신속한 체인 연결, 데이터 합성 및 증강 등이 새로운 LLMOps 제품군에 포함될 것입니다.
https://www.forbes.com/sites/robtoews/2022/12/20/10-ai-predictions-for-2023/
FMOps란?
MLOps에 이어 새롭게 등장하고 떠오르고 있는 기반 모델(Foundation Model), 특히 LLM 기반의 앱 개발을 위한 방법론입니다.
LLMOps와 혼재되어 사용되고 있습니다.
LLMOps는 자연어 처리 분야에만 국한되는 기반 모델을 칭하는 용어인 LLM이 포함된 반면 FMOps는 자연어 처리를 포함한 이미지, 음성 등 더욱 다양한 모달리티의 기반 모델들 (예: DALL-E) 을 포함하여 해당 용어를 사용하게 되었습니다. 하지만 현재 시장에서는 기반 모델 중에서도 LLM을 활용하여 앱을 개발하는 것에 관심이 몰려있기 때문에 두 용어는 현재 혼재되어 사용되고 있습니다.
https://tech.kakaoenterprise.com/196
왜 LLMOps인가
MLOps의 운영 요구사항은 일반적으로 LLM에도 적용되지만, LLM을 잘 훈련하고 배포하려면 LLM에 특화된 접근 방식이 필요합니다.
DevOps에서 시작된 개발과 운영의 통합은 빠르고 잦은 배포와 자동화로 품질 향상을 목표로 합니다.
ML과 LLM에서도 데이터와 머신러닝, 운영(Ops)의 경계를 허물고 협업의 장점을 극대화합니다.
LLMOps는 빠르고 자동화된 피드백을 수시로 학습 모델에 적용해 라이프사이클을 효율적으로 만들고 프로젝트를 성공으로 이끕니다.
LLMOps와 MLOps는 기업이 ChatGPT와 같은 LLM과 ML기술을 최대한 활용할 수 있게 하는 중요 요소로 떠오르고 있습니다.
OpenAI의 GPT, Google의 Bard 등 LLM의 발전으로 인해 LLM을 구축하고 배포하는 기업이 크게 성장하고 있습니다.
이로 인해 이러한 모델을 운영하는 방법에 대한 모범 사례를 구축해야 할 필요성이 대두되었습니다.
LLM을 프로토타이핑하는 것은 간단하지만, 실제 상용 제품 내에서 LLM을 사용하는 데는 여전히 어려움이 있습니다.
LLM 개발 라이프사이클은 데이터 수집, 데이터 준비, 신속한 엔지니어링, 모델 미세 조정, 모델 배포, 모델 모니터링 등 여러 가지 복잡한 구성 요소로 이루어져 있습니다.
데이터 엔지니어링에서 데이터 과학, ML 엔지니어링과 DevOps, 개발에 이르기까지 여러 팀 간의 협업과 핸드오프가 필요합니다.
모든 프로세스가 동기화되고 함께 작동하도록 하기 위해서는 엄격하고 체계적인 운영이 필요합니다. LLMOps는 실험, 반복, 배포, 지속적인 개선 등 LLM 개발 라이프사이클을 포괄합니다.
위에서 보듯이 LLMOps에는 머신 러닝, 데브옵스, 데이터 엔지니어링 기술과 활동의 조합이 필요하다는 것을 알 수 있습니다.
MLOps와 LLMOps는 개념적으로 유사하지만, 주목해야 할 중요한 차이점이 있습니다.
Task | MLOps | LLMOps |
Model Selection | 모델 버전 평가 및 선택 | 사전 학습된 모델 평가 및 선택 |
Training / Fine-tuning data prep |
데이터 수집, 랭글링, 정리 및 라벨링 | 다양성과 대표성에 중점을 둔 대규모 데이터 수집 자동 라벨링 기법을 사용할 수 있습니다. |
Model Configuration | 하이퍼파라미터 튜닝을 포함한 파인 튜닝 프로세스 설정 | 프롬프트 디자인과 모델에 맞는 조정을 고려한 LLM을 위한 파인튜닝 설정 |
Monitoring training / fine-tuning process |
메트릭 추적, 훈련 중 모델 성능 평가 | 파인튜닝 진행 상황 모니터링, 메트릭 추적, 문제 식별 및 조정 |
Deploy the trained / fine-tuned model |
학습된 모델 스테이징, 테스트 및 배포 | 파인튜닝된 LLM을 배포합니다. 버전 관리, 모델 관리와 모니터링이 보장되어야 함 |
Maintain model in production (Monitor, upgrade, replace) |
모델 성능 모니터링 측정된 성능에 기반하여 업그레이드 또는 교체 |
지속적인 모니터링, 필요한 업그레이드 식별 진화하는 요구 사항과 발전에 따라 모델 교체 검토 |
일반적으로 하나의 메트릭을 대상으로 하는 일반 ML 모델과 달리 LLM은 여러 메트릭에 걸쳐 모니터링 및 튜닝을 수행해야 합니다.
LLM 시장은 지속적으로 진화하고 있으며, 시간이 지남에 따라 기본 모델을 교체해야 할 수도 있으므로 LLM 모니터링 및 유지 관리의 일부로 추가적인 다운스트림 작업과 노력이 필요할 수 있습니다.
최근 우리는 자연어 처리(NLP)의 세계는 GPT-4와 같은 대규모 언어 모델의 등장으로 패러다임의 전환을 목격했습니다. 이러한 모델은 인간 언어의 복잡성을 포착하고 이해하는 능력 덕분에 다양한 NLP 작업에서 괄목할 만한 성과를 거두었습니다. 하지만 이러한 사전 학습된 모델의 잠재력을 완전히 활용하려면 실제 애플리케이션에 이러한 모델을 배포하고 관리하는 과정을 간소화하는 것이 필수적입니다.
아래는 2023년 8월 27일 Microsoft Tech Community에 올라온 글
"An Introduction to LLMOps: Operationalizing and Managing Large Language Models using Azure ML"의 일부입니다.
LLM은 어떻게 작동하나요?
GPT-4와 같은 대규모 언어 모델은 딥러닝 기술을 사용하여 방대한 텍스트 데이터 세트를 학습하고 문법, 의미론, 문맥을 학습합니다. 텍스트 내 관계 이해에 탁월한 트랜스포머 아키텍처를 사용하여 문장의 다음 단어를 예측합니다. 학습이 완료되면 이러한 모델은 사람과 유사한 텍스트를 생성하고 제공된 입력에 따라 다양한 작업을 수행할 수 있습니다. 이는 미리 정의된 결과를 제공하는 특정 통계 알고리즘으로 학습하던 기존 ML 모델과는 매우 다릅니다.
실제 애플리케이션에서 LLM의 위험은 무엇인가요?
LLM은 사실의 정확성을 고수하기보다는 일관성 있고 문맥에 적합한 텍스트를 생성하도록 설계되었습니다. 이로 인해 아래와 같이 다양한 위험이 발생할 수 있습니다:
Bias amplification 편견 증폭: LLM은 편향되거나 차별적인 결과를 생성할 수 있습니다.
Hallucination 환각: LLM은 의도치 않게 부정확하거나 오해의 소지가 있거나 잘못된 정보를 생성할 수 있습니다.
Prompt Injection 프롬프트 주입: 악의적인 행위자는 LLM을 악용하여 프롬프트 인젝션을 통해 유해한 콘텐츠를 생성할 수 있습니다.
Ethical concerns윤리적 문제: LLM을 사용하면 이러한 모델에서 생성된 결과에 대한 책임과 의무에 대한 윤리적 문제가 제기됩니다.
MLOps와 LLMOps 비교:
기존 머신 러닝 모델에서 MLOps가 어떻게 작동하는지 간단히 살펴보겠습니다. ML 모델을 개발부터 배포, 운영에 이르기까지 여러 팀과 역할, 다양한 작업을 수행해야 합니다. 아래는 표준 ML 수명 주기의 흐름입니다:
데이터 준비: 필요한 데이터를 수집하고 정리하여 머신러닝 알고리즘에 적합한 형식으로 변환합니다.
모델 구축 및 학습: 적합한 알고리즘을 선택하고 사전 처리된 데이터를 입력하여 패턴을 학습하고 예측할 수 있도록 합니다. 반복적인 하이퍼 파라미터 튜닝과 반복 가능한 파이프라인을 통해 모델의 정확도를 개선합니다.
모델 배포: 모델을 패키징하여 예측을 위한 확장 가능한 컨테이너로 배포하세요. 모델을 API로 노출하여 애플리케이션과 통합할 수 있습니다.
모델 관리 및 모니터링: 성능 메트릭을 모니터링하고, 데이터 및 모델 드리프트를 감지하고, 모델을 재교육하고, 이해 관계자에게 모델 성능을 전달합니다.
흥미롭게도 LLM의 수명 주기는 위에서 설명한 대로 기존 ML 모델과 매우 유사하지만, 이미 사전 학습된 모델이기 때문에 값비싼 모델 학습을 거칠 필요가 없습니다. 하지만 프롬프트 튜닝(즉, 프롬프트 엔지니어링 또는 프롬프트 튜닝)을 고려해야 하며, 필요한 경우 도메인별 근거를 위해 모델을 파인튜닝 해야 합니다. 아래는 LLM 라이프사이클의 흐름입니다:
결론적으로, LLMOps는 실제 애플리케이션을 위한 대규모 언어 모델의 배포 및 관리를 간소화하는 데 중요한 역할을 합니다.
2022년 12월 포브스가 선정한 “10 AI Predictions For 2023” 중 LLMOps에 관한 기사입니다.
7) The concept of “LLMOps” will emerge as a trendy new version of MLOps.
https://fullstackdeeplearning.com/llm-bootcamp/spring-2023/llmops/
https://www.linkedin.com/pulse/llmops-next-frontier-mlops-generative-ai-prasun-mishra
https://modulabs.co.kr/blog/llmops-intro/
https://openai.com/blog/best-practices-for-deploying-language-models
https://www.forbes.com/sites/robtoews/2022/12/20/10-ai-predictions-for-2023/?sh=10721beafab7
https://www.databricks.com/glossary/llmops
'AI > LLM' 카테고리의 다른 글
LLM으로 알아보는 RAG (0) | 2024.04.14 |
---|---|
Stable Diffusion이란? (0) | 2024.04.08 |
쿠버네티스가 AI, ML, LLM를 위한 플랫폼인 이유 (0) | 2023.09.06 |
MLOps, DataOps, AIOps란? (0) | 2023.08.27 |