文件历史

50 次代码提交

作者 SHA1 备注 提交日期
Ulyana 7e8dcf8dd2 Codebase compatible with latest dependencies (#1292) 2026-01-09 18:20:50 -08:00
Ulyana 5fed49a3d0 Fix stale dependencies + add CI freshness checks (#1291) 2026-01-09 10:55:38 -08:00
Ulyana 04d9ad51d1 Remove Tensorflow from docs + code (#1289) 2026-01-08 20:25:06 -08:00
Ulyana 30b35f4252 Add back CI for core functionality (#1279) 2026-01-07 18:12:14 -08:00
Ulyana cbe0e7e049 Fix docs for 2.8.0 release (#1278) 2026-01-07 18:04:56 -08:00
Ulyana 980c6ddc07 Extend package support Python 10-14 + relax dependencies (#1276) 2026-01-07 14:11:40 -08:00
Elías Snorrason 39a46bc2d6 Update Python version requirements to 3.10 in pyproject.toml, README.md, and CI configuration (#1268)
Drop Python versions that have reached EOL
2025-12-17 16:42:50 +00:00
Jonas Mueller 381af9345b Update CI to macos-13 instead of 12 (#1219)
macos-12 now deprecated in GH actions
2024-12-25 14:32:50 -05:00
Duke bf41a3a844 Consolidate test jobs (#1198) 2024-09-05 19:17:17 +00:00
Elías Snorrason a68b2c17f9 Pin codecov-action to version "v0.7.3" in CI workflow (#1184) 2024-08-05 19:01:11 +00:00
Jonas Mueller a02093bf15 Move models.fasttext wrapper to examples repo (#1173) 2024-07-08 22:10:52 -07:00
Elías Snorrason 70ae424689 Pin fasttext in CI (#1144) 2024-06-13 18:17:31 +00:00
Elías Snorrason 5bece29fc8 Temporarily Revert to macOS 12 in CI due to Incompatibility with Python 3.8 and 3.9 (#1110)
Due to a migration in our CI environment from `macos-latest` to macOS 14 runner images, we've encountered a compatibility issue with Python 3.8 and 3.9. The new architecture of macOS 14 does not currently support these Python versions. While we expect future updates to resolve this, we will temporarily revert our CI to use macOS 12 to ensure continuity in our workflows.
2024-04-23 13:49:45 +00:00
Elías Snorrason a259d26d7c Update tensorflow version to <2.16, also for Windows in CI 2024-03-13 17:19:03 +00:00
Elías Snorrason bad83457f3 Drop Python 3.7 support and add Python 3.11 support (#980) 2024-02-07 14:46:58 -07:00
Elías Snorrason 070b6e5b42 Fix dev dependencies (pytest and black formatter) (#975) 2024-02-01 17:42:56 +00:00
Aditya Thyagarajan b2de6bbefb add property based test for multilabel classification (#945)
Co-authored-by: Jonas Mueller <1390638+jwmueller@users.noreply.github.com>
Co-authored-by: Elías Snorrason <eliassno@gmail.com>
2024-01-10 14:55:09 +00:00
Ganesh Tata 3fb20e9596 CI: Run slowest tests at the end and fail early (#900) 2023-12-14 17:59:28 +00:00
Sanjana 944c61379d Cleanvision Integration (#679)
Co-authored-by: Jonas Mueller <1390638+jwmueller@users.noreply.github.com>
Co-authored-by: Elías Snorrason <eliassno@gmail.com>
2023-07-25 15:51:53 +00:00
Ulyana 5f3de05e9e Temporary Github Actions workaround: Pin Python 3.7.16 (#748)
Co-authored-by: Sanjana Garg <garg.sanjana.95@gmail.com>
2023-06-22 16:30:24 -07:00
Sanjana a3ae30f1a4 CI tests without optional dependencies and min-versions installed (#701) 2023-05-09 14:09:01 -07:00
Hui Wen 6aaee8332b Create new cleanlab.models module (#601)
Co-authored-by: Jonas Mueller <1390638+jwmueller@users.noreply.github.com>
Co-authored-by: Elías Snorrason <eliassno@gmail.com>
2023-02-07 10:03:32 -08:00
Ulyana c191d8781d Fix format compatibility with latest black==23. release (#620) 2023-02-07 10:01:45 -08:00
Jonas Mueller 6ed61e0bb3 cap black version in CI (#618) 2023-02-02 01:13:59 -08:00
Ulyana 7caed93784 Update github actions (#589)
update: github actions to v3, codecov to v3, setup-python to v4, setup node v2 to v3, setup cache v2 to v3
2023-01-05 21:42:34 -08:00
Jonas Mueller 2c69094da1 drop python 3.6 from CI (#577)
followup PR will remove mentions of 3.6 support
2022-12-28 14:40:56 -08:00
Elías Snorrason 0a3344726f chore: 🔥 remove .pylintrc (#564)
flake8 should be used instead
2022-12-13 00:58:22 -08:00
Anish Athalye 0e4e38a9ef Add back testing Python 3.6 (#562)
If we want to continue supporting Python 3.6 (as we claim in the
README), we should make sure we keep testing with it.
2022-12-11 17:57:23 -08:00
Hui Wen d7723d5159 change nblint to gh actions (#560) 2022-12-09 00:41:41 -08:00
Jonas Mueller 7b1946e75b remove python 3.6 testing in CI (#558) 2022-12-06 13:29:45 -08:00
Anish Athalye ecefdbf3d6 Switch CI cron schedule (#548)
Previously, the CI cron schedule, copy-pasted from a personal project,
ran jobs at 8am UTC (3am EST or 4am EDT) on Saturday. This isn't a great
time to get emails about CI breakages.

This patch switches the schedule so it runs on Monday morning (7am EST /
8am EDT).

[skip ci]
2022-11-26 14:43:55 +00:00
Anish Athalye 91b5b40ff7 Move mypy configuration to config file (#545)
This patch moves the `--allow-redefinition` into the `.mypi.ini` file.
Centralizing our mypy config in a single file makes sense, and this way,
if people want to run mypy locally, they don't need to remember to
supply this command-line argument.
2022-11-26 08:07:38 -05:00
Ilnar 10abd7d191 replace pylint --> flake8 in CI (#531)
* add flake8 configuration in setup.cfg
2022-11-08 16:08:57 +00:00
Jonas Mueller 9da372bb4d typecheck with python v3.10 (#521)
Thanks @huiwengoh for diagnosing this problem!
2022-11-03 23:17:41 -07:00
Ulyana a6d71bf2a0 CI: check cleanlab imports without optional dependencies installed (#470)
Co-authored-by: Elías Snorrason <eliassno@gmail.com>
2022-09-29 13:06:43 -07:00
Mohit Saxena 57adf33369 Adding pylint CI checks (#465)
* Update ci.yml

* remove unused import

* 💚 merge pylint jobs

* 🔧 add .pylintrc

* 🚨 handle pylint errors

Co-authored-by: Elías Snorrason <eliassno@gmail.com>
2022-09-23 16:10:03 +00:00
Jonas Mueller a4ad6460a2 Format return docstrings and add typing (#437)
* typing and return docstrings

* address typing complaints

* allow redefinition

* typing complains for pandas

* .values -> to_numpy()
2022-09-15 11:46:14 +00:00
Jonas Mueller b93fdebf30 Add compatibility for tensorflow and pytorch Dataset objects (#311)
* validation_func docstring

* torch,tf compatibility+tests

* keras test

* skip tests if python < 3.7

* pytorch numpy int bug on windows

* make tensorflow test work on windows

* move tf env variable setting

* pytorch test increase epochs

* install cpu-tensorflow on windows CI

* torch test optimizer to adam

* fix bugs in shuffled TF dataset

* dummy unit test for TF on windows

* dummy code for TF windows testing

* deal with np.int bug on windows

* remove windows debugging code

* docstrings for new functionality

* address merge conflicts

* reformat after merge

* addressed comments
2022-07-27 21:42:13 -07:00
Anish Athalye 0705ff2d0a Add static type checking
Our package doesn't have type annotations everywhere, so we can't use
mypy in strict mode just yet. Still, adding type checking in CI is
valuable, so we don't have unchecked annotations in our code.

This patch includes basic fixes to make type checking pass, including
switching the incorrect `np.array` type annotation for `np.ndarray` and
adding some assertions for flow-sensitive typing.
2022-07-06 17:21:56 -04:00
Anish Athalye 6cac342613 Add CI check that .ipynb outputs are empty
Preserving the output cells in Jupyter notebooks that are checked in to
this repo bloat the repo size, and keeping the output is not necessary
because the notebooks are run as part of the CI for producing docs.

For example, in https://github.com/cleanlab/cleanlab/pull/165, the
`audio.ipynb` is 112K (and now part of the repo history forever), while
clearing the output cells reduces that size down to 24K. I suspect that
Git's delta compression will also work better without the output cells
there as we make changes to the notebook. Also, the diffs will be more
readable.
2022-04-05 08:15:54 -04:00
Anish Athalye c73336cb3a Merge branch 'development-guide' 2022-04-03 19:53:50 -04:00
Anish Athalye 9101b85e68 Add development guide
This patch also adds a pre-commit hook that runs Black.
2022-04-03 19:31:05 -04:00
Anish Athalye 78c30b04f7 Add Python 3.10 to CI 2022-04-03 14:22:49 -04:00
Anish Athalye 11dff1faf4 Standardize code style to Black (#107)
* Set up Black as the code style

* Migrate code style to Black
2022-03-16 21:27:36 -04:00
Curtis G. Northcutt 8f9f3f5380 Major API change. Introducing Cleanlab 2.0 (#128)
* Refactor modules pruning to filter and latent_estimation to count

* Remove polyplex (research) algorithms from cleanlab

* Create new module rank and move scoring functions to rank.

* Rename test to match new module names

* Fixed error in normalized margin. added ranking for arbitrary psx and labels.

* Remove unused tests and methods. add multi-label support for baseline.

* Move baseline methods to filter and delete baseline module.

* change filter.get_noise_indices to filter.find_label_issues

* Rename baseline methods. fill out docstrings.

* Only require 1 example to be left in each class after removing errors. (instead of 5)

* Remove K as a parameter to count.compute_confident_joint

* Add C_argmax and C_ij methods from CL paper to find_label_issues

* Add warnings for new prune methods and frac_noise. Fix tests.

* Add baseline tests to test_rank_filter and delete baseline test

* Remove inverse_noise_matrix parameter in classification call to find_label_issues

* add todo to update docstring with new ranking functions

* 100% tests pass. add multi-label support for prune_method

* Major NOT-backwards-compatible name changes to most components

* More Major NOT-backwards-compatible name changes

* fixed s -> label mistakes

* Several nomenclature updates from PR feedback. models renamed to example models.

* Remove python2 support across all modules.

* major api changes. psx -> pred_probs. prob_given_label -> self_confidence. testing added.

* enable python version 3.9 for pytorch model.

* ran spellcheck

* ran grammar check

* Update count.py

* Update filter.py

* Update setup.py and ci.yml to no longer support Python 2 and py3.4/5

* Increase test coverage and documentation of rank module methods.

* create utils submodule and move util and latent_algebra

* Rename y everywhere to true_labels, and p(true_label=..)

* Enforce positional arguments in methods. Fully remove py2 support.
2022-03-16 06:52:03 -04:00
Anish Athalye e27a050236 Remove requirements.txt
This was duplicating content in setup.py (and the two had gotten out of
sync, listing different versions for scipy).

According to the Python Packaging User Guide
(https://packaging.python.org/en/latest/discussions/install-requires-vs-requirements/),
the `install_requires` specifies what a project minimally needs to run
correctly, while the requirements.txt file contains an exhaustive list
of pinned versions for the purpose of repeatable installations of a
complete environment. Cleanlab is a Python package that users will `pip
install`, so we don't need a requirements.txt.

Some related projects like scikit-learn don't have a requirements.txt,
and others that do have such a file use it for a different purpose, e.g.
PyTorch and Keras use the file to list dev dependencies.
2022-02-16 14:18:33 -05:00
Anish Athalye f71cb3b4d0 Ban coverage>=6.3
See https://github.com/nedbat/coveragepy/issues/1312. We can revert this
commit once a newer version of coverage fixes this issue.

coverage==6.3.1
(https://github.com/nedbat/coveragepy/issues/1310#issuecomment-1027499386)
doesn' t fully fix the issue either; hangs become less frequent but are
not eliminated (see e.g. this run of our tests with coverage==6.3.1:
https://github.com/cleanlab/cleanlab/runs/5036277812?check_suite_focus=true).
2022-02-02 07:25:29 -05:00
Anish Athalye ea78f62a8e Run tests on pull request 2022-01-10 06:10:37 -05:00
Anish Athalye 2c1ac19f82 Check code coverage across all platforms
When multiple coverage reports are uploaded to Codecov, it merges the
reports, which is what we want in this situation. So for example, if the
code branches on Python version or OS version, we'll cover those
branches across tests.
2021-12-27 09:41:58 -05:00
Anish Athalye 78b35ac23a Switch to GitHub Actions
This patch switches the CI from Travis-CI to GitHub Actions.

The new CI script drops support for Python 3.4 (EOLed 18 March 2019) and
Python 3.5 (EOLed 13 September 2020), though it keeps support for Python
2.7 (EOLed 1 January 2020). This keeps the CI configuration a lot
simpler.

The new CI script also simplifies code coverage: a single coverage
report is produced for Python 3.9 on Ubuntu. There are no coverage
statistics being collected and uploaded for older versions of Python 3,
Python 2, or other OSes.
2021-12-27 09:41:58 -05:00