我正在用Python开发一个聊天机器人(Kik messenger),最近把我的应用程序移到了Heroku,就像this question中描述的那样。此外,我还包括了NLTK(Python模块)及其一些资源,如the Heroku documentation中所述。到目前为止,一切都很顺利,聊天机器人应用程序在Kik messenger中响应。在
下一步,我想在nltkapi中包含来自stanfordlp的工具。Stanford NLP工具与几个模型文件一起作为Java存储库提供。在本地,我在根据this answer设置API之后完成了此操作。不过,我不知道如何为赫罗库做这件事。 Heroku有关于如何部署可执行jar文件的a documentation,但我不知道如何将其应用于我的问题。在
我要使用的实际函数是Stanford解析器,我用它在本地调用:
from nltk.parse.stanford import StanfordParser
parser=StanfordParser(model_path="edu/stanford/nlp/models/lexparser/englishPCFG.ser.gz")
这是我在SO上的第一个问题,所以请让我知道我是否可以以及如何编辑这个问题,以便更容易回答。在
编辑:在更一般的层面上,我有一个Python应用程序,我在Heroku云服务上运行(带有临时文件系统),并希望包含一个Java存储库。在
在我的例子中,在中删除不必要的类文件模型.jar文件。 在stanford parser目录中使用这段代码,并使jar文件小于100MB,这是每次推github的限制。在
jar tf stanford-parser-3.6.0-models.jar
并使用此命令删除不必要的类文件
zip -d stanford-parser-3.6.0-models.jar edu/stanford/path/to/file
并将文件推送到github并部署到应用程序中。在
您需要在构建时下载JAR文件,从而在应用程序中包含它们。从你链接到的答案来看,你可以用类似的方法来做这件事:
您还需要将JVM构建包添加到应用程序中:
^{pr2}$相关问题 更多 >
编程相关推荐