Ошибка «tqdm>=4.27» не найдена при выполнении файла .exe, созданного с помощью Pyinstaller

Я пытаюсь создать приложение, которое проверяет сходство предложений. .exe файл создан. Я получаю приведенное ниже сообщение об ошибке при выполнении файла .exe после ввода необходимых данных.

Сообщение об ошибке

The 'tqdm>=4.27' distribution was not found and is required by this application.
Try: pip install transformers -U or pip install -e '.[dev]' if you're working with git main

файл спецификаций

# -*- mode: python ; coding: utf-8 -*-


block_cipher = None


a = Analysis(['render_ui.py'],
             pathex=[],
             binaries=[],
             datas=[('Config\\favicon.ico',"."), ('Config\\miniLM.sav',".")],
             hiddenimports=['sklearn.metrics._pairwise_distances_reduction._datasets_pair', 'sklearn.metrics._pairwise_distances_reduction._middle_term_computer', 'sklearn.metrics._pairwise_distances_reduction._argkmin', 'sklearn.metrics._pairwise_distances_reduction._base', 'sklearn.metrics._pairwise_distances_reduction._radius_neighbors',
                            'sentence_transformers.SentenceTransformer'],
             hookspath=[],
             hooksconfig = {},
             runtime_hooks=[],
             excludes=[],
             win_no_prefer_redirects=False,
             win_private_assemblies=False,
             cipher=block_cipher,
             noarchive=False)
pyz = PYZ(a.pure, a.zipped_data,
             cipher=block_cipher)

exe = EXE(pyz,
          a.scripts,
          a.binaries,
          a.zipfiles,
          a.datas,  
          [],
          name='App',
          debug=False,
          bootloader_ignore_signals=False,
          strip=False,
          upx=True,
          upx_exclude=[],
          runtime_tmpdir=None,
          console=True,
          disable_windowed_traceback=False,
          target_arch=None,
          codesign_identity=None,
          entitlements_file=None,
          icon='Config\\favicon.ico')

У меня уже установлен "tqdm==4.64.1". Я не уверен, что вызывает эту проблему. Может кто-нибудь, пожалуйста, помогите мне в этом?

пожалуйста, создайте минимальный воспроизводимый пример и опубликуйте все сообщения об ошибках, которые вы получаете

Alexander 10.02.2023 09:45
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
1
61
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Похоже, у вас проблемы с зависимостью. Сообщение об ошибке указывает на то, что пакет с именем transformers, который, вероятно, является зависимостью запускаемого вами исполняемого файла, устарел.

Попробуйте запустить эту строку в своем терминале:

pip install transformers -U

Если это не сработает, вы можете попробовать отладить среду, перейдя в каталог, где хранится исполняемый файл, и используя команду

pip freeze

Если указанная там версия неверна, вам может потребоваться удалить и переустановить tqdm. Для этого выполните команду

pip uninstall tqdm

и введите Y при появлении запроса. Тогда сделайте

pip install tqdm

Это заставляет pip получить последнюю версию.

Ответ принят как подходящий

после добавления приведенных ниже инструкций в файл спецификации я смог решить проблему

datas += copy_metadata('tqdm')
datas += copy_metadata('regex')
datas += copy_metadata('requests')
datas += copy_metadata('packaging')
datas += copy_metadata('filelock')
datas += copy_metadata('numpy')
datas += copy_metadata('tokenizers')
datas += copy_metadata('importlib_metadata')
datas += copy_metadata('tensorflow')

Другие вопросы по теме