Lessons Learned from a
Multi-Model Question
Answering Pipeline
on the Chameleon Testbed
Deshan Wattegama · Nagarjuna Kandimalla · Katelyn Van Dyke · Tanu Malik, PhD
University of Missouri | CHI-251508 | Sixth Chameleon User Meeting — April 15, 2026
Project Overview
The Challenge
No single LLM consistently yields the best answer across diverse question types, domains, or latency constraints.
Goal:
Investigate data-centric model routing — dynamically select the optimal model per query.
Context:
Semester-long graduate course: Designing End-to- End ML Systems at University of Missouri.
What We Built
1
Project Formulation
Milestone 1 :
RAG-based Q&A Pipeline
Milestone 2 :
Containerized RAG-based Q&A Pipeline
2
Pipeline Architecture
Docker on Chameleon
Infrastructure: Docker orchestration · Docker containers · MinIO (S3) artifacts · JupyterLab dev environment · Ceph-backed Block storage
Three Routing Modes:
Manual Rules
Fixed routing policy
Dataset Heuristics
If-then rules per dataset
ML Router
Logistic regression classifier
Milestone 3 :
3
Initial Results
Dataset | Best Model | Mean Cosine |
HotpotQA | qwen2_5 | 0.691563 |
NarrativeQA | mistral | 0.336478 |
PubMedQA | mistral | 0.238067 |
Training Performance – Dataset Based Routing
Testing Performance – Dataset Based Routing
Dataset | Routed Variant | Mean Cosine | Mean Latency | Count |
hotpotqa | qwen2_5 | 0.655734 | 324.396267 | 300 |
narrativeqa | mistral | 0.353230 | 365.782356 | 300 |
pubmedqa | mistral | 0.236548 | 148.214912 | 300 |
4
Initial Results
ML-Based Routing: Training Overview
Utility-based classifier to select best model per question
TRAINING SETUP
Dataset | Prompt characters | Context characters
Model / Metric | Precision | Recall | F1-Score | Support |
llama3 | 0.34 | 0.63 | 0.44 | 651 |
mistral | 0.84 | 0.44 | 0.58 | 2,019 |
qwen2_5 | 0.15 | 0.32 | 0.20 | 330 |
Aggregates | | | | |
accuracy | — | — | 0.47 | 3,000 |
macro avg | 0.44 | 0.46 | 0.41 | 3,000 |
weighted avg | 0.65 | 0.47 | 0.51 | 3,000 |
| pred: llama3 | pred: mistral | pred: qwen2_5 |
true: llama3 | 407 | 55 | 189 |
true: mistral | 699 | 888 | 432 |
true: qwen2_5 | 108 | 115 | 107 |
TARGET LABELS
Label | Count |
mistral | 10,094 |
llama3 | 3,254 |
qwen2_5 | 1,652 |
Training Performance – Dataset Based Routing
5
Initial Results
Testing Performance – ML Based Routing
Dataset | Routed Variant | Mean Cosine | Mean Latency | count |
hotpotqa | llama3 | 0.751629 | 293.721953 | 77 |
mistral | 0.870826 | 209.791521 | 28 | |
qwen2_5 | 0.597160 | 346.132284 | 195 | |
narrativeqa | llama3 | 0.305930 | 371.175908 | 300 |
pubmedqa | mistral | 0.240653 | 152.463974 | 288 |
qwen2_5 | -0.008202 | 170.616461 | 12 |
Performance Comparison – Dataset Based vs ML Based
6
Dataset-Dependent Performance
No single model dominated. Optimal model selection varied strongly by dataset type.
Dataset-Aware Routing Wins
Simple heuristic routing matched or beat static selection. Qwen 2.5B best on HotpotQA (0.66), Mistral best on NarrativeQA & PubMedQA.
Conclusions from the project
Quality–Latency Trade-off
Longer context → better answers but higher latency. NarrativeQA latency doubled (~250ms → ~500ms) with increased context.
ML Router Needs Richer Features
Logistic regression on (dataset, prompt length, context length) achieved ~0.46 balanced accuracy — semantic embeddings needed for improvement.
7
Hardware Configuration
Instance type: g1.h100.pci.1
GPU:
1× NVIDIA H100 (94 GB) via PCI passthrough
vCPUs:
48 virtual CPUs
Memory:
~250 GB system RAM
Storage:
Ceph-backed SSD, 150 GiB (expandable on demand)
Networking:
Docker network + public port access
Artifacts:
MinIO S3-compatible object storage (boto3)
Why Chameleon Made This Possible
Rapid GPU Access:
Reserved H100s within hours vs. long queues on Hellbender or Nautilus clusters
Full Root Control:
Installed Kubernetes, Ollama, MinIO, custom Python deps — no ticket required
Elastic Storage:
Expanded Ceph volume on demand when ChromaDB index outgrew initial allocation — zero downtime
Long Reservations:
Held GPUs for days, enabling complete 30K-question evaluation runs without interruption
Public Port Access:
Deployed live routing UI accessible externally for demo & latency benchmarking
Resource Usage
8
Honest Account of What Didn't Work
Challenges & Insights
Challenge: Trovi SSH key conflict
Trovi artifacts auto-inject a new SSH key per instance. Students using personal key pairs could not SSH in — their keys were not recognized, stalling onboarding.
Resolution: Chameleon web UI
Switched to the web UI for reservations — accepted existing key pairs, select instance types, attach volumes, and launch experiments within minutes.
Rapid H100 GPU access
Reserved H100s faster than Hellbender or Nautilus. Held GPUs for days vs. Nautilus time-limited slots — essential for 30,000-question evaluation runs.
Full root access — no ticket queue
Installed Kubernetes, Ollama, MinIO instantly. On Hellbender, custom packages or storage increases required submitting tickets with long wait times.
On-demand Ceph volume expansion
When the vector index outgrew initial allocation, we expanded Ceph volumes via dashboard in minutes, restarted ChromaDB, and continued without downtime.
Self-managed Docker & public ports
Deployed our own containers, opened ports for public access, and benchmarked routing latency with a live UI — impossible on shared HPC systems with locked orchestration layers.
PLATFORM COMPARISON
Feature | Chameleon | Hellbender | Nautilus |
GPU availability | H100, fast | Queued | Time-limited |
Reservation length | Days | 48 Hours | Hours |
Root / admin access | Full root | Restricted | Restricted |
Storage expansion | Self-serve | Ticketed | Limited |
Custom orchestration | Yes | No | No |
Chameleon Cloud — chameleoncloud.org | Hellbender HPC — University of Missouri | Nautilus — National Research Platform
9
What Worked Well
What We Wish Existed
Infrastructure Needs & Community Insights
10
Multi-model QA workloads impose heterogeneous, dynamic infrastructure demands not well matched to traditional HPC assumptions.
Chameleon provided essential GPU accessibility, software freedom, and elastic storage for large-scale routing experiments in a graduate classroom.
Data-centric model routing is promising but requires richer features beyond simple metadata for competitive ML-based selection.
Full administrative control and long GPU reservations were critical differentiators vs. Hellbender and Nautilus.
Better onboarding templates and AI-aware monitoring would significantly improve the Chameleon experience for ML education.
Conclusions
1
2
3
4
5
11
Thank You