numerai-model-implementation
Add a new Numerai model type to the agents training pipeline. Use when you need to register a model in `agents/code/modeling/utils/model_factory.py`, handle fit/predict quirks in `agents/code/modeling/utils/numerai_cv.py`, and update configs so the model can run via `python -m agents.code.modeling`.
Best use case
numerai-model-implementation is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Add a new Numerai model type to the agents training pipeline. Use when you need to register a model in `agents/code/modeling/utils/model_factory.py`, handle fit/predict quirks in `agents/code/modeling/utils/numerai_cv.py`, and update configs so the model can run via `python -m agents.code.modeling`.
Teams using numerai-model-implementation should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/numerai-model-implementation/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How numerai-model-implementation Compares
| Feature / Agent | numerai-model-implementation | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Add a new Numerai model type to the agents training pipeline. Use when you need to register a model in `agents/code/modeling/utils/model_factory.py`, handle fit/predict quirks in `agents/code/modeling/utils/numerai_cv.py`, and update configs so the model can run via `python -m agents.code.modeling`.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
AI Agents for Coding
Browse AI agent skills for coding, debugging, testing, refactoring, code review, and developer workflows across Claude, Cursor, and Codex.
Best AI Skills for Claude
Explore the best AI skills for Claude and Claude Code across coding, research, workflow automation, documentation, and agent operations.
SKILL.md Source
# Numerai Model Implementation
## Overview
Add a new model type so it can be selected in configs and trained/evaluated by the base pipeline.
Note: run commands from `numerai/` (so `agents` is importable), or from repo root with `PYTHONPATH=numerai`.
## Implement a New Model Type
1. Define the model API and output shape.
- Implement `fit(X, y, sample_weight=...)` and `predict(X)`.
- Put custom wrappers in `agents/code/modeling/models/` so model-specific code stays isolated.
- Accept pandas DataFrames or convert to NumPy inside the model wrapper.
2. Register the model constructor in `agents/code/modeling/utils/model_factory.py`.
- Use lazy imports so optional dependencies do not break other workflows.
- Raise a clear ImportError when the dependency is missing.
```python
if model_type == "XGBRegressor":
try:
from xgboost import XGBRegressor
except ImportError as exc:
raise ImportError(
"xgboost is required for XGBRegressor. Install with `.venv/bin/pip install xgboost`."
) from exc
return XGBRegressor(**model_params)
```
3. Add or update a config to use the new model type.
```python
CONFIG = {
"model": {"type": "XGBRegressor", "params": {"n_estimators": 500}},
"training": {"cv": {"n_splits": 5}},
"data": {"data_version": "v5.2", "feature_set": "small", "target_col": "target", "era_col": "era"},
"output": {},
"preprocessing": {},
}
```
4. Add extra data columns if the model needs them.
- Update `load_and_prepare_data` in `agents/code/modeling/utils/pipeline.py` to pass extra columns into `load_full_data`.
- Add corresponding config entries so experiments stay reproducible.
## Validate
- Run a smoke test: `.venv/bin/python -m agents.code.modeling --config <config_path>`.
- Run metrics on the smoke test and make sure corr_mean is > 0.005 and < 0.04. If it's less then something is probably fundamentally wrong. If it's higher than there is likely leakage and you need to find the problem.
- Double check that any early stopping mechanisms or modifications to the fit/predict loop don't over-estimate accuracy. Accurately estimating performance is of paramount importance on Numerai because we need to be able to decide if we should stake or not.
- Run unit tests after refactors: `.venv/bin/python -m unittest`.
## Next Steps
After validating the model implementation:
1. Use the `numerai-experiment-design` skill to run **multiple rounds** of experiments (4–5 configs per round), then **scale winners** until you hit a plateau.
2. Use the `numerai-model-upload` skill to create a pkl file **only after** you have a stable, scaled “best model” you intend to deploy.
3. Deploy to Numerai using the MCP server (see `numerai-model-upload` skill for deployment workflow).Related Skills
numerai-research
End-to-end Numerai research workflow for trying a new idea: design experiments, implement new model types if needed, run scout→scale experiments, write a full experiment.md report with standard plots, and optionally package/upload a Numerai pickle. Use when a user asks to “try/test a new idea”, “run an experiment”, “sweep configs”, “compare model variants”, or otherwise do new Numerai research.
numerai-model-upload
Create Numerai Tournament model upload pickles (.pkl) with a self-contained predict() function. Use when preparing upload artifacts, debugging numerai_predict import errors, or documenting model-upload requirements and testing steps.
numerai-experiment-design
Design and manage Numerai experiments in this repo for any model idea.
report-research
Write a complete Numerai experiment report in experiment.md (abstract, methods, results tables, decisions, next steps) and generate/link the standard show_experiment plot(s). Use after running any Numerai research experiments, or when a user asks for a “full report”, “write up”, “experiment.md update”, or “generate the standard plot”.
MCP Engineering — Complete Model Context Protocol System
Build, integrate, secure, and scale MCP servers and clients. From first server to production multi-tool architecture.
ml-model-eval-benchmark
Compare model candidates using weighted metrics and deterministic ranking outputs. Use for benchmark leaderboards and model promotion decisions.
threat-modeling-expert
Expert in threat modeling methodologies, security architecture review, and risk assessment. Masters STRIDE, PASTA, attack trees, and security requirement extraction. Use PROACTIVELY for security architecture reviews, threat identification, or building secure-by-design systems.
statsmodels
Statsmodels is Python's premier library for statistical modeling, providing tools for estimation, inference, and diagnostics across a wide range of statistical methods.
startup-financial-modeling
Build comprehensive 3-5 year financial models with revenue projections, cost structures, cash flow analysis, and scenario planning for early-stage startups.
slo-implementation
Framework for defining and implementing Service Level Indicators (SLIs), Service Level Objectives (SLOs), and error budgets.
rag-implementation
RAG (Retrieval-Augmented Generation) implementation workflow covering embedding selection, vector database setup, chunking strategies, and retrieval optimization.
pydantic-models-py
Create Pydantic models following the multi-model pattern for clean API contracts.