在Tensorflow Java中将模型文件嵌入jar

在Tensorflow Java中将模型文件嵌入jar,java,tensorflow,Java,Tensorflow,我想在JAR文件中嵌入一个预先训练好的模型,然后使用Tensorflow的JavaAPI将其用于预测。我的Tensorflow版本是1.12.0 我使用tf.saved\u model.simple\u save在Python中导出了tensorflow模型。这会将PB文件和变量保存到导出目录。只要导出目录在本地可用,我就可以使用SavedModelBundle.load在Java中成功加载该模型并运行预测 现在,我想在受限/远程环境中使用我的预测器作为Aster Analytics数据库的自定

我想在JAR文件中嵌入一个预先训练好的模型,然后使用Tensorflow的JavaAPI将其用于预测。我的Tensorflow版本是1.12.0

我使用tf.saved\u model.simple\u save在Python中导出了tensorflow模型。这会将PB文件和变量保存到导出目录。只要导出目录在本地可用,我就可以使用SavedModelBundle.load在Java中成功加载该模型并运行预测

现在,我想在受限/远程环境中使用我的预测器作为Aster Analytics数据库的自定义函数。这个数据库接受一个jar文件,并在SQL调用期间运行一个用户定义的函数

我的问题是SavedModelBundle从本地目录加载,并且不使用文件流或类似的方法来读取JAR文件中的资源。由于该数据库有访问限制,我无法创建永久本地目录并将导出的文件移动到该目录。类似地,我不能调用Tensorflow服务或任何其他对外部服务器的RPC/REST调用

我不想在每次函数调用时创建一个临时目录并将导出的目录复制到那里(因为它可能会留下剩余的目录,并且可能会同时调用创建竞争条件等)

有没有有效的方法在jar文件中传递模型,然后读取它?我希望有一种方法可以使用SavedModelBundle读取jar资源。或者,我希望可以使用文件流读取模型的图形,然后使用JAR中包含的文件初始化变量。但是我也不知道怎么做

我感谢您的建议和/或指导

Thx提前