8 단계: 최종 통합 설계 및 회고 - 100-hours-a-week/6-nemo-wiki GitHub Wiki
서비스 아키텍처 및 프로젝트 주요 구성 요소 개요
본 문서는 네모 서비스의 최종 아키텍처와 주요 설계, 개발 과정을 정리한 자료입니다. 각 단계별 설계 의도와 결과물을 요약합니다.
1. 최종 통합된 서비스 아키텍처 다이어그램 및 설명
- 목적: 전체 시스템 구조를 시각적으로 표현하여, 서비스 흐름과 컴포넌트 간 관계를 명확히 설명합니다.
- 포함 내용: 프론트엔드, 백엔드, AI 서버, 데이터베이스, 벡터 데이터베이스(ChromaDB) 등 주요 구성 요소와 통신 흐름.
2. 모델 선정 및 최적화
- 목적: 서비스에 가장 적합한 텍스트 생성 및 임베딩 모델을 선정하고, 추론 성능을 최적화한 과정을 설명합니다.
- 포함 내용: 모델 비교, LoRA 적용, 양자화(4bit) 적용, T4 환경 최적화 등.
3. LangChain 기반 멀티스텝 구현
- 목적: LangChain을 활용하여 복합적인 입력과 출력을 처리하는 멀티스텝 파이프라인을 설계·구현한 과정을 설명합니다.
- 포함 내용: 체인 구성 방식, 메모리 관리, 입력 흐름 구조.
4. RAG 설계
- 목적: Retrieval-Augmented Generation(RAG) 구조를 적용하여, 사용자 질의에 대해 더욱 정확하고 풍부한 응답을 생성하는 설계를 설명합니다.
- 포함 내용: 벡터 DB(ChromaDB) 기반 검색 적용 방식, Retriever-Generator 파이프라인 구성.
5. MCP 설계 (미사용)
- 목적: 모델 컨텍스트 프로토콜(MCP) 설계 시도 과정을 설명합니다.
- 포함 내용: MCP 설계 이유, 설계 시도 과정, 최종적으로 미사용하게 된 배경.
6. 회고
- 내용: 전체 계획 수립 및 프로젝트 방향 설정 과정에서의 시행착오와 배운 점.