0

我正在尝试测试我加入 Acumos 平台的模型(使用 python 客户端)。在 docker 中运行图像失败并出现以下错误:

文件“h5py/h5f.pyx”,第 85 行,在 h5py.h5f.open OSError:无法打开文件(无法打开文件:name = 'data/keras/ticketsModel/model.hdf5',errno = 2,错误消息= '没有这样的文件或目录', flags = 0, o_flags = 0)

我的代码如下所示:

from acumos.session import AcumosSession
from acumos.modeling import Model, List, create_dataframe
from tensorflow.python.keras.models import load_model

# This version tells me : unable to open file: name = 'data/keras/ticketsModel/model.hdf5'
#def classify_ticket(inText: str) -> str:
#    current_model = load_model('data/keras/ticketsModel/model.hdf5')
#    return current_model.predict(inText)

# This version tells me : NotImplementedError: numpy() is only available when eager execution is enabled.
current_model = load_model('data/keras/ticketsModel/model.hdf5')
def classify_ticket(inText: str) -> str:
    return current_model.predict(inText)

model = Model(classify=classify_ticket)
session = AcumosSession()
session.dump(model,'ticket_classification','acumos_out')

任何帮助是极大的赞赏 !

4

2 回答 2

0

acumos库目前代表用户序列化模型,以便它可以以可移植的方式捆绑对象,同时最大限度地减少开发人员的工作量。但是,将来可能会添加提供自定义序列化逻辑的选项。

您的问题的解决方案应该是将模型加载到函数定义之上,例如:

current_model = load_model('data/keras/ticketsModel/model.hdf5')

def classify_ticket(inText: str) -> str:
    return current_model.predict(inText)
于 2019-03-21T18:14:49.490 回答
0

您能否查看转储模型时生成的 zip 文件并告诉我那里的所有文件及其大小?

于 2019-03-22T15:29:28.843 回答