[AI]2단계_모델_추론성능_최적화_미션_생성 - 100-hours-a-week/12-marong-Wiki GitHub Wiki
1. 모델별 마니또 미션 생성 성능 지표 및 문서화
유사도 기반 RAG 컨텍스트를 참고하여 LLM이 독자적으로 생성한 미션과 단순 재조합된 미션의 비율, 후처리 통과율, 생성 안정성 및 속도를 비교함.
이를 통해 정답 토큰과 예측 토큰의 CrossEntropy Loss 총합 최소화가 실질적으로 사용자에게 적합한 미션을 생성하는지 평가하기 어려운 부분을 보완하여 모델 성능에 대해 평가하였음. 각 모델은 50개의 미션을 생성하여 성능을 테스트함.
모델명 | 후처리 통과 비율(%) | RAG 재사용률(%) | 독자 생성 비율(%) | 생성 속도 (50개) | GPU 예약 메모리 | 비고 |
---|---|---|---|---|---|---|
HyperCLOVA 1.5B | 70% | 약 70% | 약 30% | 약 3분 | 약 20GB | 독창적 생성 가능하며 안정적 |
Polyglot 3.8B | 50% | 약 85% | 약 15% | 약 5분 | 약 15GB | 독창적 생성 제한적으로 가능 |
LLaMA 2-7B | 약 10% | 약 80~90% | 약 10% | 약 7분 | 약 24GB | 후처리 통과 실패 빈도 높음 |
Gemma 2B | 0% | 100% | 0% | 약 7분 | 약 8GB | RAG 재사용, 독자 생성 실패 |
후처리 통과 기준: 명확성, 적합성, 과도성 필터링 포함(이미 생성된 내용과의 내용 중복도 제외, 그 기준은 별도 처리)
후처리 통과 비율, RAG 재사용률, 독자 생성 비율, 생성 속도, GPU 예약 메모리를 종합적으로 검토하였을 때, HyperCLOVA 1.5B를 미션 생성 모델로 채택하였음.
생성 예시
['마니띠의 컴퓨터 개발 공부 습관을 알아보기 🔍 (난이도: 중)', '마니띠가 가장 좋아하는 개발 언어는 무엇인지 알아보기 ❤️ 🔍 (난이도: 중)', '마니띠가 가장 좋아하는 개발자 이름을 알아보기 ❤️ 🔍 (난이도: 중)', ...(중략)'마니띠에게 최근 배운 프로그래밍 지식 중에 흥미로웠던 거 피드로 이야기하기 📸 (난이도: 하)']
2. 식별된 성능 병목 요소 및 원인 분석
- RAG 컨텍스트에 포함된 문장 반복 및 재조합 빈도가 높아, LLM의 독자적 생성 능력 한계 확인됨
- Gemma 모델은 후처리 필터를 통과할 만한 독창적 생성 능력 부족
- Polyglot 및 LLaMA 모델은 단순 RAG 재조합 위주로 생성, 창의적 생성은 제한적
- HyperCLOVA는 비교적 높은 독자 생성 비율을 보였으나, 일부 반복 표현 발생
3. 최적화 기법 및 개선 계획
후처리 필터링 강화 및 RAG 최소화
- 후처리 로직 개선: RAG 기반 재조합 문장과 LLM 독자 생성 문장 구분 평가
- RAG 컨텍스트 축소 실험: 최소한의 문맥만 제공하여 LLM의 생성 자유도 확대
- 데이터셋 보강: LLM이 참조할 수 있는 미션 유형 및 표현 방식의 다양성 데이터셋 추가
모델 선택 기준 고도화
- 독자 생성 비율이 높은 모델 우선
- 속도와 VRAM 효율성 고려 (LLaMA, Polyglot, Gemma는 속도는 빠르나 성능 제한적)
4. 최적화 적용 후 기대 성능 지표 정의
- 후처리 통과율: LLM이 생성한 미션 중 필터링을 통과한 미션 비율
- RAG-독자 생성 비율: RAG에서 유래되지 않은 독립적인 미션의 생성 비율
- 생성 안정성: 빈 리스트 발생률 및 실패율 (0% 목표)
- 속도(50개 기준): 50개 생성 완료 시간 유지
- Precision 및 Recall (추후 미션 적용 후 사용자 반응에 따른 정밀도/재현율 평가)
추가 사항
- 이번 평가에서 HyperCLOVA가 가장 높은 독자 생성 성능을 보였으며, Polyglot, LLaMA, Gemma 순으로 성능 저하