0

考虑下面的代码,第二行大约需要一分钟才能完成,对于每个程序,我都有下面的行,那么我怎样才能提供 nlp 对象而不是每次从各种程序中加载它呢?

import spacy
nlp = spacy.load('en')

理想情况下是这样的:

nlp=loadservedobject(url)

nlp 对象大约 > 2GB,因此不寻找序列化解决方案。我更喜欢提供内存中的 nlp 对象,但不知道如何围绕 python 对象创建服务器?

理想情况下,服务器应该是多线程的。

4

1 回答 1

0

您要查找的内容称为序列化。用于此的 python 包称为 pickle。您可以在此处找到文档: https ://docs.python.org/2/library/pickle.html

// save.py

// Save a dictionary into a pickle file.
import pickle
favorite_color = { "lion": "yellow", "kitty": "red" }
pickle.dump(favorite_color, open('save.p', 'wb'))

// load.py

// Load the dictionary back from the pickle file.
import pickle
favorite_color = pickle.load(open('save.p', 'rb'))
// favorite_color is now { "lion": "yellow", "kitty": "red" }
于 2016-06-07T07:17:46.423 回答