Instalei o módulo levenshtein do conda-forge. Não me lembro do comando exato usado, mas provavelmente era algo semelhante a conda install -c conda-forge PackageName
. Eu consultei as versões do pacote. Vejo dois pacotes com exatamente o mesmo número de versão:
(py39) C:\>conda list levenshtein$
# packages in environment at C:\Users\User.Name\AppData\Local\anaconda3\envs\py39:
#
# Name Version Build Channel
levenshtein 0.25.1 py39h99910a6_0 conda-forge
python-levenshtein 0.25.1 pyhd8ed1ab_0 conda-forge
A versão corresponde ao que encontrei online aqui e aqui . Também posso encontrar ambas as variações no GitHube, aqui , aqui e aqui .
Para tentar ter uma ideia se eles são diferentes, usei o Bash do Cygwin para navegar até a pasta do ambiente Conda /c/Users/User.Name/AppData/Local/anaconda3/envs/py39
e procurei por arquivos relacionados aos pacotes:
$ find * -name '*levenshtein*' -print | xargs ls -l
7270 Jun 7 17:13 conda-meta/levenshtein-0.25.1-py39h99910a6_0.json
4564 Jun 7 17:13 conda-meta/python-levenshtein-0.25.1-pyhd8ed1ab_0.json
3951 Jan 27 2023 Lib/site-packages/gensim/similarities/__pycache__/levenshtein.cpython-39.pyc
4505 Jan 27 2023 Lib/site-packages/gensim/similarities/levenshtein.py
219136 Apr 7 12:12 Lib/site-packages/Levenshtein/levenshtein_cpp.cp39-win_amd64.pyd
Não tenho certeza de como interpretar essas descobertas. Olhando para os dois principais arquivos JSON, vejo linhas selecionadas possivelmente relevantes
levenshtein-0.25.1-py39h99910a6_0.json
--------------------------------------
"extracted_package_dir": "C:\\Users\\User.Name\\AppData\\Local\\anaconda3\\pkgs\\levenshtein-0.25.1-py39h99910a6_0",
"fn": "levenshtein-0.25.1-py39h99910a6_0.conda",
"source": "C:\\Users\\User.Name\\AppData\\Local\\anaconda3\\pkgs\\levenshtein-0.25.1-py39h99910a6_0",
"package_tarball_full_path": "C:\\Users\\User.Name\\AppData\\Local\\anaconda3\\pkgs\\levenshtein-0.25.1-py39h99910a6_0.conda",
python-levenshtein-0.25.1-pyhd8ed1ab_0.json
-------------------------------------------
"extracted_package_dir": "C:\\Users\\User.Name\\AppData\\Local\\anaconda3\\pkgs\\python-levenshtein-0.25.1-pyhd8ed1ab_0",
"fn": "python-levenshtein-0.25.1-pyhd8ed1ab_0.conda",
"source": "C:\\Users\\User.Name\\AppData\\Local\\anaconda3\\pkgs\\python-levenshtein-0.25.1-pyhd8ed1ab_0",
"package_tarball_full_path": "C:\\Users\\User.Name\\AppData\\Local\\anaconda3\\pkgs\\python-levenshtein-0.25.1-pyhd8ed1ab_0.conda",
Os dois pacotes são de fato iguais? Se sim, por que eles se manifestariam como pacotes com nomes diferentes? Como verificar se um pacote comum é disponibilizado por meio de dois nomes diferentes?
Examinar os índices do pacote
python-levenshtein
nos leva a https://github.com/rapidfuzz/python-Levenshtein , que diz no README:Ao que parece, eles são o mesmo pacote,
python-levenshtein
sendo mantidos por questões de compatibilidade.