Gotchas For Beginners:

For Java builds, ask the site admins to enable network access from 
inside the Docker container, as soon as you create an account.  Until then 
Maven can't download dependencies.

Use the following for the 'Environment' since it is super cheap compared to some 
of the the other ones that can blow through the initial free usage limit.  Or use 
whatever is he cheapest environment when signing up with Valohai.
environment: aws-eu-west-1-t3-large

Create separate steps for bulid, train, and evaluate.  Otherwise each action is 
done every single run (when you really only need to build when code changes).

During the build step, copy the JAR to ${VH_OUTPUTS_DIR}/

For any step that uses the build step JAR, include an 'inputs' section specifing the 
JAR label/directory.

Be sure to add the dependency for ND4J if you are seeing this error:
"RuntimeException: org.nd4j.linalg.factory.Nd4jBackend$NoAvailableBackendException: Please ensure that you have an nd4j backend on your classpath."

When the code is updated, don't forget to click the 'Fetch repository' button in 
the Web interface AND update the 'Commit' dropdown in the 'Create Execution' page.

See this documentation page for memory configuration:

If different environments are specified between executions, then do they still 
have access to the same ${VH_OUTPUTS_DIR} and ${VH_INPUTS_DIR} directories?

It looks like the answer is yes to this question.


Going Further

    Use a logger instead of System.out.println()




Date Created

Fri Sep 13 07:54:59 CDT 2019

Last Updated


back    |    top