Skip to main content

A super-easy way to record, search and compare AI experiments.

Project description

An easy-to-use & supercharged open-source experiment tracker

Aim logs your training runs, enables a beautiful UI to compare them and an API to query them programmatically.

AboutFeaturesDemosExamplesQuick StartDocumentationRoadmapSlack CommunityTwitter

Platform Support PyPI - Python Version PyPI Package License PyPI Downloads Issues

Integrates seamlessly with your favorite tools



About Aim

Track and version ML runs Visualize runs via beautiful UI Query runs metadata via SDK

Aim is an open-source, self-hosted ML experiment tracking tool. It's good at tracking lots (1000s) of training runs and it allows you to compare them with a performant and beautiful UI.

You can use not only the great Aim UI but also its SDK to query your runs' metadata programmatically. That's especially useful for automations and additional analysis on a Jupyter Notebook.

Aim's mission is to democratize AI dev tools.

Why use Aim?

Compare 100s of runs in a few clicks - build models faster

  • Compare, group and aggregate 100s of metrics thanks to effective visualizations.
  • Analyze, learn correlations and patterns between hparams and metrics.
  • Easy pythonic search to query the runs you want to explore.

Deep dive into details of each run for easy debugging

  • Hyperparameters, metrics, images, distributions, audio, text - all available at hand on an intuitive UI to understand the performance of your model.
  • Easily track plots built via your favourite visualisation tools, like plotly and matplotlib.
  • Analyze system resource usage to effectively utilize computational resources.

Have all relevant information organised and accessible for easy governance

  • Centralized dashboard to holistically view all your runs, their hparams and results.
  • Use SDK to query/access all your runs and tracked metadata.
  • You own your data - Aim is open source and self hosted.

Demos

Machine translation lightweight-GAN
Training logs of a neural translation model(from WMT'19 competition). Training logs of 'lightweight' GAN, proposed in ICLR 2021.
FastSpeech 2 Simple MNIST
Training logs of Microsoft's "FastSpeech 2: Fast and High-Quality End-to-End Text to Speech". Simple MNIST training logs.

Quick Start

Follow the steps below to get started with Aim.

1. Install Aim on your training environment

pip3 install aim

2. Integrate Aim with your code

from aim import Run

# Initialize a new run
run = Run()

# Log run parameters
run["hparams"] = {
    "learning_rate": 0.001,
    "batch_size": 32,
}

# Log metrics
for i in range(10):
    run.track(i, name='loss', step=i, context={ "subset":"train" })
    run.track(i, name='acc', step=i, context={ "subset":"train" })

See the full list of supported trackable objects(e.g. images, text, etc) here.

3. Run the training as usual and start Aim UI

aim up

4. Or query runs programmatically via SDK

from aim import Repo

my_repo = Repo('/path/to/aim/repo')

query = "metric.name == 'loss'" # Example query

# Get collection of metrics
for run_metrics_collection in my_repo.query_metrics(query).iter_runs():
    for metric in run_metrics_collection:
        # Get run params
        params = metric.run[...]
        # Get metric values
        steps, metric_values = metric.values.sparse_numpy()

Integrations

Integrate PyTorch Lightning
from aim.pytorch_lightning import AimLogger

# ...
trainer = pl.Trainer(logger=AimLogger(experiment='experiment_name'))
# ...

See documentation here.

Integrate Hugging Face
from aim.hugging_face import AimCallback

# ...
aim_callback = AimCallback(repo='/path/to/logs/dir', experiment='mnli')
trainer = Trainer(
    model=model,
    args=training_args,
    train_dataset=train_dataset if training_args.do_train else None,
    eval_dataset=eval_dataset if training_args.do_eval else None,
    callbacks=[aim_callback],
    # ...
)
# ...

See documentation here.

Integrate Keras & tf.keras
import aim

# ...
model.fit(x_train, y_train, epochs=epochs, callbacks=[
    aim.keras.AimCallback(repo='/path/to/logs/dir', experiment='experiment_name')
    
    # Use aim.tensorflow.AimCallback in case of tf.keras
    aim.tensorflow.AimCallback(repo='/path/to/logs/dir', experiment='experiment_name')
])
# ...

See documentation here.

Integrate KerasTuner
from aim.keras_tuner import AimCallback

# ...
tuner.search(
    train_ds,
    validation_data=test_ds,
    callbacks=[AimCallback(tuner=tuner, repo='.', experiment='keras_tuner_test')],
)
# ...

See documentation here.

Integrate XGBoost
from aim.xgboost import AimCallback

# ...
aim_callback = AimCallback(repo='/path/to/logs/dir', experiment='experiment_name')
bst = xgb.train(param, xg_train, num_round, watchlist, callbacks=[aim_callback])
# ...

See documentation here.

Integrate CatBoost
from aim.catboost import AimLogger

# ...
model.fit(train_data, train_labels, log_cout=AimLogger(loss_function='Logloss'), logging_level="Info")
# ...

See documentation here.

Integrate fastai
from aim.fastai import AimCallback

# ...
learn = cnn_learner(dls, resnet18, pretrained=True,
                    loss_func=CrossEntropyLossFlat(),
                    metrics=accuracy, model_dir="/tmp/model/",
                    cbs=AimCallback(repo='.', experiment='fastai_test'))
# ...

See documentation here.

Integrate LightGBM
from aim.lightgbm import AimCallback

# ...
aim_callback = AimCallback(experiment='lgb_test')
aim_callback.experiment['hparams'] = params

gbm = lgb.train(params,
                lgb_train,
                num_boost_round=20,
                valid_sets=lgb_eval,
                callbacks=[aim_callback, lgb.early_stopping(stopping_rounds=5)])
# ...

See documentation here.

Integrate PyTorch Ignite
from aim.pytorch_ignite import AimLogger

# ...
aim_logger = AimLogger()

aim_logger.log_params({
    "model": model.__class__.__name__,
    "pytorch_version": str(torch.__version__),
    "ignite_version": str(ignite.__version__),
})

aim_logger.attach_output_handler(
    trainer,
    event_name=Events.ITERATION_COMPLETED,
    tag="train",
    output_transform=lambda loss: {'loss': loss}
)
# ...

See documentation here.

Comparisons to familiar tools

Tensorboard

Training run comparison

Order of magnitude faster training run comparison with Aim

  • The tracked params are first class citizens at Aim. You can search, group, aggregate via params - deeply explore all the tracked data (metrics, params, images) on the UI.
  • With tensorboard the users are forced to record those parameters in the training run name to be able to search and compare. This causes a super-tedius comparison experience and usability issues on the UI when there are many experiments and params. TensorBoard doesn't have features to group, aggregate the metrics

Scalability

  • Aim is built to handle 1000s of training runs - both on the backend and on the UI.
  • TensorBoard becomes really slow and hard to use when a few hundred training runs are queried / compared.

Beloved TB visualizations to be added on Aim

  • Embedding projector.
  • Neural network visualization.

MLFlow

MLFlow is an end-to-end ML Lifecycle tool. Aim is focused on training tracking. The main differences of Aim and MLflow are around the UI scalability and run comparison features.

Run comparison

  • Aim treats tracked parameters as first-class citizens. Users can query runs, metrics, images and filter using the params.
  • MLFlow does have a search by tracked config, but there are no grouping, aggregation, subplotting by hyparparams and other comparison features available.

UI Scalability

  • Aim UI can handle several thousands of metrics at the same time smoothly with 1000s of steps. It may get shaky when you explore 1000s of metrics with 10000s of steps each. But we are constantly optimizing!
  • MLflow UI becomes slow to use when there are a few hundreds of runs.

Weights and Biases

Hosted vs self-hosted

  • Weights and Biases is a hosted closed-source MLOps platform.
  • Aim is self-hosted, free and open-source experiment tracking tool.

Roadmap

Detailed Sprints

:sparkle: The Aim product roadmap

  • The Backlog contains the issues we are going to choose from and prioritize weekly
  • The issues are mainly prioritized by the highly-requested features

High-level roadmap

The high-level features we are going to work on the next few months

Done

  • Live updates (Shipped: Oct 18 2021)
  • Images tracking and visualization (Start: Oct 18 2021, Shipped: Nov 19 2021)
  • Distributions tracking and visualization (Start: Nov 10 2021, Shipped: Dec 3 2021)
  • Jupyter integration (Start: Nov 18 2021, Shipped: Dec 3 2021)
  • Audio tracking and visualization (Start: Dec 6 2021, Shipped: Dec 17 2021)
  • Transcripts tracking and visualization (Start: Dec 6 2021, Shipped: Dec 17 2021)
  • Plotly integration (Start: Dec 1 2021, Shipped: Dec 17 2021)
  • Colab integration (Start: Nov 18 2021, Shipped: Dec 17 2021)
  • Centralized tracking server (Start: Oct 18 2021, Shipped: Jan 22 2022)
  • Tensorboard adaptor - visualize TensorBoard logs with Aim (Start: Dec 17 2021, Shipped: Feb 3 2022)
  • Track git info, env vars, CLI arguments, dependencies (Start: Jan 17 2022, Shipped: Feb 3 2022)
  • MLFlow adaptor (visualize MLflow logs with Aim) (Start: Feb 14 2022, Shipped: Feb 22 2022)
  • Activeloop Hub integration (Start: Feb 14 2022, Shipped: Feb 22 2022)
  • PyTorch-Ignite integration (Start: Feb 14 2022, Shipped: Feb 22 2022)
  • Run summary and overview info(system params, CLI args, git info, ...) (Start: Feb 14 2022, Shipped: Mar 9 2022)
  • Add DVC related metadata into aim run (Start: Mar 7 2022, Shipped: Mar 26 2022)
  • Ability to attach notes to Run from UI (Start: Mar 7 2022, Shipped: Apr 29 2022)
  • Fairseq integration (Start: Mar 27 2022, Shipped: Mar 29 2022)
  • LightGBM integration (Start: Apr 14 2022, Shipped: May 17 2022)
  • CatBoost integration (Start: Apr 20 2022, Shipped: May 17 2022)
  • Run execution details(display stdout/stderr logs) (Start: Apr 25 2022, Shipped: May 17 2022)
  • Long sequences(up to 5M of steps) support (Start: Apr 25 2022, Shipped: Jun 22 2022)
  • Figures Explorer (Start: Mar 1 2022, Shipped: Aug 21 2022)
  • Notify on stuck runs (Start: Jul 22 2022, Shipped: Aug 21 2022)
  • Integration with KerasTuner (Start: Aug 10 2022, Shipped: Aug 21 2022)
  • Integration with WandB (Start: Aug 15 2022, Shipped: Aug 21 2022)
  • Stable remote tracking server (Start: Jun 15 2022, Shipped: Aug 21 2022)

In Progress

  • Project overview page (Start: Sep 1 2022)
  • Remote tracking server scaling (Start: Sep 1 2022)
  • Integration with fast.ai (Start: Aug 22 2022)
  • Integration with MXNet (Start: Sep 20 2022)
  • Aim SDK low-level interface (Start: Aug 22 2022)

To Do

Aim UI

  • Runs management
    • Runs explorer – query and visualize runs data(images, audio, distributions, ...) in a central dashboard
  • Explorers
    • Audio Explorer
    • Text Explorer
    • Distributions Explorer
  • Dashboards – customizable layouts with embedded explorers

SDK and Storage

  • Scalability
    • Smooth UI and SDK experience with over 10.000 runs
  • Runs management
    • CLI interfaces
      • Reporting - runs summary and run details in a CLI compatible format
      • Manipulations – copy, move, delete runs, params and sequences

Integrations

  • ML Frameworks:
    • Shortlist: MONAI, SpaCy, Raytune, MXNet, PaddlePaddle
  • Datasets versioning tools
    • Shortlist: HuggingFace Datasets
  • Resource management tools
    • Shortlist: Kubeflow, Slurm
  • Workflow orchestration tools
  • Others: Hydra, Google MLMD, Streamlit, ...

On hold

  • scikit-learn integration
  • Cloud storage support – store runs blob(e.g. images) data on the cloud (Start: Mar 21 2022)
  • Artifact storage – store files, model checkpoints, and beyond (Start: Mar 21 2022)

Community

If you have questions

  1. Read the docs
  2. Open a feature request or report a bug
  3. Join our slack

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

aim-3.14.2.tar.gz (1.5 MB view details)

Uploaded Source

Built Distributions

aim-3.14.2-cp310-cp310-manylinux_2_24_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.24+ x86-64

aim-3.14.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.5 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

aim-3.14.2-cp310-cp310-macosx_11_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

aim-3.14.2-cp310-cp310-macosx_10_14_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.10 macOS 10.14+ x86-64

aim-3.14.2-cp39-cp39-manylinux_2_24_x86_64.whl (5.5 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.24+ x86-64

aim-3.14.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

aim-3.14.2-cp39-cp39-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

aim-3.14.2-cp39-cp39-macosx_10_14_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.9 macOS 10.14+ x86-64

aim-3.14.2-cp38-cp38-manylinux_2_24_x86_64.whl (5.7 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.24+ x86-64

aim-3.14.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

aim-3.14.2-cp38-cp38-macosx_11_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

aim-3.14.2-cp38-cp38-macosx_10_14_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.8 macOS 10.14+ x86-64

aim-3.14.2-cp37-cp37m-manylinux_2_24_x86_64.whl (5.4 MB view details)

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

aim-3.14.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.2 MB view details)

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

aim-3.14.2-cp37-cp37m-macosx_10_14_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.7m macOS 10.14+ x86-64

aim-3.14.2-cp36-cp36m-manylinux_2_24_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.6m manylinux: glibc 2.24+ x86-64

aim-3.14.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.9 MB view details)

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

aim-3.14.2-cp36-cp36m-macosx_10_14_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.6m macOS 10.14+ x86-64

File details

Details for the file aim-3.14.2.tar.gz.

File metadata

  • Download URL: aim-3.14.2.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.4

File hashes

Hashes for aim-3.14.2.tar.gz
Algorithm Hash digest
SHA256 63d590417b5dc0b771ed4a1027e20964974a44d7cb37db7f3625e995b366e4f2
MD5 d148a21d5ffb2b0c8ebdeb450f1c2267
BLAKE2b-256 60b3b4032f7947085ba509b67088619849f7a33de4752623c8db1d4476b61efd

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp310-cp310-manylinux_2_24_x86_64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp310-cp310-manylinux_2_24_x86_64.whl
Algorithm Hash digest
SHA256 c4c9bc2454c1f11d9338151afb2e4da1b3346cd97e55d2a011b14848dbe81d55
MD5 37b2030fdebc58f6182e08bd997c681d
BLAKE2b-256 a081530ddb418aa07c48f3dd94dbeac671d980108846884d9ac087d2b8bb45b3

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5a6695854972641d8189dfd3f60595394fea2f67d6a1a964aff8d279cdf631ee
MD5 125fb22c3ea7ba7e7b69c641c41029bd
BLAKE2b-256 9212b4f56bc8e13b20063bdd6cb6aed6ace0106b22a9d8723384a8aa7bc5a626

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c8980f9b7ea44ea00efc0b53a3d2dd6239cc9c9373a59b0641b697928ee07c2f
MD5 cc3a366a68903d28cd825144905d0bb7
BLAKE2b-256 4552529f6b8081c94762a9a29dc12da24ba768cfb47162719b628fef7867c3e9

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp310-cp310-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 2300e34c2841e5fe77e4ec3b67a97f40b50070b72a123498d4dd26e8ddef6454
MD5 cddd2d211971fecd96fa5b6eaf84bac3
BLAKE2b-256 16cb51f4549498b0aac0c0c654dc2df3624567dff6af76c98625ec06089c6fde

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp39-cp39-manylinux_2_24_x86_64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp39-cp39-manylinux_2_24_x86_64.whl
Algorithm Hash digest
SHA256 1e82373819571c8c14d4ccefd6006e35f7fe00d7f1d50e90b829447d86ce4beb
MD5 b50ad01193af9e0fb17b6de2d2ac35f3
BLAKE2b-256 58a2b168f9863d07678bffc8d6ff7ccd621798d54ffab94d771371562dbd174f

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a07e92dc16adf48af562326e63ebceeaa4fe91426d051c4290f6c6bc6419a8aa
MD5 1f43948f6a7f610e9ca34113db725052
BLAKE2b-256 effbbd05b7da3e3cdd7c9e0fbc5ce12b13ab548a6cca891a0af4efe74763568f

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 52fee27106c28fee61b7613066da338b35042145da73d157da8f9610fa569213
MD5 c824d8bf3b413a46e1a9642ed04835c1
BLAKE2b-256 611a4cbc1b1ce1219328893243cfb2c3ffe92b0c7683e575b5a7e984ab52c9d4

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp39-cp39-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 b1538baaad03c85fa8e092df8142975d2798acb58d34eb551a242758d98c0aa7
MD5 34b4152e6e3b8dae31d257e9be2de052
BLAKE2b-256 f4432e8193971931dbbf56577f18b537caf98fdf90e836a40d5a6f3be17d702a

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp38-cp38-manylinux_2_24_x86_64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp38-cp38-manylinux_2_24_x86_64.whl
Algorithm Hash digest
SHA256 963395a402dbda7f4422b034072534bf445ff3cd15d23e2d0a7377f7ce59540c
MD5 49168a118d326d2e9a3ccdd67bc5c45c
BLAKE2b-256 7287c546fb308b39515d7d11812d2c593cd93ce57e9572ec8d8b4e9e8b8fd5ba

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0cad60c6c1f69d9ef5829ef85f3fc277bd2a4fb5c8063f48da539b0895dcaa16
MD5 db5f4354785f39767ff181b7d0d4182d
BLAKE2b-256 1273e7bf15507066a8815148666d9021173bca1bb87d8066c5cafc264a102699

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 09820da061339d07987fb38fa8a71c295b7f2067d0319aae75cb493145b52f4d
MD5 7ee6280bcdc299f294fe2abf38ad1bae
BLAKE2b-256 3a0d6cbf57164269c900250affac8b66db5c0fce7dfd9786a72ddb56eb40a75a

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp38-cp38-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 6315ac90c2c76db2fca11ce1542ae006ba9abb71725c41236283a1c8b1cb21c8
MD5 0a05fdf20c9bfca9fd57626971a836e1
BLAKE2b-256 7f0aa1468e8ae1107e7a52227f57febbcb5845dc2d32dc9a612b9f58480ef0e5

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp37-cp37m-manylinux_2_24_x86_64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp37-cp37m-manylinux_2_24_x86_64.whl
Algorithm Hash digest
SHA256 4db0787ef029ed3bdd70a5927749e6be34273bef1a81fe0697bd75bd46d2b80b
MD5 8554f96509e5cd07e6192b9a4b8ee15e
BLAKE2b-256 3838b0935e3a0a049807be0768e22e42f52e5afc10ff6fa2db866ef3e44979ef

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 243a9828000cf16ae0cb14e7ed92962beceb10137b3c5cc7755f2581ae013fc3
MD5 be5a20e6c1769c0d5d59ac2793940bb2
BLAKE2b-256 599ba538d062cae642c8f84559df42162a2250a5b81f18584931ba8d2e012f2b

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp37-cp37m-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 e8e43299baca3d952dbe4fb4236e4de53c9091793d001a9f36d6ad20d4ff67b2
MD5 726e4219087efcb4be000a34359abb1c
BLAKE2b-256 c13ae4224c9c359bc8459b196e48c8ffe6dba51e5d609d51e5c6b5f86aaa5d2d

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp36-cp36m-manylinux_2_24_x86_64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp36-cp36m-manylinux_2_24_x86_64.whl
Algorithm Hash digest
SHA256 7b0b9b16ac9626a8c9ed389d2007dd00de8224b386215aaf3e3964f343a14ff5
MD5 5c630bc841e10a623ea5b3f7eb92643b
BLAKE2b-256 c7bcff8a7ed8e4e8931119133c9c292578e3e6f967482129501a619e6cf744a1

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for aim-3.14.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 05b7bf906886f9d21157e2714526d53276010bb71ace46060b8714167cc02ce9
MD5 797330fffa4f156345635ee3c9c440c4
BLAKE2b-256 34b0865ecfd851a751f5e114d4ad1894634649574f7336633d61abf4163b8098

See more details on using hashes here.

File details

Details for the file aim-3.14.2-cp36-cp36m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: aim-3.14.2-cp36-cp36m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.6m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.64.0 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.13

File hashes

Hashes for aim-3.14.2-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 eb274aac6144d06111d5302fe9c5766b621971e0543f378bd497c9701603bacc
MD5 ad9538798889a398b437c46f4bc57299
BLAKE2b-256 a5716a692080b2152a652439e6dac63c0b5d627c3b85a2c161b16760fbcf575c

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