Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions .github/actions/demo-notebook/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,15 +37,15 @@ runs:
exit 1
fi

- name: Execute ONLY the ValidMind for model development series with heap development
- name: Execute ONLY the ValidMind for development series with heap development
shell: bash
if: ${{ steps.find_dev_env.outcome == 'success' }}
run: |
cd site
cp ../${{ inputs.dev_env }} ../.env
source ../.env
quarto render --profile exe-demo notebooks/EXECUTED/model_development &> render_errors.log || {
echo "Execute for ValidMind for model development series failed";
quarto render --profile exe-demo notebooks/EXECUTED/development &> render_errors.log || {
echo "Execute for ValidMind for development series failed";
cat render_errors.log;
exit 1;
}
Expand All @@ -59,15 +59,15 @@ runs:
exit 1
fi

- name: Execute ONLY the ValidMind for model validation series with heap development
- name: Execute ONLY the ValidMind for validation series with heap development
shell: bash
if: ${{ steps.find_valid_env.outcome == 'success' }}
run: |
cd site
cp ../${{ inputs.valid_env }} ../.env
source ../.env
quarto render --profile exe-demo notebooks/EXECUTED/model_validation &> render_errors.log || {
echo "Execute for ValidMind for model validation series failed";
quarto render --profile exe-demo notebooks/EXECUTED/validation &> render_errors.log || {
echo "Execute for ValidMind for validation series failed";
cat render_errors.log;
exit 1;
}
12 changes: 6 additions & 6 deletions .github/actions/prod-notebook/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,15 +37,15 @@ runs:
exit 1
fi

- name: Execute ONLY the ValidMind for model development series with heap production
- name: Execute ONLY the ValidMind for development series with heap production
shell: bash
if: ${{ steps.find_dev_env.outcome == 'success' }}
run: |
cd site
cp ../${{ inputs.dev_env }} ../.env
source ../.env
quarto render --profile exe-prod notebooks/EXECUTED/model_development &> render_errors.log || {
echo "Execute for ValidMind for model development series failed";
quarto render --profile exe-prod notebooks/EXECUTED/development &> render_errors.log || {
echo "Execute for ValidMind for development series failed";
cat render_errors.log;
exit 1;
}
Expand All @@ -59,15 +59,15 @@ runs:
exit 1
fi

- name: Execute ONLY the ValidMind for model validation series with heap production
- name: Execute ONLY the ValidMind for validation series with heap production
shell: bash
if: ${{ steps.find_valid_env.outcome == 'success' }}
run: |
cd site
cp ../${{ inputs.valid_env }} ../.env
source ../.env
quarto render --profile exe-prod notebooks/EXECUTED/model_validation &> render_errors.log || {
echo "Execute for ValidMind for model validation series failed";
quarto render --profile exe-prod notebooks/EXECUTED/validation &> render_errors.log || {
echo "Execute for ValidMind for validation series failed";
cat render_errors.log;
exit 1;
}
12 changes: 6 additions & 6 deletions .github/actions/staging-notebook/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,15 +37,15 @@ runs:
exit 1
fi

- name: Execute ONLY the ValidMind for model development series with heap staging
- name: Execute ONLY the ValidMind for development series with heap staging
shell: bash
if: ${{ steps.find_dev_env.outcome == 'success' }}
run: |
cd site
cp ../${{ inputs.dev_env }} ../.env
source ../.env
quarto render --profile exe-staging notebooks/EXECUTED/model_development &> render_errors.log || {
echo "Execute for ValidMind for model development series failed";
quarto render --profile exe-staging notebooks/EXECUTED/development &> render_errors.log || {
echo "Execute for ValidMind for development series failed";
cat render_errors.log;
exit 1;
}
Expand All @@ -59,15 +59,15 @@ runs:
exit 1
fi

- name: Execute ONLY the ValidMind for model validation series with heap staging
- name: Execute ONLY the ValidMind for validation series with heap staging
shell: bash
if: ${{ steps.find_valid_env.outcome == 'success' }}
run: |
cd site
cp ../${{ inputs.valid_env }} ../.env
source ../.env
quarto render --profile exe-staging notebooks/EXECUTED/model_validation &> render_errors.log || {
echo "Execute for ValidMind for model validation series failed";
quarto render --profile exe-staging notebooks/EXECUTED/validation &> render_errors.log || {
echo "Execute for ValidMind for validation series failed";
cat render_errors.log;
exit 1;
}
10 changes: 5 additions & 5 deletions .github/workflows/execute-pr-preview.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ jobs:
echo VM_API_MODEL=${{ secrets.PLATFORM_VALID_MODEL }} >> valid.env

# Only execute the demo notebooks for training if .env files are created
- name: Execute demo ValidMind for model development and validation series
- name: Execute demo ValidMind for development and validation series
if: ${{ vars.ENABLE_DEMO_NOTEBOOK == 'true' && steps.create_dev_env.outcome == 'success' && steps.create_valid_env.outcome == 'success' }}
uses: ./.github/actions/demo-notebook
id: execute_demo_notebook
Expand All @@ -99,8 +99,8 @@ jobs:
with:
script: |
const base = `https://docs-staging.validmind.ai/pr_previews/${{ github.head_ref }}`;
const devUrl = `${base}/notebooks/EXECUTED/model_development/1-set_up_validmind.html`;
const valUrl = `${base}/notebooks/EXECUTED/model_validation/1-set_up_validmind_for_validation.html`;
const devUrl = `${base}/notebooks/EXECUTED/development/1-set_up_validmind.html`;
const valUrl = `${base}/notebooks/EXECUTED/validation/1-set_up_validmind_for_validation.html`;

// Delete old preview comments
const { data: comments } = await github.rest.issues.listComments({
Expand All @@ -120,8 +120,8 @@ jobs:

let comment = `## Execute training notebooks for PRs\n\n`;
comment += `✓ INFO: Live previews are available —\n\n`;
comment += `- [Open model development series](${devUrl})\n`;
comment += `- [Open model validation series](${valUrl})\n`;
comment += `- [Open development series](${devUrl})\n`;
comment += `- [Open validation series](${valUrl})\n`;

await github.rest.issues.createComment({
owner: context.repo.owner,
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/execute-prod.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ jobs:
echo VM_API_MODEL=${{ secrets.PLATFORM_VALID_MODEL }} >> valid.env

# Only execute the production notebooks for training if .env files are created
- name: Execute production ValidMind for model development and validation series
- name: Execute production ValidMind for development and validation series
if: ${{ steps.create_dev_env.outcome == 'success' && steps.create_valid_env.outcome == 'success' }}
uses: ./.github/actions/prod-notebook
id: execute-prod-notebook
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/execute-staging.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ jobs:
echo VM_API_MODEL=${{ secrets.PLATFORM_VALID_MODEL }} >> valid.env

# Only execute the staging notebooks for training if .env files are created
- name: Execute staging ValidMind for model development and validation series
- name: Execute staging ValidMind for development and validation series
if: ${{ steps.create_dev_env.outcome == 'success' && steps.create_valid_env.outcome == 'success' }}
uses: ./.github/actions/staging-notebook
id: execute-staging-notebook
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,7 @@ When constructing links, refer to the `.qmd` file as Quarto will properly render

| Correct | Incorrect |
|---|---|
| `[Quickstart — Model Development](get-started/developer/quickstart-developer.qmd)` | `[Quickstart — Model Development](get-started/developer/quickstart-developer.html)` |
| `[Quickstart — Development](get-started/developer/quickstart-developer.qmd)` | `[Quickstart — Development](get-started/developer/quickstart-developer.html)` |

When constructing filepaths, including while using [Quarto's Includes](https://quarto.org/docs/authoring/includes.html) (single-sourcing feature), you'll also want start with the root directory whenever possible as this minimizes usage of unclear relative paths:

Expand Down
35 changes: 18 additions & 17 deletions site/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ help:

add-copyright:
@echo "\nAdding copyright headers to .qmd and .yml/.yaml files ..."
@cd .. && uv run python site/scripts/add_copyright.py
@cd .. && python site/scripts/add_copyright.py

# Clean up source directory
clean:
Expand Down Expand Up @@ -177,12 +177,12 @@ execute:
elif [ "$$PROFILE_CHOICE" = "3" ]; then PROFILE="exe-prod"; \
else echo "Invalid choice"; exit 1; fi; \
echo "Select FILE_PATH:"; \
echo "1) notebooks/EXECUTED/model_development"; \
echo "2) notebooks/EXECUTED/model_validation"; \
echo "1) notebooks/EXECUTED/development"; \
echo "2) notebooks/EXECUTED/validation"; \
echo "3) Enter custom filepath"; \
read -p "Enter choice [1-3]: " FILE_CHOICE; \
if [ "$$FILE_CHOICE" = "1" ]; then FILE_PATH="notebooks/EXECUTED/model_development"; \
elif [ "$$FILE_CHOICE" = "2" ]; then FILE_PATH="notebooks/EXECUTED/model_validation"; \
if [ "$$FILE_CHOICE" = "1" ]; then FILE_PATH="notebooks/EXECUTED/development"; \
elif [ "$$FILE_CHOICE" = "2" ]; then FILE_PATH="notebooks/EXECUTED/validation"; \
elif [ "$$FILE_CHOICE" = "3" ]; then read -p "Enter custom FILE_PATH: " CUSTOM_FILE_PATH; FILE_PATH="$$CUSTOM_FILE_PATH"; \
else echo "Invalid choice"; exit 1; fi; \
read -p "Enter VM_API_HOST (default: https://api.prod.validmind.ai/api/v1/tracking): " INPUT_VM_API_HOST; \
Expand Down Expand Up @@ -324,22 +324,22 @@ notebooks:
@rm -f notebooks.zip
@rm -rf $(DEST_DIR_NB)/ && mkdir -p $(DEST_DIR_NB)
@cp -r $(SRC_DIR)/notebooks/. $(DEST_DIR_NB)/
@echo "Duplicating all files from notebooks/tutorials/model_development/ for execution"
@mkdir -p notebooks/EXECUTED/model_development/
@cp -r notebooks/tutorials/model_development/* notebooks/EXECUTED/model_development/
@echo "Duplicating all files from notebooks/tutorials/model_validation/ for execution"
@mkdir -p notebooks/EXECUTED/model_validation/
@cp -r notebooks/tutorials/model_validation/* notebooks/EXECUTED/model_validation/
@echo "Duplicating all files from notebooks/tutorials/development/ for execution"
@mkdir -p notebooks/EXECUTED/development/
@cp -r notebooks/tutorials/development/* notebooks/EXECUTED/development/
@echo "Duplicating all files from notebooks/tutorials/validation/ for execution"
@mkdir -p notebooks/EXECUTED/validation/
@cp -r notebooks/tutorials/validation/* notebooks/EXECUTED/validation/
@echo "Copying LICENSE into notebooks ..."
@cp -r $(SRC_DIR)/LICENSE $(DEST_DIR_NB)/
@rm -rf $(DEST_DIR_NB)/code_sharing
@rm -rf $(DEST_DIR_NB)/templates
@echo "Copying _metadata.yml into notebooks/ ..."
@cp developer/_metadata.yml $(DEST_DIR_NB)/_metadata.yml
@echo "Updating developer/_sidebar.yaml with use_cases directories ..."
@uv run python scripts/developer-sidebar/update_use_cases.py
@python scripts/developer-sidebar/update_use_cases.py
@echo "Updating developer/_sidebar.yaml with how-to directories ..."
@uv run python scripts/developer-sidebar/update_how_tos.py
@python scripts/developer-sidebar/update_how_tos.py
@echo "Zip up notebooks.zip ..."
@zip -r notebooks.zip $(DEST_DIR_NB) > /dev/null 2>&1

Expand Down Expand Up @@ -427,11 +427,12 @@ release-notes:
template-schema-docs:
@echo "\nGenerating template schema documentation ..."
@if [ ! -d "$(SRC_ROOT)/backend" ]; then echo "Error: Backend not cloned. Run 'make clone' first."; exit 1; fi
@BACKEND_ROOT=$(SRC_ROOT)/backend uv run --with json-schema-for-humans python ../scripts/generate_template_schema_docs.py
@python -m pip install -q json-schema-for-humans
@BACKEND_ROOT=$(SRC_ROOT)/backend python ../scripts/generate_template_schema_docs.py

test-descriptions:
@echo "\nUpdating test descriptions source ..."
@cd _source/validmind-library && make install && uv run python scripts/extract_descriptions.py validmind/tests
@cd _source/validmind-library && make install && poetry run python scripts/extract_descriptions.py validmind/tests
@cd ../../
@rm -rf $(DEST_DIR_TESTS)
@mkdir -p $(DEST_DIR_TESTS)
Expand All @@ -441,11 +442,11 @@ test-descriptions:

verify-copyright:
@echo "\nVerifying copyright headers in .qmd and .yml/.yaml files ..."
@cd .. && uv run python site/scripts/verify_copyright_qmd.py
@cd .. && python site/scripts/verify_copyright_qmd.py

# Collate yearly releases
yearly-releases:
@uv run python ../release-scripts/yearly_cleanup.py
@python ../release-scripts/yearly_cleanup.py
cd ../
git status | grep -v 'release-scripts/'
quarto preview
Expand Down
2 changes: 1 addition & 1 deletion site/about/overview-model-documentation.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ How the {{< var validmind.developer >}} works:

[^1]: [Model risk management](overview-model-risk-management.qmd)

[^2]: [Supported models and frameworks](/developer/supported-models-and-frameworks.qmd)
[^2]: [Supported records and frameworks](/developer/supported-records-and-frameworks.qmd)

[^3]: [Customize document templates](/guide/templates/customize-document-templates.qmd)

Expand Down
2 changes: 1 addition & 1 deletion site/about/use-cases/eu-ai-act.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,7 @@ Integrate all components into a complete compliance workflow addressing Articles

[^3]: [Setting up workflows](/guide/workflows/setting-up-workflows.qmd)

[^4]: [Install and initialize the {{< var validmind.developer >}}](/developer/model-documentation/install-and-initialize-validmind-library.qmd)
[^4]: [Install and initialize the {{< var validmind.developer >}}](/developer/quickstart/install-and-initialize-validmind-library.qmd)

[^5]:
[Run tests and test suites](/developer/how-to/testing-overview.qmd)
Expand Down
49 changes: 25 additions & 24 deletions site/developer/_sidebar.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,44 +10,45 @@ website:
# USING THE VARIABLE IN THE LINK TEXT MESSES UP THE MOBILE VIEW
- text: "ValidMind Library"
file: developer/validmind-library.qmd
- developer/supported-models-and-frameworks.qmd
- developer/supported-records-and-frameworks.qmd
- text: "---"
- text: "Quickstart"
- notebooks/quickstart/quickstart_model_documentation.ipynb
- notebooks/quickstart/quickstart_model_validation.ipynb
- notebooks/quickstart/quickstart_documentation.ipynb
- notebooks/quickstart/quickstart_validation.ipynb
# USING THE VARIABLE IN THE LINK TEXT MESSES UP THE MOBILE VIEW & BREADCRUMB
- section: "Install and initialize ValidMind"
contents:
- text: "Install and initialize the library"
file: developer/model-documentation/install-and-initialize-validmind-library.qmd
file: developer/quickstart/install-and-initialize-validmind-library.qmd
- text: "Install and initialize the library for R"
file: developer/model-documentation/install-and-initialize-validmind-for-r.qmd
file: developer/quickstart/install-and-initialize-validmind-for-r.qmd
- text: "Use an HTTP proxy with the library"
file: developer/model-documentation/use-http-proxy-with-validmind-library.qmd
- developer/model-documentation/store-credentials-in-env-file.qmd
file: developer/quickstart/use-http-proxy-with-validmind-library.qmd
- text: "Store credentials in `.env` files"
file: developer/quickstart/store-credentials-in-env-file.qmd
- text: "---"
- text: "End-to-End Tutorials"
# USING THE VARIABLE IN THE LINK TEXT MESSES UP THE MOBILE VIEW & BREADCRUMB
- section: "Model development"
- section: "Development"
contents:
- text: "1 — Set up ValidMind Library"
file: notebooks/tutorials/model_development/1-set_up_validmind.ipynb
- text: "2 — Start model development process"
file: notebooks/tutorials/model_development/2-start_development_process.ipynb
file: notebooks/tutorials/development/1-set_up_validmind.ipynb
- text: "2 — Start the development process"
file: notebooks/tutorials/development/2-start_development_process.ipynb
- text: "3 — Integrate custom tests"
file: notebooks/tutorials/model_development/3-integrate_custom_tests.ipynb
file: notebooks/tutorials/development/3-integrate_custom_tests.ipynb
- text: "4 — Finalize testing & documentation"
file: notebooks/tutorials/model_development/4-finalize_testing_documentation.ipynb
- section: "Model validation"
file: notebooks/tutorials/development/4-finalize_testing_documentation.ipynb
- section: "Validation"
contents:
- text: "1 — Set up ValidMind Library for validation"
file: notebooks/tutorials/model_validation/1-set_up_validmind_for_validation.ipynb
- text: "2 —\u00A0Start model validation process"
file: notebooks/tutorials/model_validation/2-start_validation_process.ipynb
- text: "3 — Developing a challenger model"
file: notebooks/tutorials/model_validation/3-developing_challenger_model.ipynb
file: notebooks/tutorials/validation/1-set_up_validmind_for_validation.ipynb
- text: "2 — Start the validation process"
file: notebooks/tutorials/validation/2-start_validation_process.ipynb
- text: "3 — Developing a challenger"
file: notebooks/tutorials/validation/3-developing_potential_challenger.ipynb
- text: "4 — Finalize validation & reporting"
file: notebooks/tutorials/model_validation/4-finalize_validation_reporting.ipynb
file: notebooks/tutorials/validation/4-finalize_validation_reporting.ipynb
- text: "---"
- text: "How-To"
- text: "Run tests & test suites"
Expand All @@ -60,8 +61,8 @@ website:
- developer/how-to/test-sandbox.qmd
- section: "Run tests"
contents:
- notebooks/how_to/tests/run_tests/1_run_dataset_based_tests.ipynb
- notebooks/how_to/tests/run_tests/2_run_comparison_tests.ipynb
- notebooks/how_to/tests/run_tests/1-run_dataset-based_tests.ipynb
- notebooks/how_to/tests/run_tests/2-run_comparison_tests.ipynb
- section: "Configuring tests"
contents: "notebooks/how_to/tests/run_tests/configure_tests/*.ipynb"
- section: "Using tests in documentation"
Expand Down Expand Up @@ -97,8 +98,6 @@ website:
contents: "notebooks/use_cases/code_explainer/**/*.ipynb"
- section: "Credit risk"
contents: "notebooks/use_cases/credit_risk/**/*.ipynb"
- section: "Model validation"
contents: "notebooks/use_cases/model_validation/**/*.ipynb"
- section: "NLP and LLM"
contents: "notebooks/use_cases/nlp_and_llm/**/*.ipynb"
- section: "Ongoing monitoring"
Expand All @@ -107,6 +106,8 @@ website:
contents: "notebooks/use_cases/regression/**/*.ipynb"
- section: "Time series"
contents: "notebooks/use_cases/time_series/**/*.ipynb"
- section: "Validation"
contents: "notebooks/use_cases/validation/**/*.ipynb"
- text: "---"
- text: "Reference"
- text: "Test descriptions"
Expand Down
Loading