Skip to main content

ACV is a library that provides robust and accurate explanations for machine learning models or data

Project description

Active Coalition of Variables (ACV):

ACV is a python library that aims to explain any machine learning models or data.

  • It gives local rule-based explanations for any model or data.
  • It provides a better estimation of Shapley Values for tree-based model (more accurate than path-dependent TreeSHAP). It also proposes new Shapley Values that have better local fidelity.
    • and the correct way of computing Shapley Values of categorical variables after encoding (eg., One Hot or Dummy, etc.)

We can regroup the different explanations in two groups: Agnostic Explanations and Tree-based Explanations.

See the papers here.

Installation

Requirements

Python 3.7-3.9

OSX: ACV uses Cython extensions that need to be compiled with multi-threading support enabled. The default Apple Clang compiler does not support OpenMP. To solve this issue, obtain the lastest gcc version with Homebrew that has multi-threading enabled: see for example pysteps installation for OSX.

Windows: Install MinGW (a Windows distribution of gcc) or Microsoft’s Visual C

Install the acv package:

$ pip install acv-exp

A. Agnostic explanations

The Agnostic approaches explain any data (X, Y) or model (X, f(X)) using the following explanation methods:

  • Same Decision Probability (SDP) and Sufficient Explanations
  • Sufficient Rules

See the paper Consistent Sufficient Explanations and Minimal Local Rules for explaining regression and classification models for more details.

I. First, we need to fit our explainer (ACXplainers) to input-output of the data (X, Y) or model (X, f(X)) if we want to explain the data or the model respectively.

from acv_explainers import ACXplainer

# It has the same params as a Random Forest, and it should be tuned to maximize the performance.  
acv_xplainer = ACXplainer(classifier=True, n_estimators=50, max_depth=5)
acv_xplainer.fit(X_train, y_train)

roc = roc_auc_score(acv_xplainer.predict(X_test), y_test)

II. Then, we can load all the explanations in a webApp as follow:

import acv_app
import os

# compile the ACXplainer
acv_app.compile_ACXplainers(acv_xplainer, X_train, y_train, X_test, y_test, path=os.getcwd())

# Launch the webApp
acv_app.run_webapp(pickle_path=os.getcwd())

Capture d’écran de 2021-11-03 19-50-12

III. Or we can compute each explanation separately as follow:

Same Decision Probability (SDP)

The main tool of our explanations is the Same Decision Probability (SDP). Given , the same decision probability of variables is the probabilty that the prediction remains the same when we fixed variables or when the variables are missing.

  • How to compute ?
sdp = acv_xplainer.compute_sdp_rf(X, S, data_bground) # data_bground is the background dataset that is used for the estimation. It should be the training samples.

Minimal Sufficient Explanations

The Sufficient Explanations is the Minimal Subset S such that fixing the values permit to maintain the prediction with high probability . See the paper here for more details.

  • How to compute the Minimal Sufficient Explanation ?

    The following code return the Sufficient Explanation with minimal cardinality.

sdp_importance, min_sufficient_expl, size, sdp = acv_xplainer.importance_sdp_rf(X, y, X_train, y_train, pi_level=0.9)
  • How to compute all the Sufficient Explanations ?

    Since the Minimal Sufficient Explanation may not be unique for a given instance, we can compute all of them.

sufficient_expl, sdp_expl, sdp_global = acv_xplainer.sufficient_expl_rf(X, y, X_train, y_train, pi_level=0.9)

Local Explanatory Importance

For a given instance, the local explanatory importance of each variable corresponds to the frequency of apparition of the given variable in the Sufficient Explanations. See the paper here for more details.

  • How to compute the Local Explanatory Importance ?
lximp = acv_xplainer.compute_local_sdp(d=X_train.shape[1], sufficient_expl)

Local rule-based explanations

For a given instance (x, y) and its Sufficient Explanation S such that , we compute a local minimal rule which contains x such that every observation z that satisfies this rule has . See the paper here for more details

  • How to compute the local rule explanations ?
sdp, rules, _, _, _ = acv_xplainer.compute_sdp_maxrules(X, y, data_bground, y_bground, S) # data_bground is the background dataset that is used for the estimation. It should be the training samples.

B. Tree-based explanations

ACV gives Shapley Values explanations for XGBoost, LightGBM, CatBoostClassifier, scikit-learn and pyspark tree models. It provides the following Shapley Values:

  • Classic local Shapley Values (The value function is the conditional expectation )
  • Active Shapley values (Local fidelity and Sparse by design)
  • Swing Shapley Values (The Shapley values are interpretable by design) (Coming soon)

In addition, we use the coalitional version of SV to properly handle categorical variables in the computation of SV.

See the papers here

To explain the tree-based models above, we need to transform our model into ACVTree.

from acv_explainers import ACVTree

forest = XGBClassifier() # or any Tree Based models
#...trained the model

acvtree = ACVTree(forest, data_bground) # data_bground is the background dataset that is used for the estimation. It should be the training samples.

Accurate Shapley Values

sv = acvtree.shap_values(X)

Note that it provides a better estimation of the tree-path dependent of TreeSHAP when the variables are dependent.

Accurate Shapley Values with encoded categorical variables

Let assume we have a categorical variable Y with k modalities that we encoded by introducing the dummy variables . As shown in the paper, we must take the coalition of the dummy variables to correctly compute the Shapley values.

# cat_index := list[list[int]] that contains the column indices of the dummies or one-hot variables grouped 
# together for each variable. For example, if we have only 2 categorical variables Y, Z 
# transformed into [Y_0, Y_1, Y_2] and [Z_0, Z_1, Z_2]

cat_index = [[0, 1, 2], [3, 4, 5]]
forest_sv = acvtree.shap_values(X, C=cat_index)

In addition, we can compute the SV given any coalitions. For example, let assume we have 10 variables and we want the following coalition

coalition = [[0, 1, 2], [3, 4], [5, 6]]
forest_sv = acvtree.shap_values(X, C=coalition)

How to compute for tree-based classifier ?

Recall that the is the probability that the prediction remains the same when we fixed variables given the subset S.

sdp = acvtree.compute_sdp_clf(X, S, data_bground) # data_bground is the background dataset that is used for the estimation. It should be the training samples.

How to compute the Sufficient Coalition and the Global SDP importance for tree-based classifier ?

Recall that the Minimal Sufficient Explanations is the Minimal Subset S such that fixing the values permit to maintain the prediction with high probability .

sdp_importance, sdp_index, size, sdp = acvtree.importance_sdp_clf(X, data_bground) # data_bground is the background dataset that is used for the estimation. It should be the training samples.

Active Shapley values

The Active Shapley values is a SV based on a new game defined in the Paper (Accurate and robust Shapley Values for explaining predictions and focusing on local important variables such that null (non-important) variables has zero SV and the "payout" is fairly distribute among active variables.

  • How to compute Active Shapley values ?
import acv_explainers

# First, we need to compute the Active and Null coalition
sdp_importance, sdp_index, size, sdp = acvtree.importance_sdp_clf(X, data_bground)
S_star, N_star = acv_explainers.utils.get_active_null_coalition_list(sdp_index, size)

# Then, we used the active coalition found to compute the Active Shapley values.
forest_asv_adap = acvtree.shap_values_acv_adap(X, C, S_star, N_star, size)
Remarks for tree-based explanations:

If you don't want to use multi-threaded (due to scaling or memory problem), you have to add "_nopa" to each function (e.g. compute_sdp_clf ==> compute_sdp_clf_nopa). You can also compute the different values needed in cache by setting cache=True in ACVTree initialization e.g. ACVTree(model, data_bground, cache=True).

Examples and tutorials (a lot more to come...)

We can find a tutorial of the usages of ACV in demo_acv and the notebooks below demonstrate different use cases for ACV. Look inside the notebook directory of the repository if you want to try playing with the original notebooks yourself.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

acv-dev-0.0.15.tar.gz (1.3 MB view details)

Uploaded Source

Built Distributions

acv_dev-0.0.15-cp310-cp310-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.10 Windows x86-64

acv_dev-0.0.15-cp310-cp310-win32.whl (975.8 kB view details)

Uploaded CPython 3.10 Windows x86

acv_dev-0.0.15-cp310-cp310-musllinux_1_1_x86_64.whl (9.4 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

acv_dev-0.0.15-cp310-cp310-musllinux_1_1_i686.whl (8.9 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

acv_dev-0.0.15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.4 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

acv_dev-0.0.15-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (7.9 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686

acv_dev-0.0.15-cp39-cp39-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.9 Windows x86-64

acv_dev-0.0.15-cp39-cp39-win32.whl (980.0 kB view details)

Uploaded CPython 3.9 Windows x86

acv_dev-0.0.15-cp39-cp39-musllinux_1_1_x86_64.whl (9.5 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

acv_dev-0.0.15-cp39-cp39-musllinux_1_1_i686.whl (8.8 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

acv_dev-0.0.15-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.4 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

acv_dev-0.0.15-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (7.9 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

acv_dev-0.0.15-cp38-cp38-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.8 Windows x86-64

acv_dev-0.0.15-cp38-cp38-win32.whl (987.7 kB view details)

Uploaded CPython 3.8 Windows x86

acv_dev-0.0.15-cp38-cp38-musllinux_1_1_x86_64.whl (10.0 MB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

acv_dev-0.0.15-cp38-cp38-musllinux_1_1_i686.whl (9.4 MB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ i686

acv_dev-0.0.15-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.6 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

acv_dev-0.0.15-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (8.1 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686

acv_dev-0.0.15-cp37-cp37m-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.7m Windows x86-64

acv_dev-0.0.15-cp37-cp37m-win32.whl (955.8 kB view details)

Uploaded CPython 3.7m Windows x86

acv_dev-0.0.15-cp37-cp37m-musllinux_1_1_x86_64.whl (9.0 MB view details)

Uploaded CPython 3.7m musllinux: musl 1.1+ x86-64

acv_dev-0.0.15-cp37-cp37m-musllinux_1_1_i686.whl (8.4 MB view details)

Uploaded CPython 3.7m musllinux: musl 1.1+ i686

acv_dev-0.0.15-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.9 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

acv_dev-0.0.15-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl (7.4 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ i686

File details

Details for the file acv-dev-0.0.15.tar.gz.

File metadata

  • Download URL: acv-dev-0.0.15.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for acv-dev-0.0.15.tar.gz
Algorithm Hash digest
SHA256 393faf34f3460d65361c8dce58c76788cd4a1b6a58ea4140d7a0f3b9a365f48a
MD5 89e711c8eb23279ae921a7bfff86b939
BLAKE2b-256 f98d3337809cdc711c4f40afe6e060afcfd2a22d7474239ac39657b074a7df27

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 36beeaef43027c40784c82ecce7c870bfd3a23387bda7678df58025b9977035e
MD5 bef63b27c43bf16c4d85ff345db97b31
BLAKE2b-256 bffb8b0be5ffb0585c05f1b42c5cc47758caede714bbe9633704d474906395c2

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp310-cp310-win32.whl.

File metadata

  • Download URL: acv_dev-0.0.15-cp310-cp310-win32.whl
  • Upload date:
  • Size: 975.8 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for acv_dev-0.0.15-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 95a427466f8ef8b8490c40b0d4b0e2892724ab04c8fb2bc6a07393c685a413a7
MD5 1ebfbfba28c29d9c3ac98c0c7d62e7bc
BLAKE2b-256 bc2f32bcd576aa7778caa84959b578f9d9f9b7631e4c66ce444fc5b90ffff813

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 b02b81f935b17f42d9d07ff831970d89c514a02ed32b075dd4af6d11cbb4f464
MD5 82e119b3fe834a241d1cb24490b4336a
BLAKE2b-256 37b7bcfc09fc429c9950cbe5776b4708c6d01b7c1d87380a6132821bb1a13904

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp310-cp310-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 8da37ed176fd928111d85be80e5f57a86fff912f991361c9c71a9b5eb23b0e25
MD5 e47cb4d9211c5096ddaf8bc444be0e43
BLAKE2b-256 f30293dff4e282eb70d289c00e3d0e3c08caf8ba066c4b2a2b3c011db29c3d0c

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e3c2d62d1f630e786e6bfd464405221f596c531b6540576677c83fa466f04574
MD5 be1c92730d36d615edf2cf24ef55e1c9
BLAKE2b-256 36f6369fe6f5db076a29a3257286bee7cb0a4bc571a5fd7b16a4c8a1d17a9a64

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 995b85a8d8fb46e455f1a198fb6cc1a946c100fb627c5d12df7138ec8a11665d
MD5 4058197d19aeb5dc4f4904e80c262f83
BLAKE2b-256 92222ab9ea3fa44e3e925a368162e2c3356479b780b7a668ac42b5be2e0e8825

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: acv_dev-0.0.15-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for acv_dev-0.0.15-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 669edbc5bd1954e9b242c3aebd27f6ad683e06b550afa1d1ba59bab321e37a00
MD5 ad521001e17a9ad82b33810e184929a2
BLAKE2b-256 7a0a73d74f3c5d34cce6e4cedeb33577bdd5145d76a4f880e0a4a862b3a6dadd

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp39-cp39-win32.whl.

File metadata

  • Download URL: acv_dev-0.0.15-cp39-cp39-win32.whl
  • Upload date:
  • Size: 980.0 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for acv_dev-0.0.15-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 53216ca89393dedc7eb39e3efc27cf86823fd89295ab44c4dcd063b74399917d
MD5 83a1db86ef9a98b63ead1799f24a9e60
BLAKE2b-256 f5d4967759afc436d0885e9ebef505ed87e27f122d09b010846bffd386120a51

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 f96ff140f1f8b3c75730ae5fccf6aefea6d0902d3ac16ff4ed08f0e0a83501be
MD5 59b57a30590239718edf1a54817993f3
BLAKE2b-256 c3ee61411d86ae710d7921b78d2f56dfcc2a61d7302a97707c233e58020f776f

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp39-cp39-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 48167687624faa5756c4b0290e1d9e8526f6f499e41b3598f110a9b6eefe33f0
MD5 23ffdbe2f3dd6eb54752d29efa5e3c2c
BLAKE2b-256 0843ac27b754a5d112d6f045e4358444f328bd753f219c167afefa1fee12fe10

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d2a2596d9e70a59a1097b2d98ab31b8952d616e08ae19044002a22478188dcd5
MD5 f682645fd1e1bc870811947e1cb8215d
BLAKE2b-256 f3cf5f30d14aa962a5b606596fcfc4f2f78bc178482851924fbb4be1c3a34ce1

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 ea67f3325ade2d0bc96375fd80b248ad630910fe479440fa69dc1ceb03c973dc
MD5 b149ad4853e6744744df796bb53ac7fb
BLAKE2b-256 84005ab9e9638a033d5c7695ba2da8878cb8e416ab79e66bafa7ea08ad2ff0e6

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: acv_dev-0.0.15-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for acv_dev-0.0.15-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 671064fb08b0f546d06fd4961a97e23494a860f96a414723eba9121539e9ab4b
MD5 53182f5593a6d211f3eba31641db1220
BLAKE2b-256 9e0dabc0d7e017c837a81b04485a43f9d45de2344073fae0908867da06f5c5c8

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp38-cp38-win32.whl.

File metadata

  • Download URL: acv_dev-0.0.15-cp38-cp38-win32.whl
  • Upload date:
  • Size: 987.7 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for acv_dev-0.0.15-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 b944eb740097000cc1c6a7853e2e48c00555e40d2f6715362c4b0a2bb4a834dc
MD5 af06f12728e78913ca16f13563004917
BLAKE2b-256 d2af8a8392d3a6bff09e177ed22cbb8b87b46439b03ac0a0b991fc5501abcd33

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 d99372156d76e4542d27702e121a1e87eb32b50b207119dd9a00143285afa73b
MD5 cc45d97eb440541eb0ab0f7b0b65ee54
BLAKE2b-256 a5b600622a919bd74a1e11aefdc8fdfa98364c1e01c764b8e21aa8287ee47223

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp38-cp38-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp38-cp38-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 5296aa155c48b7f2a2ab864c2477dede3ab2aa29e89db214b4f40ebadf859c08
MD5 8b05a830d82c37105a0774a239ce2ac2
BLAKE2b-256 56bc4e8e73042a94ec9f4ff88cf5942348663996ac4685ee4d72a8bcf51e1b73

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8fd86273f9e19a59897620367f560b22fb8e255f13406f1d5d914b5bbc67ddf0
MD5 5bdbeec1b7534bc3a67b8e5ca98e00d3
BLAKE2b-256 f2e291af04ff86b7a80f89f2965cd34e078254157657318da4df6ae6502e91e9

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 7ce67161e13cc54f569635ae67f34603c7fb4d008bc122ad4f6b1f101b145393
MD5 d2def1f16bc4181b4ca108cb644211d8
BLAKE2b-256 3f4ed2bb72d7ec1dfe3384523b997bff4a85ea6be495701077774520b49d1e2d

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: acv_dev-0.0.15-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for acv_dev-0.0.15-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 13cd9935e4da973ea5852ff8ae3e2f6aa04ff038f3eac2a8e62f466d8001dbb0
MD5 e27a4710890b41729c686c76f0647deb
BLAKE2b-256 5f718944871b2011689456576242b4597c6f03a286a7ec12e04a15619de4ae69

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp37-cp37m-win32.whl.

File metadata

  • Download URL: acv_dev-0.0.15-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 955.8 kB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for acv_dev-0.0.15-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 e71bce67f27062ba5ee7d1800f59f6a3347b861536b0628819ab4a474b8c1be0
MD5 d66e8519cf2eac0a10d05969ce9dc3f6
BLAKE2b-256 6835d9948f3d9d86110baed452dee3e071ab73edfcc94406042191ed893e0d62

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp37-cp37m-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 1876ad86f9cc6afb0e125b8072baabef3aad6f1c2d90a10d284bf6c2bf56fb86
MD5 b750632d9d6f38a5561eb84b4c7b10f5
BLAKE2b-256 0176d818465813a5601a4640379ecdc202ab108122a77ebfd7996b8263edd5d7

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp37-cp37m-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp37-cp37m-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 7a9876a2b6929eefec0cf617dc3cd88a52584a6d6be8495b44994c4f8abbdbbc
MD5 f9f353e6c4b0992bd04db029ce4caf80
BLAKE2b-256 97978d85f7f3825058b0e47d917481b8f1390b218e02423b712de02001b00dbf

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1d2d3a2c1571ac6e59f295bafb8b254c537644f088a903e6de89a02db55e779b
MD5 bc69fe0cf2c7f9de898634d0b12d37f5
BLAKE2b-256 9bd5a25bf6580f19086eee1d372c7dfe95dbd83110c7c9e8a4bb4006919f5ed3

See more details on using hashes here.

File details

Details for the file acv_dev-0.0.15-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for acv_dev-0.0.15-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 849fd140373645bacb729a44757a82eaed53059b062dd000cbe61a03b91bb63c
MD5 d487a38c2a0ce78af7d7d649492722e2
BLAKE2b-256 2e2e3501da502a5cc578702d45a3598f2c25276c7a0892c3ccae5b71a8a8ebaf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page