HISP Centre · University of Oslo
CHAPModel Marketplace
Contribute a model

Getting listed is a pull request and three reviews

The marketplace is a git repository. You add one YAML file describing your chapkit service and pinning a commit and its image; 3 CHAP maintainers review it; the merge is the listing. Nothing else grants access — there is no upload form and no account to create.

The review pipeline

The model YAML file

One file per model in models/. Most of it is transcribed from your service's own MLServiceInfo. Adding a version is a second, smaller PR appending to versions: — reviewed the same way. The full format is documented in models/README.md.

models/my_model.yaml
1schema_version: 2
2
3id: my_model
4service_id: my-model # MLServiceInfo.id — kebab-case of id
5display_name: My Model
6kind: model # model | template
7assessed_status: red # YOUR OWN chapkit AssessedStatus
8
9summary: >-
10 What the model is and when to use it.
11
12source:
13 repository: https://github.com/org/my_model
14 image: ghcr.io/org/my_model # published, no tag
15 runtime_image: ghcr.io/dhis2-chap/chapkit-py # the chapkit base
16
17attribution:
18 author: Your Name
19 contact: you@example.org
20
21maintainers: [your-github-handle]
22
23compatibility:
24 period_types: [monthly]
25 min_prediction_periods: 1
26 max_prediction_periods: 12
27 requires_geo: false
28
29covariates:
30 required: [population] # supplied automatically by chap
31 defaults: [rainfall] # your service's own defaults
32 allow_free_additional: true
33
34channels:
35 stable: 1.0.0 # must point at a verified version
36 latest: 1.0.0
37
38versions:
39 - version: 1.0.0 # your MLServiceInfo.version
40 commit: 1111111111111111111111111111111111111111
41 image_tag: sha-1111111 # the tag built from that commit
42 chapkit: ">=2.0.0,<3"
43 status: verified # set by maintainers on approval
44 verified_by: [] # the three approving maintainers
45 changelog: First submission.
46
47configurations:
48 monthly:
49 description: When to use this configuration.
50 config:
51 prediction_periods: 3
52 some_option: 12
53 additional_continuous_covariates: [rainfall]