Course Wiki
Content Processing Cases and Steps — LLM Zoomcamp Module 7
- Assign each article a document id - Chunk the articles - Assign each chunk a unique chunk id (could be doc_id + chunk_number) - Evaluate retrieval: separate hitrate for both doc_id and chunk_id - Evaluate RAG: LLM as a Judge - Tuning...
Related Pages
LLM Zoomcamp › Module 7: End-to-End Project › Content Processing Cases and Steps
Notes
Content Processing Cases and Steps
Case: Multiple Articles
- Assign each article a document id
- Chunk the articles
- Assign each chunk a unique chunk id (could be doc_id + chunk_number)
- Evaluate retrieval: separate hitrate for both doc_id and chunk_id
- Evaluate RAG: LLM as a Judge
- Tuning chunk size: use metrics from Evaluate RAG
Example JSON structure for a chunk:
{
"doc_id": "ashdiasdh",
"chunk_id": "ashdiasdh_1",
"text": "actual text"
}
Case: Single Article / Transcript / Etc.
Example: the user provides YouTubeID, you initialize the system and now you can talk to it
- Chunk it
- Evaluation as for multiple articles
Case: Book or Very Long Form Content
- Experiment with it
- Each chapter / section can be a separate document
- Use LLM as a Judge to see which approach works best
Case: Images
- Describe the images using gpt-4o-mini
- CLIP
- Each image is a separate document
Case: Slides
- Same as with images + multiple articles
- “Chunking”: slide deck = document, slide = chunk
Key concepts
Related notes
- llmz-m01-agents
- llmz-m01-building-the-prompt
- llmz-m01-data-ingestion
- llmz-m01-environment
- llmz-m01-function-calling
- llmz-m01-introduction
- llmz-m01-other-frameworks
- llmz-m01-quick-rag-revision-optional
- llmz-m01-rag
- llmz-m01-rag-helper
- llmz-m01-search
- llmz-m01-the-agentic-loop
- llmz-m01-the-course-faq-dataset
- llmz-m01-the-llm
- llmz-m01-toyaikit
- llmz-m01-wrap-up-of-part-1
- llmz-m02-embeddings
- llmz-m02-next-steps
- llmz-m02-rag-with-vector-search
- llmz-m02-vector-search
- llmz-m02-vector-search-with-minsearch
- llmz-m02-vector-search-with-pgvector
- llmz-m02-vector-search-with-sqlitesearch
- llmz-m03-ai-agents
- llmz-m03-ai-copilot
- llmz-m03-ai-orchestration
- llmz-m03-best-practices
- llmz-m03-context-engineering
- llmz-m03-next-steps
- llmz-m03-retrieval-augmented-generation
- llmz-m03-setting-up-kestra
- llmz-m04-agent-evaluation
- llmz-m04-evaluation
- llmz-m04-generating-ground-truth-data
- llmz-m04-generating-ground-truth-for-all-documents
- llmz-m04-generating-rag-answers
- llmz-m04-llm-as-a-judge
- llmz-m04-next-steps
- llmz-m04-rag-and-agent-evaluation
- llmz-m04-search-evaluation
- llmz-m04-search-evaluation-metrics
- llmz-m04-search-parameter-tuning
- llmz-m05-assistant
- llmz-m05-built-in-judge
- llmz-m05-capturing-metrics
- llmz-m05-chat-app
- llmz-m05-docker-compose
- llmz-m05-monitoring
- llmz-m05-next-steps
- llmz-m05-storing-data-in-postgresql
- llmz-m05-streamlit-dashboard
- llmz-m05-user-feedback
- llmz-m06-best-practices-for-rag
- llmz-m06-document-reranking
- llmz-m06-next-steps
- llmz-m07-chunking-for-longer-texts
- llmz-m07-end-to-end-project-example
- llmz-m07-evaluating-rag
- llmz-m07-evaluating-retrieval
- llmz-m07-interface-and-ingestion-pipeline
- llmz-m07-monitoring-and-containerization
- llmz-m07-summary-and-closing-remarks