# manavsharma2707/trace-and-ace-comp architecture

> Architecture diagram of the GitHub repository manavsharma2707/trace-and-ace-comp, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/manavsharma2707/trace-and-ace-comp
- Repository: https://github.com/manavsharma2707/trace-and-ace-comp

## Overview

Trace the Ace is a DrivenData competition solution for estimating a student’s probability of answering the next assessment question correctly. Its documented workflow develops transcript features and cross-validation folds, trains feature-based and LLM models, then combines their predictions in a packaged inference submission. The README also documents leakage-safe objective encoding and an embedding-kNN fallback. Source files were not sampled, so links represent documented relationships only; implementation details inside submission.zip are not independently verified.

Main entry points: [`submission.zip`](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip) (Packaged inference), [`notebooks/01-eda-features.ipynb`](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/notebooks/01-eda-features.ipynb) (Feature engineering), [`notebooks/03-llm-finetune.ipynb`](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/notebooks/03-llm-finetune.ipynb) (Qwen classifier), [`assets`](https://github.com/manavsharma2707/trace-and-ace-comp/tree/main/assets) (Model assets)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_data["Data preparation"]
  node_eda["Feature engineering"]
  node_features["Transcript features"]
  node_folds["Grouped CV folds"]
end

subgraph group_modeling["Model development"]
  node_baseline["Logistic baseline"]
  node_llmtrain["LLM fine-tuning"]
  node_featuremodel["LightGBM model<br/>[submission.zip]"]
  node_encoding["Objective encoding<br/>[submission.zip]"]
  node_knn["Embedding-kNN fallback<br/>[submission.zip]"]
  node_llmmodel["Qwen classifier"]
end

subgraph group_runtime["Inference and blending"]
  node_inference["Packaged inference<br/>[submission.zip]"]
  node_blend["Weighted blend<br/>[submission.zip]"]
  node_prediction["Probability prediction<br/>[submission.zip]"]
end

subgraph group_artifacts["Packaged artifacts"]
  node_assets["Model assets"]
  node_submission["Submission package<br/>[submission.zip]"]
end

node_competition(("Competition data"))
node_runner(("Competition runner"))

node_competition -->|"provides data"| node_eda
node_eda -->|"creates features"| node_features
node_eda -->|"creates folds"| node_folds
node_features -->|"trains baseline"| node_baseline
node_features -->|"trains model"| node_featuremodel
node_folds -->|"guides validation"| node_featuremodel
node_encoding -->|"encodes objectives"| node_featuremodel
node_knn -->|"handles unseen"| node_encoding
node_llmtrain -->|"trains classifier"| node_llmmodel
node_runner -->|"invokes"| node_inference
node_submission -->|"packages"| node_inference
node_assets -->|"supplies weights"| node_inference
node_inference -->|"predicts features"| node_featuremodel
node_inference -.->|"predicts transcript"| node_llmmodel
node_inference -->|"combines predictions"| node_blend
node_blend -->|"returns probability"| node_prediction

click node_eda "https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/notebooks/01-eda-features.ipynb"
click node_features "https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/notebooks/01-eda-features.ipynb"
click node_folds "https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/notebooks/01-eda-features.ipynb"
click node_baseline "https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/notebooks/02-baseline-model.ipynb"
click node_llmtrain "https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/notebooks/03-llm-finetune.ipynb"
click node_featuremodel "https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip"
click node_encoding "https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip"
click node_knn "https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip"
click node_llmmodel "https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/notebooks/03-llm-finetune.ipynb"
click node_inference "https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip"
click node_blend "https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip"
click node_prediction "https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip"
click node_assets "https://github.com/manavsharma2707/trace-and-ace-comp/tree/main/assets"
click node_submission "https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_eda,node_features,node_folds toneBlue
class node_baseline,node_llmtrain,node_featuremodel,node_encoding,node_knn,node_llmmodel toneAmber
class node_inference,node_blend,node_prediction toneMint
class node_assets,node_submission toneRose
class node_competition,node_runner toneIndigo
```

## Components

### Data preparation

- [Feature engineering](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/notebooks/01-eda-features.ipynb): `notebooks/01-eda-features.ipynb`
- [Transcript features](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/notebooks/01-eda-features.ipynb): `notebooks/01-eda-features.ipynb`
- [Grouped CV folds](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/notebooks/01-eda-features.ipynb): `notebooks/01-eda-features.ipynb`

### Model development

- [Logistic baseline](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/notebooks/02-baseline-model.ipynb): `notebooks/02-baseline-model.ipynb`
- [LLM fine-tuning](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/notebooks/03-llm-finetune.ipynb): `notebooks/03-llm-finetune.ipynb`
- [LightGBM model](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip): `submission.zip`
- [Objective encoding](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip): `submission.zip`
- [Embedding-kNN fallback](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip): `submission.zip`
- [Qwen classifier](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/notebooks/03-llm-finetune.ipynb): `notebooks/03-llm-finetune.ipynb`

### Inference and blending

- [Packaged inference](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip): `submission.zip`
- [Weighted blend](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip): `submission.zip`
- [Probability prediction](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip): `submission.zip`

### Packaged artifacts

- [Model assets](https://github.com/manavsharma2707/trace-and-ace-comp/tree/main/assets): `assets`
- [Submission package](https://github.com/manavsharma2707/trace-and-ace-comp/blob/main/submission.zip): `submission.zip`

### Other components

- **Competition data**
- **Competition runner**

## Connections

- Competition data → Feature engineering: provides data
- Feature engineering → Transcript features: creates features
- Feature engineering → Grouped CV folds: creates folds
- Transcript features → Logistic baseline: trains baseline
- Transcript features → LightGBM model: trains model
- Grouped CV folds → LightGBM model: guides validation
- Objective encoding → LightGBM model: encodes objectives
- Embedding-kNN fallback → Objective encoding: handles unseen
- LLM fine-tuning → Qwen classifier: trains classifier
- Competition runner → Packaged inference: invokes
- Submission package → Packaged inference: packages
- Model assets → Packaged inference: supplies weights
- Packaged inference → LightGBM model: predicts features
- Packaged inference → Qwen classifier: predicts transcript
- Packaged inference → Weighted blend: combines predictions
- Weighted blend → Probability prediction: returns probability
