I can't install autoviz

I’m new to Jupyter, and I’m trying to install autoviz.
pip version: pip 24.0
Python version: Python 3.12.2
OS: windows 10

pip unstall autoviz

I got the following errors:
Collecting autoviz
Using cached autoviz-0.1.806-py3-none-any.whl.metadata (15 kB)
Collecting bokeh~=2.4.2 (from autoviz)
Using cached bokeh-2.4.3-py3-none-any.whl.metadata (14 kB)
Collecting emoji (from autoviz)
Using cached emoji-2.11.0-py2.py3-none-any.whl.metadata (5.3 kB)
Collecting fsspec>=0.8.3 (from autoviz)
Using cached fsspec-2024.3.1-py3-none-any.whl.metadata (6.8 kB)
Collecting holoviews~=1.14.9 (from autoviz)
Using cached holoviews-1.14.9-py2.py3-none-any.whl.metadata (17 kB)
Collecting hvplot~=0.7.3 (from autoviz)
Using cached hvplot-0.7.3-py2.py3-none-any.whl.metadata (9.7 kB)
Collecting matplotlib<=3.7.4 (from autoviz)
Using cached matplotlib-3.7.4-cp312-cp312-win_amd64.whl.metadata (5.8 kB)
Collecting nltk (from autoviz)
Using cached nltk-3.8.1-py3-none-any.whl.metadata (2.8 kB)
Collecting numpy<1.25.0 (from autoviz)
Using cached numpy-1.24.4.tar.gz (10.9 MB)
Installing build dependencies: started
Installing build dependencies: finished with status ‘done’
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status ‘done’
Note: you may need to restart the kernel to use updated packages.
ERROR: Exception:
Traceback (most recent call last):
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\cli\base_command.py”, line 180, in exc_logging_wrapper
status = run_func(*args)
^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\cli\req_command.py”, line 245, in wrapper
return func(self, options, args)
^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\commands\install.py”, line 377, in run
requirement_set = resolver.resolve(
^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\resolution\resolvelib\resolver.py”, line 95, in resolve
result = self._result = resolver.resolve(
^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_vendor\resolvelib\resolvers.py”, line 546, in resolve
state = resolution.resolve(requirements, max_rounds=max_rounds)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_vendor\resolvelib\resolvers.py”, line 427, in resolve
failure_causes = self._attempt_to_pin_criterion(name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_vendor\resolvelib\resolvers.py”, line 239, in _attempt_to_pin_criterion
criteria = self._get_updated_criteria(candidate)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_vendor\resolvelib\resolvers.py”, line 230, in _get_updated_criteria
self._add_to_criteria(criteria, requirement, parent=candidate)
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_vendor\resolvelib\resolvers.py”, line 173, in _add_to_criteria
if not criterion.candidates:
^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_vendor\resolvelib\structs.py”, line 156, in bool
return bool(self._sequence)
^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\resolution\resolvelib\found_candidates.py”, line 155, in bool
return any(self)
^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\resolution\resolvelib\found_candidates.py”, line 143, in
return (c for c in iterator if id(c) not in self._incompatible_ids)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\resolution\resolvelib\found_candidates.py”, line 47, in _iter_built
candidate = func()
^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\resolution\resolvelib\factory.py”, line 182, in _make_candidate_from_link
base: Optional[BaseCandidate] = self._make_base_candidate_from_link(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\resolution\resolvelib\factory.py”, line 228, in _make_base_candidate_from_link
self._link_candidate_cache[link] = LinkCandidate(
^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\resolution\resolvelib\candidates.py”, line 290, in init
super().init (
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\resolution\resolvelib\candidates.py”, line 156, in init
self.dist = self._prepare()
^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\resolution\resolvelib\candidates.py”, line 222, in _prepare
dist = self._prepare_distribution()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\resolution\resolvelib\candidates.py”, line 301, in _prepare_distribution
return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\operations\prepare.py”, line 525, in prepare_linked_requirement
return self._prepare_linked_requirement(req, parallel_builds)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\operations\prepare.py”, line 640, in _prepare_linked_requirement
dist = _get_prepared_distribution(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\operations\prepare.py”, line 71, in _get_prepared_distribution
abstract_dist.prepare_distribution_metadata(
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\distributions\sdist.py”, line 54, in prepare_distribution_metadata
self._install_build_reqs(finder)
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\distributions\sdist.py”, line 124, in _install_build_reqs
build_reqs = self._get_build_requires_wheel()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\distributions\sdist.py”, line 101, in _get_build_requires_wheel
return backend.get_requires_for_build_wheel()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_internal\utils\misc.py”, line 745, in get_requires_for_build_wheel
return super().get_requires_for_build_wheel(config_settings=cs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_vendor\pyproject_hooks_impl.py”, line 166, in get_requires_for_build_wheel
return self._call_hook(‘get_requires_for_build_wheel’, {
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_vendor\pyproject_hooks_impl.py”, line 321, in _call_hook
raise BackendUnavailable(data.get(‘traceback’, ‘’))
pip._vendor.pyproject_hooks.impl.BackendUnavailable: Traceback (most recent call last):
File “C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip_vendor\pyproject_hooks_in_process_in_process.py”, line 77, in build_backend
obj = import_module(mod_path)
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\usar\AppData\Local\Programs\Python\Python312\Lib\importlib
init
.py", line 90, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “”, line 1387, in _gcd_import
File “”, line 1360, in _find_and_load
File “”, line 1310, in _find_and_load_unlocked
File “”, line 488, in _call_with_frames_removed
File “”, line 1387, in _gcd_import
File “”, line 1360, in _find_and_load
File “”, line 1331, in _find_and_load_unlocked
File “”, line 935, in load_unlocked
File “”, line 995, in exec_module
File “”, line 488, in call_with_frames_removed
File "C:\Users\usar\AppData\Local\Temp\pip-build-env-oiq9u2p0\overlay\Lib\site-packages\setuptools
init
.py", line 10, in
import distutils.core
ModuleNotFoundError: No module named ‘distutils’