Skip to content

Instantly share code, notes, and snippets.

@louis030195
Created February 29, 2024 10:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save louis030195/5f59f1dba2e620d7bfe69d2cfdb13b99 to your computer and use it in GitHub Desktop.
Save louis030195/5f59f1dba2e620d7bfe69d2cfdb13b99 to your computer and use it in GitHub Desktop.
Consideration RAG Fine-Tuning Notes
Data Requirements Less reliant on domain-specific training data Requires substantial domain-specific training data RAG adapts easily to new data; fine-tuning is best for stable knowledge bases.
Model Adaptability More flexible to new, unseen data Less flexible, tailored to the training data RAG is preferred for applications needing up-to-date information.
Update Frequency Easily incorporates new information without retraining Requires retraining for new information RAG is beneficial for dynamic content generation.
Performance Best for tasks requiring external data Best for tasks with a stable knowledge base Fine-tuning excels in domain-specific applications.
Cost Lower computational cost for updates Higher computational cost due to retraining Fine-tuning may lead to cost savings with small models.
Data Dynamics Excels in dynamic environments, updating from sources Static snapshot of data, may become outdated RAG is preferred for evolving information needs[1].
Customization May not fully customize model's behavior or style Deep alignment with specific styles or knowledge Fine-tuning for specialized styles or deep domain alignment[1][4].
Hallucination Less prone due to grounding in retrieved evidence May fabricate responses but can reduce hallucinations RAG minimizes hallucinations[1].
Transparency Offers transparency in response generation Operates more like a black box RAG advantages in transparency and interpretability[1].
Cost Efficiency Does not allow for use of smaller models Improves effectiveness of small models Fine-tuning preferable for cost considerations[1].
Knowledge Injection Dynamic incorporation of external knowledge Injects new knowledge, can be unstable RAG for tasks requiring up-to-date or domain-specific knowledge[2][4].
Use Cases Ideal for querying databases or documents Suited for specific outcomes or behavioral adjustments RAG for external data reliance; fine-tuning for behavioral changes[1][5].
Combination - - Combining RAG and fine-tuning leverages strengths of both[3].
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment