의료 문서 같은 경우 청킹은 피하는 게 낫습니다. 맥락이 중요한 도메인이거든요. 차라리 RoPE 스케일링으로 컨텍스트 윈도우를 8K나 16K로 확장하는 게 낫더라고요. 학습 비용은 늘지만 성능 향상이 훨씬 크거든요. 아니면 처음부터 Llama2-Long 같은 확장 모델을 쓰는 방법도 있습니다. 문서를 무리해서 자르는 것보다는 낫습니다.
딥러너
의료 문서는 정말 길어서 그 문제 많이 겪으시는군요. 저는 문서를 섹션 단위로 나눠서 각각 독립적으로 학습시켰는데 생각보다 괜찮더라고요. 물론 완벽하진 않지만 전체 자르는 것보다는 낫습니다. 요즘엔 Llama2-7B 32k 모델도 있으니 그쪽으로 가는 것도 방법일 것 같습니다.
흐름타는개발자
의료 문서는 정말 길어서 그 문제 많더라고요. 저도 RAG로 청킹해서 처리하는 게 차라리 나았어요.
코드리뷰어
저도 비슷한 문제로 삽질했는데 결론은 청킹이 답인 것 같아요. 의료 문서같은 경우 섹션 단위로 나누면 각 청크가 의미 있는 단위가 되거든요. 컨텍스트 확장은 비용 대비 효과가 별로더라고요.
대신 청킹할 때 오버래핑을 좀 해주면 맥락 손실을 줄일 수 있습니다. 예를 들어 앞 청크의 마지막 50토큰을 다음 청크에 포함시키는 식으로요. 그리고 여러 청크를 함께 학습시킬 때 명시적으로 "이 내용은 이전 섹션에서..."같은 마커를 넣어주면 더 좋아요.
실제로 이렇게 처리한 후에 성능이 더 올라갔으니 한번 시도해보