RAG VS FineTuning - 100-hours-a-week/12-marong-Wiki GitHub Wiki

RAG vs Finetuning

πŸ“ RAG μ΄λž€?

  • LLM이 μ™ΈλΆ€ 지식을 κ²€μƒ‰ν•΄μ„œ 닡변을 μƒμ„±ν•˜λ„λ‘ ν•˜λŠ” 방식
  • λŒ€κ·œλͺ¨ λ¬Έμ„œ μ§‘ν•©μ—μ„œ κ΄€λ ¨λœ 문단을 κ²€μƒ‰ν•˜λŠ” λ¦¬νŠΈλ¦¬λ²„μ™€, 이λ₯Ό λ°”νƒ•μœΌλ‘œ 닡변을 μƒμ„±ν•˜λŠ” λͺ¨λΈμ„ κ²°ν•©
  • LLM이 λͺ°λΌλ„ λ˜λŠ” 지식은 미리 μ €μž₯된 λ¬Έμ„œμ—μ„œ 찾아와 μ°Έκ³ ν•˜λŠ” ꡬ쑰

πŸ“ νŒŒμΈνŠœλ‹(Fine-Tuning) μ΄λž€?

  • 이미 ν•™μŠ΅λœ LLM의 κ°€μ€‘μΉ˜λ₯Ό νŠΉμ • λ°μ΄ν„°μ…‹μœΌλ‘œ μΆ”κ°€ ν•™μŠ΅μ‹œμΌœ, νŠΉμ • νƒœμŠ€ν¬μ— μ΅œμ ν™”ν•˜λŠ” 방식
  • 각자의 μ„œλΉ„μŠ€μ— κΌ­ ν•„μš”ν•œ μ§€μ‹μ΄λ‚˜ μŠ€νƒ€μΌμ„ λͺ¨λΈ 내뢀에 직접 μ‹¬λŠ” 과정이라고 λ³Ό 수 있음

πŸ“ 무쑰건 νŒŒμΈνŠœλ‹ν•˜λŠ” 것이 쒋은 κ²ƒλ§Œμ€ μ•„λ‹ˆλ‹€

이 λ‘˜μ€ 근본적으둜 λ‹€λ₯Έ μ ‘κ·Ό 방식이기 λ•Œλ¬Έ

βœ”οΈ μ™ΈλΆ€ 데이터 μ†ŒμŠ€μ— μ ‘κ·Όν•΄μ•Όν•˜λŠ”μ§€

μ™ΈλΆ€ 데이터 μ†ŒμŠ€μ— μ ‘κ·Όν•΄μ•Όν•œλ‹€λ©΄ RAG이 더 쒋은 선택일 κ°€λŠ₯성이 크닀

  • RAG
    • RAG μ‹œμŠ€ν…œμ€ μ •μ˜μƒ 응닡을 μƒμ„±ν•˜κΈ° 전에 지식 μ†ŒμŠ€μ—μ„œ κ΄€λ ¨ 정보λ₯Ό κ²€μƒ‰ν•˜μ—¬ LLM λŠ₯λ ₯을 λ³΄κ°•ν•˜λ„λ‘ μ„€κ³„λ˜μ–΄μžˆμŒ.
    • λ¦¬νŠΈλ¦¬λ²„μ™€ 생성기 κ΅¬μ„±μš”μ†Œλ₯Ό μ΄λŸ¬ν•œ μ™ΈλΆ€ μ†ŒμŠ€ ν™œμš©μ— μ΅œμ ν™”ν•  수 있음
  • Fine Tuning
    • LLM을 νŒŒμΈνŠœλ‹ν•˜μ—¬ μ™ΈλΆ€ 지식을 ν•™μŠ΅μ‹œν‚€λŠ” 것도 κ°€λŠ₯ν•˜μ§€λ§Œ, 이λ₯Ό μœ„ν•΄μ„œλŠ” λŒ€μƒ λ„λ©˜μΈμ˜ 질문-응닡 쌍으둜 된 λŒ€κ·œλͺ¨ λ ˆμ΄λΈ” 데이터셋이 ν•„μš”ν•¨.
    • ν•΄λ‹Ή 데이터가 변경될 λ–„λ§ˆλ‹€ 데이터셋을 μ—…λ°μ΄νŠΈ ν•΄μ•Ό ν•˜λ―€λ‘œ, 자주 λ°”λ€ŒλŠ” 데이터 μ†ŒμŠ€μ—λŠ” ν˜„μ‹€μ μ΄μ§€ μ•ŠμŒ

βœ”οΈ λͺ¨λΈμ˜ λ™μž‘, 문체 λ˜λŠ” 도메인 νŠΉν™” 지식을 μˆ˜μ •ν•΄μ•Όν•˜λŠ”μ§€

μ „λ¬Έν™”λœ λ¬Έμ²΄λ‚˜ κΉŠμ΄μžˆλŠ” 도메인 μš©μ–΄ 정렬을 μš”κ΅¬ν•œλ‹€λ©΄, νŒŒμΈνŠœλ‹μ΄ 더 적합할 수 있음

  • RAG

    • μ™ΈλΆ€ 지식 ν†΅ν•©μ—μ„œλŠ” κ°•λ ₯ν•˜μ§€λ§Œ, κ²€μƒ‰λœ 정보λ₯Ό λ°”νƒ•μœΌλ‘œ μ–Έμ–΄ μŠ€νƒ€μΌμ΄λ‚˜ 도메인 νŠΉν™”μ„±μ„ 본질적으둜 μ‘°μ •ν•˜μ§€λŠ” μ•ŠμŒ
  • Fine Tuning

    • LLM의 행동을 νŠΉμ • λ‰˜μ•™μŠ€, μ–΄νˆ¬, μš©μ–΄ μ‚¬μš©μ— 맞게 μ‘°μ •ν•˜λŠ” 데 탁월함
    • 예λ₯Ό λ“€μ–΄, 의료 μ „λ¬Έκ°€μ²˜λŸΌ λ§ν•˜κ²Œ ν•˜λŠ” λ“± 도메인 νŠΉν™” λ°μ΄ν„°λ‘œ νŒŒμΈνŠœλ‹ ν•˜λŠ” 방법이 λ§žμΆ€ν™”λ₯Ό κ°€λŠ₯ν•˜κ²Œ 함

πŸ“ 비ꡐ 및 마둱 μ„œλΉ„μŠ€ λŒ€μž…

RAG FineTuning marong
μ™ΈλΆ€ 데이터 μ ‘κ·Ό ν•„μš” μ—¬λΆ€ O X 정적데이터(사싀상 X ) FineTuning
도메인 νŠΉν™” μ‘°μ • ν•„μš” μ—¬λΆ€ X O X RAG
ν™˜κ° μ–΅μ œ μ€‘μš”λ„(검증 ν•„μš” μ—¬λΆ€) O X X FineTuning
라벨된 ν•™μŠ΅ λ°μ΄ν„°λŸ‰ X O O FineTuning
데이터셋이 동적 데이터인가 O X X Fine Tuning
투λͺ…μ„±/ 해석가λŠ₯μ„± X O X RAG

πŸ’₯ FineTuning ν•˜λŠ” 것이 λ”μš± 효과적