validmind 2.0.7__tar.gz → 2.1.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {validmind-2.0.7 → validmind-2.1.1}/PKG-INFO +10 -6
- {validmind-2.0.7 → validmind-2.1.1}/pyproject.toml +16 -6
- {validmind-2.0.7 → validmind-2.1.1}/validmind/__init__.py +3 -3
- validmind-2.1.1/validmind/__version__.py +1 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/ai.py +7 -11
- {validmind-2.0.7 → validmind-2.1.1}/validmind/api_client.py +29 -27
- {validmind-2.0.7 → validmind-2.1.1}/validmind/client.py +10 -3
- validmind-2.1.1/validmind/datasets/credit_risk/__init__.py +11 -0
- validmind-2.1.1/validmind/datasets/credit_risk/datasets/lending_club_loan_data_2007_2014_clean.csv.gz +0 -0
- validmind-2.1.1/validmind/datasets/credit_risk/lending_club.py +394 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/logging.py +9 -2
- {validmind-2.0.7 → validmind-2.1.1}/validmind/template.py +2 -2
- {validmind-2.0.7 → validmind-2.1.1}/validmind/test_suites/__init__.py +4 -2
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/__init__.py +97 -50
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/FeatureTargetCorrelationPlot.py +3 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/PiTCreditScoresHistogram.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/ScatterPlot.py +8 -2
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/decorator.py +138 -14
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/BertScore.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/BertScoreAggregate.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/BleuScore.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/ClusterSizeDistribution.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/ContextualRecall.py +1 -1
- validmind-2.1.1/validmind/tests/model_validation/FeaturesAUC.py +110 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/MeteorScore.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/RegardHistogram.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/RegardScore.py +1 -1
- validmind-2.1.1/validmind/tests/model_validation/RegressionResidualsPlot.py +127 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/RougeMetrics.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/RougeMetricsAggregate.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/SelfCheckNLIScore.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/TokenDisparity.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/ToxicityHistogram.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/ToxicityScore.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/embeddings/ClusterDistribution.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/embeddings/CosineSimilarityDistribution.py +1 -3
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/embeddings/DescriptiveAnalytics.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/embeddings/EmbeddingsVisualization2D.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/ClassifierPerformance.py +15 -18
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/ClusterCosineSimilarity.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/ClusterPerformance.py +2 -2
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/ConfusionMatrix.py +21 -3
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/MinimumAccuracy.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/MinimumF1Score.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/MinimumROCAUCScore.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/ModelsPerformanceComparison.py +5 -4
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/OverfitDiagnosis.py +2 -2
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/ROCCurve.py +6 -12
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/RegressionErrors.py +2 -2
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/RegressionModelsPerformanceComparison.py +6 -4
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/RegressionR2Square.py +2 -2
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/SHAPGlobalImportance.py +33 -3
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/SilhouettePlot.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/TrainingTestDegradation.py +2 -2
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/WeakspotsDiagnosis.py +2 -2
- validmind-2.1.1/validmind/tests/model_validation/statsmodels/CumulativePredictionProbabilities.py +140 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/GINITable.py +22 -45
- validmind-2.0.7/validmind/tests/model_validation/statsmodels/LogisticRegPredictionHistogram.py → validmind-2.1.1/validmind/tests/model_validation/statsmodels/PredictionProbabilitiesHistogram.py +67 -92
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/RegressionModelForecastPlot.py +2 -2
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/RegressionModelForecastPlotLevels.py +2 -2
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/RegressionModelInsampleComparison.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/RegressionModelOutsampleComparison.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/RegressionModelSummary.py +1 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/RegressionModelsPerformance.py +1 -1
- validmind-2.1.1/validmind/tests/model_validation/statsmodels/RegressionPermutationFeatureImportance.py +128 -0
- validmind-2.1.1/validmind/tests/model_validation/statsmodels/ScorecardHistogram.py +139 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/test_providers.py +14 -124
- {validmind-2.0.7 → validmind-2.1.1}/validmind/unit_metrics/__init__.py +76 -69
- validmind-2.1.1/validmind/unit_metrics/classification/sklearn/Accuracy.py +14 -0
- validmind-2.1.1/validmind/unit_metrics/classification/sklearn/F1.py +13 -0
- validmind-2.1.1/validmind/unit_metrics/classification/sklearn/Precision.py +13 -0
- validmind-2.1.1/validmind/unit_metrics/classification/sklearn/ROC_AUC.py +13 -0
- validmind-2.1.1/validmind/unit_metrics/classification/sklearn/Recall.py +13 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/unit_metrics/composite.py +24 -71
- validmind-2.1.1/validmind/unit_metrics/regression/GiniCoefficient.py +33 -0
- validmind-2.1.1/validmind/unit_metrics/regression/HuberLoss.py +23 -0
- validmind-2.1.1/validmind/unit_metrics/regression/KolmogorovSmirnovStatistic.py +30 -0
- validmind-2.1.1/validmind/unit_metrics/regression/MeanAbsolutePercentageError.py +16 -0
- validmind-2.1.1/validmind/unit_metrics/regression/MeanBiasDeviation.py +13 -0
- validmind-2.1.1/validmind/unit_metrics/regression/QuantileLoss.py +15 -0
- validmind-2.1.1/validmind/unit_metrics/regression/sklearn/AdjustedRSquaredScore.py +21 -0
- validmind-2.1.1/validmind/unit_metrics/regression/sklearn/MeanAbsoluteError.py +13 -0
- validmind-2.1.1/validmind/unit_metrics/regression/sklearn/MeanSquaredError.py +13 -0
- validmind-2.1.1/validmind/unit_metrics/regression/sklearn/RSquaredScore.py +13 -0
- validmind-2.1.1/validmind/unit_metrics/regression/sklearn/RootMeanSquaredError.py +20 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/utils.py +18 -45
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/__init__.py +0 -2
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/dataset.py +255 -16
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/test/metric.py +1 -2
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/test/result_wrapper.py +12 -13
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/test/test.py +2 -1
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/test/threshold_test.py +1 -2
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/test_suite/summary.py +3 -3
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/test_suite/test_suite.py +2 -1
- validmind-2.0.7/validmind/__version__.py +0 -1
- validmind-2.0.7/validmind/tests/__types__.py +0 -62
- validmind-2.0.7/validmind/tests/model_validation/statsmodels/LogRegressionConfusionMatrix.py +0 -128
- validmind-2.0.7/validmind/tests/model_validation/statsmodels/LogisticRegCumulativeProb.py +0 -172
- validmind-2.0.7/validmind/tests/model_validation/statsmodels/ScorecardBucketHistogram.py +0 -181
- validmind-2.0.7/validmind/tests/model_validation/statsmodels/ScorecardHistogram.py +0 -172
- validmind-2.0.7/validmind/tests/model_validation/statsmodels/ScorecardProbabilitiesHistogram.py +0 -175
- validmind-2.0.7/validmind/unit_metrics/regression/GiniCoefficient.py +0 -39
- validmind-2.0.7/validmind/unit_metrics/regression/HuberLoss.py +0 -27
- validmind-2.0.7/validmind/unit_metrics/regression/KolmogorovSmirnovStatistic.py +0 -36
- validmind-2.0.7/validmind/unit_metrics/regression/MeanAbsolutePercentageError.py +0 -22
- validmind-2.0.7/validmind/unit_metrics/regression/MeanBiasDeviation.py +0 -22
- validmind-2.0.7/validmind/unit_metrics/regression/QuantileLoss.py +0 -25
- validmind-2.0.7/validmind/unit_metrics/regression/sklearn/AdjustedRSquaredScore.py +0 -27
- validmind-2.0.7/validmind/unit_metrics/regression/sklearn/MeanAbsoluteError.py +0 -22
- validmind-2.0.7/validmind/unit_metrics/regression/sklearn/MeanSquaredError.py +0 -22
- validmind-2.0.7/validmind/unit_metrics/regression/sklearn/RSquaredScore.py +0 -22
- validmind-2.0.7/validmind/unit_metrics/regression/sklearn/RootMeanSquaredError.py +0 -23
- validmind-2.0.7/validmind/unit_metrics/sklearn/classification/Accuracy.py +0 -22
- validmind-2.0.7/validmind/unit_metrics/sklearn/classification/F1.py +0 -24
- validmind-2.0.7/validmind/unit_metrics/sklearn/classification/Precision.py +0 -24
- validmind-2.0.7/validmind/unit_metrics/sklearn/classification/ROC_AUC.py +0 -22
- validmind-2.0.7/validmind/unit_metrics/sklearn/classification/Recall.py +0 -22
- validmind-2.0.7/validmind/vm_models/test/unit_metric.py +0 -88
- {validmind-2.0.7 → validmind-2.1.1}/LICENSE +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/README.pypi.md +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/client_config.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/__init__.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/classification/__init__.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/classification/customer_churn.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/classification/datasets/bank_customer_churn.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/classification/datasets/taiwan_credit.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/classification/taiwan_credit.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/cluster/digits.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/nlp/__init__.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/nlp/cnn_dailymail.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/nlp/datasets/Covid_19.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/nlp/datasets/cnn_dailymail_100_with_predictions.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/nlp/datasets/cnn_dailymail_500_with_predictions.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/nlp/datasets/sentiments_with_predictions.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/nlp/twitter_covid_19.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/__init__.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/california_housing.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred/CPIAUCSL.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred/CSUSHPISA.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred/DRSFRMACBS.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred/FEDFUNDS.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred/GDP.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred/GDPC1.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred/GS10.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred/GS3.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred/GS5.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred/MORTGAGE30US.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred/UNRATE.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred_loan_rates.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred_loan_rates_test_1.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred_loan_rates_test_2.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred_loan_rates_test_3.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred_loan_rates_test_4.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/fred_loan_rates_test_5.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/datasets/lending_club_loan_rates.csv +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/fred.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/lending_club.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/models/fred_loan_rates_model_1.pkl +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/models/fred_loan_rates_model_2.pkl +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/models/fred_loan_rates_model_3.pkl +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/models/fred_loan_rates_model_4.pkl +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/datasets/regression/models/fred_loan_rates_model_5.pkl +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/errors.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/html_templates/content_blocks.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/input_registry.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/models/__init__.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/models/catboost.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/models/foundation.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/models/huggingface.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/models/pytorch.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/models/r_model.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/models/sklearn.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/models/statsmodels.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/models/xgboost.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/test_suites/classifier.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/test_suites/cluster.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/test_suites/embeddings.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/test_suites/llm.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/test_suites/nlp.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/test_suites/parameters_optimization.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/test_suites/regression.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/test_suites/statsmodels_timeseries.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/test_suites/summarization.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/test_suites/tabular_datasets.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/test_suites/text_data.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/test_suites/time_series.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/ACFandPACFPlot.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/ANOVAOneWayTable.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/AutoAR.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/AutoMA.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/AutoSeasonality.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/AutoStationarity.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/BivariateFeaturesBarPlots.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/BivariateHistograms.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/BivariateScatterPlots.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/ChiSquaredFeaturesTable.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/ClassImbalance.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/DatasetDescription.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/DatasetSplit.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/DefaultRatesbyRiskBandPlot.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/DescriptiveStatistics.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/Duplicates.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/EngleGrangerCoint.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/HeatmapFeatureCorrelations.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/HighCardinality.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/HighPearsonCorrelation.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/IQROutliersBarPlot.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/IQROutliersTable.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/IsolationForestOutliers.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/LaggedCorrelationHeatmap.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/MissingValues.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/MissingValuesBarPlot.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/MissingValuesRisk.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/PearsonCorrelationMatrix.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/PiTPDHistogram.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/RollingStatsPlot.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/SeasonalDecompose.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/Skewness.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/SpreadPlot.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/TabularCategoricalBarPlots.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/TabularDateTimeHistograms.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/TabularDescriptionTables.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/TabularNumericalHistograms.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/TargetRateBarPlots.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/TimeSeriesFrequency.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/TimeSeriesHistogram.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/TimeSeriesLinePlot.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/TimeSeriesMissingValues.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/TimeSeriesOutliers.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/TooManyZeroValues.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/UniqueRows.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/WOEBinPlots.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/WOEBinTable.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/__init__.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/nlp/CommonWords.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/nlp/Hashtags.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/nlp/Mentions.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/nlp/Punctuations.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/nlp/StopWords.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/nlp/TextDescription.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/data_validation/nlp/__init__.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/ModelMetadata.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/__init__.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/embeddings/StabilityAnalysis.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/embeddings/StabilityAnalysisKeyword.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/embeddings/StabilityAnalysisRandomNoise.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/embeddings/StabilityAnalysisSynonyms.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/embeddings/StabilityAnalysisTranslation.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/AdjustedMutualInformation.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/AdjustedRandIndex.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/ClusterPerformanceMetrics.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/CompletenessScore.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/FowlkesMallowsScore.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/HomogeneityScore.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/HyperParametersTuning.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/KMeansClustersOptimization.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/PermutationFeatureImportance.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/PopulationStabilityIndex.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/PrecisionRecallCurve.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/RobustnessDiagnosis.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/VMeasure.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/sklearn/__init__.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/ADF.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/ADFTest.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/AutoARIMA.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/BoxPierce.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/DFGLSArch.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/DurbinWatsonTest.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/FeatureImportanceAndSignificance.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/JarqueBera.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/KPSS.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/KolmogorovSmirnov.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/LJungBox.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/Lilliefors.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/PDRatingClassPlot.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/PhillipsPerronArch.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/RegressionCoeffsPlot.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/RegressionFeatureSignificance.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/RegressionModelSensitivityPlot.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/RegressionModelsCoeffs.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/ResidualsVisualInspection.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/RunsTest.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/ShapiroWilk.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/ZivotAndrewsArch.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/__init__.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/model_validation/statsmodels/statsutils.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/prompt_validation/Bias.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/prompt_validation/Clarity.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/prompt_validation/Conciseness.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/prompt_validation/Delimitation.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/prompt_validation/NegativeInstruction.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/prompt_validation/Robustness.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/prompt_validation/Specificity.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/prompt_validation/__init__.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/tests/prompt_validation/ai_powered_test.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/figure.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/model.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/test/metric_result.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/test/output_template.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/test/result_summary.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/test/threshold_test_result.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/test_context.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/test_suite/runner.py +0 -0
- {validmind-2.0.7 → validmind-2.1.1}/validmind/vm_models/test_suite/test.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: validmind
|
3
|
-
Version: 2.
|
3
|
+
Version: 2.1.1
|
4
4
|
Summary: ValidMind Developer Framework
|
5
5
|
License: Commercial License
|
6
6
|
Author: Andres Rodriguez
|
@@ -27,23 +27,27 @@ Requires-Dist: ipywidgets (>=8.0.6,<9.0.0)
|
|
27
27
|
Requires-Dist: kaleido (>=0.2.1,<0.3.0,!=0.2.1.post1)
|
28
28
|
Requires-Dist: langdetect (>=1.0.9,<2.0.0)
|
29
29
|
Requires-Dist: levenshtein (>=0.21.1,<0.22.0) ; extra == "all" or extra == "llm"
|
30
|
-
Requires-Dist:
|
30
|
+
Requires-Dist: llvmlite (>=0.42.0) ; python_version >= "3.12"
|
31
|
+
Requires-Dist: llvmlite ; python_version >= "3.8" and python_full_version <= "3.11.0"
|
31
32
|
Requires-Dist: matplotlib (<3.8.3)
|
33
|
+
Requires-Dist: mistune (>=3.0.2,<4.0.0)
|
32
34
|
Requires-Dist: nltk (>=3.8.1,<4.0.0)
|
33
35
|
Requires-Dist: numba (<0.59.0)
|
34
|
-
Requires-Dist: numpy (>=1.23.3,<2.0.0)
|
36
|
+
Requires-Dist: numpy (>=1.23.3,<2.0.0) ; python_version >= "3.8" and python_full_version <= "3.11.0"
|
37
|
+
Requires-Dist: numpy (>=1.26.0) ; python_version >= "3.12"
|
35
38
|
Requires-Dist: openai (>=1.3.7,<2.0.0) ; extra == "all" or extra == "llm"
|
36
|
-
Requires-Dist: pandas (
|
39
|
+
Requires-Dist: pandas (>=1.1,<2)
|
37
40
|
Requires-Dist: plotly (>=5.14.1,<6.0.0)
|
38
41
|
Requires-Dist: plotly-express (>=0.4.1,<0.5.0)
|
39
42
|
Requires-Dist: polars (>=0.20.15,<0.21.0)
|
40
43
|
Requires-Dist: pycocoevalcap (>=1.2,<2.0) ; extra == "all" or extra == "llm"
|
41
44
|
Requires-Dist: pypmml (>=0.9.17,<0.10.0)
|
42
45
|
Requires-Dist: python-dotenv (>=0.20.0,<0.21.0)
|
43
|
-
Requires-Dist: requests (>=2.27.1,<3.0.0)
|
44
46
|
Requires-Dist: rouge (>=1.0.1,<2.0.0)
|
45
47
|
Requires-Dist: rpy2 (>=3.5.10,<4.0.0) ; extra == "all" or extra == "r-support"
|
46
48
|
Requires-Dist: scikit-learn (>=1.0.2,<2.0.0)
|
49
|
+
Requires-Dist: scipy (>=1.12) ; python_version >= "3.12"
|
50
|
+
Requires-Dist: scipy ; python_version >= "3.8" and python_full_version <= "3.11.0"
|
47
51
|
Requires-Dist: scorecardpy (>=0.1.9.6,<0.2.0.0)
|
48
52
|
Requires-Dist: seaborn (>=0.11.2,<0.12.0)
|
49
53
|
Requires-Dist: selfcheckgpt (>=0.1.7,<0.2.0)
|
@@ -56,7 +60,7 @@ Requires-Dist: torch (>=1.10.0) ; extra == "all" or extra == "llm" or extra == "
|
|
56
60
|
Requires-Dist: torchmetrics (>=1.1.1,<2.0.0) ; extra == "all" or extra == "llm"
|
57
61
|
Requires-Dist: tqdm (>=4.64.0,<5.0.0)
|
58
62
|
Requires-Dist: transformers (>=4.32.0,<5.0.0) ; extra == "all" or extra == "llm" or extra == "transformers"
|
59
|
-
Requires-Dist: xgboost (>=1.5.2,<
|
63
|
+
Requires-Dist: xgboost (>=1.5.2,<3)
|
60
64
|
Requires-Dist: ydata-profiling (>=4.7.0,<5.0.0)
|
61
65
|
Description-Content-Type: text/markdown
|
62
66
|
|
@@ -10,7 +10,7 @@ description = "ValidMind Developer Framework"
|
|
10
10
|
license = "Commercial License"
|
11
11
|
name = "validmind"
|
12
12
|
readme = "README.pypi.md"
|
13
|
-
version = "2.
|
13
|
+
version = "2.1.1"
|
14
14
|
|
15
15
|
[tool.poetry.dependencies]
|
16
16
|
aiohttp = {extras = ["speedups"], version = "^3.8.4"}
|
@@ -23,13 +23,20 @@ ipywidgets = "^8.0.6"
|
|
23
23
|
kaleido = "^0.2.1,!=0.2.1.post1"
|
24
24
|
langdetect = "^1.0.9"
|
25
25
|
levenshtein = {version = "^0.21.1", optional = true}
|
26
|
-
|
26
|
+
llvmlite = [
|
27
|
+
{version = "*", python = ">=3.8,<=3.11"},
|
28
|
+
{version = ">=0.42.0", python = ">=3.12"},
|
29
|
+
]
|
27
30
|
matplotlib = "<3.8.3"
|
31
|
+
mistune = "^3.0.2"
|
28
32
|
nltk = "^3.8.1"
|
29
33
|
numba = "<0.59.0" # TODO: https://github.com/validmind/developer-framework/pull/28
|
30
|
-
numpy =
|
34
|
+
numpy = [
|
35
|
+
{version = "^1.23.3", python = ">=3.8,<=3.11"},
|
36
|
+
{version = ">=1.26.0", python = ">=3.12"},
|
37
|
+
]
|
31
38
|
openai = {version = "^1.3.7", optional = true}
|
32
|
-
pandas = "1.
|
39
|
+
pandas = ">=1.1,<2" # TODO small issues blocking 2.0 but it would speed things up to use arrow backend
|
33
40
|
plotly = "^5.14.1"
|
34
41
|
plotly-express = "^0.4.1"
|
35
42
|
polars = "^0.20.15"
|
@@ -37,10 +44,13 @@ pycocoevalcap = {version = "^1.2", optional = true}
|
|
37
44
|
pypmml = "^0.9.17"
|
38
45
|
python = ">=3.8,<3.12"
|
39
46
|
python-dotenv = "^0.20.0"
|
40
|
-
requests = "^2.27.1"
|
41
47
|
rouge = "^1.0.1"
|
42
48
|
rpy2 = {version = "^3.5.10", optional = true}
|
43
49
|
scikit-learn = "^1.0.2"
|
50
|
+
scipy = [
|
51
|
+
{version = "*", python = ">=3.8,<=3.11"},
|
52
|
+
{version = ">=1.12", python = ">=3.12"},
|
53
|
+
]
|
44
54
|
scorecardpy = "^0.1.9.6"
|
45
55
|
seaborn = "^0.11.2"
|
46
56
|
selfcheckgpt = "^0.1.7"
|
@@ -53,7 +63,7 @@ torch = {version = ">=1.10.0", optional = true}
|
|
53
63
|
torchmetrics = {version = "^1.1.1", optional = true}
|
54
64
|
tqdm = "^4.64.0"
|
55
65
|
transformers = {version = "^4.32.0", optional = true}
|
56
|
-
xgboost = "
|
66
|
+
xgboost = ">=1.5.2,<3"
|
57
67
|
ydata-profiling = "^4.7.0"
|
58
68
|
|
59
69
|
[tool.poetry.group.dev.dependencies]
|
@@ -60,8 +60,7 @@ from .client import ( # noqa: E402
|
|
60
60
|
run_documentation_tests,
|
61
61
|
run_test_suite,
|
62
62
|
)
|
63
|
-
from .tests.decorator import metric
|
64
|
-
from .unit_metrics import run_metric
|
63
|
+
from .tests.decorator import metric, tags, tasks
|
65
64
|
from .utils import run_async # noqa: E402
|
66
65
|
|
67
66
|
|
@@ -111,6 +110,8 @@ __all__ = [ # noqa
|
|
111
110
|
"reload",
|
112
111
|
"run_documentation_tests",
|
113
112
|
"run_test_suite",
|
113
|
+
"tags",
|
114
|
+
"tasks",
|
114
115
|
"tests",
|
115
116
|
"test_suites",
|
116
117
|
"vm_models",
|
@@ -119,5 +120,4 @@ __all__ = [ # noqa
|
|
119
120
|
"log_figure",
|
120
121
|
"log_metrics",
|
121
122
|
"log_test_results",
|
122
|
-
"run_metric",
|
123
123
|
]
|
@@ -0,0 +1 @@
|
|
1
|
+
__version__ = "2.1.1"
|
@@ -7,8 +7,6 @@ import os
|
|
7
7
|
|
8
8
|
from openai import AzureOpenAI, OpenAI
|
9
9
|
|
10
|
-
from .utils import clean_docstring
|
11
|
-
|
12
10
|
SYSTEM_PROMPT = """
|
13
11
|
You are an expert data scientist and MRM specialist tasked with providing concise and'
|
14
12
|
objective insights based on the results of quantitative model or dataset analysis.
|
@@ -23,22 +21,20 @@ Your analysis will act as the description of the result in the model documentati
|
|
23
21
|
|
24
22
|
Avoid long sentences and complex vocabulary.
|
25
23
|
Structure the response clearly and logically.
|
26
|
-
Use Markdown syntax to format the response.
|
24
|
+
Use valid Markdown syntax to format the response (tables are supported).
|
27
25
|
Use the Test ID that is provided to form the Test Name e.g. "ClassImbalance" -> "Class Imbalance".
|
28
|
-
Use the following format for the response:
|
26
|
+
Use the following format for the response (feel free to modify slightly if necessary):
|
29
27
|
```
|
30
28
|
**<Test Name>** <continue to explain what it does in detail>...
|
31
29
|
|
32
30
|
The results of this test <detailed explanation of the results>...
|
33
31
|
|
34
|
-
In summary the following key insights can be gained
|
32
|
+
In summary the following key insights can be gained:
|
35
33
|
|
36
34
|
- **<key insight 1 - title>**: <explanation of key insight 1>
|
37
35
|
- ...<continue with any other key insights using the same format>
|
38
36
|
```
|
39
37
|
It is very important that the text is nicely formatted and contains enough information to be useful to the user as documentation.
|
40
|
-
|
41
|
-
- use valid markdown syntax: make sure to have two newlines between paragraphs and before bullet points etc.
|
42
38
|
""".strip()
|
43
39
|
USER_PROMPT = """
|
44
40
|
Test ID: {test_name}
|
@@ -71,7 +67,7 @@ def __get_client_and_model():
|
|
71
67
|
|
72
68
|
if "OPENAI_API_KEY" in os.environ:
|
73
69
|
__client = OpenAI(api_key=os.environ.get("OPENAI_API_KEY"))
|
74
|
-
__model = os.environ.get("VM_OPENAI_MODEL", "gpt-4-turbo
|
70
|
+
__model = os.environ.get("VM_OPENAI_MODEL", "gpt-4-turbo")
|
75
71
|
|
76
72
|
elif "AZURE_OPENAI_KEY" in os.environ:
|
77
73
|
if "AZURE_OPENAI_ENDPOINT" not in os.environ:
|
@@ -111,7 +107,7 @@ class DescriptionFuture:
|
|
111
107
|
|
112
108
|
def get_description(self):
|
113
109
|
# This will block until the future is completed
|
114
|
-
return
|
110
|
+
return self._future.result()
|
115
111
|
|
116
112
|
|
117
113
|
def generate_description_async(
|
@@ -132,7 +128,7 @@ def generate_description_async(
|
|
132
128
|
raise ValueError("No results, summary or figures provided")
|
133
129
|
|
134
130
|
response = client.chat.completions.create(
|
135
|
-
model="gpt-4-
|
131
|
+
model="gpt-4-turbo",
|
136
132
|
messages=[
|
137
133
|
{"role": "system", "content": SYSTEM_PROMPT},
|
138
134
|
{
|
@@ -160,7 +156,7 @@ def generate_description_async(
|
|
160
156
|
)
|
161
157
|
else:
|
162
158
|
response = client.chat.completions.create(
|
163
|
-
model="gpt-4-turbo
|
159
|
+
model="gpt-4-turbo",
|
164
160
|
messages=[
|
165
161
|
{"role": "system", "content": SYSTEM_PROMPT},
|
166
162
|
{
|
@@ -16,6 +16,7 @@ from io import BytesIO
|
|
16
16
|
from typing import Any, Callable, Dict, List, Optional, Tuple, Union
|
17
17
|
|
18
18
|
import aiohttp
|
19
|
+
import mistune
|
19
20
|
import requests
|
20
21
|
from aiohttp import FormData
|
21
22
|
|
@@ -294,32 +295,33 @@ async def log_figures(figures: List[Figure]) -> Dict[str, Any]:
|
|
294
295
|
Returns:
|
295
296
|
dict: The response from the API
|
296
297
|
"""
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
|
318
|
-
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
298
|
+
# this actually slows things down - better to log them in parallel
|
299
|
+
# if client_config.can_log_figures(): # check if the backend supports batch logging
|
300
|
+
# try:
|
301
|
+
# data = {}
|
302
|
+
# files = {}
|
303
|
+
# for figure in figures:
|
304
|
+
# data.update(
|
305
|
+
# {f"{k}-{figure.key}": v for k, v in figure.serialize().items()}
|
306
|
+
# )
|
307
|
+
# files.update(
|
308
|
+
# {
|
309
|
+
# f"{k}-{figure.key}": v
|
310
|
+
# for k, v in figure.serialize_files().items()
|
311
|
+
# }
|
312
|
+
# )
|
313
|
+
|
314
|
+
# return await _post(
|
315
|
+
# "log_figures",
|
316
|
+
# data=data,
|
317
|
+
# files=files,
|
318
|
+
# )
|
319
|
+
# except Exception as e:
|
320
|
+
# logger.error("Error logging figures to ValidMind API")
|
321
|
+
# raise e
|
322
|
+
|
323
|
+
# else:
|
324
|
+
return await asyncio.gather(*[log_figure(figure) for figure in figures])
|
323
325
|
|
324
326
|
|
325
327
|
async def log_metadata(
|
@@ -342,7 +344,7 @@ async def log_metadata(
|
|
342
344
|
"""
|
343
345
|
metadata_dict = {"content_id": content_id}
|
344
346
|
if text is not None:
|
345
|
-
metadata_dict["text"] = text
|
347
|
+
metadata_dict["text"] = mistune.html(text)
|
346
348
|
if _json is not None:
|
347
349
|
metadata_dict["json"] = _json
|
348
350
|
|
@@ -61,8 +61,13 @@ def init_dataset(
|
|
61
61
|
"""
|
62
62
|
Initializes a VM Dataset, which can then be passed to other functions
|
63
63
|
that can perform additional analysis and tests on the data. This function
|
64
|
-
also ensures we are reading a valid dataset type.
|
65
|
-
|
64
|
+
also ensures we are reading a valid dataset type.
|
65
|
+
|
66
|
+
The following dataset types are supported:
|
67
|
+
- Pandas DataFrame
|
68
|
+
- Polars DataFrame
|
69
|
+
- Numpy ndarray
|
70
|
+
- Torch TensorDataset
|
66
71
|
|
67
72
|
Args:
|
68
73
|
dataset : dataset from various python libraries
|
@@ -380,7 +385,7 @@ def preview_template():
|
|
380
385
|
|
381
386
|
|
382
387
|
def run_documentation_tests(
|
383
|
-
section=None, send=True, fail_fast=False, inputs=None, **kwargs
|
388
|
+
section=None, send=True, fail_fast=False, inputs=None, config=None, **kwargs
|
384
389
|
):
|
385
390
|
"""Collect and run all the tests associated with a template
|
386
391
|
|
@@ -393,6 +398,7 @@ def run_documentation_tests(
|
|
393
398
|
send (bool, optional): Whether to send the results to the ValidMind API. Defaults to True.
|
394
399
|
fail_fast (bool, optional): Whether to stop running tests after the first failure. Defaults to False.
|
395
400
|
inputs (dict, optional): A dictionary of test inputs to pass to the TestSuite
|
401
|
+
config: A dictionary of test parameters to override the defaults
|
396
402
|
**kwargs: backwards compatibility for passing in test inputs using keyword arguments
|
397
403
|
|
398
404
|
Returns:
|
@@ -421,6 +427,7 @@ def run_documentation_tests(
|
|
421
427
|
send=send,
|
422
428
|
fail_fast=fail_fast,
|
423
429
|
inputs=inputs,
|
430
|
+
config=config,
|
424
431
|
**kwargs,
|
425
432
|
)
|
426
433
|
test_suites[_section] = test_suite
|
@@ -0,0 +1,11 @@
|
|
1
|
+
# Copyright © 2023-2024 ValidMind Inc. All rights reserved.
|
2
|
+
# See the LICENSE file in the root of this repository for details.
|
3
|
+
# SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial
|
4
|
+
|
5
|
+
"""
|
6
|
+
Entrypoint for credit risk datasets.
|
7
|
+
"""
|
8
|
+
|
9
|
+
__all__ = [
|
10
|
+
"lending_club",
|
11
|
+
]
|