tensorflow / tensorflow/java

Possibility to deploy tensorflow-java to AppEngine

Open
#400 6 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
928
Forks
227
PR merge metrics
No merged PRs in 30d

Description

I was trying to run ML Inference with tensorflow-java deployed to AppEngine, but quickly failed with this error:

ERROR: (gcloud.app.deploy) Cannot upload file
 [/root/repo/target/appengine-staging/WEB-INF/lib/tensorflow-core-api-0.3.3-linux-x86_64.jar], 
 which has size [62305961] (greater than maximum allowed size of [33554432]).

Which means that AppEngine forbids to deploy any single file that's bigger than 32Mb. And the jar for linux-x86_64 is ~62Mb right now. It is confirmed there: https://cloud.google.com/appengine/quotas#Code

Just checking if someone has any advice/workaround in mind?

Like, is it possible to maybe do a custom-build (I only need to run Inference of SavedModelBundle, nothing else) of tensorflow-java for Linux, to fit in under 32Mb? Or, split the jar into multiple sub-32Mb files?

Not looking for AppEngine advice (as this repo is not a right place for it), but for something that can be done with this library itself. 🙏

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review the tensorflow-core-api-0.3.3-linux-x86_64.jar packaging and the SavedModelBundle inference path first. Determine whether a library-side packaging or build change can meet App Engine's 32 MB per-file limit, with a reproducible deployment approach marking the work complete.

Written by the indexing model from the issue text.

Assessment

Tech stack
google-cloud, java
Domain
cloud
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.