Nltk: Mettre à jour les instructions d'installation pour les versions récentes de Python

Créé le 30 mai 2015  ·  14Commentaires  ·  Source: nltk/nltk

Les versions récentes de Python sont livrées avec pip par défaut, les instructions d'installation sur http://www.nltk.org/install.html sont donc obsolètes.

Pour les installations modernes (quel que soit le système d'exploitation), les deux étapes suivantes devraient suffire :

  1. Installer NLTK : pip install nltk
  2. Testez l'installation : exécutez python puis tapez import nltk

La suggestion d'installer optionnellement NumPy doit être mise en garde en notant qu'elle nécessite un système de construction fonctionnel, et les utilisateurs peuvent préférer se référer aux recommandations pour l'installation de la pile SciPy complète : http://scipy.org/install.html

Les utilisateurs d'anciennes versions de Python sans pip déjà installé seraient probablement mieux servis en se référant aux propres instructions d'installation de pip sur https://pip.pypa.io/en/latest/installing.html

documentation inactive

Commentaire le plus utile

@txtsd il y a une faute de frappe dans votre commande d'installation, car vous avez ntlk plutôt que nltk (et pip/pypi n'implémente actuellement pas de suggestions de fautes de frappe)

Tous les 14 commentaires

Pour le contexte sur l'origine de cette demande, nous avons eu un nouvel utilisateur Python venu sur distutils-sig confus par la danse d'amorçage setuptools/pip : https://mail.python.org/pipermail/distutils-sig/2015-May/026486 .html

Cette danse _est_ déroutante, c'est pourquoi nous avons commencé à fournir des pépins par défaut.

Salut @ncoghlan ,

Voici ma tentative passée d'écrire des documents d'installation et la discussion associée : https://github.com/nltk/nltk/pull/697. Pourriez-vous s'il vous plaît vérifier et peser? Votre expérience avec ce qui fonctionne et ce qui ne l'est pas serait très utile.

Je pense que c'est une bonne idée de commencer par les instructions simples "si vous avez déjà installé et configuré Python et pip, exécutez simplement 'pip install --user nltk'", comme si cela fonctionnait, l'utilisateur peut simplement l'exécuter et déplacer au. Si vous _supposez_ qu'il est nécessaire de leur expliquer comment installer Python, il y a un risque qu'ils mettent NLTK dans le panier "trop ​​difficile" et ratent le fait qu'il ne s'agissait que d'une seule commande.

Cela vaut alors la peine de demander « Comment ces instructions simples peuvent-elles échouer ? ». Les trois cas principaux :

  1. Ils n'ont pas encore Python du tout. Dans ces cas, je suggère de vous reporter aux instructions de la pile SciPy, car cela procurera aux utilisateurs concernés un NLTK accéléré NumPy : http://scipy.org/install.html
  2. Ils ont Python, mais pas pip. Dans ces cas, je suggère de s'en remettre aux propres instructions d'amorçage de pip : https://pip.pypa.io/en/latest/installing.html
  3. Ils ont Python et pip, mais il y a autre chose qui empêche l'approche "pip install --user nltk" de fonctionner (par exemple, ils utilisent une installation système Python 3 sur Linux, où "pip" s'installe dans la pile Python 2, et vous besoin d'utiliser "pip3" ou "python3 -m pip" pour installer dans la bonne version). Pour ce cas, je suggère de leur recommander d'essayer "python -m pip install --user nltk", et si cela ne fonctionne toujours pas, pointez-les sur https://docs.python.org/3/installing/ pour plus d'informations idées à essayer.

Enfin, pour une utilisation plus avancée (comme apprendre à utiliser des environnements virtuels), vous pouvez les diriger vers https://packaging.python.org/en/latest/ science.html

La clé est de se concentrer sur « Comment puis-je amener un utilisateur à utiliser NLTK de manière productive dans le plus petit nombre d'étapes possibles ? », plutôt que d'essayer de leur enseigner des compétences étrangères (comme l'utilisation d'environnements virtuels) qui sont susceptibles d'être utiles à long terme, mais ne sont au départ qu'une distraction par rapport à la tâche de se mettre en route pour la première fois. ("Cela vous sera utile plus tard, croyez-moi" n'attire presque jamais l'attention d'un étudiant en personne, et c'est encore moins efficace lorsqu'il est utilisé dans le cadre d'un processus d'apprentissage autodirigé)

Les principes de la proposition de @ncoghlan de :

  • le garder aussi simple que possible, et
  • déléguer à d'autres sources d'information (autorités) dans la mesure du possible

les deux me semblent parfaits.

Merci @ncoghlan , @kmike. J'ai légèrement simplifié les instructions (voir http://www.nltk.org/install.html). Avant de faire plus, je voulais vérifier la meilleure version de la commande pip. Trois sont sur la table :

pip install nltk
sudo pip install nltk
pip install --user nltk

Tout cela suppose que pip est installé dans le chemin des utilisateurs. Quelle option ou explication des options est susceptible d'être la plus générale ?

Il est probablement préférable d'aller avec:

pip install nltk

Il existe actuellement des cas où cela ne fonctionnera pas (en particulier les installations système Python sur Linux), mais c'est un problème connu avec le comportement par défaut de pip : https://github.com/pypa/pip/issues/1668

Il vaut peut-être la peine de suggérer "pip install --user nltk" comme alternative si l'installation initiale échoue avec une erreur d'autorisation.

▶ pip install ntlk
Collecting ntlk
  Could not find a version that satisfies the requirement ntlk (from versions: )
No matching distribution found for ntlk

Est-ce le comportement attendu à ce stade ?
Dois-je compiler depuis git ?

@txtsd il y a une faute de frappe dans votre commande d'installation, car vous avez ntlk plutôt que nltk (et pip/pypi n'implémente actuellement pas de suggestions de fautes de frappe)

@ncoghlan Eh bien, c'est embarrassant. Merci!

Récemment, scikit-learn a éloigné les gens de pip et fait confiance au gestionnaire de paquets de la distribution ou à conda : http://scikit-learn.org/stable/install.html.

L'ajout éventuel d'instructions d'installation de conda à http://www.nltk.org/install.html pourrait faire gagner du temps aux utilisateurs, par exemple http://nlpworkgroup.postach.io/post/install-miniconda-python-for-nltk- on-windows , en particulier pour les utilisateurs de Windows.

@alvations bon point concernant conda . C'est probablement le moyen le plus robuste d'obtenir un environnement python scientifique fonctionnel.

Collecte nlkt
Impossible de trouver une version qui satisfasse à l'exigence nlkt (à partir des versions : )
Aucune distribution correspondante trouvée pour nlkt

Je rencontre ce problème, j'essaie d'installer nlkt
S'il vous plaît, aidez-moi à essayer de le résoudre, j'utilise Ubuntu 17.04

@kafomambia Il y a une faute de frappe dans votre commande d'installation - les deux dernières lettres sont actuellement inversées. Vous voulez nltk (pour Natural Language ToolKit) plutôt que votre nlkt actuel.

Collecte de nltk
Réessayer (Réessayer (total=4, connect=None, read=None, redirect=None)) après la connexion
tion interrompue par 'NewConnectionError(' Objet ction.VerifiedHTTPSConnection à 0x0000007AC2BB2748> : Échec de l'établissement
une nouvelle connexion : [Errno 11002] getaddrinfo failed',)' : /simple/nltk/
Réessayer (Réessayer(total=3, connecter=None, read=None, redirect=None)) après la connexion
tion interrompue par 'NewConnectionError(' Objet ction.VerifiedHTTPSConnection à 0x0000007AC2BB2B38> : Échec de l'établissement
une nouvelle connexion : [Errno 11002] getaddrinfo failed',)' : /simple/nltk/
Réessayer (Réessayer(total=2, connecter=None, read=None, redirect=None)) après la connexion
tion interrompue par 'NewConnectionError(' Objet ction.VerifiedHTTPSConnection à 0x0000007AC2BB2860> : Échec de l'établissement
une nouvelle connexion : [Errno 11002] getaddrinfo failed',)' : /simple/nltk/
Réessayer (Réessayer(total=1, connecter=None, read=None, redirect=None)) après la connexion
tion interrompue par 'NewConnectionError(' Objet ction.VerifiedHTTPSConnection à 0x0000007AC2BB29E8> : Échec de l'établissement
une nouvelle connexion : [Errno 11002] getaddrinfo failed',)' : /simple/nltk/
Réessayer (Réessayer (total=0, connect=None, read=None, redirect=None)) après la connexion
tion interrompue par 'NewConnectionError(' Objet ction.VerifiedHTTPSConnection à 0x0000007AC2BB2898> : Échec de l'établissement
une nouvelle connexion : [Errno 11002] getaddrinfo failed',)' : /simple/nltk/
Impossible de trouver une version qui satisfait l'exigence nltk (à partir des versions : )

Aucune distribution correspondante trouvée pour nltk

J'obtiens une erreur ci-dessus en essayant d'installer nltk (python 3.5.2)

Cette page vous a été utile?
0 / 5 - 0 notes