为什么我无法使用 Gensim 下载 API 下载数据集

vti*_*tim 3 python download dataset gensim glove

当我执行以下操作时:

>>> import gensim.downloader as api
>>> model = api.load("glove-twitter-25")  # load glove vectors
Run Code Online (Sandbox Code Playgroud)

gensim.downloader API 抛出以下错误:

[Errno 2] 没有这样的文件或目录:“/Users/vtim/gensim-data/information.json”。

我究竟做错了什么?

tom*_*123 7

我遇到了同样的问题,并通过以下步骤解决了它。我正在使用 mac、pycharm 和 virtualenv。我没有太多的 python 经验,但这就是我的做法:

1.1 您必须创建一个名为“gensim-data”的文件夹,目录为“/Users/vtim/gensim-data”。这可以通过在终端中运行命令“mkdir gensim-data”来完成(与您可以使用 pip install 命令的位置相同)。

1.2 然后您必须将该文件夹作为内容根添加到您的项目中(以便代码可以访问它)。从 Pycharm 中,从主应用程序菜单(Mac 的 Apple 徽标旁边)Pycharm -> 首选项,然后选择项目 -> 项目结构,然后从右侧菜单中选择“添加内容根目录”。找到您刚刚创建的 gensim-data 文件夹并添加它。

1.3 现在您应该在项目文件夹中看到“gensim-data”文件夹,例如,如果您正在使用它,则 venv (virtualenv) 也在其中。现在在“gensim-data”文件夹中创建一个名为“information.json”的文件。然后将此链接找到的代码复制到“information.json”文件:https://github.com/RaRe-Technologies/gensim-data/blob/master/list.json

(您遇到的问题是 gensim.downloader api 可能无权将文档写入特定目录,或者无法读取它们。就我而言,它也无法做到这一点。)

如果您的代码仍然无法正常工作,您应该执行下一步:

2.1 就我而言,我还遇到一个问题,即 api 无法从互联网访问正确的文件。这个问题在这里解决:https ://stackoverflow.com/a/42098127/14075343 。因此,从计算机中找到名为 Python 3.8(如果您使用的是 3.8 版本)的文件夹/应用程序,将其打开并双击“安装证书.command”。或者您可以尝试从终端运行“open /Applications/Python\ 3.8/Install\ Certificates.command”

现在代码应该可以工作了。如果仍然不行,您可以尝试运行这些代码。我不确定这是否有什么不同,但我按照找到解决方案的方式运行这些:

sudo python3 -m pip install --升级 gensim

sudo -H pip 安装 virtualenv

sudo chown -R $USERNAME /Users/$USERNAME/Library/Caches/pip