저도 비슷한 경험이 있는데 결국 sliding window 방식으로 오버래핑해서 학습했어요. 문서를 4K 토큰으로 나누되 앞뒤로 겹치게 만들면 컨텍스트 단절이 덜하더라고요.
RAG는 inference 속도면 확실히 느린데, fine-tuning과 조합해서 쓰는 게 실제로 좋은 결과를 줬습니다. 자주 쓰는 데이터는 fine-tuning으로 학습시키고 특이한 케이스만 RAG로 처리하는 식으로요.
Mistral 7B라면 LoRA로 충분할 것 같은데 혹시 그걸로도 메모리 부족하신 건 아니죠?
GPT덕후하나
저도 비슷한 문제 겪었는데 결국 두 가지를 섞어서 했어요. 긴 문서는 sliding window로 겹치게 잘라서 학습했고, 중요한 섹션은 따로 요약본을 추가 학습 데이터로 만들었거든요.
RAG는 확실히 레이턴시 때문에 실시간이 중요한 상황에선 별로더라고요. 근데 정확도가 필요하면 fine-tuning + RAG 조합도 나쁘지 않습니다. 검색 결과를 프롬프트에 넣고 모델이 그걸 기반으로 답하게 하는 식으로요.
Mistral 7B면 충분히 fine-tuning 가능하니까 일단 sliding window 방식을 먼저 시도해보시길 추천합니다. LoRA로 가볍게 해도 되고요.
따뜻한코더
저도 비슷한 상황 겪었는데 결국 Sliding Window Attention 적용해서 해결했어요. 토큰 길이 제약 내에서 장문서도 처리 가능하더라고요. RAG는 검색 지연이 문제라면 fine-tuning이 나을 것 같습니다.