IubNet / patra_modelcard.json
nkarthikeyan's picture
Add Model Card via Patra Toolkit
d56e4fe verified
{
"name": "UCI Adult Data Analysis model using Tensorflow",
"version": "0.1",
"short_description": "UCI Adult Data analysis using Tensorflow for demonstration of Patra Model Cards.",
"full_description": "We have trained a ML model using the tensorflow framework to predict income for the UCI Adult Dataset. We leverage this data to run the Patra model cards to capture metadata about the model as well as fairness and explainability metrics.",
"keywords": "uci adult, tensorflow, explainability, fairness, patra",
"author": "Your Name",
"input_type": "Tabular",
"category": "classification",
"input_data": "https://archive.ics.uci.edu/ml/datasets/adult",
"output_data": "https://github.iu.edu/d2i/dockerhub/tensorflow/adult_modelv01",
"foundational_model": "None",
"ai_model": {
"name": "Income prediction tensorflow model",
"version": "0.1",
"description": "Census classification problem using TensorFlow Neural Network using the UCI Adult Dataset",
"owner": "Your Name or Organization",
"location": "https://example.com/path-to-model",
"license": "BSD-3 Clause",
"framework": "tensorflow",
"model_type": "dnn",
"test_accuracy": 0.7919545769691467,
"model_structure": {
"module": "keras",
"class_name": "Sequential",
"config": {
"name": "sequential",
"trainable": true,
"dtype": {
"module": "keras",
"class_name": "DTypePolicy",
"config": {
"name": "float32"
}
},
"layers": [
{
"module": "keras.layers",
"class_name": "InputLayer",
"config": {
"batch_shape": [
100
],
"dtype": "float32",
"sparse": false,
"name": "input_layer"
}
},
{
"module": "keras.layers",
"class_name": "Dense",
"config": {
"name": "dense",
"trainable": true,
"dtype": {
"module": "keras",
"class_name": "DTypePolicy",
"config": {
"name": "float32"
}
},
"units": 64,
"activation": "relu",
"use_bias": true,
"kernel_initializer": {
"module": "keras.initializers",
"class_name": "GlorotUniform",
"config": {}
},
"bias_initializer": {
"module": "keras.initializers",
"class_name": "Zeros",
"config": {}
}
},
"build_config": {
"input_shape": [
100
]
}
},
{
"module": "keras.layers",
"class_name": "Dense",
"config": {
"name": "dense_1",
"trainable": true,
"dtype": {
"module": "keras",
"class_name": "DTypePolicy",
"config": {
"name": "float32"
}
},
"units": 128,
"activation": "relu",
"use_bias": true,
"kernel_initializer": {
"module": "keras.initializers",
"class_name": "GlorotUniform",
"config": {}
},
"bias_initializer": {
"module": "keras.initializers",
"class_name": "Zeros",
"config": {}
}
},
"build_config": {
"input_shape": [
64
]
}
},
{
"module": "keras.layers",
"class_name": "Dense",
"config": {
"name": "dense_2",
"trainable": true,
"dtype": {
"module": "keras",
"class_name": "DTypePolicy",
"config": {
"name": "float32"
}
},
"units": 64,
"activation": "relu",
"use_bias": true,
"kernel_initializer": {
"module": "keras.initializers",
"class_name": "GlorotUniform",
"config": {}
},
"bias_initializer": {
"module": "keras.initializers",
"class_name": "Zeros",
"config": {}
}
},
"build_config": {
"input_shape": [
128
]
}
},
{
"module": "keras.layers",
"class_name": "Dense",
"config": {
"name": "dense_3",
"trainable": true,
"dtype": {
"module": "keras",
"class_name": "DTypePolicy",
"config": {
"name": "float32"
}
},
"units": 1,
"activation": "sigmoid",
"use_bias": true,
"kernel_initializer": {
"module": "keras.initializers",
"class_name": "GlorotUniform",
"config": {}
},
"bias_initializer": {
"module": "keras.initializers",
"class_name": "Zeros",
"config": {}
}
},
"build_config": {
"input_shape": [
64
]
}
}
],
"build_input_shape": [
100
]
},
"build_config": {
"input_shape": [
100
]
},
"compile_config": {
"optimizer": {
"module": "keras.optimizers",
"class_name": "Adam",
"config": {
"name": "adam",
"learning_rate": 0.0010000000474974513,
"use_ema": false,
"ema_momentum": 0.99,
"beta_1": 0.9,
"beta_2": 0.999,
"epsilon": 1e-07,
"amsgrad": false
}
},
"loss": "binary_crossentropy",
"metrics": [
"accuracy"
],
"run_eagerly": false,
"steps_per_execution": 1,
"jit_compile": false
}
},
"metrics": {
"Test loss": 0.5084354877471924,
"Epochs": 100,
"Batch Size": 32,
"Optimizer": "Adam",
"Learning Rate": 0.001,
"Input Shape": "(26048, 100)"
}
},
"bias_analysis": {
"demographic_parity_diff": 0.032400848225782965,
"equal_odds_difference": 0.03417438108252019
},
"xai_analysis": {
"capital_gain": 0.14158532669974697,
"fnlwgt": 0.015681726452377108,
"age": 0.00021690960559580313,
"hours_per_week": 0.00013091093136204657,
"relationship__Not_in_family": 7.917947239345974e-05,
"marital_status__Married_civ_spouse": 7.522924906677672e-05,
"education__HS_grad": 5.9253134661254366e-05,
"occupation__Exec_managerial": 5.8465765582191924e-05,
"marital_status__Never_married": 2.9966458678243015e-05,
"education_num": 2.848242719968154e-05
},
"model_requirements": [
"absl-py==1.4.0",
"accelerate==1.2.1",
"aiohappyeyeballs==2.4.4",
"aiohttp==3.11.11",
"aiosignal==1.3.2",
"alabaster==1.0.0",
"albucore==0.0.19",
"albumentations==1.4.20",
"ale-py==0.10.1",
"altair==5.5.0",
"annotated-types==0.7.0",
"anyio==3.7.1",
"argon2-cffi-bindings==21.2.0",
"argon2-cffi==23.1.0",
"array-record==0.6.0",
"arviz==0.20.0",
"astropy-iers-data==0.2025.1.27.0.32.44",
"astropy==6.1.7",
"astunparse==1.6.3",
"atpublic==4.1.0",
"attrs==25.1.0",
"audioread==3.0.1",
"autocommand==2.2.2",
"autograd==1.7.0",
"babel==2.16.0",
"backcall==0.2.0",
"backports.tarfile==1.2.0",
"beautifulsoup4==4.12.3",
"bigframes==1.33.0",
"bigquery-magics==0.5.0",
"bleach==6.2.0",
"blinker==1.9.0",
"blis==0.7.11",
"blosc2==3.0.0",
"bokeh==3.6.2",
"bottleneck==1.4.2",
"bqplot==0.12.44",
"branca==0.8.1",
"cachecontrol==0.14.2",
"cachetools==5.5.1",
"catalogue==2.0.10",
"certifi==2024.12.14",
"cffi==1.17.1",
"chardet==5.2.0",
"charset-normalizer==3.4.1",
"chex==0.1.88",
"clarabel==0.9.0",
"click==8.1.8",
"cloudpathlib==0.20.0",
"cloudpickle==3.1.1",
"cmake==3.31.4",
"cmdstanpy==1.2.5",
"colorcet==3.1.0",
"colorlover==0.3.0",
"colour==0.1.5",
"community==1.0.0b1",
"confection==0.1.5",
"cons==0.4.6",
"contourpy==1.3.1",
"cramjam==2.9.1",
"cryptography==43.0.3",
"cuda-python==12.6.0",
"cudf-cu12==24.12.0",
"cufflinks==0.17.3",
"cupy-cuda12x==13.3.0",
"cvxopt==1.3.2",
"cvxpy==1.6.0",
"cycler==0.12.1",
"cyipopt==1.5.0",
"cymem==2.0.11",
"cython==3.0.11",
"dask==2024.10.0",
"datascience==0.17.6",
"db-dtypes==1.4.0",
"dbus-python==1.2.18",
"debugpy==1.8.0",
"decorator==4.4.2",
"defusedxml==0.7.1",
"deprecated==1.2.18",
"diffusers==0.32.2",
"distro==1.9.0",
"dlib==19.24.2",
"dm-tree==0.1.8",
"docker-pycreds==0.4.0",
"docstring-parser==0.16",
"docutils==0.21.2",
"dopamine-rl==4.1.2",
"duckdb==1.1.3",
"earthengine-api==1.4.6",
"easydict==1.13",
"editdistance==0.8.1",
"eerepr==0.1.0",
"einops==0.8.0",
"en-core-web-sm==3.7.1",
"entrypoints==0.4",
"et-xmlfile==2.0.0",
"etils==1.11.0",
"etuples==0.3.9",
"eval-type-backport==0.2.2",
"farama-notifications==0.0.4",
"fastai==2.7.18",
"fastcore==1.7.28",
"fastdownload==0.0.7",
"fastjsonschema==2.21.1",
"fastprogress==1.0.3",
"fastrlock==0.8.3",
"filelock==3.17.0",
"firebase-admin==6.6.0",
"flask==3.1.0",
"flatbuffers==25.1.24",
"flax==0.10.2",
"folium==0.19.4",
"fonttools==4.55.6",
"frozendict==2.4.6",
"frozenlist==1.5.0",
"fsspec==2024.10.0",
"future==1.0.0",
"gast==0.6.0",
"gcsfs==2024.10.0",
"gdal==3.6.4",
"gdown==5.2.0",
"geemap==0.35.1",
"gensim==4.3.3",
"geocoder==1.38.1",
"geographiclib==2.0",
"geopandas==1.0.1",
"geopy==2.4.1",
"gin-config==0.5.0",
"gitdb==4.0.12",
"gitpython==3.1.44",
"glob2==0.7",
"google-ai-generativelanguage==0.6.15",
"google-api-core==2.19.2",
"google-api-python-client==2.155.0",
"google-auth-httplib2==0.2.0",
"google-auth-oauthlib==1.2.1",
"google-auth==2.27.0",
"google-cloud-aiplatform==1.74.0",
"google-cloud-bigquery-connection==1.17.0",
"google-cloud-bigquery-storage==2.27.0",
"google-cloud-bigquery==3.25.0",
"google-cloud-bigtable==2.28.1",
"google-cloud-core==2.4.1",
"google-cloud-datastore==2.20.2",
"google-cloud-firestore==2.19.0",
"google-cloud-functions==1.19.0",
"google-cloud-iam==2.17.0",
"google-cloud-language==2.16.0",
"google-cloud-pubsub==2.25.0",
"google-cloud-resource-manager==1.14.0",
"google-cloud-spanner==3.51.0",
"google-cloud-storage==2.19.0",
"google-cloud-translate==3.19.0",
"google-colab==1.0.0",
"google-crc32c==1.6.0",
"google-genai==0.3.0",
"google-generativeai==0.8.4",
"google-pasta==0.2.0",
"google-resumable-media==2.7.2",
"google==2.0.3",
"googleapis-common-protos==1.66.0",
"googledrivedownloader==0.4",
"graphviz==0.20.3",
"greenlet==3.1.1",
"grpc-google-iam-v1==0.14.0",
"grpc-interceptor==0.15.4",
"grpcio-status==1.62.3",
"grpcio==1.70.0",
"gspread-dataframe==4.0.0",
"gspread==6.1.4",
"gym-notices==0.0.8",
"gym==0.25.2",
"gymnasium==1.0.0",
"h11==0.14.0",
"h5netcdf==1.5.0",
"h5py==3.12.1",
"highspy==1.9.0",
"holidays==0.65",
"holoviews==1.20.0",
"html5lib==1.1",
"httpcore==1.0.7",
"httpimport==1.4.0",
"httplib2==0.22.0",
"httpx==0.28.1",
"huggingface-hub==0.27.1",
"humanize==4.11.0",
"hyperopt==0.2.7",
"ibis-framework==9.2.0",
"idna==3.10",
"imageio-ffmpeg==0.6.0",
"imageio==2.36.1",
"imagesize==1.4.1",
"imbalanced-learn==0.13.0",
"imgaug==0.4.0",
"immutabledict==4.2.1",
"importlib-metadata==8.6.1",
"importlib-resources==6.5.2",
"imutils==0.5.4",
"inflect==7.5.0",
"iniconfig==2.0.0",
"intel-cmplr-lib-ur==2025.0.4",
"intel-openmp==2025.0.4",
"ipyevents==2.0.2",
"ipyfilechooser==0.6.0",
"ipykernel==5.5.6",
"ipyleaflet==0.19.2",
"ipyparallel==8.8.0",
"ipython-genutils==0.2.0",
"ipython-sql==0.5.0",
"ipython==7.34.0",
"ipytree==0.2.2",
"ipywidgets==7.7.1",
"itsdangerous==2.2.0",
"jaraco.collections==5.1.0",
"jaraco.context==5.3.0",
"jaraco.functools==4.0.1",
"jaraco.text==3.12.1",
"jax-cuda12-pjrt==0.4.33",
"jax-cuda12-plugin==0.4.33",
"jax==0.4.33",
"jaxlib==0.4.33",
"jeepney==0.7.1",
"jellyfish==1.1.0",
"jieba==0.42.1",
"jinja2==3.1.5",
"jiter==0.8.2",
"joblib==1.4.2",
"jsonpatch==1.33",
"jsonpickle==4.0.1",
"jsonpointer==3.0.0",
"jsonschema-specifications==2024.10.1",
"jsonschema==4.23.0",
"jupyter-client==6.1.12",
"jupyter-console==6.1.0",
"jupyter-core==5.7.2",
"jupyter-leaflet==0.19.2",
"jupyter-server==1.24.0",
"jupyterlab-pygments==0.3.0",
"jupyterlab-widgets==3.0.13",
"kaggle==1.6.17",
"kagglehub==0.3.6",
"keras==3.8.0",
"keyring==23.5.0",
"kiwisolver==1.4.8",
"langchain-core==0.3.31",
"langchain-text-splitters==0.3.5",
"langchain==0.3.15",
"langcodes==3.5.0",
"langsmith==0.3.1",
"language-data==1.3.0",
"launchpadlib==1.10.16",
"lazr.restfulclient==0.14.4",
"lazr.uri==1.0.6",
"lazy-loader==0.4",
"libclang==18.1.1",
"libcudf-cu12==24.12.0",
"libkvikio-cu12==24.12.1",
"librosa==0.10.2.post1",
"lightgbm==4.5.0",
"linkify-it-py==2.0.3",
"llvmlite==0.43.0",
"locket==1.0.0",
"logical-unification==0.4.6",
"lxml==5.3.0",
"marisa-trie==1.2.1",
"markdown-it-py==3.0.0",
"markdown==3.7",
"markupsafe==3.0.2",
"matplotlib-inline==0.1.7",
"matplotlib-venn==1.1.1",
"matplotlib==3.10.0",
"mdit-py-plugins==0.4.2",
"mdurl==0.1.2",
"minikanren==1.0.3",
"missingno==0.5.2",
"mistune==3.1.0",
"mizani==0.13.1",
"mkl==2025.0.1",
"ml-dtypes==0.4.1",
"mlxtend==0.23.4",
"more-itertools==10.5.0",
"moviepy==1.0.3",
"mpmath==1.3.0",
"msgpack==1.1.0",
"multidict==6.1.0",
"multipledispatch==1.0.0",
"multitasking==0.0.11",
"murmurhash==1.0.12",
"music21==9.3.0",
"namex==0.0.8",
"narwhals==1.24.0",
"natsort==8.4.0",
"nbclassic==1.2.0",
"nbclient==0.10.2",
"nbconvert==7.16.5",
"nbformat==5.10.4",
"ndindex==1.9.2",
"nest-asyncio==1.6.0",
"networkx==3.4.2",
"nibabel==5.3.2",
"nltk==3.9.1",
"notebook-shim==0.2.4",
"notebook==6.5.5",
"numba-cuda==0.0.17.1",
"numba==0.60.0",
"numexpr==2.10.2",
"numpy==1.26.4",
"nvidia-cublas-cu12==12.5.3.2",
"nvidia-cuda-cupti-cu12==12.5.82",
"nvidia-cuda-nvcc-cu12==12.5.82",
"nvidia-cuda-nvrtc-cu12==12.5.82",
"nvidia-cuda-runtime-cu12==12.5.82",
"nvidia-cudnn-cu12==9.3.0.75",
"nvidia-cufft-cu12==11.2.3.61",
"nvidia-curand-cu12==10.3.6.82",
"nvidia-cusolver-cu12==11.6.3.83",
"nvidia-cusparse-cu12==12.5.1.3",
"nvidia-nccl-cu12==2.21.5",
"nvidia-nvcomp-cu12==4.1.0.6",
"nvidia-nvjitlink-cu12==12.5.82",
"nvidia-nvtx-cu12==12.4.127",
"nvtx==0.2.10",
"nx-cugraph-cu12==24.12.0",
"oauth2client==4.1.3",
"oauthlib==3.2.2",
"openai==1.59.9",
"opencv-contrib-python==4.10.0.84",
"opencv-python-headless==4.11.0.86",
"opencv-python==4.10.0.84",
"openpyxl==3.1.5",
"opentelemetry-api==1.16.0",
"opentelemetry-sdk==1.16.0",
"opentelemetry-semantic-conventions==0.37b0",
"opt-einsum==3.4.0",
"optax==0.2.4",
"optree==0.14.0",
"orbax-checkpoint==0.6.4",
"orjson==3.10.15",
"osqp==0.6.7.post3",
"packaging==24.2",
"pandas-datareader==0.10.0",
"pandas-gbq==0.26.1",
"pandas-stubs==2.2.2.240909",
"pandas==2.2.2",
"pandocfilters==1.5.1",
"panel==1.6.0",
"param==2.2.0",
"parso==0.8.4",
"parsy==2.1",
"partd==1.4.2",
"pathlib==1.0.1",
"patra-toolkit==0.1.2",
"patsy==1.0.1",
"peewee==3.17.8",
"peft==0.14.0",
"pexpect==4.9.0",
"pickleshare==0.7.5",
"pillow==11.1.0",
"pip==24.1.2",
"platformdirs==4.3.6",
"plotly==5.24.1",
"plotnine==0.14.5",
"pluggy==1.5.0",
"ply==3.11",
"polars==1.9.0",
"pooch==1.8.2",
"portpicker==1.5.2",
"preshed==3.0.9",
"prettytable==3.13.0",
"proglog==0.1.10",
"progressbar2==4.5.0",
"prometheus-client==0.21.1",
"promise==2.3",
"prompt-toolkit==3.0.50",
"propcache==0.2.1",
"prophet==1.1.6",
"proto-plus==1.25.0",
"protobuf==4.25.6",
"psutil==5.9.5",
"psycopg2==2.9.10",
"ptyprocess==0.7.0",
"py-cpuinfo==9.0.0",
"py4j==0.10.9.7",
"pyarrow==17.0.0",
"pyasn1-modules==0.4.1",
"pyasn1==0.6.1",
"pycocotools==2.0.8",
"pycparser==2.22",
"pydantic-core==2.27.2",
"pydantic==2.10.6",
"pydata-google-auth==1.9.1",
"pydot==3.0.4",
"pydotplus==2.0.2",
"pydrive2==1.21.3",
"pydrive==1.3.1",
"pyerfa==2.0.1.5",
"pygame==2.6.1",
"pygit2==1.16.0",
"pygments==2.18.0",
"pygobject==3.42.1",
"pyjwt==2.10.1",
"pylibcudf-cu12==24.12.0",
"pylibcugraph-cu12==24.12.0",
"pylibraft-cu12==24.12.0",
"pymc==5.19.1",
"pymystem3==0.2.0",
"pynvjitlink-cu12==0.4.0",
"pyogrio==0.10.0",
"pyomo==6.8.2",
"pyopengl==3.1.9",
"pyopenssl==24.2.1",
"pyparsing==3.2.1",
"pyperclip==1.9.0",
"pyproj==3.7.0",
"pyshp==2.3.1",
"pysocks==1.7.1",
"pyspark==3.5.4",
"pytensor==2.26.4",
"pytest==8.3.4",
"python-apt==0.0.0",
"python-box==7.3.2",
"python-dateutil==2.8.2",
"python-louvain==0.16",
"python-slugify==8.0.4",
"python-snappy==0.7.3",
"python-utils==3.9.1",
"pytz==2024.2",
"pyviz-comms==3.0.4",
"pyyaml==6.0.2",
"pyzmq==24.0.1",
"qdldl==0.1.7.post5",
"ratelim==0.1.6",
"referencing==0.36.2",
"regex==2024.11.6",
"requests-oauthlib==1.3.1",
"requests-toolbelt==1.0.0",
"requests==2.32.3",
"requirements-parser==0.9.0",
"rich==13.9.4",
"rmm-cu12==24.12.1",
"rpds-py==0.22.3",
"rpy2==3.4.2",
"rsa==4.9",
"safetensors==0.5.2",
"scikit-image==0.25.1",
"scikit-learn==1.6.1",
"scipy==1.13.1",
"scooby==0.10.0",
"scs==3.2.7.post2",
"seaborn==0.13.2",
"secretstorage==3.3.1",
"send2trash==1.8.3",
"sentence-transformers==3.3.1",
"sentencepiece==0.2.0",
"sentry-sdk==2.20.0",
"setproctitle==1.3.4",
"setuptools==75.1.0",
"shapely==2.0.6",
"shellingham==1.5.4",
"simple-parsing==0.1.7",
"six==1.17.0",
"sklearn-compat==0.1.3",
"sklearn-pandas==2.2.0",
"slicer==0.0.8",
"smart-open==7.1.0",
"smmap==5.0.2",
"sniffio==1.3.1",
"snowballstemmer==2.2.0",
"soundfile==0.13.1",
"soupsieve==2.6",
"soxr==0.5.0.post1",
"spacy-legacy==3.0.12",
"spacy-loggers==1.0.5",
"spacy==3.7.5",
"spanner-graph-notebook==1.0.9",
"sphinx==8.1.3",
"sphinxcontrib-applehelp==2.0.0",
"sphinxcontrib-devhelp==2.0.0",
"sphinxcontrib-htmlhelp==2.1.0",
"sphinxcontrib-jsmath==1.0.1",
"sphinxcontrib-qthelp==2.0.0",
"sphinxcontrib-serializinghtml==2.0.0",
"sqlalchemy==2.0.37",
"sqlglot==25.6.1",
"sqlparse==0.5.3",
"srsly==2.5.1",
"stanio==0.5.1",
"statsmodels==0.14.4",
"stringzilla==3.11.3",
"sympy==1.13.1",
"tables==3.10.2",
"tabulate==0.9.0",
"tbb==2022.0.0",
"tcmlib==1.2.0",
"tenacity==9.0.0",
"tensorboard-data-server==0.7.2",
"tensorboard==2.18.0",
"tensorflow-datasets==4.9.7",
"tensorflow-hub==0.16.1",
"tensorflow-io-gcs-filesystem==0.37.1",
"tensorflow-metadata==1.16.1",
"tensorflow-probability==0.24.0",
"tensorflow==2.18.0",
"tensorstore==0.1.71",
"termcolor==2.5.0",
"terminado==0.18.1",
"text-unidecode==1.3",
"textblob==0.17.1",
"tf-keras==2.18.0",
"tf-slim==1.1.0",
"thinc==8.2.5",
"threadpoolctl==3.5.0",
"tifffile==2025.1.10",
"timm==1.0.14",
"tinycss2==1.4.0",
"tokenizers==0.21.0",
"toml==0.10.2",
"tomli==2.0.1",
"toolz==0.12.1",
"torch==2.5.1+cu124",
"torchaudio==2.5.1+cu124",
"torchsummary==1.5.1",
"torchvision==0.20.1+cu124",
"tornado==6.3.3",
"tqdm==4.67.1",
"traitlets==5.7.1",
"traittypes==0.2.1",
"transformers==4.47.1",
"triton==3.1.0",
"tweepy==4.14.0",
"typeguard==4.4.1",
"typer==0.15.1",
"types-pytz==2024.2.0.20241221",
"types-setuptools==75.8.0.20250110",
"typing-extensions==4.12.2",
"tzdata==2025.1",
"tzlocal==5.2",
"uc-micro-py==1.0.3",
"umf==0.9.1",
"uritemplate==4.1.1",
"urllib3==2.3.0",
"vega-datasets==0.9.0",
"wadllib==1.3.6",
"wandb==0.19.4",
"wasabi==1.1.3",
"wcwidth==0.2.13",
"weasel==0.4.1",
"webcolors==24.11.1",
"webencodings==0.5.1",
"websocket-client==1.8.0",
"websockets==14.2",
"werkzeug==3.1.3",
"wheel==0.45.1",
"widgetsnbextension==3.6.10",
"wordcloud==1.9.4",
"wrapt==1.17.2",
"xarray-einstats==0.8.0",
"xarray==2025.1.1",
"xgboost==2.1.3",
"xlrd==2.0.1",
"xyzservices==2025.1.0",
"yarl==1.18.3",
"yellowbrick==1.5",
"yfinance==0.2.52",
"zipp==3.21.0",
"zstandard==0.23.0"
]
}