Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
32ae648
Merge remote-tracking branch 'origin/main' into staging
github-actions[bot] Nov 28, 2024
de79471
Merge pull request #553 from validmind/update-staging-12060341262
github-actions[bot] Nov 28, 2024
5a90924
Merge remote-tracking branch 'origin/main' into staging
github-actions[bot] Nov 29, 2024
1059a0e
Merge pull request #556 from validmind/update-staging-12077169055
github-actions[bot] Nov 29, 2024
1699c8b
Merge remote-tracking branch 'origin/main' into staging
github-actions[bot] Nov 29, 2024
1a0bc79
Merge pull request #557 from validmind/update-staging-12079728874
github-actions[bot] Nov 29, 2024
07a7849
Merge remote-tracking branch 'origin/main' into staging
github-actions[bot] Dec 3, 2024
c8165d6
Merge pull request #560 from validmind/update-staging-12130509703
github-actions[bot] Dec 3, 2024
6e41693
Merge remote-tracking branch 'origin/main' into staging
github-actions[bot] Dec 3, 2024
6693c16
Merge pull request #563 from validmind/update-staging-12147351405
github-actions[bot] Dec 3, 2024
9557a7d
Merge remote-tracking branch 'origin/main' into staging
github-actions[bot] Dec 4, 2024
27a2d75
Merge pull request #565 from validmind/update-staging-12150659033
github-actions[bot] Dec 4, 2024
ff5206d
Merge remote-tracking branch 'origin/main' into staging
github-actions[bot] Dec 4, 2024
4ee6e15
Merge pull request #566 from validmind/update-staging-12150811534
github-actions[bot] Dec 4, 2024
278225a
Merge remote-tracking branch 'origin/main' into staging
github-actions[bot] Dec 4, 2024
19493cb
Merge pull request #568 from validmind/update-staging-12168036173
github-actions[bot] Dec 4, 2024
8e8ed88
Add developer fundamentals videos & training fixes (#543) (#570)
github-actions[bot] Dec 4, 2024
13ff3a7
Merge remote-tracking branch 'origin/main' into staging
github-actions[bot] Dec 4, 2024
2a2cb02
Merge pull request #571 from validmind/update-staging-12169968384
github-actions[bot] Dec 4, 2024
f20c618
Merge remote-tracking branch 'origin/main' into staging
github-actions[bot] Dec 5, 2024
caa6e1b
Merge pull request #573 from validmind/update-staging-12170786695
github-actions[bot] Dec 5, 2024
e4094d3
Merge remote-tracking branch 'origin/main' into staging
github-actions[bot] Dec 5, 2024
dcfc543
Merge pull request #574 from validmind/update-staging-12171142946
github-actions[bot] Dec 5, 2024
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
6 changes: 4 additions & 2 deletions 6 .env.example
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
OPENAI_API_KEY=ADD_YOUR_KEY_HERE

# API INFO TO RUN /notebooks/tutorials/intro_for_model_developers_EXECUTED.ipynb
PLATFORM_API_KEY=ADD_YOUR_API_KEY_HERE
PLATFORM_API_SECRET=ADD_YOUR_API_SECRET_HERE
VM_API_HOST=<api_host>
VM_API_KEY=<api_key>
VM_API_SECRET=<api_secret>
VM_API_MODEL=<model>
16 changes: 15 additions & 1 deletion 16 .github/actions/demo-notebook/action.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
name: Execute demo notebook
description: Installs python3, validmind, checks dependencies then executes ONLY the Intro for Model Developers notebook with development heap tracking

inputs: {}
inputs:
env_file:
description: "Load the created .env file"
required: true

runs:
using: "composite"
Expand All @@ -26,10 +29,21 @@ runs:
pip install pycairo
pip check

- name: Ensure .env file is available
shell: bash
id: find_env
run: |
if [ ! -f "${{ inputs.env_file }}" ]; then
echo "Error: .env file not found at ${{ inputs.env_file }}"
exit 1
fi

- name: Execute ONLY the Intro for Model Developers notebook with heap development
shell: bash
if: ${{ steps.find_env.outcome == 'success' }}
run: |
cd site
source ../${{ inputs.env_file }}
quarto render --profile exe-demo notebooks/tutorials/intro_for_model_developers_EXECUTED.ipynb &> render_errors.log || {
echo "Execute for intro_for_model_developers_EXECUTED.ipynb failed";
cat render_errors.log;
Expand Down
16 changes: 15 additions & 1 deletion 16 .github/actions/prod-notebook/action.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
name: Execute prod notebook
description: Installs python3, validmind, checks dependencies then executes ONLY the Intro for Model Developers notebook with production heap tracking

inputs: {}
inputs:
env_file:
description: "Load the created .env file"
required: true

runs:
using: "composite"
Expand All @@ -26,10 +29,21 @@ runs:
pip install pycairo
pip check

- name: Ensure .env file is available
shell: bash
id: find_env
run: |
if [ ! -f "${{ inputs.env_file }}" ]; then
echo "Error: .env file not found at ${{ inputs.env_file }}"
exit 1
fi

- name: Execute ONLY the Intro for Model Developers notebook with heap production
shell: bash
if: ${{ steps.find_env.outcome == 'success' }}
run: |
cd site
source ../${{ inputs.env_file }}
quarto render --profile exe-prod notebooks/tutorials/intro_for_model_developers_EXECUTED.ipynb &> render_errors.log || {
echo "Execute for intro_for_model_developers_EXECUTED.ipynb failed";
cat render_errors.log;
Expand Down
16 changes: 15 additions & 1 deletion 16 .github/actions/staging-notebook/action.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
name: Execute staging notebook
description: Installs python3, validmind, checks dependencies then executes ONLY the Intro for Model Developers notebook with staging heap tracking

inputs: {}
inputs:
env_file:
description: "Load the created .env file"
required: true

runs:
using: "composite"
Expand All @@ -26,10 +29,21 @@ runs:
pip install pycairo
pip check

- name: Ensure .env file is available
shell: bash
id: find_env
run: |
if [ ! -f "${{ inputs.env_file }}" ]; then
echo "Error: .env file not found at ${{ inputs.env_file }}"
exit 1
fi

- name: Execute ONLY the Intro for Model Developers notebook with heap staging
shell: bash
if: ${{ steps.find_env.outcome == 'success' }}
run: |
cd site
source ../${{ inputs.env_file }}
quarto render --profile exe-staging notebooks/tutorials/intro_for_model_developers_EXECUTED.ipynb &> render_errors.log || {
echo "Execute for intro_for_model_developers_EXECUTED.ipynb failed";
cat render_errors.log;
Expand Down
26 changes: 13 additions & 13 deletions 26 .github/workflows/deploy-docs-prod.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,23 +30,23 @@ jobs:
exit 1;
}

# See if site/notebooks/ has updates
- name: Filter changed files
uses: dorny/paths-filter@v2
id: filter
with:
filters: |
notebooks:
- 'site/notebooks/**'
- name: Create .env file
id: create_env
run: |
touch .env
echo VM_API_HOST=${{ secrets.PLATFORM_API_HOST }} >> .env
echo VM_API_KEY=${{ secrets.PLATFORM_API_KEY }} >> .env
echo VM_API_SECRET=${{ secrets.PLATFORM_API_SECRET }} >> .env
echo VM_API_MODEL=${{ secrets.PLATFORM_DEV_MODEL }} >> .env
cat .env

# If yes then execute the prod notebook
# Only execute the prod notebook if .env file is created
- name: Execute prod Intro for Model Developers notebook
if: steps.filter.outputs.notebooks == 'true'
if: ${{ steps.create_env.outcome == 'success' }}
uses: ./.github/actions/prod-notebook
id: execute-prod-notebook
env:
PLATFORM_API_KEY: ${{ secrets.PLATFORM_API_KEY }}
PLATFORM_API_SECRET: ${{ secrets.PLATFORM_API_SECRET }}
with:
env_file: .env

# Prod bucket is in us-east-1
- name: Configure AWS credentials
Expand Down
26 changes: 13 additions & 13 deletions 26 .github/workflows/deploy-docs-staging.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,23 +30,23 @@ jobs:
exit 1;
}

# See if site/notebooks/ has updates
- name: Filter changed files
uses: dorny/paths-filter@v2
id: filter
with:
filters: |
notebooks:
- 'site/notebooks/**'
- name: Create .env file
id: create_env
run: |
touch .env
echo VM_API_HOST=${{ secrets.PLATFORM_API_HOST }} >> .env
echo VM_API_KEY=${{ secrets.PLATFORM_API_KEY }} >> .env
echo VM_API_SECRET=${{ secrets.PLATFORM_API_SECRET }} >> .env
echo VM_API_MODEL=${{ secrets.PLATFORM_DEV_MODEL }} >> .env
cat .env

# If yes then execute the staging notebook
# Only execute the staging notebook if .env file is created
- name: Execute staging Intro for Model Developers notebook
if: steps.filter.outputs.notebooks == 'true'
if: ${{ steps.create_env.outcome == 'success' }}
uses: ./.github/actions/staging-notebook
id: execute-staging-notebook
env:
PLATFORM_API_KEY: ${{ secrets.PLATFORM_API_KEY }}
PLATFORM_API_SECRET: ${{ secrets.PLATFORM_API_SECRET }}
with:
env_file: .env

# Staging bucket is in us-west-2
- name: Configure AWS credentials
Expand Down
24 changes: 19 additions & 5 deletions 24 .github/workflows/validate-docs-site.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,22 +30,36 @@ jobs:
}

# See if site/notebooks/ has updates
# Checks the current PR branch against the target branch
- name: Filter changed files
uses: dorny/paths-filter@v2
id: filter
with:
base: ${{ github.event.pull_request.base_ref }}
ref: ${{ github.head_ref }}
filters: |
notebooks:
- 'site/notebooks/**'

# If yes then execute the demo notebook
- name: Execute demo Intro for Model Developers notebook
# If yes then create the .env file for use in execution step
- name: Create .env file
if: steps.filter.outputs.notebooks == 'true'
id: create_env
run: |
touch .env
echo VM_API_HOST=${{ secrets.PLATFORM_API_HOST }} >> .env
echo VM_API_KEY=${{ secrets.PLATFORM_API_KEY }} >> .env
echo VM_API_SECRET=${{ secrets.PLATFORM_API_SECRET }} >> .env
echo VM_API_MODEL=${{ secrets.PLATFORM_DEV_MODEL }} >> .env
cat .env

# Only execute the demo notebook if .env file is created
- name: Execute demo Intro for Model Developers notebook
if: ${{ steps.create_env.outcome == 'success' }}
uses: ./.github/actions/demo-notebook
id: execute-demo-notebook
env:
PLATFORM_API_KEY: ${{ secrets.PLATFORM_API_KEY }}
PLATFORM_API_SECRET: ${{ secrets.PLATFORM_API_SECRET }}
with:
env_file: .env

- name: Test for warnings or errors
run: |
Expand Down
6 changes: 4 additions & 2 deletions 6 internal/templates/videos/index.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,13 @@ filters:

# Intros for training modules

# Documenting Models 101 {background-color="#083E44" background-image="home-hero.svg"}
# Developer Fundamentals {background-color="#083E44" background-image="home-hero.svg"}

_docs.validmind.ai/training_

# Validating Models 101 {background-color="#083E44" background-image="home-hero.svg"}
# Train a model {background-color="#083E44" background-image="home-hero.svg"}

# Validating Models 101 {backgrouqnd-color="#083E44" background-image="home-hero.svg"}

_docs.validmind.ai/training_

Expand Down
17 changes: 12 additions & 5 deletions 17 site/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,11 @@ DEST_DIR_NB := notebooks
DEST_DIR_PYTHON := _site/validmind
DEST_DIR_TESTS := tests
GIT_BRANCH := $(shell git rev-parse --abbrev-ref HEAD)
PROFILE := exe-demo
FILE_PATH := notebooks/tutorials/intro_for_model_developers_EXECUTED.ipynb

# Define .PHONY target for help section
.PHONY: help clean clone notebooks python-docs docs-site deploy-demo deploy-demo-branch delete-demo-branch deploy-prod deploy-staging release-notes
.PHONY: help clean clone notebooks python-docs docs-site deploy-demo deploy-demo-branch delete-demo-branch deploy-prod deploy-staging release-notes execute

# Help section
help:
Expand All @@ -24,6 +26,7 @@ help:
@echo " deploy-staging Deploy docs staging site to s3://docs-ci-cd-staging/site/"
@echo " help Display this help message (default target)"
@echo " release-notes Generate release notes from pull requests since latest tag and update _quarto.yml"
@echo " execute Execute a Jupyter Notebook (must have valid .env credentials set up in root)"

# Clean up source directory
clean:
Expand All @@ -41,8 +44,8 @@ notebooks:
@rm -f notebooks.zip
@rm -rf $(DEST_DIR_NB)/ && mkdir -p $(DEST_DIR_NB)
@cp -r $(SRC_DIR)/notebooks/. $(DEST_DIR_NB)/
@echo "Checking out intro_for_model_developers_EXECUTED.ipynb from main ..."
@git checkout main -- notebooks/tutorials/intro_for_model_developers_EXECUTED.ipynb
@echo "Duplicating notebooks/tutorials/intro_for_model_developers.ipynb for execution"
@cp notebooks/tutorials/intro_for_model_developers.ipynb notebooks/tutorials/intro_for_model_developers_EXECUTED.ipynb
@echo "Copying LICENSE into notebooks ..."
@cp -r $(SRC_DIR)/LICENSE $(DEST_DIR_NB)/
@rm -rf $(DEST_DIR_NB)/code_sharing
Expand Down Expand Up @@ -77,8 +80,6 @@ get-source: clean clone notebooks python-docs test-descriptions
# Get all source files
docs-site: clean clone notebooks python-docs test-descriptions
quarto render --profile development
# quarto render notebooks/how_to/explore_tests.ipynb --execute
# quarto render notebooks/how_to/explore_test_suites.ipynb --execute

# Deployment to https://docs-demo.vm.validmind.ai/
deploy-demo:
Expand Down Expand Up @@ -120,3 +121,9 @@ deploy-staging:
# Generate release notes
release-notes:
@python ../release-scripts/generate_release_objects.py

# Execute a Jupyter Notebook
# Will default to `exe-demo` profile & the `notebooks/tutorials/intro_for_model_developers_EXECUTED.ipynb` if no input provided
# To override: make execute PROFILE=select-profile FILE_PATH=notebooks/notebook-path-here.ipynb
execute:
quarto render --profile $(PROFILE) $(FILE_PATH)
18 changes: 13 additions & 5 deletions 18 site/_quarto.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ project:

website:
announcement:
content: "[**{{< fa book-open-reader >}} Validating Generative AI**](https://validmind.com/download-whitepaper-validating-generative-ai/) — Read our original technical brief created in collaboration with Parker & Lawrence Growth Advisory"
content: "[**{{< fa book-open-reader >}} EU AI Act Compliance**](https://validmind.com/download-whitepaper-the-eu-ai-act/) — Read our original regulation brief on how the EU AI Act aims to balance innovation with safety and accountability, setting standards for responsible AI use"
position: below-navbar
favicon: validmind.png
title: "ValidMind"
Expand Down Expand Up @@ -324,13 +324,21 @@ website:
contents:
- faq/faq.qmd
- text: "---"
- faq/faq-models.qmd
- faq/faq-inventory.qmd
- faq/faq-documentation.qmd
- text: "Access & permissions"
file: faq/faq-organizations.qmd
- faq/faq-workflows.qmd
- text: "Inventory & activity"
file: faq/faq-inventory.qmd
- text: "Documentation & templates"
file: faq/faq-documentation.qmd
- text: "Validation & findings"
file: faq/faq-validation.qmd
- faq/faq-collaboration.qmd
- text: "Monitoring & reporting"
file: faq/faq-reporting.qmd
- faq/faq-testing.qmd
- faq/faq-integrations.qmd
- text: "Data and privacy"
- text: "Data & privacy"
file: faq/faq-privacy.qmd

- title: "Support"
Expand Down
7 changes: 7 additions & 0 deletions 7 site/about/deployment/_deployment-available-options.qmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Our deployment options provide a balance of control and cost-efficiency while integrating seamlessly with your infrastructure. For added flexibility, you can deploy on Amazon Web Services (AWS), Google Cloud Platform (GCP), or Microsoft Azure.

We offer two deployment models:

- **Multi-tenant cloud** — Multiple organizations (tenants) share infrastructure while keeping data isolated, providing cost-efficiency and scalability. For secure connectivity, a private link can be established to ensure traffic stays within your network, avoiding the public internet.

- **{{< var validmind.vpv >}} (VPV)** — A single-tenant architecture where one organization uses dedicated infrastructure, offering greater control, customization, and enhanced security. This option is ideal for high-compliance needs, and secure connectivity can also be established via a private link.
8 changes: 1 addition & 7 deletions 8 site/about/deployment/deployment-options.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,7 @@ Choose the {{< var vm.product >}} deployment option that best suits your organiz

## Available options

Our deployment options provide a balance of control and cost-efficiency while integrating seamlessly with your infrastructure. For added flexibility, you can deploy on Amazon Web Services (AWS), Google Cloud Platform (GCP), or Microsoft Azure.

We offer two deployment models:

- **Multi-tenant cloud** — Multiple organizations (tenants) share infrastructure while keeping data isolated, providing cost-efficiency and scalability. For secure connectivity, a private link can be established to ensure traffic stays within your network, avoiding the public internet.

- **{{< var validmind.vpv >}} (VPV)** — A single-tenant architecture where one organization uses dedicated infrastructure, offering greater control, customization, and enhanced security. This option is ideal for high-compliance needs, and secure connectivity can also be established via a private link.
{{< include _deployment-available-options.qmd >}}

## Architecture overview

Expand Down
4 changes: 3 additions & 1 deletion 4 site/about/fine-print/data-privacy-policy.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@ aliases:
- ../guide/data-privacy-policy.html
---

This page outlines {{< var vm.product >}}'s data privacy policy, explaining how we protect your personal information. Our goal is to provide transparency about our data handling practices and to demonstrate our commitment to protecting your privacy and data security.
This page outlines {{< var vm.product >}}'s data privacy policy, explaining how we protect your personal information.

Our goal is to provide transparency about our data handling practices and to demonstrate our commitment to protecting your privacy and data security.

## What is {{< var vm.product >}}'s data privacy policy?

Expand Down
Loading
Morty Proxy This is a proxified and sanitized view of the page, visit original site.