{"id":6628,"library":"fiftyone","title":"FiftyOne","description":"FiftyOne is an open-source tool for building high-quality datasets and computer vision models. It enables users to visualize datasets, analyze models, and improve data quality more efficiently. The library is currently at version 1.14.1 and maintains a rapid release cadence with frequent minor updates.","status":"active","version":"1.14.1","language":"en","source_language":"en","source_url":"https://github.com/voxel51/fiftyone","tags":["computer-vision","data-labeling","dataset-management","machine-learning","visualization"],"install":[{"cmd":"pip install fiftyone","lang":"bash","label":"Install stable release"}],"dependencies":[{"reason":"FiftyOne 1.14.1 requires Python 3.9 - 3.12. Python 3.9 support is ending June 1, 2026.","package":"Python","optional":false},{"reason":"Recommended for working with video datasets.","package":"FFmpeg","optional":true},{"reason":"FiftyOne uses MongoDB as its backing database. Version compatibility is crucial; e.g., MongoDB 6.0 support is ending December 1, 2025, and older versions (4.4, 5.0) are already unsupported.","package":"MongoDB","optional":false}],"imports":[{"symbol":"fiftyone","correct":"import fiftyone as fo"},{"symbol":"fiftyone.zoo","correct":"import fiftyone.zoo as foz"}],"quickstart":{"code":"import fiftyone as fo\nimport fiftyone.zoo as foz\n\n# Load a small dataset from the FiftyOne Dataset Zoo\ndataset = foz.load_zoo_dataset(\"quickstart\")\n\n# Launch the FiftyOne App to visualize the dataset\nsession = fo.launch_app(dataset)\n\n# For scripts, use session.wait() to block execution until the App is closed\n# session.wait()","lang":"python","description":"This quickstart downloads a sample dataset from the FiftyOne Dataset Zoo and launches the interactive FiftyOne App to visualize and explore the data. If running in a script, `session.wait()` is necessary to keep the App open until manually closed."},"warnings":[{"fix":"Always run `fiftyone migrate` (for open-source) or the Enterprise migration tool (for Enterprise) BEFORE installing an older version of FiftyOne to perform any necessary downward database migrations. If an error occurs, reinstall the newer version and then follow the migration instructions.","message":"Downgrading FiftyOne versions can lead to database corruption or errors if not handled correctly.","severity":"breaking","affected_versions":"All versions"},{"fix":"To make a dataset persistent, set `dataset.persistent = True` before exiting the session. You can also explicitly manage non-persistent datasets using `fo.core.delete_non_persistent_datasets()`.","message":"By default, FiftyOne datasets are non-persistent and are deleted from the database when all Python sessions importing FiftyOne are exited.","severity":"gotcha","affected_versions":"All versions"},{"fix":"After modifying a `Sample` object, you must call `sample.save()`. Similarly, after editing fields like `dataset.info` or `dataset.classes`, you must call `dataset.save()` for the changes to persist.","message":"Changes made to individual samples (e.g., adding labels) or certain dataset-level fields (like `info` or `classes` in-place) are not automatically saved to the database.","severity":"gotcha","affected_versions":"All versions"},{"fix":"Upgrade to Python 3.10, 3.11, or 3.12. FiftyOne releases after June 1, 2026, might no longer be compatible with Python 3.9.","message":"Support for Python 3.9 is ending.","severity":"deprecated","affected_versions":"<= 1.14.x"},{"fix":"Ensure your MongoDB instance is at a supported version. FiftyOne releases after December 1, 2025, might no longer be compatible with MongoDB 6.0.","message":"Support for MongoDB 6.0 is ending. Older versions (4.4, 5.0) are already unsupported.","severity":"deprecated","affected_versions":"<= 1.14.x"}],"env_vars":null,"last_verified":"2026-04-15T00:00:00.000Z","next_check":"2026-07-14T00:00:00.000Z","problems":[]}