450 lines
17 KiB
Java
Raw Normal View History

[WIP] Remote inference (#96) * fix pad javadoc and @see links. (#72) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * [WIP] More fixes (#73) * special tests for ConstantTadHelper/ConstantShapeHelper Signed-off-by: raver119 <raver119@gmail.com> * release methods for data buffers Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary TadPack C++/Java side (#74) Signed-off-by: raver119 <raver119@gmail.com> * Zoo model TF import test updates (#75) * argLine fix, update compression_gru comment * updated comment for xception * undid but commented argLine change * updated xlnet comment * copyright headers * - new NDArray methods like()/ulike() (#77) - fix for depthwise_conv2d_bp + special test Signed-off-by: raver119 <raver119@gmail.com> * upsampling2d fix CUDA Signed-off-by: raver119 <raver119@gmail.com> * DL4J trace logging (#79) * MLN/CG trace logging for debugging Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tiny tweak Signed-off-by: AlexDBlack <blacka101@gmail.com> * strided_slice_bp shape fn leak fix Signed-off-by: raver119 <raver119@gmail.com> * SameDiff fixes and naming (#78) * remove SDVariable inplace methods * import methods * npe fix in OpVal * removed SameDiff inplace ops from tests * Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything * quick fixes * javadoc * SDVariable eval with placeholders * use regex match * better matching * fix javadoc. (#76) * fix javadoc. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace most @see with @link s. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * 4 additional tests Signed-off-by: raver119 <raver119@gmail.com> * Various DL4J/ND4J fixes (#81) * #7954 Force refresh of UI when switching tabs on overview page Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8017 Concurrent modification exception (synchronize) fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8033 Don't initialize updater in middle of writing memory crash dump Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8208 Fix shape checks for ND4J int[] creator methods Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6385 #7992 Keras import naming fixes + cleanup Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8016 Upsampling3D - add NDHWC format support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Refactor NativeOps.h to export C functions * Actually export functions from NativeOps.h * Adapt the Java wrappers in ND4J generated with JavaCPP * Create C wrappers for some of the C++ classes currently used by ND4J * remove duplicate code in createBufferDetached. (#83) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Keras model import - updater lr fix (#84) * Keras model import - updater lr fix Signed-off-by: eraly <susan.eraly@gmail.com> * Keras model import - updater lr fix, cleanup Signed-off-by: eraly <susan.eraly@gmail.com> * Fix functions of OpaqueVariablesSet * SameDiff Convolution Config validation, better output methods (#82) * Conv Config validation & tests Signed-off-by: Ryan Nett <rnett@skymind.io> * stackOutputs utility method Signed-off-by: Ryan Nett <rnett@skymind.io> * use constructor for validation, support negative kernel sizes (infered from weights) Signed-off-by: Ryan Nett <rnett@skymind.io> * better output methods Signed-off-by: Ryan Nett <rnett@skymind.io> * move output to be with fit and evaluate Signed-off-by: Ryan Nett <rnett@skymind.io> * fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * more fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * refactor duplicate code from pad methods. (#86) * refactor duplicate code from pad methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace switch with if. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes and improvements (#87) * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6488 ElementWiseVertex broadcast support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Constructors and broadcast supported it Transforms.max/min Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8054 ElementWiseVertex now supports broadcast inputs Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8057 Nd4j.create overload dtype fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7551 ND4J Shape validation fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * [WIP] Numpy boolean import (#91) * numpy bool type Signed-off-by: raver119 <raver119@gmail.com> * numpy bool java side Signed-off-by: raver119 <raver119@gmail.com> * remove create method with unused parameter. (#89) * remove create method with unused parameter. * removed more unused methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * removing more unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * last removal of unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * remove createSparse methods. (#92) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes (#90) * Deprecate Old*Op instances Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8063 #8054 Broadcast exceptions + cleanup inplace ops Signed-off-by: AlexDBlack <blacka101@gmail.com> * Small fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * Remove bad test condition Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7993 Fix shape function issue in crop_and_resize op Signed-off-by: AlexDBlack <blacka101@gmail.com> * DL4J SameDiff lambda layer fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8029 Fix for pnorm backprop math Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8038 Fix Op profiler NaN/Inf triggering + add tests (#93) Signed-off-by: AlexDBlack <blacka101@gmail.com> * createUninitializedDetached refactoring. (#94) * wip * update interface, add null implementations. * Breaking one test in a weird way. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * createUninitializedDetached refactored. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * cuda build fix for issues introduced by recent refactoring Signed-off-by: raver119 <raver119@gmail.com> * initial commit Signed-off-by: raver119 <raver119@gmail.com> * deps tweaks Signed-off-by: raver119 <raver119@gmail.com> * initial prototype Signed-off-by: raver119 <raver119@gmail.com> * modules reorganized Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * [WIP] More of CUDA (#95) * initial commit Signed-off-by: raver119 <raver119@gmail.com> * Implementation of hashcode cuda helper. Working edition. * Fixed parallel test input arangements. * Fixed tests for hashcode op. * Fixed shape calculation for image:crop_and_resize op and test. * NativeOps tests. Initial test suite. * Added tests for indexReduce methods. * Added test on execBroadcast with NDArray as dimensions. * Added test on execBroadcastBool with NDArray as dimensions. * Added tests on execPairwiseTransform and execPairwiseTransofrmBool. * Added tests for execReduce with scalar results. * Added reduce tests for non-empty dims array. * Added tests for reduce3. * Added tests for execScalar. * Added tests for execSummaryStats. * - provide cpu/cuda code for batch_to_space - testing it Signed-off-by: Yurii <yurii@skymind.io> * - remove old test for batch_to_space (had wrong format and numbers were not checked) Signed-off-by: Yurii <yurii@skymind.io> * Fixed complilation errors with test. * Added test for execTransformFloat. * Added test for execTransformSame. * Added test for execTransformBool. * Added test for execTransformStrict. * Added tests for execScalar/execScalarBool with TADs. * Added test for flatten. * - provide cpu/cuda code for space_to_Batch operaion Signed-off-by: Yurii <yurii@skymind.io> * Added test for concat. * comment unnecessary stuff in s_t_b Signed-off-by: Yurii <yurii@skymind.io> * Added test for specialConcat. * Added tests for memcpy/set routines. * Fixed pullRow cuda test. * Added pullRow test. * Added average test. * - correct typo in NDArray::applyPairwiseTransform(nd4j::pairwise::BoolOps op...) Signed-off-by: Yurii <yurii@skymind.io> * - debugging and fixing cuda tests in JavaInteropTests file Signed-off-by: Yurii <yurii@skymind.io> * - correct some tests Signed-off-by: Yurii <yurii@skymind.io> * Added test for shuffle. * Fixed ops declarations. * Restored omp and added shuffle test. * Added convertTypes test. * Added tests for execRandom. Eliminated usage of RandomBuffer with NativeOps. * Added sort tests. * Added tests for execCustomOp. * - further debuging and fixing tests terminated with crash Signed-off-by: Yurii <yurii@skymind.io> * Added tests for calculateOutputShapes. * Addded Benchmarks test. * Commented benchmark tests. * change assertion Signed-off-by: raver119 <raver119@gmail.com> * Added tests for apply_sgd op. Added cpu helper for that op. * Implement cuda helper for aplly_sgd op. Fixed tests for NativeOps. * Added test for assign broadcastable. * Added tests for assign_bp op. * Added tests for axpy op. * - assign/execScalar/execTransformAny signature change - minor test fix Signed-off-by: raver119 <raver119@gmail.com> * Fixed axpy op. * meh Signed-off-by: raver119 <raver119@gmail.com> * - fix tests for nativeOps::concat Signed-off-by: Yurii <yurii@skymind.io> * sequential transform/scalar Signed-off-by: raver119 <raver119@gmail.com> * allow nested parallelism Signed-off-by: raver119 <raver119@gmail.com> * assign_bp leak fix Signed-off-by: raver119 <raver119@gmail.com> * block setRNG fix Signed-off-by: raver119 <raver119@gmail.com> * enable parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * enable nested parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * Added cuda implementation for row_count helper. * Added implementation for tnse gains op helper. * - take into account possible situations when input arrays are empty in reduce_ cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implemented tsne/edge_forces op cuda-based helper. Parallelized cpu-based helper for edge_forces. * Added kernel for tsne/symmetrized op heleper. * Implementation of tsne/symmetrized op cuda helper. Working edition. * Eliminated waste printfs. * Added test for broadcastgradientargs op. * host-only fallback for empty reduce float Signed-off-by: raver119 <raver119@gmail.com> * - some tests fixes Signed-off-by: Yurii <yurii@skymind.io> * - correct the rest of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * - further correction of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * Added test for Cbow op. Also added cuda implementation for cbow helpers. * - improve code of stack operation for scalar case Signed-off-by: Yurii <yurii@skymind.io> * - provide cuda kernel for gatherND operation Signed-off-by: Yurii <yurii@skymind.io> * Implementation of cbow helpers with cuda kernels. * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * - further correction of cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implementatation of cbow op helper with cuda kernels. Working edition. * Skip random testing for cudablas case. * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for ELU and ELU_BP ops. * Added tests for eq_scalar, gt_scalar, gte_scalar and lte_scalar ops. * Added tests for neq_scalar. * Added test for noop. * - further work on clipbynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * - get rid of concat op call, use instead direct concat helper call Signed-off-by: Yurii <yurii@skymind.io> * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for lrelu and lrelu_bp. * Added tests for selu and selu_bp. * Fixed lrelu derivative helpers. * - some corrections in lstm Signed-off-by: Yurii <yurii@skymind.io> * operator * result shape fix Signed-off-by: raver119 <raver119@gmail.com> * - correct typo in lstmCell Signed-off-by: Yurii <yurii@skymind.io> * few tests fixed Signed-off-by: raver119 <raver119@gmail.com> * CUDA inverse broadcast bool fix Signed-off-by: raver119 <raver119@gmail.com> * disable MMAP test for CUDA Signed-off-by: raver119 <raver119@gmail.com> * BooleanOp syncToDevice Signed-off-by: raver119 <raver119@gmail.com> * meh Signed-off-by: raver119 <raver119@gmail.com> * additional data types for im2col/col2im Signed-off-by: raver119 <raver119@gmail.com> * Added test for firas_sparse op. * one more RandomBuffer test excluded Signed-off-by: raver119 <raver119@gmail.com> * Added tests for flatten op. * Added test for Floor op. * bunch of tests fixed Signed-off-by: raver119 <raver119@gmail.com> * mmulDot tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Implemented floordiv_bp op and tests. * Fixed scalar case with cuda implementation for bds. * - work on cuda kernel for clip_by_norm backprop op is completed Signed-off-by: Yurii <yurii@skymind.io> * Eliminate cbow crach. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Eliminated abortion with batched nlp test. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Fixed shared flag initializing. * disabled bunch of cpu workspaces tests Signed-off-by: raver119 <raver119@gmail.com> * scalar operators fix: missing registerSpecialUse call Signed-off-by: raver119 <raver119@gmail.com> * Fixed logdet for cuda and tests. * - correct clipBynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * Fixed crop_and_resize shape datatype. * - correct some mmul tests Signed-off-by: Yurii <yurii@skymind.io> * build fix Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI (#97) Signed-off-by: raver119 <raver119@gmail.com> * temporary stack fix Signed-off-by: raver119 <raver119@gmail.com> * downgrade jetty to latest stable version Signed-off-by: raver119 <raver119@gmail.com> * test and profiles Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton * one test case Signed-off-by: raver119 <raver119@gmail.com> * one test case Signed-off-by: raver119 <raver119@gmail.com> * compilation fix Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * Servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * logging + simple timing Signed-off-by: raver119 <raver119@gmail.com> * Content type fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Profile required Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Post test Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constants used Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Check content type Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Some tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Errors checking Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constraints and tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Dl4j servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Moving class to dl4j Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Builder extended Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * initial dl4j commit Signed-off-by: raver119 <raver119@gmail.com> * unirest version change Signed-off-by: raver119 <raver119@gmail.com> * temp fallback Signed-off-by: raver119 <raver119@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * revert unirest change Signed-off-by: raver119 <raver119@gmail.com> * some additional checks in builder Signed-off-by: raver119 <raver119@gmail.com> * few more fields Signed-off-by: raver119 <raver119@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * lombok Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * deps Signed-off-by: raver119 <raver119@gmail.com> * profiles re-introduced Signed-off-by: raver119 <raver119@gmail.com> * Added tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Model servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * get rid of old class Signed-off-by: raver119 <raver119@gmail.com> * use PI for inference Signed-off-by: raver119 <raver119@gmail.com> * superbuilder Signed-off-by: raver119 <raver119@gmail.com> * get back builder Signed-off-by: raver119 <raver119@gmail.com> * Servlet builder Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * PI setup Signed-off-by: raver119 <raver119@gmail.com> * get rid of superbuilder Signed-off-by: raver119 <raver119@gmail.com> * SameDiffServlet inheritance constructor Signed-off-by: raver119 <raver119@gmail.com> * dl4jservlet attached to samediffservlet Signed-off-by: raver119 <raver119@gmail.com> * builder types fix Signed-off-by: raver119 <raver119@gmail.com> * dummy model Signed-off-by: raver119 <raver119@gmail.com> * single out Signed-off-by: raver119 <raver119@gmail.com> * loss Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * missed builder type Signed-off-by: raver119 <raver119@gmail.com> * working serving example Signed-off-by: raver119 <raver119@gmail.com> * sd model fix Signed-off-by: raver119 <raver119@gmail.com> * fix unirest version Signed-off-by: raver119 <raver119@gmail.com> * More tests Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tests fixes Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Build fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Ser/deser added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * one more unirest fix Signed-off-by: raver119 <raver119@gmail.com> * Custom serializers Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests disabled Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * update Signed-off-by: raver119 <raver119@gmail.com> * some default fields values Signed-off-by: raver119 <raver119@gmail.com> * some comments/javadoc Signed-off-by: raver119 <raver119@gmail.com> * - move serde impls to client module - get rid of INDArray serde for now Signed-off-by: raver119 <raver119@gmail.com> * jackson-based serde for float[], double[] and String Signed-off-by: raver119 <raver119@gmail.com> * more of basic ser/de + tests Signed-off-by: raver119 <raver119@gmail.com> * minor api changes Signed-off-by: raver119 <raver119@gmail.com> * change imports/signatures Signed-off-by: raver119 <raver119@gmail.com> * Optional parralel inference Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Insert pause between tests as workaround for unavailable port issue Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * few unused imports removed Signed-off-by: raver119 <raver119@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * - InputAdapter + OutputAdapter = InferenceAdapter - JsonModelServer now allows separate configuration of InputAdapter and OutputAdapter Signed-off-by: raver119 <raver119@gmail.com> * unused import Signed-off-by: raver119 <raver119@gmail.com> * input adapter.. Signed-off-by: raver119 <raver119@gmail.com> * minor signature change Signed-off-by: raver119 <raver119@gmail.com> * few more signatures updated Signed-off-by: raver119 <raver119@gmail.com> * input/output adapter Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * javadocs added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * minor polishing Signed-off-by: raver119 <raver119@gmail.com> * more of javadoc Signed-off-by: raver119 <raver119@gmail.com> * signature change Signed-off-by: raver119 <raver119@gmail.com>
2019-08-14 12:11:09 +03:00
/*******************************************************************************
* Copyright (c) 2015-2018 Skymind, Inc.
*
* This program and the accompanying materials are made available under the
* terms of the Apache License, Version 2.0 which is available at
* https://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* SPDX-License-Identifier: Apache-2.0
******************************************************************************/
package org.deeplearning4j.remote;
import lombok.NonNull;
import lombok.val;
import org.deeplearning4j.nn.api.Model;
import org.deeplearning4j.nn.api.ModelAdapter;
import org.deeplearning4j.nn.graph.ComputationGraph;
import org.deeplearning4j.nn.multilayer.MultiLayerNetwork;
import org.deeplearning4j.parallelism.ParallelInference;
import org.deeplearning4j.parallelism.inference.InferenceMode;
import org.deeplearning4j.parallelism.inference.LoadBalanceMode;
import org.nd4j.adapters.InferenceAdapter;
import org.nd4j.adapters.InputAdapter;
import org.nd4j.adapters.OutputAdapter;
import org.nd4j.autodiff.samediff.SameDiff;
import org.nd4j.base.Preconditions;
import org.nd4j.linalg.api.ndarray.INDArray;
import org.nd4j.linalg.dataset.MultiDataSet;
import org.nd4j.linalg.factory.Nd4j;
import org.nd4j.remote.SameDiffJsonModelServer;
import org.nd4j.remote.clients.serde.BinaryDeserializer;
import org.nd4j.remote.clients.serde.BinarySerializer;
[WIP] Remote inference (#96) * fix pad javadoc and @see links. (#72) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * [WIP] More fixes (#73) * special tests for ConstantTadHelper/ConstantShapeHelper Signed-off-by: raver119 <raver119@gmail.com> * release methods for data buffers Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary TadPack C++/Java side (#74) Signed-off-by: raver119 <raver119@gmail.com> * Zoo model TF import test updates (#75) * argLine fix, update compression_gru comment * updated comment for xception * undid but commented argLine change * updated xlnet comment * copyright headers * - new NDArray methods like()/ulike() (#77) - fix for depthwise_conv2d_bp + special test Signed-off-by: raver119 <raver119@gmail.com> * upsampling2d fix CUDA Signed-off-by: raver119 <raver119@gmail.com> * DL4J trace logging (#79) * MLN/CG trace logging for debugging Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tiny tweak Signed-off-by: AlexDBlack <blacka101@gmail.com> * strided_slice_bp shape fn leak fix Signed-off-by: raver119 <raver119@gmail.com> * SameDiff fixes and naming (#78) * remove SDVariable inplace methods * import methods * npe fix in OpVal * removed SameDiff inplace ops from tests * Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything * quick fixes * javadoc * SDVariable eval with placeholders * use regex match * better matching * fix javadoc. (#76) * fix javadoc. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace most @see with @link s. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * 4 additional tests Signed-off-by: raver119 <raver119@gmail.com> * Various DL4J/ND4J fixes (#81) * #7954 Force refresh of UI when switching tabs on overview page Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8017 Concurrent modification exception (synchronize) fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8033 Don't initialize updater in middle of writing memory crash dump Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8208 Fix shape checks for ND4J int[] creator methods Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6385 #7992 Keras import naming fixes + cleanup Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8016 Upsampling3D - add NDHWC format support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Refactor NativeOps.h to export C functions * Actually export functions from NativeOps.h * Adapt the Java wrappers in ND4J generated with JavaCPP * Create C wrappers for some of the C++ classes currently used by ND4J * remove duplicate code in createBufferDetached. (#83) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Keras model import - updater lr fix (#84) * Keras model import - updater lr fix Signed-off-by: eraly <susan.eraly@gmail.com> * Keras model import - updater lr fix, cleanup Signed-off-by: eraly <susan.eraly@gmail.com> * Fix functions of OpaqueVariablesSet * SameDiff Convolution Config validation, better output methods (#82) * Conv Config validation & tests Signed-off-by: Ryan Nett <rnett@skymind.io> * stackOutputs utility method Signed-off-by: Ryan Nett <rnett@skymind.io> * use constructor for validation, support negative kernel sizes (infered from weights) Signed-off-by: Ryan Nett <rnett@skymind.io> * better output methods Signed-off-by: Ryan Nett <rnett@skymind.io> * move output to be with fit and evaluate Signed-off-by: Ryan Nett <rnett@skymind.io> * fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * more fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * refactor duplicate code from pad methods. (#86) * refactor duplicate code from pad methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace switch with if. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes and improvements (#87) * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6488 ElementWiseVertex broadcast support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Constructors and broadcast supported it Transforms.max/min Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8054 ElementWiseVertex now supports broadcast inputs Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8057 Nd4j.create overload dtype fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7551 ND4J Shape validation fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * [WIP] Numpy boolean import (#91) * numpy bool type Signed-off-by: raver119 <raver119@gmail.com> * numpy bool java side Signed-off-by: raver119 <raver119@gmail.com> * remove create method with unused parameter. (#89) * remove create method with unused parameter. * removed more unused methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * removing more unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * last removal of unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * remove createSparse methods. (#92) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes (#90) * Deprecate Old*Op instances Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8063 #8054 Broadcast exceptions + cleanup inplace ops Signed-off-by: AlexDBlack <blacka101@gmail.com> * Small fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * Remove bad test condition Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7993 Fix shape function issue in crop_and_resize op Signed-off-by: AlexDBlack <blacka101@gmail.com> * DL4J SameDiff lambda layer fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8029 Fix for pnorm backprop math Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8038 Fix Op profiler NaN/Inf triggering + add tests (#93) Signed-off-by: AlexDBlack <blacka101@gmail.com> * createUninitializedDetached refactoring. (#94) * wip * update interface, add null implementations. * Breaking one test in a weird way. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * createUninitializedDetached refactored. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * cuda build fix for issues introduced by recent refactoring Signed-off-by: raver119 <raver119@gmail.com> * initial commit Signed-off-by: raver119 <raver119@gmail.com> * deps tweaks Signed-off-by: raver119 <raver119@gmail.com> * initial prototype Signed-off-by: raver119 <raver119@gmail.com> * modules reorganized Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * [WIP] More of CUDA (#95) * initial commit Signed-off-by: raver119 <raver119@gmail.com> * Implementation of hashcode cuda helper. Working edition. * Fixed parallel test input arangements. * Fixed tests for hashcode op. * Fixed shape calculation for image:crop_and_resize op and test. * NativeOps tests. Initial test suite. * Added tests for indexReduce methods. * Added test on execBroadcast with NDArray as dimensions. * Added test on execBroadcastBool with NDArray as dimensions. * Added tests on execPairwiseTransform and execPairwiseTransofrmBool. * Added tests for execReduce with scalar results. * Added reduce tests for non-empty dims array. * Added tests for reduce3. * Added tests for execScalar. * Added tests for execSummaryStats. * - provide cpu/cuda code for batch_to_space - testing it Signed-off-by: Yurii <yurii@skymind.io> * - remove old test for batch_to_space (had wrong format and numbers were not checked) Signed-off-by: Yurii <yurii@skymind.io> * Fixed complilation errors with test. * Added test for execTransformFloat. * Added test for execTransformSame. * Added test for execTransformBool. * Added test for execTransformStrict. * Added tests for execScalar/execScalarBool with TADs. * Added test for flatten. * - provide cpu/cuda code for space_to_Batch operaion Signed-off-by: Yurii <yurii@skymind.io> * Added test for concat. * comment unnecessary stuff in s_t_b Signed-off-by: Yurii <yurii@skymind.io> * Added test for specialConcat. * Added tests for memcpy/set routines. * Fixed pullRow cuda test. * Added pullRow test. * Added average test. * - correct typo in NDArray::applyPairwiseTransform(nd4j::pairwise::BoolOps op...) Signed-off-by: Yurii <yurii@skymind.io> * - debugging and fixing cuda tests in JavaInteropTests file Signed-off-by: Yurii <yurii@skymind.io> * - correct some tests Signed-off-by: Yurii <yurii@skymind.io> * Added test for shuffle. * Fixed ops declarations. * Restored omp and added shuffle test. * Added convertTypes test. * Added tests for execRandom. Eliminated usage of RandomBuffer with NativeOps. * Added sort tests. * Added tests for execCustomOp. * - further debuging and fixing tests terminated with crash Signed-off-by: Yurii <yurii@skymind.io> * Added tests for calculateOutputShapes. * Addded Benchmarks test. * Commented benchmark tests. * change assertion Signed-off-by: raver119 <raver119@gmail.com> * Added tests for apply_sgd op. Added cpu helper for that op. * Implement cuda helper for aplly_sgd op. Fixed tests for NativeOps. * Added test for assign broadcastable. * Added tests for assign_bp op. * Added tests for axpy op. * - assign/execScalar/execTransformAny signature change - minor test fix Signed-off-by: raver119 <raver119@gmail.com> * Fixed axpy op. * meh Signed-off-by: raver119 <raver119@gmail.com> * - fix tests for nativeOps::concat Signed-off-by: Yurii <yurii@skymind.io> * sequential transform/scalar Signed-off-by: raver119 <raver119@gmail.com> * allow nested parallelism Signed-off-by: raver119 <raver119@gmail.com> * assign_bp leak fix Signed-off-by: raver119 <raver119@gmail.com> * block setRNG fix Signed-off-by: raver119 <raver119@gmail.com> * enable parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * enable nested parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * Added cuda implementation for row_count helper. * Added implementation for tnse gains op helper. * - take into account possible situations when input arrays are empty in reduce_ cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implemented tsne/edge_forces op cuda-based helper. Parallelized cpu-based helper for edge_forces. * Added kernel for tsne/symmetrized op heleper. * Implementation of tsne/symmetrized op cuda helper. Working edition. * Eliminated waste printfs. * Added test for broadcastgradientargs op. * host-only fallback for empty reduce float Signed-off-by: raver119 <raver119@gmail.com> * - some tests fixes Signed-off-by: Yurii <yurii@skymind.io> * - correct the rest of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * - further correction of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * Added test for Cbow op. Also added cuda implementation for cbow helpers. * - improve code of stack operation for scalar case Signed-off-by: Yurii <yurii@skymind.io> * - provide cuda kernel for gatherND operation Signed-off-by: Yurii <yurii@skymind.io> * Implementation of cbow helpers with cuda kernels. * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * - further correction of cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implementatation of cbow op helper with cuda kernels. Working edition. * Skip random testing for cudablas case. * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for ELU and ELU_BP ops. * Added tests for eq_scalar, gt_scalar, gte_scalar and lte_scalar ops. * Added tests for neq_scalar. * Added test for noop. * - further work on clipbynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * - get rid of concat op call, use instead direct concat helper call Signed-off-by: Yurii <yurii@skymind.io> * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for lrelu and lrelu_bp. * Added tests for selu and selu_bp. * Fixed lrelu derivative helpers. * - some corrections in lstm Signed-off-by: Yurii <yurii@skymind.io> * operator * result shape fix Signed-off-by: raver119 <raver119@gmail.com> * - correct typo in lstmCell Signed-off-by: Yurii <yurii@skymind.io> * few tests fixed Signed-off-by: raver119 <raver119@gmail.com> * CUDA inverse broadcast bool fix Signed-off-by: raver119 <raver119@gmail.com> * disable MMAP test for CUDA Signed-off-by: raver119 <raver119@gmail.com> * BooleanOp syncToDevice Signed-off-by: raver119 <raver119@gmail.com> * meh Signed-off-by: raver119 <raver119@gmail.com> * additional data types for im2col/col2im Signed-off-by: raver119 <raver119@gmail.com> * Added test for firas_sparse op. * one more RandomBuffer test excluded Signed-off-by: raver119 <raver119@gmail.com> * Added tests for flatten op. * Added test for Floor op. * bunch of tests fixed Signed-off-by: raver119 <raver119@gmail.com> * mmulDot tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Implemented floordiv_bp op and tests. * Fixed scalar case with cuda implementation for bds. * - work on cuda kernel for clip_by_norm backprop op is completed Signed-off-by: Yurii <yurii@skymind.io> * Eliminate cbow crach. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Eliminated abortion with batched nlp test. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Fixed shared flag initializing. * disabled bunch of cpu workspaces tests Signed-off-by: raver119 <raver119@gmail.com> * scalar operators fix: missing registerSpecialUse call Signed-off-by: raver119 <raver119@gmail.com> * Fixed logdet for cuda and tests. * - correct clipBynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * Fixed crop_and_resize shape datatype. * - correct some mmul tests Signed-off-by: Yurii <yurii@skymind.io> * build fix Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI (#97) Signed-off-by: raver119 <raver119@gmail.com> * temporary stack fix Signed-off-by: raver119 <raver119@gmail.com> * downgrade jetty to latest stable version Signed-off-by: raver119 <raver119@gmail.com> * test and profiles Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton * one test case Signed-off-by: raver119 <raver119@gmail.com> * one test case Signed-off-by: raver119 <raver119@gmail.com> * compilation fix Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * Servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * logging + simple timing Signed-off-by: raver119 <raver119@gmail.com> * Content type fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Profile required Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Post test Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constants used Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Check content type Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Some tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Errors checking Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constraints and tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Dl4j servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Moving class to dl4j Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Builder extended Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * initial dl4j commit Signed-off-by: raver119 <raver119@gmail.com> * unirest version change Signed-off-by: raver119 <raver119@gmail.com> * temp fallback Signed-off-by: raver119 <raver119@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * revert unirest change Signed-off-by: raver119 <raver119@gmail.com> * some additional checks in builder Signed-off-by: raver119 <raver119@gmail.com> * few more fields Signed-off-by: raver119 <raver119@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * lombok Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * deps Signed-off-by: raver119 <raver119@gmail.com> * profiles re-introduced Signed-off-by: raver119 <raver119@gmail.com> * Added tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Model servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * get rid of old class Signed-off-by: raver119 <raver119@gmail.com> * use PI for inference Signed-off-by: raver119 <raver119@gmail.com> * superbuilder Signed-off-by: raver119 <raver119@gmail.com> * get back builder Signed-off-by: raver119 <raver119@gmail.com> * Servlet builder Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * PI setup Signed-off-by: raver119 <raver119@gmail.com> * get rid of superbuilder Signed-off-by: raver119 <raver119@gmail.com> * SameDiffServlet inheritance constructor Signed-off-by: raver119 <raver119@gmail.com> * dl4jservlet attached to samediffservlet Signed-off-by: raver119 <raver119@gmail.com> * builder types fix Signed-off-by: raver119 <raver119@gmail.com> * dummy model Signed-off-by: raver119 <raver119@gmail.com> * single out Signed-off-by: raver119 <raver119@gmail.com> * loss Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * missed builder type Signed-off-by: raver119 <raver119@gmail.com> * working serving example Signed-off-by: raver119 <raver119@gmail.com> * sd model fix Signed-off-by: raver119 <raver119@gmail.com> * fix unirest version Signed-off-by: raver119 <raver119@gmail.com> * More tests Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tests fixes Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Build fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Ser/deser added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * one more unirest fix Signed-off-by: raver119 <raver119@gmail.com> * Custom serializers Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests disabled Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * update Signed-off-by: raver119 <raver119@gmail.com> * some default fields values Signed-off-by: raver119 <raver119@gmail.com> * some comments/javadoc Signed-off-by: raver119 <raver119@gmail.com> * - move serde impls to client module - get rid of INDArray serde for now Signed-off-by: raver119 <raver119@gmail.com> * jackson-based serde for float[], double[] and String Signed-off-by: raver119 <raver119@gmail.com> * more of basic ser/de + tests Signed-off-by: raver119 <raver119@gmail.com> * minor api changes Signed-off-by: raver119 <raver119@gmail.com> * change imports/signatures Signed-off-by: raver119 <raver119@gmail.com> * Optional parralel inference Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Insert pause between tests as workaround for unavailable port issue Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * few unused imports removed Signed-off-by: raver119 <raver119@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * - InputAdapter + OutputAdapter = InferenceAdapter - JsonModelServer now allows separate configuration of InputAdapter and OutputAdapter Signed-off-by: raver119 <raver119@gmail.com> * unused import Signed-off-by: raver119 <raver119@gmail.com> * input adapter.. Signed-off-by: raver119 <raver119@gmail.com> * minor signature change Signed-off-by: raver119 <raver119@gmail.com> * few more signatures updated Signed-off-by: raver119 <raver119@gmail.com> * input/output adapter Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * javadocs added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * minor polishing Signed-off-by: raver119 <raver119@gmail.com> * more of javadoc Signed-off-by: raver119 <raver119@gmail.com> * signature change Signed-off-by: raver119 <raver119@gmail.com>
2019-08-14 12:11:09 +03:00
import org.nd4j.remote.clients.serde.JsonDeserializer;
import org.nd4j.remote.clients.serde.JsonSerializer;
import java.util.List;
/**
* This class provides JSON-based model serving ability for Deeplearning4j/SameDiff models
*
* Server url will be http://0.0.0.0:{port}>/v1/serving
* Server only accepts POST requests
*
* @param <I> type of the input class, i.e. String
* @param <O> type of the output class, i.e. Sentiment
*
* @author raver119@gmail.com
* @author astoyakin
*/
public class JsonModelServer<I, O> extends SameDiffJsonModelServer<I, O> {
// all serving goes through ParallelInference
protected ParallelInference parallelInference;
protected ModelAdapter<O> modelAdapter;
// actual models
protected ComputationGraph cgModel;
protected MultiLayerNetwork mlnModel;
// service stuff
protected InferenceMode inferenceMode;
protected int numWorkers;
protected boolean enabledParallel = true;
protected JsonModelServer(@NonNull SameDiff sdModel, InferenceAdapter<I, O> inferenceAdapter,
JsonSerializer<O> serializer, JsonDeserializer<I> deserializer,
BinarySerializer<O> binarySerializer, BinaryDeserializer<I> binaryDeserializer,
int port, String[] orderedInputNodes, String[] orderedOutputNodes) {
super(sdModel, inferenceAdapter, serializer, deserializer, binarySerializer, binaryDeserializer, port, orderedInputNodes, orderedOutputNodes);
[WIP] Remote inference (#96) * fix pad javadoc and @see links. (#72) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * [WIP] More fixes (#73) * special tests for ConstantTadHelper/ConstantShapeHelper Signed-off-by: raver119 <raver119@gmail.com> * release methods for data buffers Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary TadPack C++/Java side (#74) Signed-off-by: raver119 <raver119@gmail.com> * Zoo model TF import test updates (#75) * argLine fix, update compression_gru comment * updated comment for xception * undid but commented argLine change * updated xlnet comment * copyright headers * - new NDArray methods like()/ulike() (#77) - fix for depthwise_conv2d_bp + special test Signed-off-by: raver119 <raver119@gmail.com> * upsampling2d fix CUDA Signed-off-by: raver119 <raver119@gmail.com> * DL4J trace logging (#79) * MLN/CG trace logging for debugging Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tiny tweak Signed-off-by: AlexDBlack <blacka101@gmail.com> * strided_slice_bp shape fn leak fix Signed-off-by: raver119 <raver119@gmail.com> * SameDiff fixes and naming (#78) * remove SDVariable inplace methods * import methods * npe fix in OpVal * removed SameDiff inplace ops from tests * Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything * quick fixes * javadoc * SDVariable eval with placeholders * use regex match * better matching * fix javadoc. (#76) * fix javadoc. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace most @see with @link s. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * 4 additional tests Signed-off-by: raver119 <raver119@gmail.com> * Various DL4J/ND4J fixes (#81) * #7954 Force refresh of UI when switching tabs on overview page Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8017 Concurrent modification exception (synchronize) fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8033 Don't initialize updater in middle of writing memory crash dump Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8208 Fix shape checks for ND4J int[] creator methods Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6385 #7992 Keras import naming fixes + cleanup Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8016 Upsampling3D - add NDHWC format support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Refactor NativeOps.h to export C functions * Actually export functions from NativeOps.h * Adapt the Java wrappers in ND4J generated with JavaCPP * Create C wrappers for some of the C++ classes currently used by ND4J * remove duplicate code in createBufferDetached. (#83) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Keras model import - updater lr fix (#84) * Keras model import - updater lr fix Signed-off-by: eraly <susan.eraly@gmail.com> * Keras model import - updater lr fix, cleanup Signed-off-by: eraly <susan.eraly@gmail.com> * Fix functions of OpaqueVariablesSet * SameDiff Convolution Config validation, better output methods (#82) * Conv Config validation & tests Signed-off-by: Ryan Nett <rnett@skymind.io> * stackOutputs utility method Signed-off-by: Ryan Nett <rnett@skymind.io> * use constructor for validation, support negative kernel sizes (infered from weights) Signed-off-by: Ryan Nett <rnett@skymind.io> * better output methods Signed-off-by: Ryan Nett <rnett@skymind.io> * move output to be with fit and evaluate Signed-off-by: Ryan Nett <rnett@skymind.io> * fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * more fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * refactor duplicate code from pad methods. (#86) * refactor duplicate code from pad methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace switch with if. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes and improvements (#87) * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6488 ElementWiseVertex broadcast support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Constructors and broadcast supported it Transforms.max/min Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8054 ElementWiseVertex now supports broadcast inputs Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8057 Nd4j.create overload dtype fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7551 ND4J Shape validation fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * [WIP] Numpy boolean import (#91) * numpy bool type Signed-off-by: raver119 <raver119@gmail.com> * numpy bool java side Signed-off-by: raver119 <raver119@gmail.com> * remove create method with unused parameter. (#89) * remove create method with unused parameter. * removed more unused methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * removing more unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * last removal of unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * remove createSparse methods. (#92) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes (#90) * Deprecate Old*Op instances Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8063 #8054 Broadcast exceptions + cleanup inplace ops Signed-off-by: AlexDBlack <blacka101@gmail.com> * Small fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * Remove bad test condition Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7993 Fix shape function issue in crop_and_resize op Signed-off-by: AlexDBlack <blacka101@gmail.com> * DL4J SameDiff lambda layer fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8029 Fix for pnorm backprop math Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8038 Fix Op profiler NaN/Inf triggering + add tests (#93) Signed-off-by: AlexDBlack <blacka101@gmail.com> * createUninitializedDetached refactoring. (#94) * wip * update interface, add null implementations. * Breaking one test in a weird way. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * createUninitializedDetached refactored. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * cuda build fix for issues introduced by recent refactoring Signed-off-by: raver119 <raver119@gmail.com> * initial commit Signed-off-by: raver119 <raver119@gmail.com> * deps tweaks Signed-off-by: raver119 <raver119@gmail.com> * initial prototype Signed-off-by: raver119 <raver119@gmail.com> * modules reorganized Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * [WIP] More of CUDA (#95) * initial commit Signed-off-by: raver119 <raver119@gmail.com> * Implementation of hashcode cuda helper. Working edition. * Fixed parallel test input arangements. * Fixed tests for hashcode op. * Fixed shape calculation for image:crop_and_resize op and test. * NativeOps tests. Initial test suite. * Added tests for indexReduce methods. * Added test on execBroadcast with NDArray as dimensions. * Added test on execBroadcastBool with NDArray as dimensions. * Added tests on execPairwiseTransform and execPairwiseTransofrmBool. * Added tests for execReduce with scalar results. * Added reduce tests for non-empty dims array. * Added tests for reduce3. * Added tests for execScalar. * Added tests for execSummaryStats. * - provide cpu/cuda code for batch_to_space - testing it Signed-off-by: Yurii <yurii@skymind.io> * - remove old test for batch_to_space (had wrong format and numbers were not checked) Signed-off-by: Yurii <yurii@skymind.io> * Fixed complilation errors with test. * Added test for execTransformFloat. * Added test for execTransformSame. * Added test for execTransformBool. * Added test for execTransformStrict. * Added tests for execScalar/execScalarBool with TADs. * Added test for flatten. * - provide cpu/cuda code for space_to_Batch operaion Signed-off-by: Yurii <yurii@skymind.io> * Added test for concat. * comment unnecessary stuff in s_t_b Signed-off-by: Yurii <yurii@skymind.io> * Added test for specialConcat. * Added tests for memcpy/set routines. * Fixed pullRow cuda test. * Added pullRow test. * Added average test. * - correct typo in NDArray::applyPairwiseTransform(nd4j::pairwise::BoolOps op...) Signed-off-by: Yurii <yurii@skymind.io> * - debugging and fixing cuda tests in JavaInteropTests file Signed-off-by: Yurii <yurii@skymind.io> * - correct some tests Signed-off-by: Yurii <yurii@skymind.io> * Added test for shuffle. * Fixed ops declarations. * Restored omp and added shuffle test. * Added convertTypes test. * Added tests for execRandom. Eliminated usage of RandomBuffer with NativeOps. * Added sort tests. * Added tests for execCustomOp. * - further debuging and fixing tests terminated with crash Signed-off-by: Yurii <yurii@skymind.io> * Added tests for calculateOutputShapes. * Addded Benchmarks test. * Commented benchmark tests. * change assertion Signed-off-by: raver119 <raver119@gmail.com> * Added tests for apply_sgd op. Added cpu helper for that op. * Implement cuda helper for aplly_sgd op. Fixed tests for NativeOps. * Added test for assign broadcastable. * Added tests for assign_bp op. * Added tests for axpy op. * - assign/execScalar/execTransformAny signature change - minor test fix Signed-off-by: raver119 <raver119@gmail.com> * Fixed axpy op. * meh Signed-off-by: raver119 <raver119@gmail.com> * - fix tests for nativeOps::concat Signed-off-by: Yurii <yurii@skymind.io> * sequential transform/scalar Signed-off-by: raver119 <raver119@gmail.com> * allow nested parallelism Signed-off-by: raver119 <raver119@gmail.com> * assign_bp leak fix Signed-off-by: raver119 <raver119@gmail.com> * block setRNG fix Signed-off-by: raver119 <raver119@gmail.com> * enable parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * enable nested parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * Added cuda implementation for row_count helper. * Added implementation for tnse gains op helper. * - take into account possible situations when input arrays are empty in reduce_ cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implemented tsne/edge_forces op cuda-based helper. Parallelized cpu-based helper for edge_forces. * Added kernel for tsne/symmetrized op heleper. * Implementation of tsne/symmetrized op cuda helper. Working edition. * Eliminated waste printfs. * Added test for broadcastgradientargs op. * host-only fallback for empty reduce float Signed-off-by: raver119 <raver119@gmail.com> * - some tests fixes Signed-off-by: Yurii <yurii@skymind.io> * - correct the rest of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * - further correction of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * Added test for Cbow op. Also added cuda implementation for cbow helpers. * - improve code of stack operation for scalar case Signed-off-by: Yurii <yurii@skymind.io> * - provide cuda kernel for gatherND operation Signed-off-by: Yurii <yurii@skymind.io> * Implementation of cbow helpers with cuda kernels. * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * - further correction of cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implementatation of cbow op helper with cuda kernels. Working edition. * Skip random testing for cudablas case. * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for ELU and ELU_BP ops. * Added tests for eq_scalar, gt_scalar, gte_scalar and lte_scalar ops. * Added tests for neq_scalar. * Added test for noop. * - further work on clipbynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * - get rid of concat op call, use instead direct concat helper call Signed-off-by: Yurii <yurii@skymind.io> * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for lrelu and lrelu_bp. * Added tests for selu and selu_bp. * Fixed lrelu derivative helpers. * - some corrections in lstm Signed-off-by: Yurii <yurii@skymind.io> * operator * result shape fix Signed-off-by: raver119 <raver119@gmail.com> * - correct typo in lstmCell Signed-off-by: Yurii <yurii@skymind.io> * few tests fixed Signed-off-by: raver119 <raver119@gmail.com> * CUDA inverse broadcast bool fix Signed-off-by: raver119 <raver119@gmail.com> * disable MMAP test for CUDA Signed-off-by: raver119 <raver119@gmail.com> * BooleanOp syncToDevice Signed-off-by: raver119 <raver119@gmail.com> * meh Signed-off-by: raver119 <raver119@gmail.com> * additional data types for im2col/col2im Signed-off-by: raver119 <raver119@gmail.com> * Added test for firas_sparse op. * one more RandomBuffer test excluded Signed-off-by: raver119 <raver119@gmail.com> * Added tests for flatten op. * Added test for Floor op. * bunch of tests fixed Signed-off-by: raver119 <raver119@gmail.com> * mmulDot tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Implemented floordiv_bp op and tests. * Fixed scalar case with cuda implementation for bds. * - work on cuda kernel for clip_by_norm backprop op is completed Signed-off-by: Yurii <yurii@skymind.io> * Eliminate cbow crach. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Eliminated abortion with batched nlp test. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Fixed shared flag initializing. * disabled bunch of cpu workspaces tests Signed-off-by: raver119 <raver119@gmail.com> * scalar operators fix: missing registerSpecialUse call Signed-off-by: raver119 <raver119@gmail.com> * Fixed logdet for cuda and tests. * - correct clipBynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * Fixed crop_and_resize shape datatype. * - correct some mmul tests Signed-off-by: Yurii <yurii@skymind.io> * build fix Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI (#97) Signed-off-by: raver119 <raver119@gmail.com> * temporary stack fix Signed-off-by: raver119 <raver119@gmail.com> * downgrade jetty to latest stable version Signed-off-by: raver119 <raver119@gmail.com> * test and profiles Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton * one test case Signed-off-by: raver119 <raver119@gmail.com> * one test case Signed-off-by: raver119 <raver119@gmail.com> * compilation fix Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * Servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * logging + simple timing Signed-off-by: raver119 <raver119@gmail.com> * Content type fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Profile required Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Post test Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constants used Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Check content type Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Some tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Errors checking Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constraints and tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Dl4j servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Moving class to dl4j Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Builder extended Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * initial dl4j commit Signed-off-by: raver119 <raver119@gmail.com> * unirest version change Signed-off-by: raver119 <raver119@gmail.com> * temp fallback Signed-off-by: raver119 <raver119@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * revert unirest change Signed-off-by: raver119 <raver119@gmail.com> * some additional checks in builder Signed-off-by: raver119 <raver119@gmail.com> * few more fields Signed-off-by: raver119 <raver119@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * lombok Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * deps Signed-off-by: raver119 <raver119@gmail.com> * profiles re-introduced Signed-off-by: raver119 <raver119@gmail.com> * Added tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Model servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * get rid of old class Signed-off-by: raver119 <raver119@gmail.com> * use PI for inference Signed-off-by: raver119 <raver119@gmail.com> * superbuilder Signed-off-by: raver119 <raver119@gmail.com> * get back builder Signed-off-by: raver119 <raver119@gmail.com> * Servlet builder Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * PI setup Signed-off-by: raver119 <raver119@gmail.com> * get rid of superbuilder Signed-off-by: raver119 <raver119@gmail.com> * SameDiffServlet inheritance constructor Signed-off-by: raver119 <raver119@gmail.com> * dl4jservlet attached to samediffservlet Signed-off-by: raver119 <raver119@gmail.com> * builder types fix Signed-off-by: raver119 <raver119@gmail.com> * dummy model Signed-off-by: raver119 <raver119@gmail.com> * single out Signed-off-by: raver119 <raver119@gmail.com> * loss Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * missed builder type Signed-off-by: raver119 <raver119@gmail.com> * working serving example Signed-off-by: raver119 <raver119@gmail.com> * sd model fix Signed-off-by: raver119 <raver119@gmail.com> * fix unirest version Signed-off-by: raver119 <raver119@gmail.com> * More tests Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tests fixes Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Build fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Ser/deser added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * one more unirest fix Signed-off-by: raver119 <raver119@gmail.com> * Custom serializers Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests disabled Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * update Signed-off-by: raver119 <raver119@gmail.com> * some default fields values Signed-off-by: raver119 <raver119@gmail.com> * some comments/javadoc Signed-off-by: raver119 <raver119@gmail.com> * - move serde impls to client module - get rid of INDArray serde for now Signed-off-by: raver119 <raver119@gmail.com> * jackson-based serde for float[], double[] and String Signed-off-by: raver119 <raver119@gmail.com> * more of basic ser/de + tests Signed-off-by: raver119 <raver119@gmail.com> * minor api changes Signed-off-by: raver119 <raver119@gmail.com> * change imports/signatures Signed-off-by: raver119 <raver119@gmail.com> * Optional parralel inference Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Insert pause between tests as workaround for unavailable port issue Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * few unused imports removed Signed-off-by: raver119 <raver119@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * - InputAdapter + OutputAdapter = InferenceAdapter - JsonModelServer now allows separate configuration of InputAdapter and OutputAdapter Signed-off-by: raver119 <raver119@gmail.com> * unused import Signed-off-by: raver119 <raver119@gmail.com> * input adapter.. Signed-off-by: raver119 <raver119@gmail.com> * minor signature change Signed-off-by: raver119 <raver119@gmail.com> * few more signatures updated Signed-off-by: raver119 <raver119@gmail.com> * input/output adapter Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * javadocs added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * minor polishing Signed-off-by: raver119 <raver119@gmail.com> * more of javadoc Signed-off-by: raver119 <raver119@gmail.com> * signature change Signed-off-by: raver119 <raver119@gmail.com>
2019-08-14 12:11:09 +03:00
}
protected JsonModelServer(@NonNull ComputationGraph cgModel, InferenceAdapter<I, O> inferenceAdapter,
JsonSerializer<O> serializer, JsonDeserializer<I> deserializer,
BinarySerializer<O> binarySerializer, BinaryDeserializer<I> binaryDeserializer,
int port, @NonNull InferenceMode inferenceMode, int numWorkers) {
super(inferenceAdapter, serializer, deserializer, binarySerializer, binaryDeserializer, port);
[WIP] Remote inference (#96) * fix pad javadoc and @see links. (#72) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * [WIP] More fixes (#73) * special tests for ConstantTadHelper/ConstantShapeHelper Signed-off-by: raver119 <raver119@gmail.com> * release methods for data buffers Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary TadPack C++/Java side (#74) Signed-off-by: raver119 <raver119@gmail.com> * Zoo model TF import test updates (#75) * argLine fix, update compression_gru comment * updated comment for xception * undid but commented argLine change * updated xlnet comment * copyright headers * - new NDArray methods like()/ulike() (#77) - fix for depthwise_conv2d_bp + special test Signed-off-by: raver119 <raver119@gmail.com> * upsampling2d fix CUDA Signed-off-by: raver119 <raver119@gmail.com> * DL4J trace logging (#79) * MLN/CG trace logging for debugging Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tiny tweak Signed-off-by: AlexDBlack <blacka101@gmail.com> * strided_slice_bp shape fn leak fix Signed-off-by: raver119 <raver119@gmail.com> * SameDiff fixes and naming (#78) * remove SDVariable inplace methods * import methods * npe fix in OpVal * removed SameDiff inplace ops from tests * Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything * quick fixes * javadoc * SDVariable eval with placeholders * use regex match * better matching * fix javadoc. (#76) * fix javadoc. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace most @see with @link s. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * 4 additional tests Signed-off-by: raver119 <raver119@gmail.com> * Various DL4J/ND4J fixes (#81) * #7954 Force refresh of UI when switching tabs on overview page Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8017 Concurrent modification exception (synchronize) fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8033 Don't initialize updater in middle of writing memory crash dump Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8208 Fix shape checks for ND4J int[] creator methods Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6385 #7992 Keras import naming fixes + cleanup Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8016 Upsampling3D - add NDHWC format support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Refactor NativeOps.h to export C functions * Actually export functions from NativeOps.h * Adapt the Java wrappers in ND4J generated with JavaCPP * Create C wrappers for some of the C++ classes currently used by ND4J * remove duplicate code in createBufferDetached. (#83) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Keras model import - updater lr fix (#84) * Keras model import - updater lr fix Signed-off-by: eraly <susan.eraly@gmail.com> * Keras model import - updater lr fix, cleanup Signed-off-by: eraly <susan.eraly@gmail.com> * Fix functions of OpaqueVariablesSet * SameDiff Convolution Config validation, better output methods (#82) * Conv Config validation & tests Signed-off-by: Ryan Nett <rnett@skymind.io> * stackOutputs utility method Signed-off-by: Ryan Nett <rnett@skymind.io> * use constructor for validation, support negative kernel sizes (infered from weights) Signed-off-by: Ryan Nett <rnett@skymind.io> * better output methods Signed-off-by: Ryan Nett <rnett@skymind.io> * move output to be with fit and evaluate Signed-off-by: Ryan Nett <rnett@skymind.io> * fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * more fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * refactor duplicate code from pad methods. (#86) * refactor duplicate code from pad methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace switch with if. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes and improvements (#87) * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6488 ElementWiseVertex broadcast support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Constructors and broadcast supported it Transforms.max/min Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8054 ElementWiseVertex now supports broadcast inputs Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8057 Nd4j.create overload dtype fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7551 ND4J Shape validation fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * [WIP] Numpy boolean import (#91) * numpy bool type Signed-off-by: raver119 <raver119@gmail.com> * numpy bool java side Signed-off-by: raver119 <raver119@gmail.com> * remove create method with unused parameter. (#89) * remove create method with unused parameter. * removed more unused methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * removing more unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * last removal of unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * remove createSparse methods. (#92) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes (#90) * Deprecate Old*Op instances Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8063 #8054 Broadcast exceptions + cleanup inplace ops Signed-off-by: AlexDBlack <blacka101@gmail.com> * Small fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * Remove bad test condition Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7993 Fix shape function issue in crop_and_resize op Signed-off-by: AlexDBlack <blacka101@gmail.com> * DL4J SameDiff lambda layer fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8029 Fix for pnorm backprop math Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8038 Fix Op profiler NaN/Inf triggering + add tests (#93) Signed-off-by: AlexDBlack <blacka101@gmail.com> * createUninitializedDetached refactoring. (#94) * wip * update interface, add null implementations. * Breaking one test in a weird way. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * createUninitializedDetached refactored. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * cuda build fix for issues introduced by recent refactoring Signed-off-by: raver119 <raver119@gmail.com> * initial commit Signed-off-by: raver119 <raver119@gmail.com> * deps tweaks Signed-off-by: raver119 <raver119@gmail.com> * initial prototype Signed-off-by: raver119 <raver119@gmail.com> * modules reorganized Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * [WIP] More of CUDA (#95) * initial commit Signed-off-by: raver119 <raver119@gmail.com> * Implementation of hashcode cuda helper. Working edition. * Fixed parallel test input arangements. * Fixed tests for hashcode op. * Fixed shape calculation for image:crop_and_resize op and test. * NativeOps tests. Initial test suite. * Added tests for indexReduce methods. * Added test on execBroadcast with NDArray as dimensions. * Added test on execBroadcastBool with NDArray as dimensions. * Added tests on execPairwiseTransform and execPairwiseTransofrmBool. * Added tests for execReduce with scalar results. * Added reduce tests for non-empty dims array. * Added tests for reduce3. * Added tests for execScalar. * Added tests for execSummaryStats. * - provide cpu/cuda code for batch_to_space - testing it Signed-off-by: Yurii <yurii@skymind.io> * - remove old test for batch_to_space (had wrong format and numbers were not checked) Signed-off-by: Yurii <yurii@skymind.io> * Fixed complilation errors with test. * Added test for execTransformFloat. * Added test for execTransformSame. * Added test for execTransformBool. * Added test for execTransformStrict. * Added tests for execScalar/execScalarBool with TADs. * Added test for flatten. * - provide cpu/cuda code for space_to_Batch operaion Signed-off-by: Yurii <yurii@skymind.io> * Added test for concat. * comment unnecessary stuff in s_t_b Signed-off-by: Yurii <yurii@skymind.io> * Added test for specialConcat. * Added tests for memcpy/set routines. * Fixed pullRow cuda test. * Added pullRow test. * Added average test. * - correct typo in NDArray::applyPairwiseTransform(nd4j::pairwise::BoolOps op...) Signed-off-by: Yurii <yurii@skymind.io> * - debugging and fixing cuda tests in JavaInteropTests file Signed-off-by: Yurii <yurii@skymind.io> * - correct some tests Signed-off-by: Yurii <yurii@skymind.io> * Added test for shuffle. * Fixed ops declarations. * Restored omp and added shuffle test. * Added convertTypes test. * Added tests for execRandom. Eliminated usage of RandomBuffer with NativeOps. * Added sort tests. * Added tests for execCustomOp. * - further debuging and fixing tests terminated with crash Signed-off-by: Yurii <yurii@skymind.io> * Added tests for calculateOutputShapes. * Addded Benchmarks test. * Commented benchmark tests. * change assertion Signed-off-by: raver119 <raver119@gmail.com> * Added tests for apply_sgd op. Added cpu helper for that op. * Implement cuda helper for aplly_sgd op. Fixed tests for NativeOps. * Added test for assign broadcastable. * Added tests for assign_bp op. * Added tests for axpy op. * - assign/execScalar/execTransformAny signature change - minor test fix Signed-off-by: raver119 <raver119@gmail.com> * Fixed axpy op. * meh Signed-off-by: raver119 <raver119@gmail.com> * - fix tests for nativeOps::concat Signed-off-by: Yurii <yurii@skymind.io> * sequential transform/scalar Signed-off-by: raver119 <raver119@gmail.com> * allow nested parallelism Signed-off-by: raver119 <raver119@gmail.com> * assign_bp leak fix Signed-off-by: raver119 <raver119@gmail.com> * block setRNG fix Signed-off-by: raver119 <raver119@gmail.com> * enable parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * enable nested parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * Added cuda implementation for row_count helper. * Added implementation for tnse gains op helper. * - take into account possible situations when input arrays are empty in reduce_ cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implemented tsne/edge_forces op cuda-based helper. Parallelized cpu-based helper for edge_forces. * Added kernel for tsne/symmetrized op heleper. * Implementation of tsne/symmetrized op cuda helper. Working edition. * Eliminated waste printfs. * Added test for broadcastgradientargs op. * host-only fallback for empty reduce float Signed-off-by: raver119 <raver119@gmail.com> * - some tests fixes Signed-off-by: Yurii <yurii@skymind.io> * - correct the rest of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * - further correction of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * Added test for Cbow op. Also added cuda implementation for cbow helpers. * - improve code of stack operation for scalar case Signed-off-by: Yurii <yurii@skymind.io> * - provide cuda kernel for gatherND operation Signed-off-by: Yurii <yurii@skymind.io> * Implementation of cbow helpers with cuda kernels. * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * - further correction of cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implementatation of cbow op helper with cuda kernels. Working edition. * Skip random testing for cudablas case. * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for ELU and ELU_BP ops. * Added tests for eq_scalar, gt_scalar, gte_scalar and lte_scalar ops. * Added tests for neq_scalar. * Added test for noop. * - further work on clipbynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * - get rid of concat op call, use instead direct concat helper call Signed-off-by: Yurii <yurii@skymind.io> * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for lrelu and lrelu_bp. * Added tests for selu and selu_bp. * Fixed lrelu derivative helpers. * - some corrections in lstm Signed-off-by: Yurii <yurii@skymind.io> * operator * result shape fix Signed-off-by: raver119 <raver119@gmail.com> * - correct typo in lstmCell Signed-off-by: Yurii <yurii@skymind.io> * few tests fixed Signed-off-by: raver119 <raver119@gmail.com> * CUDA inverse broadcast bool fix Signed-off-by: raver119 <raver119@gmail.com> * disable MMAP test for CUDA Signed-off-by: raver119 <raver119@gmail.com> * BooleanOp syncToDevice Signed-off-by: raver119 <raver119@gmail.com> * meh Signed-off-by: raver119 <raver119@gmail.com> * additional data types for im2col/col2im Signed-off-by: raver119 <raver119@gmail.com> * Added test for firas_sparse op. * one more RandomBuffer test excluded Signed-off-by: raver119 <raver119@gmail.com> * Added tests for flatten op. * Added test for Floor op. * bunch of tests fixed Signed-off-by: raver119 <raver119@gmail.com> * mmulDot tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Implemented floordiv_bp op and tests. * Fixed scalar case with cuda implementation for bds. * - work on cuda kernel for clip_by_norm backprop op is completed Signed-off-by: Yurii <yurii@skymind.io> * Eliminate cbow crach. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Eliminated abortion with batched nlp test. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Fixed shared flag initializing. * disabled bunch of cpu workspaces tests Signed-off-by: raver119 <raver119@gmail.com> * scalar operators fix: missing registerSpecialUse call Signed-off-by: raver119 <raver119@gmail.com> * Fixed logdet for cuda and tests. * - correct clipBynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * Fixed crop_and_resize shape datatype. * - correct some mmul tests Signed-off-by: Yurii <yurii@skymind.io> * build fix Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI (#97) Signed-off-by: raver119 <raver119@gmail.com> * temporary stack fix Signed-off-by: raver119 <raver119@gmail.com> * downgrade jetty to latest stable version Signed-off-by: raver119 <raver119@gmail.com> * test and profiles Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton * one test case Signed-off-by: raver119 <raver119@gmail.com> * one test case Signed-off-by: raver119 <raver119@gmail.com> * compilation fix Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * Servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * logging + simple timing Signed-off-by: raver119 <raver119@gmail.com> * Content type fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Profile required Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Post test Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constants used Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Check content type Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Some tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Errors checking Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constraints and tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Dl4j servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Moving class to dl4j Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Builder extended Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * initial dl4j commit Signed-off-by: raver119 <raver119@gmail.com> * unirest version change Signed-off-by: raver119 <raver119@gmail.com> * temp fallback Signed-off-by: raver119 <raver119@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * revert unirest change Signed-off-by: raver119 <raver119@gmail.com> * some additional checks in builder Signed-off-by: raver119 <raver119@gmail.com> * few more fields Signed-off-by: raver119 <raver119@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * lombok Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * deps Signed-off-by: raver119 <raver119@gmail.com> * profiles re-introduced Signed-off-by: raver119 <raver119@gmail.com> * Added tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Model servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * get rid of old class Signed-off-by: raver119 <raver119@gmail.com> * use PI for inference Signed-off-by: raver119 <raver119@gmail.com> * superbuilder Signed-off-by: raver119 <raver119@gmail.com> * get back builder Signed-off-by: raver119 <raver119@gmail.com> * Servlet builder Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * PI setup Signed-off-by: raver119 <raver119@gmail.com> * get rid of superbuilder Signed-off-by: raver119 <raver119@gmail.com> * SameDiffServlet inheritance constructor Signed-off-by: raver119 <raver119@gmail.com> * dl4jservlet attached to samediffservlet Signed-off-by: raver119 <raver119@gmail.com> * builder types fix Signed-off-by: raver119 <raver119@gmail.com> * dummy model Signed-off-by: raver119 <raver119@gmail.com> * single out Signed-off-by: raver119 <raver119@gmail.com> * loss Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * missed builder type Signed-off-by: raver119 <raver119@gmail.com> * working serving example Signed-off-by: raver119 <raver119@gmail.com> * sd model fix Signed-off-by: raver119 <raver119@gmail.com> * fix unirest version Signed-off-by: raver119 <raver119@gmail.com> * More tests Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tests fixes Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Build fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Ser/deser added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * one more unirest fix Signed-off-by: raver119 <raver119@gmail.com> * Custom serializers Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests disabled Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * update Signed-off-by: raver119 <raver119@gmail.com> * some default fields values Signed-off-by: raver119 <raver119@gmail.com> * some comments/javadoc Signed-off-by: raver119 <raver119@gmail.com> * - move serde impls to client module - get rid of INDArray serde for now Signed-off-by: raver119 <raver119@gmail.com> * jackson-based serde for float[], double[] and String Signed-off-by: raver119 <raver119@gmail.com> * more of basic ser/de + tests Signed-off-by: raver119 <raver119@gmail.com> * minor api changes Signed-off-by: raver119 <raver119@gmail.com> * change imports/signatures Signed-off-by: raver119 <raver119@gmail.com> * Optional parralel inference Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Insert pause between tests as workaround for unavailable port issue Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * few unused imports removed Signed-off-by: raver119 <raver119@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * - InputAdapter + OutputAdapter = InferenceAdapter - JsonModelServer now allows separate configuration of InputAdapter and OutputAdapter Signed-off-by: raver119 <raver119@gmail.com> * unused import Signed-off-by: raver119 <raver119@gmail.com> * input adapter.. Signed-off-by: raver119 <raver119@gmail.com> * minor signature change Signed-off-by: raver119 <raver119@gmail.com> * few more signatures updated Signed-off-by: raver119 <raver119@gmail.com> * input/output adapter Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * javadocs added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * minor polishing Signed-off-by: raver119 <raver119@gmail.com> * more of javadoc Signed-off-by: raver119 <raver119@gmail.com> * signature change Signed-off-by: raver119 <raver119@gmail.com>
2019-08-14 12:11:09 +03:00
this.cgModel = cgModel;
this.inferenceMode = inferenceMode;
this.numWorkers = numWorkers;
}
protected JsonModelServer(@NonNull MultiLayerNetwork mlnModel, InferenceAdapter<I, O> inferenceAdapter,
JsonSerializer<O> serializer, JsonDeserializer<I> deserializer,
BinarySerializer<O> binarySerializer, BinaryDeserializer<I> binaryDeserializer,
int port, @NonNull InferenceMode inferenceMode, int numWorkers) {
super(inferenceAdapter, serializer, deserializer, binarySerializer, binaryDeserializer, port);
[WIP] Remote inference (#96) * fix pad javadoc and @see links. (#72) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * [WIP] More fixes (#73) * special tests for ConstantTadHelper/ConstantShapeHelper Signed-off-by: raver119 <raver119@gmail.com> * release methods for data buffers Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary TadPack C++/Java side (#74) Signed-off-by: raver119 <raver119@gmail.com> * Zoo model TF import test updates (#75) * argLine fix, update compression_gru comment * updated comment for xception * undid but commented argLine change * updated xlnet comment * copyright headers * - new NDArray methods like()/ulike() (#77) - fix for depthwise_conv2d_bp + special test Signed-off-by: raver119 <raver119@gmail.com> * upsampling2d fix CUDA Signed-off-by: raver119 <raver119@gmail.com> * DL4J trace logging (#79) * MLN/CG trace logging for debugging Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tiny tweak Signed-off-by: AlexDBlack <blacka101@gmail.com> * strided_slice_bp shape fn leak fix Signed-off-by: raver119 <raver119@gmail.com> * SameDiff fixes and naming (#78) * remove SDVariable inplace methods * import methods * npe fix in OpVal * removed SameDiff inplace ops from tests * Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything * quick fixes * javadoc * SDVariable eval with placeholders * use regex match * better matching * fix javadoc. (#76) * fix javadoc. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace most @see with @link s. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * 4 additional tests Signed-off-by: raver119 <raver119@gmail.com> * Various DL4J/ND4J fixes (#81) * #7954 Force refresh of UI when switching tabs on overview page Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8017 Concurrent modification exception (synchronize) fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8033 Don't initialize updater in middle of writing memory crash dump Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8208 Fix shape checks for ND4J int[] creator methods Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6385 #7992 Keras import naming fixes + cleanup Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8016 Upsampling3D - add NDHWC format support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Refactor NativeOps.h to export C functions * Actually export functions from NativeOps.h * Adapt the Java wrappers in ND4J generated with JavaCPP * Create C wrappers for some of the C++ classes currently used by ND4J * remove duplicate code in createBufferDetached. (#83) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Keras model import - updater lr fix (#84) * Keras model import - updater lr fix Signed-off-by: eraly <susan.eraly@gmail.com> * Keras model import - updater lr fix, cleanup Signed-off-by: eraly <susan.eraly@gmail.com> * Fix functions of OpaqueVariablesSet * SameDiff Convolution Config validation, better output methods (#82) * Conv Config validation & tests Signed-off-by: Ryan Nett <rnett@skymind.io> * stackOutputs utility method Signed-off-by: Ryan Nett <rnett@skymind.io> * use constructor for validation, support negative kernel sizes (infered from weights) Signed-off-by: Ryan Nett <rnett@skymind.io> * better output methods Signed-off-by: Ryan Nett <rnett@skymind.io> * move output to be with fit and evaluate Signed-off-by: Ryan Nett <rnett@skymind.io> * fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * more fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * refactor duplicate code from pad methods. (#86) * refactor duplicate code from pad methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace switch with if. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes and improvements (#87) * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6488 ElementWiseVertex broadcast support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Constructors and broadcast supported it Transforms.max/min Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8054 ElementWiseVertex now supports broadcast inputs Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8057 Nd4j.create overload dtype fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7551 ND4J Shape validation fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * [WIP] Numpy boolean import (#91) * numpy bool type Signed-off-by: raver119 <raver119@gmail.com> * numpy bool java side Signed-off-by: raver119 <raver119@gmail.com> * remove create method with unused parameter. (#89) * remove create method with unused parameter. * removed more unused methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * removing more unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * last removal of unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * remove createSparse methods. (#92) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes (#90) * Deprecate Old*Op instances Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8063 #8054 Broadcast exceptions + cleanup inplace ops Signed-off-by: AlexDBlack <blacka101@gmail.com> * Small fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * Remove bad test condition Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7993 Fix shape function issue in crop_and_resize op Signed-off-by: AlexDBlack <blacka101@gmail.com> * DL4J SameDiff lambda layer fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8029 Fix for pnorm backprop math Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8038 Fix Op profiler NaN/Inf triggering + add tests (#93) Signed-off-by: AlexDBlack <blacka101@gmail.com> * createUninitializedDetached refactoring. (#94) * wip * update interface, add null implementations. * Breaking one test in a weird way. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * createUninitializedDetached refactored. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * cuda build fix for issues introduced by recent refactoring Signed-off-by: raver119 <raver119@gmail.com> * initial commit Signed-off-by: raver119 <raver119@gmail.com> * deps tweaks Signed-off-by: raver119 <raver119@gmail.com> * initial prototype Signed-off-by: raver119 <raver119@gmail.com> * modules reorganized Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * [WIP] More of CUDA (#95) * initial commit Signed-off-by: raver119 <raver119@gmail.com> * Implementation of hashcode cuda helper. Working edition. * Fixed parallel test input arangements. * Fixed tests for hashcode op. * Fixed shape calculation for image:crop_and_resize op and test. * NativeOps tests. Initial test suite. * Added tests for indexReduce methods. * Added test on execBroadcast with NDArray as dimensions. * Added test on execBroadcastBool with NDArray as dimensions. * Added tests on execPairwiseTransform and execPairwiseTransofrmBool. * Added tests for execReduce with scalar results. * Added reduce tests for non-empty dims array. * Added tests for reduce3. * Added tests for execScalar. * Added tests for execSummaryStats. * - provide cpu/cuda code for batch_to_space - testing it Signed-off-by: Yurii <yurii@skymind.io> * - remove old test for batch_to_space (had wrong format and numbers were not checked) Signed-off-by: Yurii <yurii@skymind.io> * Fixed complilation errors with test. * Added test for execTransformFloat. * Added test for execTransformSame. * Added test for execTransformBool. * Added test for execTransformStrict. * Added tests for execScalar/execScalarBool with TADs. * Added test for flatten. * - provide cpu/cuda code for space_to_Batch operaion Signed-off-by: Yurii <yurii@skymind.io> * Added test for concat. * comment unnecessary stuff in s_t_b Signed-off-by: Yurii <yurii@skymind.io> * Added test for specialConcat. * Added tests for memcpy/set routines. * Fixed pullRow cuda test. * Added pullRow test. * Added average test. * - correct typo in NDArray::applyPairwiseTransform(nd4j::pairwise::BoolOps op...) Signed-off-by: Yurii <yurii@skymind.io> * - debugging and fixing cuda tests in JavaInteropTests file Signed-off-by: Yurii <yurii@skymind.io> * - correct some tests Signed-off-by: Yurii <yurii@skymind.io> * Added test for shuffle. * Fixed ops declarations. * Restored omp and added shuffle test. * Added convertTypes test. * Added tests for execRandom. Eliminated usage of RandomBuffer with NativeOps. * Added sort tests. * Added tests for execCustomOp. * - further debuging and fixing tests terminated with crash Signed-off-by: Yurii <yurii@skymind.io> * Added tests for calculateOutputShapes. * Addded Benchmarks test. * Commented benchmark tests. * change assertion Signed-off-by: raver119 <raver119@gmail.com> * Added tests for apply_sgd op. Added cpu helper for that op. * Implement cuda helper for aplly_sgd op. Fixed tests for NativeOps. * Added test for assign broadcastable. * Added tests for assign_bp op. * Added tests for axpy op. * - assign/execScalar/execTransformAny signature change - minor test fix Signed-off-by: raver119 <raver119@gmail.com> * Fixed axpy op. * meh Signed-off-by: raver119 <raver119@gmail.com> * - fix tests for nativeOps::concat Signed-off-by: Yurii <yurii@skymind.io> * sequential transform/scalar Signed-off-by: raver119 <raver119@gmail.com> * allow nested parallelism Signed-off-by: raver119 <raver119@gmail.com> * assign_bp leak fix Signed-off-by: raver119 <raver119@gmail.com> * block setRNG fix Signed-off-by: raver119 <raver119@gmail.com> * enable parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * enable nested parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * Added cuda implementation for row_count helper. * Added implementation for tnse gains op helper. * - take into account possible situations when input arrays are empty in reduce_ cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implemented tsne/edge_forces op cuda-based helper. Parallelized cpu-based helper for edge_forces. * Added kernel for tsne/symmetrized op heleper. * Implementation of tsne/symmetrized op cuda helper. Working edition. * Eliminated waste printfs. * Added test for broadcastgradientargs op. * host-only fallback for empty reduce float Signed-off-by: raver119 <raver119@gmail.com> * - some tests fixes Signed-off-by: Yurii <yurii@skymind.io> * - correct the rest of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * - further correction of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * Added test for Cbow op. Also added cuda implementation for cbow helpers. * - improve code of stack operation for scalar case Signed-off-by: Yurii <yurii@skymind.io> * - provide cuda kernel for gatherND operation Signed-off-by: Yurii <yurii@skymind.io> * Implementation of cbow helpers with cuda kernels. * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * - further correction of cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implementatation of cbow op helper with cuda kernels. Working edition. * Skip random testing for cudablas case. * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for ELU and ELU_BP ops. * Added tests for eq_scalar, gt_scalar, gte_scalar and lte_scalar ops. * Added tests for neq_scalar. * Added test for noop. * - further work on clipbynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * - get rid of concat op call, use instead direct concat helper call Signed-off-by: Yurii <yurii@skymind.io> * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for lrelu and lrelu_bp. * Added tests for selu and selu_bp. * Fixed lrelu derivative helpers. * - some corrections in lstm Signed-off-by: Yurii <yurii@skymind.io> * operator * result shape fix Signed-off-by: raver119 <raver119@gmail.com> * - correct typo in lstmCell Signed-off-by: Yurii <yurii@skymind.io> * few tests fixed Signed-off-by: raver119 <raver119@gmail.com> * CUDA inverse broadcast bool fix Signed-off-by: raver119 <raver119@gmail.com> * disable MMAP test for CUDA Signed-off-by: raver119 <raver119@gmail.com> * BooleanOp syncToDevice Signed-off-by: raver119 <raver119@gmail.com> * meh Signed-off-by: raver119 <raver119@gmail.com> * additional data types for im2col/col2im Signed-off-by: raver119 <raver119@gmail.com> * Added test for firas_sparse op. * one more RandomBuffer test excluded Signed-off-by: raver119 <raver119@gmail.com> * Added tests for flatten op. * Added test for Floor op. * bunch of tests fixed Signed-off-by: raver119 <raver119@gmail.com> * mmulDot tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Implemented floordiv_bp op and tests. * Fixed scalar case with cuda implementation for bds. * - work on cuda kernel for clip_by_norm backprop op is completed Signed-off-by: Yurii <yurii@skymind.io> * Eliminate cbow crach. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Eliminated abortion with batched nlp test. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Fixed shared flag initializing. * disabled bunch of cpu workspaces tests Signed-off-by: raver119 <raver119@gmail.com> * scalar operators fix: missing registerSpecialUse call Signed-off-by: raver119 <raver119@gmail.com> * Fixed logdet for cuda and tests. * - correct clipBynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * Fixed crop_and_resize shape datatype. * - correct some mmul tests Signed-off-by: Yurii <yurii@skymind.io> * build fix Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI (#97) Signed-off-by: raver119 <raver119@gmail.com> * temporary stack fix Signed-off-by: raver119 <raver119@gmail.com> * downgrade jetty to latest stable version Signed-off-by: raver119 <raver119@gmail.com> * test and profiles Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton * one test case Signed-off-by: raver119 <raver119@gmail.com> * one test case Signed-off-by: raver119 <raver119@gmail.com> * compilation fix Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * Servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * logging + simple timing Signed-off-by: raver119 <raver119@gmail.com> * Content type fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Profile required Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Post test Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constants used Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Check content type Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Some tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Errors checking Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constraints and tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Dl4j servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Moving class to dl4j Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Builder extended Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * initial dl4j commit Signed-off-by: raver119 <raver119@gmail.com> * unirest version change Signed-off-by: raver119 <raver119@gmail.com> * temp fallback Signed-off-by: raver119 <raver119@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * revert unirest change Signed-off-by: raver119 <raver119@gmail.com> * some additional checks in builder Signed-off-by: raver119 <raver119@gmail.com> * few more fields Signed-off-by: raver119 <raver119@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * lombok Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * deps Signed-off-by: raver119 <raver119@gmail.com> * profiles re-introduced Signed-off-by: raver119 <raver119@gmail.com> * Added tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Model servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * get rid of old class Signed-off-by: raver119 <raver119@gmail.com> * use PI for inference Signed-off-by: raver119 <raver119@gmail.com> * superbuilder Signed-off-by: raver119 <raver119@gmail.com> * get back builder Signed-off-by: raver119 <raver119@gmail.com> * Servlet builder Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * PI setup Signed-off-by: raver119 <raver119@gmail.com> * get rid of superbuilder Signed-off-by: raver119 <raver119@gmail.com> * SameDiffServlet inheritance constructor Signed-off-by: raver119 <raver119@gmail.com> * dl4jservlet attached to samediffservlet Signed-off-by: raver119 <raver119@gmail.com> * builder types fix Signed-off-by: raver119 <raver119@gmail.com> * dummy model Signed-off-by: raver119 <raver119@gmail.com> * single out Signed-off-by: raver119 <raver119@gmail.com> * loss Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * missed builder type Signed-off-by: raver119 <raver119@gmail.com> * working serving example Signed-off-by: raver119 <raver119@gmail.com> * sd model fix Signed-off-by: raver119 <raver119@gmail.com> * fix unirest version Signed-off-by: raver119 <raver119@gmail.com> * More tests Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tests fixes Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Build fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Ser/deser added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * one more unirest fix Signed-off-by: raver119 <raver119@gmail.com> * Custom serializers Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests disabled Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * update Signed-off-by: raver119 <raver119@gmail.com> * some default fields values Signed-off-by: raver119 <raver119@gmail.com> * some comments/javadoc Signed-off-by: raver119 <raver119@gmail.com> * - move serde impls to client module - get rid of INDArray serde for now Signed-off-by: raver119 <raver119@gmail.com> * jackson-based serde for float[], double[] and String Signed-off-by: raver119 <raver119@gmail.com> * more of basic ser/de + tests Signed-off-by: raver119 <raver119@gmail.com> * minor api changes Signed-off-by: raver119 <raver119@gmail.com> * change imports/signatures Signed-off-by: raver119 <raver119@gmail.com> * Optional parralel inference Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Insert pause between tests as workaround for unavailable port issue Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * few unused imports removed Signed-off-by: raver119 <raver119@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * - InputAdapter + OutputAdapter = InferenceAdapter - JsonModelServer now allows separate configuration of InputAdapter and OutputAdapter Signed-off-by: raver119 <raver119@gmail.com> * unused import Signed-off-by: raver119 <raver119@gmail.com> * input adapter.. Signed-off-by: raver119 <raver119@gmail.com> * minor signature change Signed-off-by: raver119 <raver119@gmail.com> * few more signatures updated Signed-off-by: raver119 <raver119@gmail.com> * input/output adapter Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * javadocs added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * minor polishing Signed-off-by: raver119 <raver119@gmail.com> * more of javadoc Signed-off-by: raver119 <raver119@gmail.com> * signature change Signed-off-by: raver119 <raver119@gmail.com>
2019-08-14 12:11:09 +03:00
this.mlnModel = mlnModel;
this.inferenceMode = inferenceMode;
this.numWorkers = numWorkers;
}
protected JsonModelServer(@NonNull ParallelInference pi, InferenceAdapter<I, O> inferenceAdapter,
JsonSerializer<O> serializer, JsonDeserializer<I> deserializer,
BinarySerializer<O> binarySerializer, BinaryDeserializer<I> binaryDeserializer,
int port) {
super(inferenceAdapter, serializer, deserializer, binarySerializer, binaryDeserializer, port);
[WIP] Remote inference (#96) * fix pad javadoc and @see links. (#72) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * [WIP] More fixes (#73) * special tests for ConstantTadHelper/ConstantShapeHelper Signed-off-by: raver119 <raver119@gmail.com> * release methods for data buffers Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary TadPack C++/Java side (#74) Signed-off-by: raver119 <raver119@gmail.com> * Zoo model TF import test updates (#75) * argLine fix, update compression_gru comment * updated comment for xception * undid but commented argLine change * updated xlnet comment * copyright headers * - new NDArray methods like()/ulike() (#77) - fix for depthwise_conv2d_bp + special test Signed-off-by: raver119 <raver119@gmail.com> * upsampling2d fix CUDA Signed-off-by: raver119 <raver119@gmail.com> * DL4J trace logging (#79) * MLN/CG trace logging for debugging Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tiny tweak Signed-off-by: AlexDBlack <blacka101@gmail.com> * strided_slice_bp shape fn leak fix Signed-off-by: raver119 <raver119@gmail.com> * SameDiff fixes and naming (#78) * remove SDVariable inplace methods * import methods * npe fix in OpVal * removed SameDiff inplace ops from tests * Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything * quick fixes * javadoc * SDVariable eval with placeholders * use regex match * better matching * fix javadoc. (#76) * fix javadoc. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace most @see with @link s. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * 4 additional tests Signed-off-by: raver119 <raver119@gmail.com> * Various DL4J/ND4J fixes (#81) * #7954 Force refresh of UI when switching tabs on overview page Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8017 Concurrent modification exception (synchronize) fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8033 Don't initialize updater in middle of writing memory crash dump Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8208 Fix shape checks for ND4J int[] creator methods Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6385 #7992 Keras import naming fixes + cleanup Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8016 Upsampling3D - add NDHWC format support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Refactor NativeOps.h to export C functions * Actually export functions from NativeOps.h * Adapt the Java wrappers in ND4J generated with JavaCPP * Create C wrappers for some of the C++ classes currently used by ND4J * remove duplicate code in createBufferDetached. (#83) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Keras model import - updater lr fix (#84) * Keras model import - updater lr fix Signed-off-by: eraly <susan.eraly@gmail.com> * Keras model import - updater lr fix, cleanup Signed-off-by: eraly <susan.eraly@gmail.com> * Fix functions of OpaqueVariablesSet * SameDiff Convolution Config validation, better output methods (#82) * Conv Config validation & tests Signed-off-by: Ryan Nett <rnett@skymind.io> * stackOutputs utility method Signed-off-by: Ryan Nett <rnett@skymind.io> * use constructor for validation, support negative kernel sizes (infered from weights) Signed-off-by: Ryan Nett <rnett@skymind.io> * better output methods Signed-off-by: Ryan Nett <rnett@skymind.io> * move output to be with fit and evaluate Signed-off-by: Ryan Nett <rnett@skymind.io> * fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * more fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * refactor duplicate code from pad methods. (#86) * refactor duplicate code from pad methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace switch with if. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes and improvements (#87) * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6488 ElementWiseVertex broadcast support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Constructors and broadcast supported it Transforms.max/min Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8054 ElementWiseVertex now supports broadcast inputs Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8057 Nd4j.create overload dtype fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7551 ND4J Shape validation fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * [WIP] Numpy boolean import (#91) * numpy bool type Signed-off-by: raver119 <raver119@gmail.com> * numpy bool java side Signed-off-by: raver119 <raver119@gmail.com> * remove create method with unused parameter. (#89) * remove create method with unused parameter. * removed more unused methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * removing more unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * last removal of unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * remove createSparse methods. (#92) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes (#90) * Deprecate Old*Op instances Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8063 #8054 Broadcast exceptions + cleanup inplace ops Signed-off-by: AlexDBlack <blacka101@gmail.com> * Small fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * Remove bad test condition Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7993 Fix shape function issue in crop_and_resize op Signed-off-by: AlexDBlack <blacka101@gmail.com> * DL4J SameDiff lambda layer fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8029 Fix for pnorm backprop math Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8038 Fix Op profiler NaN/Inf triggering + add tests (#93) Signed-off-by: AlexDBlack <blacka101@gmail.com> * createUninitializedDetached refactoring. (#94) * wip * update interface, add null implementations. * Breaking one test in a weird way. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * createUninitializedDetached refactored. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * cuda build fix for issues introduced by recent refactoring Signed-off-by: raver119 <raver119@gmail.com> * initial commit Signed-off-by: raver119 <raver119@gmail.com> * deps tweaks Signed-off-by: raver119 <raver119@gmail.com> * initial prototype Signed-off-by: raver119 <raver119@gmail.com> * modules reorganized Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * [WIP] More of CUDA (#95) * initial commit Signed-off-by: raver119 <raver119@gmail.com> * Implementation of hashcode cuda helper. Working edition. * Fixed parallel test input arangements. * Fixed tests for hashcode op. * Fixed shape calculation for image:crop_and_resize op and test. * NativeOps tests. Initial test suite. * Added tests for indexReduce methods. * Added test on execBroadcast with NDArray as dimensions. * Added test on execBroadcastBool with NDArray as dimensions. * Added tests on execPairwiseTransform and execPairwiseTransofrmBool. * Added tests for execReduce with scalar results. * Added reduce tests for non-empty dims array. * Added tests for reduce3. * Added tests for execScalar. * Added tests for execSummaryStats. * - provide cpu/cuda code for batch_to_space - testing it Signed-off-by: Yurii <yurii@skymind.io> * - remove old test for batch_to_space (had wrong format and numbers were not checked) Signed-off-by: Yurii <yurii@skymind.io> * Fixed complilation errors with test. * Added test for execTransformFloat. * Added test for execTransformSame. * Added test for execTransformBool. * Added test for execTransformStrict. * Added tests for execScalar/execScalarBool with TADs. * Added test for flatten. * - provide cpu/cuda code for space_to_Batch operaion Signed-off-by: Yurii <yurii@skymind.io> * Added test for concat. * comment unnecessary stuff in s_t_b Signed-off-by: Yurii <yurii@skymind.io> * Added test for specialConcat. * Added tests for memcpy/set routines. * Fixed pullRow cuda test. * Added pullRow test. * Added average test. * - correct typo in NDArray::applyPairwiseTransform(nd4j::pairwise::BoolOps op...) Signed-off-by: Yurii <yurii@skymind.io> * - debugging and fixing cuda tests in JavaInteropTests file Signed-off-by: Yurii <yurii@skymind.io> * - correct some tests Signed-off-by: Yurii <yurii@skymind.io> * Added test for shuffle. * Fixed ops declarations. * Restored omp and added shuffle test. * Added convertTypes test. * Added tests for execRandom. Eliminated usage of RandomBuffer with NativeOps. * Added sort tests. * Added tests for execCustomOp. * - further debuging and fixing tests terminated with crash Signed-off-by: Yurii <yurii@skymind.io> * Added tests for calculateOutputShapes. * Addded Benchmarks test. * Commented benchmark tests. * change assertion Signed-off-by: raver119 <raver119@gmail.com> * Added tests for apply_sgd op. Added cpu helper for that op. * Implement cuda helper for aplly_sgd op. Fixed tests for NativeOps. * Added test for assign broadcastable. * Added tests for assign_bp op. * Added tests for axpy op. * - assign/execScalar/execTransformAny signature change - minor test fix Signed-off-by: raver119 <raver119@gmail.com> * Fixed axpy op. * meh Signed-off-by: raver119 <raver119@gmail.com> * - fix tests for nativeOps::concat Signed-off-by: Yurii <yurii@skymind.io> * sequential transform/scalar Signed-off-by: raver119 <raver119@gmail.com> * allow nested parallelism Signed-off-by: raver119 <raver119@gmail.com> * assign_bp leak fix Signed-off-by: raver119 <raver119@gmail.com> * block setRNG fix Signed-off-by: raver119 <raver119@gmail.com> * enable parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * enable nested parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * Added cuda implementation for row_count helper. * Added implementation for tnse gains op helper. * - take into account possible situations when input arrays are empty in reduce_ cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implemented tsne/edge_forces op cuda-based helper. Parallelized cpu-based helper for edge_forces. * Added kernel for tsne/symmetrized op heleper. * Implementation of tsne/symmetrized op cuda helper. Working edition. * Eliminated waste printfs. * Added test for broadcastgradientargs op. * host-only fallback for empty reduce float Signed-off-by: raver119 <raver119@gmail.com> * - some tests fixes Signed-off-by: Yurii <yurii@skymind.io> * - correct the rest of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * - further correction of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * Added test for Cbow op. Also added cuda implementation for cbow helpers. * - improve code of stack operation for scalar case Signed-off-by: Yurii <yurii@skymind.io> * - provide cuda kernel for gatherND operation Signed-off-by: Yurii <yurii@skymind.io> * Implementation of cbow helpers with cuda kernels. * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * - further correction of cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implementatation of cbow op helper with cuda kernels. Working edition. * Skip random testing for cudablas case. * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for ELU and ELU_BP ops. * Added tests for eq_scalar, gt_scalar, gte_scalar and lte_scalar ops. * Added tests for neq_scalar. * Added test for noop. * - further work on clipbynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * - get rid of concat op call, use instead direct concat helper call Signed-off-by: Yurii <yurii@skymind.io> * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for lrelu and lrelu_bp. * Added tests for selu and selu_bp. * Fixed lrelu derivative helpers. * - some corrections in lstm Signed-off-by: Yurii <yurii@skymind.io> * operator * result shape fix Signed-off-by: raver119 <raver119@gmail.com> * - correct typo in lstmCell Signed-off-by: Yurii <yurii@skymind.io> * few tests fixed Signed-off-by: raver119 <raver119@gmail.com> * CUDA inverse broadcast bool fix Signed-off-by: raver119 <raver119@gmail.com> * disable MMAP test for CUDA Signed-off-by: raver119 <raver119@gmail.com> * BooleanOp syncToDevice Signed-off-by: raver119 <raver119@gmail.com> * meh Signed-off-by: raver119 <raver119@gmail.com> * additional data types for im2col/col2im Signed-off-by: raver119 <raver119@gmail.com> * Added test for firas_sparse op. * one more RandomBuffer test excluded Signed-off-by: raver119 <raver119@gmail.com> * Added tests for flatten op. * Added test for Floor op. * bunch of tests fixed Signed-off-by: raver119 <raver119@gmail.com> * mmulDot tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Implemented floordiv_bp op and tests. * Fixed scalar case with cuda implementation for bds. * - work on cuda kernel for clip_by_norm backprop op is completed Signed-off-by: Yurii <yurii@skymind.io> * Eliminate cbow crach. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Eliminated abortion with batched nlp test. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Fixed shared flag initializing. * disabled bunch of cpu workspaces tests Signed-off-by: raver119 <raver119@gmail.com> * scalar operators fix: missing registerSpecialUse call Signed-off-by: raver119 <raver119@gmail.com> * Fixed logdet for cuda and tests. * - correct clipBynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * Fixed crop_and_resize shape datatype. * - correct some mmul tests Signed-off-by: Yurii <yurii@skymind.io> * build fix Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI (#97) Signed-off-by: raver119 <raver119@gmail.com> * temporary stack fix Signed-off-by: raver119 <raver119@gmail.com> * downgrade jetty to latest stable version Signed-off-by: raver119 <raver119@gmail.com> * test and profiles Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton * one test case Signed-off-by: raver119 <raver119@gmail.com> * one test case Signed-off-by: raver119 <raver119@gmail.com> * compilation fix Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * Servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * logging + simple timing Signed-off-by: raver119 <raver119@gmail.com> * Content type fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Profile required Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Post test Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constants used Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Check content type Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Some tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Errors checking Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constraints and tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Dl4j servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Moving class to dl4j Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Builder extended Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * initial dl4j commit Signed-off-by: raver119 <raver119@gmail.com> * unirest version change Signed-off-by: raver119 <raver119@gmail.com> * temp fallback Signed-off-by: raver119 <raver119@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * revert unirest change Signed-off-by: raver119 <raver119@gmail.com> * some additional checks in builder Signed-off-by: raver119 <raver119@gmail.com> * few more fields Signed-off-by: raver119 <raver119@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * lombok Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * deps Signed-off-by: raver119 <raver119@gmail.com> * profiles re-introduced Signed-off-by: raver119 <raver119@gmail.com> * Added tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Model servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * get rid of old class Signed-off-by: raver119 <raver119@gmail.com> * use PI for inference Signed-off-by: raver119 <raver119@gmail.com> * superbuilder Signed-off-by: raver119 <raver119@gmail.com> * get back builder Signed-off-by: raver119 <raver119@gmail.com> * Servlet builder Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * PI setup Signed-off-by: raver119 <raver119@gmail.com> * get rid of superbuilder Signed-off-by: raver119 <raver119@gmail.com> * SameDiffServlet inheritance constructor Signed-off-by: raver119 <raver119@gmail.com> * dl4jservlet attached to samediffservlet Signed-off-by: raver119 <raver119@gmail.com> * builder types fix Signed-off-by: raver119 <raver119@gmail.com> * dummy model Signed-off-by: raver119 <raver119@gmail.com> * single out Signed-off-by: raver119 <raver119@gmail.com> * loss Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * missed builder type Signed-off-by: raver119 <raver119@gmail.com> * working serving example Signed-off-by: raver119 <raver119@gmail.com> * sd model fix Signed-off-by: raver119 <raver119@gmail.com> * fix unirest version Signed-off-by: raver119 <raver119@gmail.com> * More tests Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tests fixes Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Build fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Ser/deser added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * one more unirest fix Signed-off-by: raver119 <raver119@gmail.com> * Custom serializers Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests disabled Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * update Signed-off-by: raver119 <raver119@gmail.com> * some default fields values Signed-off-by: raver119 <raver119@gmail.com> * some comments/javadoc Signed-off-by: raver119 <raver119@gmail.com> * - move serde impls to client module - get rid of INDArray serde for now Signed-off-by: raver119 <raver119@gmail.com> * jackson-based serde for float[], double[] and String Signed-off-by: raver119 <raver119@gmail.com> * more of basic ser/de + tests Signed-off-by: raver119 <raver119@gmail.com> * minor api changes Signed-off-by: raver119 <raver119@gmail.com> * change imports/signatures Signed-off-by: raver119 <raver119@gmail.com> * Optional parralel inference Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Insert pause between tests as workaround for unavailable port issue Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * few unused imports removed Signed-off-by: raver119 <raver119@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * - InputAdapter + OutputAdapter = InferenceAdapter - JsonModelServer now allows separate configuration of InputAdapter and OutputAdapter Signed-off-by: raver119 <raver119@gmail.com> * unused import Signed-off-by: raver119 <raver119@gmail.com> * input adapter.. Signed-off-by: raver119 <raver119@gmail.com> * minor signature change Signed-off-by: raver119 <raver119@gmail.com> * few more signatures updated Signed-off-by: raver119 <raver119@gmail.com> * input/output adapter Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * javadocs added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * minor polishing Signed-off-by: raver119 <raver119@gmail.com> * more of javadoc Signed-off-by: raver119 <raver119@gmail.com> * signature change Signed-off-by: raver119 <raver119@gmail.com>
2019-08-14 12:11:09 +03:00
this.parallelInference = pi;
}
/**
* This method stops server
*
* @throws Exception
*/
@Override
public void stop() throws Exception {
if (parallelInference != null)
parallelInference.shutdown();
super.stop();
}
/**
* This method starts server
* @throws Exception
*/
@Override
public void start() throws Exception {
// if we're just serving sdModel - we'll just call super. no dl4j functionality required in this case
if (sdModel != null) {
super.start();
return;
}
Preconditions.checkArgument(cgModel != null || mlnModel != null, "Model serving requires either MultilayerNetwork or ComputationGraph defined");
val model = cgModel != null ? (Model) cgModel : (Model) mlnModel;
// PI construction is optional, since we can have it defined
if (enabledParallel) {
if (parallelInference == null) {
Preconditions.checkArgument(numWorkers >= 1, "Number of workers should be >= 1, got " + numWorkers + " instead");
parallelInference = new ParallelInference.Builder(model)
.inferenceMode(inferenceMode)
.workers(numWorkers)
.loadBalanceMode(LoadBalanceMode.FIFO)
.batchLimit(16)
.queueLimit(128)
.build();
}
servingServlet = new DL4jServlet.Builder<I, O>(parallelInference)
.parallelEnabled(true)
.serializer(serializer)
.deserializer(deserializer)
.binarySerializer(binarySerializer)
.binaryDeserializer(binaryDeserializer)
.inferenceAdapter(inferenceAdapter)
.build();
[WIP] Remote inference (#96) * fix pad javadoc and @see links. (#72) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * [WIP] More fixes (#73) * special tests for ConstantTadHelper/ConstantShapeHelper Signed-off-by: raver119 <raver119@gmail.com> * release methods for data buffers Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary TadPack C++/Java side (#74) Signed-off-by: raver119 <raver119@gmail.com> * Zoo model TF import test updates (#75) * argLine fix, update compression_gru comment * updated comment for xception * undid but commented argLine change * updated xlnet comment * copyright headers * - new NDArray methods like()/ulike() (#77) - fix for depthwise_conv2d_bp + special test Signed-off-by: raver119 <raver119@gmail.com> * upsampling2d fix CUDA Signed-off-by: raver119 <raver119@gmail.com> * DL4J trace logging (#79) * MLN/CG trace logging for debugging Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tiny tweak Signed-off-by: AlexDBlack <blacka101@gmail.com> * strided_slice_bp shape fn leak fix Signed-off-by: raver119 <raver119@gmail.com> * SameDiff fixes and naming (#78) * remove SDVariable inplace methods * import methods * npe fix in OpVal * removed SameDiff inplace ops from tests * Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything * quick fixes * javadoc * SDVariable eval with placeholders * use regex match * better matching * fix javadoc. (#76) * fix javadoc. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace most @see with @link s. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * 4 additional tests Signed-off-by: raver119 <raver119@gmail.com> * Various DL4J/ND4J fixes (#81) * #7954 Force refresh of UI when switching tabs on overview page Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8017 Concurrent modification exception (synchronize) fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8033 Don't initialize updater in middle of writing memory crash dump Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8208 Fix shape checks for ND4J int[] creator methods Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6385 #7992 Keras import naming fixes + cleanup Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8016 Upsampling3D - add NDHWC format support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Refactor NativeOps.h to export C functions * Actually export functions from NativeOps.h * Adapt the Java wrappers in ND4J generated with JavaCPP * Create C wrappers for some of the C++ classes currently used by ND4J * remove duplicate code in createBufferDetached. (#83) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Keras model import - updater lr fix (#84) * Keras model import - updater lr fix Signed-off-by: eraly <susan.eraly@gmail.com> * Keras model import - updater lr fix, cleanup Signed-off-by: eraly <susan.eraly@gmail.com> * Fix functions of OpaqueVariablesSet * SameDiff Convolution Config validation, better output methods (#82) * Conv Config validation & tests Signed-off-by: Ryan Nett <rnett@skymind.io> * stackOutputs utility method Signed-off-by: Ryan Nett <rnett@skymind.io> * use constructor for validation, support negative kernel sizes (infered from weights) Signed-off-by: Ryan Nett <rnett@skymind.io> * better output methods Signed-off-by: Ryan Nett <rnett@skymind.io> * move output to be with fit and evaluate Signed-off-by: Ryan Nett <rnett@skymind.io> * fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * more fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * refactor duplicate code from pad methods. (#86) * refactor duplicate code from pad methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace switch with if. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes and improvements (#87) * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6488 ElementWiseVertex broadcast support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Constructors and broadcast supported it Transforms.max/min Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8054 ElementWiseVertex now supports broadcast inputs Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8057 Nd4j.create overload dtype fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7551 ND4J Shape validation fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * [WIP] Numpy boolean import (#91) * numpy bool type Signed-off-by: raver119 <raver119@gmail.com> * numpy bool java side Signed-off-by: raver119 <raver119@gmail.com> * remove create method with unused parameter. (#89) * remove create method with unused parameter. * removed more unused methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * removing more unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * last removal of unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * remove createSparse methods. (#92) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes (#90) * Deprecate Old*Op instances Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8063 #8054 Broadcast exceptions + cleanup inplace ops Signed-off-by: AlexDBlack <blacka101@gmail.com> * Small fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * Remove bad test condition Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7993 Fix shape function issue in crop_and_resize op Signed-off-by: AlexDBlack <blacka101@gmail.com> * DL4J SameDiff lambda layer fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8029 Fix for pnorm backprop math Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8038 Fix Op profiler NaN/Inf triggering + add tests (#93) Signed-off-by: AlexDBlack <blacka101@gmail.com> * createUninitializedDetached refactoring. (#94) * wip * update interface, add null implementations. * Breaking one test in a weird way. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * createUninitializedDetached refactored. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * cuda build fix for issues introduced by recent refactoring Signed-off-by: raver119 <raver119@gmail.com> * initial commit Signed-off-by: raver119 <raver119@gmail.com> * deps tweaks Signed-off-by: raver119 <raver119@gmail.com> * initial prototype Signed-off-by: raver119 <raver119@gmail.com> * modules reorganized Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * [WIP] More of CUDA (#95) * initial commit Signed-off-by: raver119 <raver119@gmail.com> * Implementation of hashcode cuda helper. Working edition. * Fixed parallel test input arangements. * Fixed tests for hashcode op. * Fixed shape calculation for image:crop_and_resize op and test. * NativeOps tests. Initial test suite. * Added tests for indexReduce methods. * Added test on execBroadcast with NDArray as dimensions. * Added test on execBroadcastBool with NDArray as dimensions. * Added tests on execPairwiseTransform and execPairwiseTransofrmBool. * Added tests for execReduce with scalar results. * Added reduce tests for non-empty dims array. * Added tests for reduce3. * Added tests for execScalar. * Added tests for execSummaryStats. * - provide cpu/cuda code for batch_to_space - testing it Signed-off-by: Yurii <yurii@skymind.io> * - remove old test for batch_to_space (had wrong format and numbers were not checked) Signed-off-by: Yurii <yurii@skymind.io> * Fixed complilation errors with test. * Added test for execTransformFloat. * Added test for execTransformSame. * Added test for execTransformBool. * Added test for execTransformStrict. * Added tests for execScalar/execScalarBool with TADs. * Added test for flatten. * - provide cpu/cuda code for space_to_Batch operaion Signed-off-by: Yurii <yurii@skymind.io> * Added test for concat. * comment unnecessary stuff in s_t_b Signed-off-by: Yurii <yurii@skymind.io> * Added test for specialConcat. * Added tests for memcpy/set routines. * Fixed pullRow cuda test. * Added pullRow test. * Added average test. * - correct typo in NDArray::applyPairwiseTransform(nd4j::pairwise::BoolOps op...) Signed-off-by: Yurii <yurii@skymind.io> * - debugging and fixing cuda tests in JavaInteropTests file Signed-off-by: Yurii <yurii@skymind.io> * - correct some tests Signed-off-by: Yurii <yurii@skymind.io> * Added test for shuffle. * Fixed ops declarations. * Restored omp and added shuffle test. * Added convertTypes test. * Added tests for execRandom. Eliminated usage of RandomBuffer with NativeOps. * Added sort tests. * Added tests for execCustomOp. * - further debuging and fixing tests terminated with crash Signed-off-by: Yurii <yurii@skymind.io> * Added tests for calculateOutputShapes. * Addded Benchmarks test. * Commented benchmark tests. * change assertion Signed-off-by: raver119 <raver119@gmail.com> * Added tests for apply_sgd op. Added cpu helper for that op. * Implement cuda helper for aplly_sgd op. Fixed tests for NativeOps. * Added test for assign broadcastable. * Added tests for assign_bp op. * Added tests for axpy op. * - assign/execScalar/execTransformAny signature change - minor test fix Signed-off-by: raver119 <raver119@gmail.com> * Fixed axpy op. * meh Signed-off-by: raver119 <raver119@gmail.com> * - fix tests for nativeOps::concat Signed-off-by: Yurii <yurii@skymind.io> * sequential transform/scalar Signed-off-by: raver119 <raver119@gmail.com> * allow nested parallelism Signed-off-by: raver119 <raver119@gmail.com> * assign_bp leak fix Signed-off-by: raver119 <raver119@gmail.com> * block setRNG fix Signed-off-by: raver119 <raver119@gmail.com> * enable parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * enable nested parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * Added cuda implementation for row_count helper. * Added implementation for tnse gains op helper. * - take into account possible situations when input arrays are empty in reduce_ cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implemented tsne/edge_forces op cuda-based helper. Parallelized cpu-based helper for edge_forces. * Added kernel for tsne/symmetrized op heleper. * Implementation of tsne/symmetrized op cuda helper. Working edition. * Eliminated waste printfs. * Added test for broadcastgradientargs op. * host-only fallback for empty reduce float Signed-off-by: raver119 <raver119@gmail.com> * - some tests fixes Signed-off-by: Yurii <yurii@skymind.io> * - correct the rest of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * - further correction of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * Added test for Cbow op. Also added cuda implementation for cbow helpers. * - improve code of stack operation for scalar case Signed-off-by: Yurii <yurii@skymind.io> * - provide cuda kernel for gatherND operation Signed-off-by: Yurii <yurii@skymind.io> * Implementation of cbow helpers with cuda kernels. * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * - further correction of cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implementatation of cbow op helper with cuda kernels. Working edition. * Skip random testing for cudablas case. * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for ELU and ELU_BP ops. * Added tests for eq_scalar, gt_scalar, gte_scalar and lte_scalar ops. * Added tests for neq_scalar. * Added test for noop. * - further work on clipbynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * - get rid of concat op call, use instead direct concat helper call Signed-off-by: Yurii <yurii@skymind.io> * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for lrelu and lrelu_bp. * Added tests for selu and selu_bp. * Fixed lrelu derivative helpers. * - some corrections in lstm Signed-off-by: Yurii <yurii@skymind.io> * operator * result shape fix Signed-off-by: raver119 <raver119@gmail.com> * - correct typo in lstmCell Signed-off-by: Yurii <yurii@skymind.io> * few tests fixed Signed-off-by: raver119 <raver119@gmail.com> * CUDA inverse broadcast bool fix Signed-off-by: raver119 <raver119@gmail.com> * disable MMAP test for CUDA Signed-off-by: raver119 <raver119@gmail.com> * BooleanOp syncToDevice Signed-off-by: raver119 <raver119@gmail.com> * meh Signed-off-by: raver119 <raver119@gmail.com> * additional data types for im2col/col2im Signed-off-by: raver119 <raver119@gmail.com> * Added test for firas_sparse op. * one more RandomBuffer test excluded Signed-off-by: raver119 <raver119@gmail.com> * Added tests for flatten op. * Added test for Floor op. * bunch of tests fixed Signed-off-by: raver119 <raver119@gmail.com> * mmulDot tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Implemented floordiv_bp op and tests. * Fixed scalar case with cuda implementation for bds. * - work on cuda kernel for clip_by_norm backprop op is completed Signed-off-by: Yurii <yurii@skymind.io> * Eliminate cbow crach. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Eliminated abortion with batched nlp test. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Fixed shared flag initializing. * disabled bunch of cpu workspaces tests Signed-off-by: raver119 <raver119@gmail.com> * scalar operators fix: missing registerSpecialUse call Signed-off-by: raver119 <raver119@gmail.com> * Fixed logdet for cuda and tests. * - correct clipBynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * Fixed crop_and_resize shape datatype. * - correct some mmul tests Signed-off-by: Yurii <yurii@skymind.io> * build fix Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI (#97) Signed-off-by: raver119 <raver119@gmail.com> * temporary stack fix Signed-off-by: raver119 <raver119@gmail.com> * downgrade jetty to latest stable version Signed-off-by: raver119 <raver119@gmail.com> * test and profiles Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton * one test case Signed-off-by: raver119 <raver119@gmail.com> * one test case Signed-off-by: raver119 <raver119@gmail.com> * compilation fix Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * Servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * logging + simple timing Signed-off-by: raver119 <raver119@gmail.com> * Content type fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Profile required Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Post test Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constants used Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Check content type Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Some tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Errors checking Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constraints and tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Dl4j servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Moving class to dl4j Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Builder extended Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * initial dl4j commit Signed-off-by: raver119 <raver119@gmail.com> * unirest version change Signed-off-by: raver119 <raver119@gmail.com> * temp fallback Signed-off-by: raver119 <raver119@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * revert unirest change Signed-off-by: raver119 <raver119@gmail.com> * some additional checks in builder Signed-off-by: raver119 <raver119@gmail.com> * few more fields Signed-off-by: raver119 <raver119@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * lombok Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * deps Signed-off-by: raver119 <raver119@gmail.com> * profiles re-introduced Signed-off-by: raver119 <raver119@gmail.com> * Added tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Model servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * get rid of old class Signed-off-by: raver119 <raver119@gmail.com> * use PI for inference Signed-off-by: raver119 <raver119@gmail.com> * superbuilder Signed-off-by: raver119 <raver119@gmail.com> * get back builder Signed-off-by: raver119 <raver119@gmail.com> * Servlet builder Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * PI setup Signed-off-by: raver119 <raver119@gmail.com> * get rid of superbuilder Signed-off-by: raver119 <raver119@gmail.com> * SameDiffServlet inheritance constructor Signed-off-by: raver119 <raver119@gmail.com> * dl4jservlet attached to samediffservlet Signed-off-by: raver119 <raver119@gmail.com> * builder types fix Signed-off-by: raver119 <raver119@gmail.com> * dummy model Signed-off-by: raver119 <raver119@gmail.com> * single out Signed-off-by: raver119 <raver119@gmail.com> * loss Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * missed builder type Signed-off-by: raver119 <raver119@gmail.com> * working serving example Signed-off-by: raver119 <raver119@gmail.com> * sd model fix Signed-off-by: raver119 <raver119@gmail.com> * fix unirest version Signed-off-by: raver119 <raver119@gmail.com> * More tests Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tests fixes Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Build fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Ser/deser added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * one more unirest fix Signed-off-by: raver119 <raver119@gmail.com> * Custom serializers Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests disabled Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * update Signed-off-by: raver119 <raver119@gmail.com> * some default fields values Signed-off-by: raver119 <raver119@gmail.com> * some comments/javadoc Signed-off-by: raver119 <raver119@gmail.com> * - move serde impls to client module - get rid of INDArray serde for now Signed-off-by: raver119 <raver119@gmail.com> * jackson-based serde for float[], double[] and String Signed-off-by: raver119 <raver119@gmail.com> * more of basic ser/de + tests Signed-off-by: raver119 <raver119@gmail.com> * minor api changes Signed-off-by: raver119 <raver119@gmail.com> * change imports/signatures Signed-off-by: raver119 <raver119@gmail.com> * Optional parralel inference Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Insert pause between tests as workaround for unavailable port issue Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * few unused imports removed Signed-off-by: raver119 <raver119@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * - InputAdapter + OutputAdapter = InferenceAdapter - JsonModelServer now allows separate configuration of InputAdapter and OutputAdapter Signed-off-by: raver119 <raver119@gmail.com> * unused import Signed-off-by: raver119 <raver119@gmail.com> * input adapter.. Signed-off-by: raver119 <raver119@gmail.com> * minor signature change Signed-off-by: raver119 <raver119@gmail.com> * few more signatures updated Signed-off-by: raver119 <raver119@gmail.com> * input/output adapter Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * javadocs added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * minor polishing Signed-off-by: raver119 <raver119@gmail.com> * more of javadoc Signed-off-by: raver119 <raver119@gmail.com> * signature change Signed-off-by: raver119 <raver119@gmail.com>
2019-08-14 12:11:09 +03:00
}
else {
servingServlet = new DL4jServlet.Builder<I, O>(model)
.parallelEnabled(false)
.serializer(serializer)
.deserializer(deserializer)
.binarySerializer(binarySerializer)
.binaryDeserializer(binaryDeserializer)
.inferenceAdapter(inferenceAdapter)
.build();
[WIP] Remote inference (#96) * fix pad javadoc and @see links. (#72) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * [WIP] More fixes (#73) * special tests for ConstantTadHelper/ConstantShapeHelper Signed-off-by: raver119 <raver119@gmail.com> * release methods for data buffers Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary TadPack C++/Java side (#74) Signed-off-by: raver119 <raver119@gmail.com> * Zoo model TF import test updates (#75) * argLine fix, update compression_gru comment * updated comment for xception * undid but commented argLine change * updated xlnet comment * copyright headers * - new NDArray methods like()/ulike() (#77) - fix for depthwise_conv2d_bp + special test Signed-off-by: raver119 <raver119@gmail.com> * upsampling2d fix CUDA Signed-off-by: raver119 <raver119@gmail.com> * DL4J trace logging (#79) * MLN/CG trace logging for debugging Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tiny tweak Signed-off-by: AlexDBlack <blacka101@gmail.com> * strided_slice_bp shape fn leak fix Signed-off-by: raver119 <raver119@gmail.com> * SameDiff fixes and naming (#78) * remove SDVariable inplace methods * import methods * npe fix in OpVal * removed SameDiff inplace ops from tests * Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything * quick fixes * javadoc * SDVariable eval with placeholders * use regex match * better matching * fix javadoc. (#76) * fix javadoc. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace most @see with @link s. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * 4 additional tests Signed-off-by: raver119 <raver119@gmail.com> * Various DL4J/ND4J fixes (#81) * #7954 Force refresh of UI when switching tabs on overview page Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8017 Concurrent modification exception (synchronize) fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8033 Don't initialize updater in middle of writing memory crash dump Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8208 Fix shape checks for ND4J int[] creator methods Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6385 #7992 Keras import naming fixes + cleanup Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8016 Upsampling3D - add NDHWC format support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Refactor NativeOps.h to export C functions * Actually export functions from NativeOps.h * Adapt the Java wrappers in ND4J generated with JavaCPP * Create C wrappers for some of the C++ classes currently used by ND4J * remove duplicate code in createBufferDetached. (#83) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Keras model import - updater lr fix (#84) * Keras model import - updater lr fix Signed-off-by: eraly <susan.eraly@gmail.com> * Keras model import - updater lr fix, cleanup Signed-off-by: eraly <susan.eraly@gmail.com> * Fix functions of OpaqueVariablesSet * SameDiff Convolution Config validation, better output methods (#82) * Conv Config validation & tests Signed-off-by: Ryan Nett <rnett@skymind.io> * stackOutputs utility method Signed-off-by: Ryan Nett <rnett@skymind.io> * use constructor for validation, support negative kernel sizes (infered from weights) Signed-off-by: Ryan Nett <rnett@skymind.io> * better output methods Signed-off-by: Ryan Nett <rnett@skymind.io> * move output to be with fit and evaluate Signed-off-by: Ryan Nett <rnett@skymind.io> * fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * more fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * refactor duplicate code from pad methods. (#86) * refactor duplicate code from pad methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace switch with if. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes and improvements (#87) * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6488 ElementWiseVertex broadcast support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Constructors and broadcast supported it Transforms.max/min Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8054 ElementWiseVertex now supports broadcast inputs Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8057 Nd4j.create overload dtype fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7551 ND4J Shape validation fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * [WIP] Numpy boolean import (#91) * numpy bool type Signed-off-by: raver119 <raver119@gmail.com> * numpy bool java side Signed-off-by: raver119 <raver119@gmail.com> * remove create method with unused parameter. (#89) * remove create method with unused parameter. * removed more unused methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * removing more unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * last removal of unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * remove createSparse methods. (#92) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes (#90) * Deprecate Old*Op instances Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8063 #8054 Broadcast exceptions + cleanup inplace ops Signed-off-by: AlexDBlack <blacka101@gmail.com> * Small fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * Remove bad test condition Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7993 Fix shape function issue in crop_and_resize op Signed-off-by: AlexDBlack <blacka101@gmail.com> * DL4J SameDiff lambda layer fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8029 Fix for pnorm backprop math Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8038 Fix Op profiler NaN/Inf triggering + add tests (#93) Signed-off-by: AlexDBlack <blacka101@gmail.com> * createUninitializedDetached refactoring. (#94) * wip * update interface, add null implementations. * Breaking one test in a weird way. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * createUninitializedDetached refactored. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * cuda build fix for issues introduced by recent refactoring Signed-off-by: raver119 <raver119@gmail.com> * initial commit Signed-off-by: raver119 <raver119@gmail.com> * deps tweaks Signed-off-by: raver119 <raver119@gmail.com> * initial prototype Signed-off-by: raver119 <raver119@gmail.com> * modules reorganized Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * [WIP] More of CUDA (#95) * initial commit Signed-off-by: raver119 <raver119@gmail.com> * Implementation of hashcode cuda helper. Working edition. * Fixed parallel test input arangements. * Fixed tests for hashcode op. * Fixed shape calculation for image:crop_and_resize op and test. * NativeOps tests. Initial test suite. * Added tests for indexReduce methods. * Added test on execBroadcast with NDArray as dimensions. * Added test on execBroadcastBool with NDArray as dimensions. * Added tests on execPairwiseTransform and execPairwiseTransofrmBool. * Added tests for execReduce with scalar results. * Added reduce tests for non-empty dims array. * Added tests for reduce3. * Added tests for execScalar. * Added tests for execSummaryStats. * - provide cpu/cuda code for batch_to_space - testing it Signed-off-by: Yurii <yurii@skymind.io> * - remove old test for batch_to_space (had wrong format and numbers were not checked) Signed-off-by: Yurii <yurii@skymind.io> * Fixed complilation errors with test. * Added test for execTransformFloat. * Added test for execTransformSame. * Added test for execTransformBool. * Added test for execTransformStrict. * Added tests for execScalar/execScalarBool with TADs. * Added test for flatten. * - provide cpu/cuda code for space_to_Batch operaion Signed-off-by: Yurii <yurii@skymind.io> * Added test for concat. * comment unnecessary stuff in s_t_b Signed-off-by: Yurii <yurii@skymind.io> * Added test for specialConcat. * Added tests for memcpy/set routines. * Fixed pullRow cuda test. * Added pullRow test. * Added average test. * - correct typo in NDArray::applyPairwiseTransform(nd4j::pairwise::BoolOps op...) Signed-off-by: Yurii <yurii@skymind.io> * - debugging and fixing cuda tests in JavaInteropTests file Signed-off-by: Yurii <yurii@skymind.io> * - correct some tests Signed-off-by: Yurii <yurii@skymind.io> * Added test for shuffle. * Fixed ops declarations. * Restored omp and added shuffle test. * Added convertTypes test. * Added tests for execRandom. Eliminated usage of RandomBuffer with NativeOps. * Added sort tests. * Added tests for execCustomOp. * - further debuging and fixing tests terminated with crash Signed-off-by: Yurii <yurii@skymind.io> * Added tests for calculateOutputShapes. * Addded Benchmarks test. * Commented benchmark tests. * change assertion Signed-off-by: raver119 <raver119@gmail.com> * Added tests for apply_sgd op. Added cpu helper for that op. * Implement cuda helper for aplly_sgd op. Fixed tests for NativeOps. * Added test for assign broadcastable. * Added tests for assign_bp op. * Added tests for axpy op. * - assign/execScalar/execTransformAny signature change - minor test fix Signed-off-by: raver119 <raver119@gmail.com> * Fixed axpy op. * meh Signed-off-by: raver119 <raver119@gmail.com> * - fix tests for nativeOps::concat Signed-off-by: Yurii <yurii@skymind.io> * sequential transform/scalar Signed-off-by: raver119 <raver119@gmail.com> * allow nested parallelism Signed-off-by: raver119 <raver119@gmail.com> * assign_bp leak fix Signed-off-by: raver119 <raver119@gmail.com> * block setRNG fix Signed-off-by: raver119 <raver119@gmail.com> * enable parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * enable nested parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * Added cuda implementation for row_count helper. * Added implementation for tnse gains op helper. * - take into account possible situations when input arrays are empty in reduce_ cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implemented tsne/edge_forces op cuda-based helper. Parallelized cpu-based helper for edge_forces. * Added kernel for tsne/symmetrized op heleper. * Implementation of tsne/symmetrized op cuda helper. Working edition. * Eliminated waste printfs. * Added test for broadcastgradientargs op. * host-only fallback for empty reduce float Signed-off-by: raver119 <raver119@gmail.com> * - some tests fixes Signed-off-by: Yurii <yurii@skymind.io> * - correct the rest of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * - further correction of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * Added test for Cbow op. Also added cuda implementation for cbow helpers. * - improve code of stack operation for scalar case Signed-off-by: Yurii <yurii@skymind.io> * - provide cuda kernel for gatherND operation Signed-off-by: Yurii <yurii@skymind.io> * Implementation of cbow helpers with cuda kernels. * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * - further correction of cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implementatation of cbow op helper with cuda kernels. Working edition. * Skip random testing for cudablas case. * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for ELU and ELU_BP ops. * Added tests for eq_scalar, gt_scalar, gte_scalar and lte_scalar ops. * Added tests for neq_scalar. * Added test for noop. * - further work on clipbynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * - get rid of concat op call, use instead direct concat helper call Signed-off-by: Yurii <yurii@skymind.io> * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for lrelu and lrelu_bp. * Added tests for selu and selu_bp. * Fixed lrelu derivative helpers. * - some corrections in lstm Signed-off-by: Yurii <yurii@skymind.io> * operator * result shape fix Signed-off-by: raver119 <raver119@gmail.com> * - correct typo in lstmCell Signed-off-by: Yurii <yurii@skymind.io> * few tests fixed Signed-off-by: raver119 <raver119@gmail.com> * CUDA inverse broadcast bool fix Signed-off-by: raver119 <raver119@gmail.com> * disable MMAP test for CUDA Signed-off-by: raver119 <raver119@gmail.com> * BooleanOp syncToDevice Signed-off-by: raver119 <raver119@gmail.com> * meh Signed-off-by: raver119 <raver119@gmail.com> * additional data types for im2col/col2im Signed-off-by: raver119 <raver119@gmail.com> * Added test for firas_sparse op. * one more RandomBuffer test excluded Signed-off-by: raver119 <raver119@gmail.com> * Added tests for flatten op. * Added test for Floor op. * bunch of tests fixed Signed-off-by: raver119 <raver119@gmail.com> * mmulDot tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Implemented floordiv_bp op and tests. * Fixed scalar case with cuda implementation for bds. * - work on cuda kernel for clip_by_norm backprop op is completed Signed-off-by: Yurii <yurii@skymind.io> * Eliminate cbow crach. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Eliminated abortion with batched nlp test. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Fixed shared flag initializing. * disabled bunch of cpu workspaces tests Signed-off-by: raver119 <raver119@gmail.com> * scalar operators fix: missing registerSpecialUse call Signed-off-by: raver119 <raver119@gmail.com> * Fixed logdet for cuda and tests. * - correct clipBynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * Fixed crop_and_resize shape datatype. * - correct some mmul tests Signed-off-by: Yurii <yurii@skymind.io> * build fix Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI (#97) Signed-off-by: raver119 <raver119@gmail.com> * temporary stack fix Signed-off-by: raver119 <raver119@gmail.com> * downgrade jetty to latest stable version Signed-off-by: raver119 <raver119@gmail.com> * test and profiles Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton * one test case Signed-off-by: raver119 <raver119@gmail.com> * one test case Signed-off-by: raver119 <raver119@gmail.com> * compilation fix Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * Servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * logging + simple timing Signed-off-by: raver119 <raver119@gmail.com> * Content type fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Profile required Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Post test Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constants used Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Check content type Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Some tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Errors checking Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constraints and tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Dl4j servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Moving class to dl4j Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Builder extended Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * initial dl4j commit Signed-off-by: raver119 <raver119@gmail.com> * unirest version change Signed-off-by: raver119 <raver119@gmail.com> * temp fallback Signed-off-by: raver119 <raver119@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * revert unirest change Signed-off-by: raver119 <raver119@gmail.com> * some additional checks in builder Signed-off-by: raver119 <raver119@gmail.com> * few more fields Signed-off-by: raver119 <raver119@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * lombok Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * deps Signed-off-by: raver119 <raver119@gmail.com> * profiles re-introduced Signed-off-by: raver119 <raver119@gmail.com> * Added tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Model servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * get rid of old class Signed-off-by: raver119 <raver119@gmail.com> * use PI for inference Signed-off-by: raver119 <raver119@gmail.com> * superbuilder Signed-off-by: raver119 <raver119@gmail.com> * get back builder Signed-off-by: raver119 <raver119@gmail.com> * Servlet builder Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * PI setup Signed-off-by: raver119 <raver119@gmail.com> * get rid of superbuilder Signed-off-by: raver119 <raver119@gmail.com> * SameDiffServlet inheritance constructor Signed-off-by: raver119 <raver119@gmail.com> * dl4jservlet attached to samediffservlet Signed-off-by: raver119 <raver119@gmail.com> * builder types fix Signed-off-by: raver119 <raver119@gmail.com> * dummy model Signed-off-by: raver119 <raver119@gmail.com> * single out Signed-off-by: raver119 <raver119@gmail.com> * loss Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * missed builder type Signed-off-by: raver119 <raver119@gmail.com> * working serving example Signed-off-by: raver119 <raver119@gmail.com> * sd model fix Signed-off-by: raver119 <raver119@gmail.com> * fix unirest version Signed-off-by: raver119 <raver119@gmail.com> * More tests Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tests fixes Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Build fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Ser/deser added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * one more unirest fix Signed-off-by: raver119 <raver119@gmail.com> * Custom serializers Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests disabled Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * update Signed-off-by: raver119 <raver119@gmail.com> * some default fields values Signed-off-by: raver119 <raver119@gmail.com> * some comments/javadoc Signed-off-by: raver119 <raver119@gmail.com> * - move serde impls to client module - get rid of INDArray serde for now Signed-off-by: raver119 <raver119@gmail.com> * jackson-based serde for float[], double[] and String Signed-off-by: raver119 <raver119@gmail.com> * more of basic ser/de + tests Signed-off-by: raver119 <raver119@gmail.com> * minor api changes Signed-off-by: raver119 <raver119@gmail.com> * change imports/signatures Signed-off-by: raver119 <raver119@gmail.com> * Optional parralel inference Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Insert pause between tests as workaround for unavailable port issue Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * few unused imports removed Signed-off-by: raver119 <raver119@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * - InputAdapter + OutputAdapter = InferenceAdapter - JsonModelServer now allows separate configuration of InputAdapter and OutputAdapter Signed-off-by: raver119 <raver119@gmail.com> * unused import Signed-off-by: raver119 <raver119@gmail.com> * input adapter.. Signed-off-by: raver119 <raver119@gmail.com> * minor signature change Signed-off-by: raver119 <raver119@gmail.com> * few more signatures updated Signed-off-by: raver119 <raver119@gmail.com> * input/output adapter Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * javadocs added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * minor polishing Signed-off-by: raver119 <raver119@gmail.com> * more of javadoc Signed-off-by: raver119 <raver119@gmail.com> * signature change Signed-off-by: raver119 <raver119@gmail.com>
2019-08-14 12:11:09 +03:00
}
start(port, servingServlet);
}
/**
* Creates servlet to serve different types of models
*
* @param <I> type of Input class
* @param <O> type of Output class
*
* @author raver119@gmail.com
* @author astoyakin
*/
public static class Builder<I,O> {
private SameDiff sdModel;
private ComputationGraph cgModel;
private MultiLayerNetwork mlnModel;
private ParallelInference pi;
private String[] orderedInputNodes;
private String[] orderedOutputNodes;
private InferenceAdapter<I, O> inferenceAdapter;
private JsonSerializer<O> serializer;
private JsonDeserializer<I> deserializer;
private BinarySerializer<O> binarySerializer;
private BinaryDeserializer<I> binaryDeserializer;
[WIP] Remote inference (#96) * fix pad javadoc and @see links. (#72) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * [WIP] More fixes (#73) * special tests for ConstantTadHelper/ConstantShapeHelper Signed-off-by: raver119 <raver119@gmail.com> * release methods for data buffers Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary TadPack C++/Java side (#74) Signed-off-by: raver119 <raver119@gmail.com> * Zoo model TF import test updates (#75) * argLine fix, update compression_gru comment * updated comment for xception * undid but commented argLine change * updated xlnet comment * copyright headers * - new NDArray methods like()/ulike() (#77) - fix for depthwise_conv2d_bp + special test Signed-off-by: raver119 <raver119@gmail.com> * upsampling2d fix CUDA Signed-off-by: raver119 <raver119@gmail.com> * DL4J trace logging (#79) * MLN/CG trace logging for debugging Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tiny tweak Signed-off-by: AlexDBlack <blacka101@gmail.com> * strided_slice_bp shape fn leak fix Signed-off-by: raver119 <raver119@gmail.com> * SameDiff fixes and naming (#78) * remove SDVariable inplace methods * import methods * npe fix in OpVal * removed SameDiff inplace ops from tests * Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything * quick fixes * javadoc * SDVariable eval with placeholders * use regex match * better matching * fix javadoc. (#76) * fix javadoc. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace most @see with @link s. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * 4 additional tests Signed-off-by: raver119 <raver119@gmail.com> * Various DL4J/ND4J fixes (#81) * #7954 Force refresh of UI when switching tabs on overview page Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8017 Concurrent modification exception (synchronize) fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8033 Don't initialize updater in middle of writing memory crash dump Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8208 Fix shape checks for ND4J int[] creator methods Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6385 #7992 Keras import naming fixes + cleanup Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8016 Upsampling3D - add NDHWC format support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Refactor NativeOps.h to export C functions * Actually export functions from NativeOps.h * Adapt the Java wrappers in ND4J generated with JavaCPP * Create C wrappers for some of the C++ classes currently used by ND4J * remove duplicate code in createBufferDetached. (#83) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Keras model import - updater lr fix (#84) * Keras model import - updater lr fix Signed-off-by: eraly <susan.eraly@gmail.com> * Keras model import - updater lr fix, cleanup Signed-off-by: eraly <susan.eraly@gmail.com> * Fix functions of OpaqueVariablesSet * SameDiff Convolution Config validation, better output methods (#82) * Conv Config validation & tests Signed-off-by: Ryan Nett <rnett@skymind.io> * stackOutputs utility method Signed-off-by: Ryan Nett <rnett@skymind.io> * use constructor for validation, support negative kernel sizes (infered from weights) Signed-off-by: Ryan Nett <rnett@skymind.io> * better output methods Signed-off-by: Ryan Nett <rnett@skymind.io> * move output to be with fit and evaluate Signed-off-by: Ryan Nett <rnett@skymind.io> * fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * more fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * refactor duplicate code from pad methods. (#86) * refactor duplicate code from pad methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace switch with if. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes and improvements (#87) * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6488 ElementWiseVertex broadcast support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Constructors and broadcast supported it Transforms.max/min Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8054 ElementWiseVertex now supports broadcast inputs Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8057 Nd4j.create overload dtype fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7551 ND4J Shape validation fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * [WIP] Numpy boolean import (#91) * numpy bool type Signed-off-by: raver119 <raver119@gmail.com> * numpy bool java side Signed-off-by: raver119 <raver119@gmail.com> * remove create method with unused parameter. (#89) * remove create method with unused parameter. * removed more unused methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * removing more unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * last removal of unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * remove createSparse methods. (#92) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes (#90) * Deprecate Old*Op instances Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8063 #8054 Broadcast exceptions + cleanup inplace ops Signed-off-by: AlexDBlack <blacka101@gmail.com> * Small fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * Remove bad test condition Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7993 Fix shape function issue in crop_and_resize op Signed-off-by: AlexDBlack <blacka101@gmail.com> * DL4J SameDiff lambda layer fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8029 Fix for pnorm backprop math Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8038 Fix Op profiler NaN/Inf triggering + add tests (#93) Signed-off-by: AlexDBlack <blacka101@gmail.com> * createUninitializedDetached refactoring. (#94) * wip * update interface, add null implementations. * Breaking one test in a weird way. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * createUninitializedDetached refactored. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * cuda build fix for issues introduced by recent refactoring Signed-off-by: raver119 <raver119@gmail.com> * initial commit Signed-off-by: raver119 <raver119@gmail.com> * deps tweaks Signed-off-by: raver119 <raver119@gmail.com> * initial prototype Signed-off-by: raver119 <raver119@gmail.com> * modules reorganized Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * [WIP] More of CUDA (#95) * initial commit Signed-off-by: raver119 <raver119@gmail.com> * Implementation of hashcode cuda helper. Working edition. * Fixed parallel test input arangements. * Fixed tests for hashcode op. * Fixed shape calculation for image:crop_and_resize op and test. * NativeOps tests. Initial test suite. * Added tests for indexReduce methods. * Added test on execBroadcast with NDArray as dimensions. * Added test on execBroadcastBool with NDArray as dimensions. * Added tests on execPairwiseTransform and execPairwiseTransofrmBool. * Added tests for execReduce with scalar results. * Added reduce tests for non-empty dims array. * Added tests for reduce3. * Added tests for execScalar. * Added tests for execSummaryStats. * - provide cpu/cuda code for batch_to_space - testing it Signed-off-by: Yurii <yurii@skymind.io> * - remove old test for batch_to_space (had wrong format and numbers were not checked) Signed-off-by: Yurii <yurii@skymind.io> * Fixed complilation errors with test. * Added test for execTransformFloat. * Added test for execTransformSame. * Added test for execTransformBool. * Added test for execTransformStrict. * Added tests for execScalar/execScalarBool with TADs. * Added test for flatten. * - provide cpu/cuda code for space_to_Batch operaion Signed-off-by: Yurii <yurii@skymind.io> * Added test for concat. * comment unnecessary stuff in s_t_b Signed-off-by: Yurii <yurii@skymind.io> * Added test for specialConcat. * Added tests for memcpy/set routines. * Fixed pullRow cuda test. * Added pullRow test. * Added average test. * - correct typo in NDArray::applyPairwiseTransform(nd4j::pairwise::BoolOps op...) Signed-off-by: Yurii <yurii@skymind.io> * - debugging and fixing cuda tests in JavaInteropTests file Signed-off-by: Yurii <yurii@skymind.io> * - correct some tests Signed-off-by: Yurii <yurii@skymind.io> * Added test for shuffle. * Fixed ops declarations. * Restored omp and added shuffle test. * Added convertTypes test. * Added tests for execRandom. Eliminated usage of RandomBuffer with NativeOps. * Added sort tests. * Added tests for execCustomOp. * - further debuging and fixing tests terminated with crash Signed-off-by: Yurii <yurii@skymind.io> * Added tests for calculateOutputShapes. * Addded Benchmarks test. * Commented benchmark tests. * change assertion Signed-off-by: raver119 <raver119@gmail.com> * Added tests for apply_sgd op. Added cpu helper for that op. * Implement cuda helper for aplly_sgd op. Fixed tests for NativeOps. * Added test for assign broadcastable. * Added tests for assign_bp op. * Added tests for axpy op. * - assign/execScalar/execTransformAny signature change - minor test fix Signed-off-by: raver119 <raver119@gmail.com> * Fixed axpy op. * meh Signed-off-by: raver119 <raver119@gmail.com> * - fix tests for nativeOps::concat Signed-off-by: Yurii <yurii@skymind.io> * sequential transform/scalar Signed-off-by: raver119 <raver119@gmail.com> * allow nested parallelism Signed-off-by: raver119 <raver119@gmail.com> * assign_bp leak fix Signed-off-by: raver119 <raver119@gmail.com> * block setRNG fix Signed-off-by: raver119 <raver119@gmail.com> * enable parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * enable nested parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * Added cuda implementation for row_count helper. * Added implementation for tnse gains op helper. * - take into account possible situations when input arrays are empty in reduce_ cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implemented tsne/edge_forces op cuda-based helper. Parallelized cpu-based helper for edge_forces. * Added kernel for tsne/symmetrized op heleper. * Implementation of tsne/symmetrized op cuda helper. Working edition. * Eliminated waste printfs. * Added test for broadcastgradientargs op. * host-only fallback for empty reduce float Signed-off-by: raver119 <raver119@gmail.com> * - some tests fixes Signed-off-by: Yurii <yurii@skymind.io> * - correct the rest of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * - further correction of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * Added test for Cbow op. Also added cuda implementation for cbow helpers. * - improve code of stack operation for scalar case Signed-off-by: Yurii <yurii@skymind.io> * - provide cuda kernel for gatherND operation Signed-off-by: Yurii <yurii@skymind.io> * Implementation of cbow helpers with cuda kernels. * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * - further correction of cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implementatation of cbow op helper with cuda kernels. Working edition. * Skip random testing for cudablas case. * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for ELU and ELU_BP ops. * Added tests for eq_scalar, gt_scalar, gte_scalar and lte_scalar ops. * Added tests for neq_scalar. * Added test for noop. * - further work on clipbynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * - get rid of concat op call, use instead direct concat helper call Signed-off-by: Yurii <yurii@skymind.io> * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for lrelu and lrelu_bp. * Added tests for selu and selu_bp. * Fixed lrelu derivative helpers. * - some corrections in lstm Signed-off-by: Yurii <yurii@skymind.io> * operator * result shape fix Signed-off-by: raver119 <raver119@gmail.com> * - correct typo in lstmCell Signed-off-by: Yurii <yurii@skymind.io> * few tests fixed Signed-off-by: raver119 <raver119@gmail.com> * CUDA inverse broadcast bool fix Signed-off-by: raver119 <raver119@gmail.com> * disable MMAP test for CUDA Signed-off-by: raver119 <raver119@gmail.com> * BooleanOp syncToDevice Signed-off-by: raver119 <raver119@gmail.com> * meh Signed-off-by: raver119 <raver119@gmail.com> * additional data types for im2col/col2im Signed-off-by: raver119 <raver119@gmail.com> * Added test for firas_sparse op. * one more RandomBuffer test excluded Signed-off-by: raver119 <raver119@gmail.com> * Added tests for flatten op. * Added test for Floor op. * bunch of tests fixed Signed-off-by: raver119 <raver119@gmail.com> * mmulDot tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Implemented floordiv_bp op and tests. * Fixed scalar case with cuda implementation for bds. * - work on cuda kernel for clip_by_norm backprop op is completed Signed-off-by: Yurii <yurii@skymind.io> * Eliminate cbow crach. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Eliminated abortion with batched nlp test. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Fixed shared flag initializing. * disabled bunch of cpu workspaces tests Signed-off-by: raver119 <raver119@gmail.com> * scalar operators fix: missing registerSpecialUse call Signed-off-by: raver119 <raver119@gmail.com> * Fixed logdet for cuda and tests. * - correct clipBynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * Fixed crop_and_resize shape datatype. * - correct some mmul tests Signed-off-by: Yurii <yurii@skymind.io> * build fix Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI (#97) Signed-off-by: raver119 <raver119@gmail.com> * temporary stack fix Signed-off-by: raver119 <raver119@gmail.com> * downgrade jetty to latest stable version Signed-off-by: raver119 <raver119@gmail.com> * test and profiles Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton * one test case Signed-off-by: raver119 <raver119@gmail.com> * one test case Signed-off-by: raver119 <raver119@gmail.com> * compilation fix Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * Servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * logging + simple timing Signed-off-by: raver119 <raver119@gmail.com> * Content type fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Profile required Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Post test Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constants used Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Check content type Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Some tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Errors checking Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constraints and tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Dl4j servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Moving class to dl4j Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Builder extended Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * initial dl4j commit Signed-off-by: raver119 <raver119@gmail.com> * unirest version change Signed-off-by: raver119 <raver119@gmail.com> * temp fallback Signed-off-by: raver119 <raver119@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * revert unirest change Signed-off-by: raver119 <raver119@gmail.com> * some additional checks in builder Signed-off-by: raver119 <raver119@gmail.com> * few more fields Signed-off-by: raver119 <raver119@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * lombok Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * deps Signed-off-by: raver119 <raver119@gmail.com> * profiles re-introduced Signed-off-by: raver119 <raver119@gmail.com> * Added tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Model servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * get rid of old class Signed-off-by: raver119 <raver119@gmail.com> * use PI for inference Signed-off-by: raver119 <raver119@gmail.com> * superbuilder Signed-off-by: raver119 <raver119@gmail.com> * get back builder Signed-off-by: raver119 <raver119@gmail.com> * Servlet builder Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * PI setup Signed-off-by: raver119 <raver119@gmail.com> * get rid of superbuilder Signed-off-by: raver119 <raver119@gmail.com> * SameDiffServlet inheritance constructor Signed-off-by: raver119 <raver119@gmail.com> * dl4jservlet attached to samediffservlet Signed-off-by: raver119 <raver119@gmail.com> * builder types fix Signed-off-by: raver119 <raver119@gmail.com> * dummy model Signed-off-by: raver119 <raver119@gmail.com> * single out Signed-off-by: raver119 <raver119@gmail.com> * loss Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * missed builder type Signed-off-by: raver119 <raver119@gmail.com> * working serving example Signed-off-by: raver119 <raver119@gmail.com> * sd model fix Signed-off-by: raver119 <raver119@gmail.com> * fix unirest version Signed-off-by: raver119 <raver119@gmail.com> * More tests Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tests fixes Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Build fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Ser/deser added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * one more unirest fix Signed-off-by: raver119 <raver119@gmail.com> * Custom serializers Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests disabled Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * update Signed-off-by: raver119 <raver119@gmail.com> * some default fields values Signed-off-by: raver119 <raver119@gmail.com> * some comments/javadoc Signed-off-by: raver119 <raver119@gmail.com> * - move serde impls to client module - get rid of INDArray serde for now Signed-off-by: raver119 <raver119@gmail.com> * jackson-based serde for float[], double[] and String Signed-off-by: raver119 <raver119@gmail.com> * more of basic ser/de + tests Signed-off-by: raver119 <raver119@gmail.com> * minor api changes Signed-off-by: raver119 <raver119@gmail.com> * change imports/signatures Signed-off-by: raver119 <raver119@gmail.com> * Optional parralel inference Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Insert pause between tests as workaround for unavailable port issue Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * few unused imports removed Signed-off-by: raver119 <raver119@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * - InputAdapter + OutputAdapter = InferenceAdapter - JsonModelServer now allows separate configuration of InputAdapter and OutputAdapter Signed-off-by: raver119 <raver119@gmail.com> * unused import Signed-off-by: raver119 <raver119@gmail.com> * input adapter.. Signed-off-by: raver119 <raver119@gmail.com> * minor signature change Signed-off-by: raver119 <raver119@gmail.com> * few more signatures updated Signed-off-by: raver119 <raver119@gmail.com> * input/output adapter Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * javadocs added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * minor polishing Signed-off-by: raver119 <raver119@gmail.com> * more of javadoc Signed-off-by: raver119 <raver119@gmail.com> * signature change Signed-off-by: raver119 <raver119@gmail.com>
2019-08-14 12:11:09 +03:00
private InputAdapter<I> inputAdapter;
private OutputAdapter<O> outputAdapter;
private int port;
private boolean parallelMode = true;
// these fields actually require defaults
private InferenceMode inferenceMode = InferenceMode.BATCHED;
private int numWorkers = Nd4j.getAffinityManager().getNumberOfDevices();
public Builder(@NonNull SameDiff sdModel) {
this.sdModel = sdModel;
}
public Builder(@NonNull MultiLayerNetwork mlnModel) {
this.mlnModel = mlnModel;
}
public Builder(@NonNull ComputationGraph cgModel) {
this.cgModel = cgModel;
}
public Builder(@NonNull ParallelInference pi) {
this.pi = pi;
}
/**
* This method defines InferenceAdapter implementation, which will be used to convert object of Input type to the set of INDArray(s), and for conversion of resulting INDArray(s) into object of Output type
* @param inferenceAdapter
* @return
*/
public Builder<I,O> inferenceAdapter(@NonNull InferenceAdapter<I,O> inferenceAdapter) {
this.inferenceAdapter = inferenceAdapter;
return this;
}
/**
* This method allows you to specify InputAdapter to be used for inference
*
* PLEASE NOTE: This method is optional, and will require OutputAdapter<O> defined
* @param inputAdapter
* @return
*/
public Builder<I,O> inputAdapter(@NonNull InputAdapter<I> inputAdapter) {
this.inputAdapter = inputAdapter;
return this;
}
/**
* This method allows you to specify OutputtAdapter to be used for inference
*
* PLEASE NOTE: This method is optional, and will require InputAdapter<I> defined
* @param outputAdapter
* @return
*/
public Builder<I,O> outputAdapter(@NonNull OutputAdapter<O> outputAdapter) {
this.outputAdapter = outputAdapter;
return this;
}
/**
* This method allows you to specify JSON serializer.
* Incompatible with {@link #outputBinarySerializer(BinarySerializer)}
* Only one serializer - deserializer pair can be used by client and server.
[WIP] Remote inference (#96) * fix pad javadoc and @see links. (#72) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * [WIP] More fixes (#73) * special tests for ConstantTadHelper/ConstantShapeHelper Signed-off-by: raver119 <raver119@gmail.com> * release methods for data buffers Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary TadPack C++/Java side (#74) Signed-off-by: raver119 <raver119@gmail.com> * Zoo model TF import test updates (#75) * argLine fix, update compression_gru comment * updated comment for xception * undid but commented argLine change * updated xlnet comment * copyright headers * - new NDArray methods like()/ulike() (#77) - fix for depthwise_conv2d_bp + special test Signed-off-by: raver119 <raver119@gmail.com> * upsampling2d fix CUDA Signed-off-by: raver119 <raver119@gmail.com> * DL4J trace logging (#79) * MLN/CG trace logging for debugging Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tiny tweak Signed-off-by: AlexDBlack <blacka101@gmail.com> * strided_slice_bp shape fn leak fix Signed-off-by: raver119 <raver119@gmail.com> * SameDiff fixes and naming (#78) * remove SDVariable inplace methods * import methods * npe fix in OpVal * removed SameDiff inplace ops from tests * Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything * quick fixes * javadoc * SDVariable eval with placeholders * use regex match * better matching * fix javadoc. (#76) * fix javadoc. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace most @see with @link s. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * 4 additional tests Signed-off-by: raver119 <raver119@gmail.com> * Various DL4J/ND4J fixes (#81) * #7954 Force refresh of UI when switching tabs on overview page Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8017 Concurrent modification exception (synchronize) fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8033 Don't initialize updater in middle of writing memory crash dump Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8208 Fix shape checks for ND4J int[] creator methods Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6385 #7992 Keras import naming fixes + cleanup Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8016 Upsampling3D - add NDHWC format support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Refactor NativeOps.h to export C functions * Actually export functions from NativeOps.h * Adapt the Java wrappers in ND4J generated with JavaCPP * Create C wrappers for some of the C++ classes currently used by ND4J * remove duplicate code in createBufferDetached. (#83) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Keras model import - updater lr fix (#84) * Keras model import - updater lr fix Signed-off-by: eraly <susan.eraly@gmail.com> * Keras model import - updater lr fix, cleanup Signed-off-by: eraly <susan.eraly@gmail.com> * Fix functions of OpaqueVariablesSet * SameDiff Convolution Config validation, better output methods (#82) * Conv Config validation & tests Signed-off-by: Ryan Nett <rnett@skymind.io> * stackOutputs utility method Signed-off-by: Ryan Nett <rnett@skymind.io> * use constructor for validation, support negative kernel sizes (infered from weights) Signed-off-by: Ryan Nett <rnett@skymind.io> * better output methods Signed-off-by: Ryan Nett <rnett@skymind.io> * move output to be with fit and evaluate Signed-off-by: Ryan Nett <rnett@skymind.io> * fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * more fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * refactor duplicate code from pad methods. (#86) * refactor duplicate code from pad methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace switch with if. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes and improvements (#87) * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6488 ElementWiseVertex broadcast support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Constructors and broadcast supported it Transforms.max/min Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8054 ElementWiseVertex now supports broadcast inputs Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8057 Nd4j.create overload dtype fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7551 ND4J Shape validation fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * [WIP] Numpy boolean import (#91) * numpy bool type Signed-off-by: raver119 <raver119@gmail.com> * numpy bool java side Signed-off-by: raver119 <raver119@gmail.com> * remove create method with unused parameter. (#89) * remove create method with unused parameter. * removed more unused methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * removing more unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * last removal of unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * remove createSparse methods. (#92) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes (#90) * Deprecate Old*Op instances Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8063 #8054 Broadcast exceptions + cleanup inplace ops Signed-off-by: AlexDBlack <blacka101@gmail.com> * Small fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * Remove bad test condition Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7993 Fix shape function issue in crop_and_resize op Signed-off-by: AlexDBlack <blacka101@gmail.com> * DL4J SameDiff lambda layer fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8029 Fix for pnorm backprop math Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8038 Fix Op profiler NaN/Inf triggering + add tests (#93) Signed-off-by: AlexDBlack <blacka101@gmail.com> * createUninitializedDetached refactoring. (#94) * wip * update interface, add null implementations. * Breaking one test in a weird way. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * createUninitializedDetached refactored. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * cuda build fix for issues introduced by recent refactoring Signed-off-by: raver119 <raver119@gmail.com> * initial commit Signed-off-by: raver119 <raver119@gmail.com> * deps tweaks Signed-off-by: raver119 <raver119@gmail.com> * initial prototype Signed-off-by: raver119 <raver119@gmail.com> * modules reorganized Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * [WIP] More of CUDA (#95) * initial commit Signed-off-by: raver119 <raver119@gmail.com> * Implementation of hashcode cuda helper. Working edition. * Fixed parallel test input arangements. * Fixed tests for hashcode op. * Fixed shape calculation for image:crop_and_resize op and test. * NativeOps tests. Initial test suite. * Added tests for indexReduce methods. * Added test on execBroadcast with NDArray as dimensions. * Added test on execBroadcastBool with NDArray as dimensions. * Added tests on execPairwiseTransform and execPairwiseTransofrmBool. * Added tests for execReduce with scalar results. * Added reduce tests for non-empty dims array. * Added tests for reduce3. * Added tests for execScalar. * Added tests for execSummaryStats. * - provide cpu/cuda code for batch_to_space - testing it Signed-off-by: Yurii <yurii@skymind.io> * - remove old test for batch_to_space (had wrong format and numbers were not checked) Signed-off-by: Yurii <yurii@skymind.io> * Fixed complilation errors with test. * Added test for execTransformFloat. * Added test for execTransformSame. * Added test for execTransformBool. * Added test for execTransformStrict. * Added tests for execScalar/execScalarBool with TADs. * Added test for flatten. * - provide cpu/cuda code for space_to_Batch operaion Signed-off-by: Yurii <yurii@skymind.io> * Added test for concat. * comment unnecessary stuff in s_t_b Signed-off-by: Yurii <yurii@skymind.io> * Added test for specialConcat. * Added tests for memcpy/set routines. * Fixed pullRow cuda test. * Added pullRow test. * Added average test. * - correct typo in NDArray::applyPairwiseTransform(nd4j::pairwise::BoolOps op...) Signed-off-by: Yurii <yurii@skymind.io> * - debugging and fixing cuda tests in JavaInteropTests file Signed-off-by: Yurii <yurii@skymind.io> * - correct some tests Signed-off-by: Yurii <yurii@skymind.io> * Added test for shuffle. * Fixed ops declarations. * Restored omp and added shuffle test. * Added convertTypes test. * Added tests for execRandom. Eliminated usage of RandomBuffer with NativeOps. * Added sort tests. * Added tests for execCustomOp. * - further debuging and fixing tests terminated with crash Signed-off-by: Yurii <yurii@skymind.io> * Added tests for calculateOutputShapes. * Addded Benchmarks test. * Commented benchmark tests. * change assertion Signed-off-by: raver119 <raver119@gmail.com> * Added tests for apply_sgd op. Added cpu helper for that op. * Implement cuda helper for aplly_sgd op. Fixed tests for NativeOps. * Added test for assign broadcastable. * Added tests for assign_bp op. * Added tests for axpy op. * - assign/execScalar/execTransformAny signature change - minor test fix Signed-off-by: raver119 <raver119@gmail.com> * Fixed axpy op. * meh Signed-off-by: raver119 <raver119@gmail.com> * - fix tests for nativeOps::concat Signed-off-by: Yurii <yurii@skymind.io> * sequential transform/scalar Signed-off-by: raver119 <raver119@gmail.com> * allow nested parallelism Signed-off-by: raver119 <raver119@gmail.com> * assign_bp leak fix Signed-off-by: raver119 <raver119@gmail.com> * block setRNG fix Signed-off-by: raver119 <raver119@gmail.com> * enable parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * enable nested parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * Added cuda implementation for row_count helper. * Added implementation for tnse gains op helper. * - take into account possible situations when input arrays are empty in reduce_ cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implemented tsne/edge_forces op cuda-based helper. Parallelized cpu-based helper for edge_forces. * Added kernel for tsne/symmetrized op heleper. * Implementation of tsne/symmetrized op cuda helper. Working edition. * Eliminated waste printfs. * Added test for broadcastgradientargs op. * host-only fallback for empty reduce float Signed-off-by: raver119 <raver119@gmail.com> * - some tests fixes Signed-off-by: Yurii <yurii@skymind.io> * - correct the rest of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * - further correction of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * Added test for Cbow op. Also added cuda implementation for cbow helpers. * - improve code of stack operation for scalar case Signed-off-by: Yurii <yurii@skymind.io> * - provide cuda kernel for gatherND operation Signed-off-by: Yurii <yurii@skymind.io> * Implementation of cbow helpers with cuda kernels. * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * - further correction of cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implementatation of cbow op helper with cuda kernels. Working edition. * Skip random testing for cudablas case. * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for ELU and ELU_BP ops. * Added tests for eq_scalar, gt_scalar, gte_scalar and lte_scalar ops. * Added tests for neq_scalar. * Added test for noop. * - further work on clipbynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * - get rid of concat op call, use instead direct concat helper call Signed-off-by: Yurii <yurii@skymind.io> * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for lrelu and lrelu_bp. * Added tests for selu and selu_bp. * Fixed lrelu derivative helpers. * - some corrections in lstm Signed-off-by: Yurii <yurii@skymind.io> * operator * result shape fix Signed-off-by: raver119 <raver119@gmail.com> * - correct typo in lstmCell Signed-off-by: Yurii <yurii@skymind.io> * few tests fixed Signed-off-by: raver119 <raver119@gmail.com> * CUDA inverse broadcast bool fix Signed-off-by: raver119 <raver119@gmail.com> * disable MMAP test for CUDA Signed-off-by: raver119 <raver119@gmail.com> * BooleanOp syncToDevice Signed-off-by: raver119 <raver119@gmail.com> * meh Signed-off-by: raver119 <raver119@gmail.com> * additional data types for im2col/col2im Signed-off-by: raver119 <raver119@gmail.com> * Added test for firas_sparse op. * one more RandomBuffer test excluded Signed-off-by: raver119 <raver119@gmail.com> * Added tests for flatten op. * Added test for Floor op. * bunch of tests fixed Signed-off-by: raver119 <raver119@gmail.com> * mmulDot tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Implemented floordiv_bp op and tests. * Fixed scalar case with cuda implementation for bds. * - work on cuda kernel for clip_by_norm backprop op is completed Signed-off-by: Yurii <yurii@skymind.io> * Eliminate cbow crach. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Eliminated abortion with batched nlp test. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Fixed shared flag initializing. * disabled bunch of cpu workspaces tests Signed-off-by: raver119 <raver119@gmail.com> * scalar operators fix: missing registerSpecialUse call Signed-off-by: raver119 <raver119@gmail.com> * Fixed logdet for cuda and tests. * - correct clipBynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * Fixed crop_and_resize shape datatype. * - correct some mmul tests Signed-off-by: Yurii <yurii@skymind.io> * build fix Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI (#97) Signed-off-by: raver119 <raver119@gmail.com> * temporary stack fix Signed-off-by: raver119 <raver119@gmail.com> * downgrade jetty to latest stable version Signed-off-by: raver119 <raver119@gmail.com> * test and profiles Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton * one test case Signed-off-by: raver119 <raver119@gmail.com> * one test case Signed-off-by: raver119 <raver119@gmail.com> * compilation fix Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * Servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * logging + simple timing Signed-off-by: raver119 <raver119@gmail.com> * Content type fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Profile required Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Post test Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constants used Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Check content type Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Some tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Errors checking Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constraints and tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Dl4j servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Moving class to dl4j Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Builder extended Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * initial dl4j commit Signed-off-by: raver119 <raver119@gmail.com> * unirest version change Signed-off-by: raver119 <raver119@gmail.com> * temp fallback Signed-off-by: raver119 <raver119@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * revert unirest change Signed-off-by: raver119 <raver119@gmail.com> * some additional checks in builder Signed-off-by: raver119 <raver119@gmail.com> * few more fields Signed-off-by: raver119 <raver119@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * lombok Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * deps Signed-off-by: raver119 <raver119@gmail.com> * profiles re-introduced Signed-off-by: raver119 <raver119@gmail.com> * Added tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Model servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * get rid of old class Signed-off-by: raver119 <raver119@gmail.com> * use PI for inference Signed-off-by: raver119 <raver119@gmail.com> * superbuilder Signed-off-by: raver119 <raver119@gmail.com> * get back builder Signed-off-by: raver119 <raver119@gmail.com> * Servlet builder Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * PI setup Signed-off-by: raver119 <raver119@gmail.com> * get rid of superbuilder Signed-off-by: raver119 <raver119@gmail.com> * SameDiffServlet inheritance constructor Signed-off-by: raver119 <raver119@gmail.com> * dl4jservlet attached to samediffservlet Signed-off-by: raver119 <raver119@gmail.com> * builder types fix Signed-off-by: raver119 <raver119@gmail.com> * dummy model Signed-off-by: raver119 <raver119@gmail.com> * single out Signed-off-by: raver119 <raver119@gmail.com> * loss Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * missed builder type Signed-off-by: raver119 <raver119@gmail.com> * working serving example Signed-off-by: raver119 <raver119@gmail.com> * sd model fix Signed-off-by: raver119 <raver119@gmail.com> * fix unirest version Signed-off-by: raver119 <raver119@gmail.com> * More tests Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tests fixes Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Build fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Ser/deser added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * one more unirest fix Signed-off-by: raver119 <raver119@gmail.com> * Custom serializers Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests disabled Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * update Signed-off-by: raver119 <raver119@gmail.com> * some default fields values Signed-off-by: raver119 <raver119@gmail.com> * some comments/javadoc Signed-off-by: raver119 <raver119@gmail.com> * - move serde impls to client module - get rid of INDArray serde for now Signed-off-by: raver119 <raver119@gmail.com> * jackson-based serde for float[], double[] and String Signed-off-by: raver119 <raver119@gmail.com> * more of basic ser/de + tests Signed-off-by: raver119 <raver119@gmail.com> * minor api changes Signed-off-by: raver119 <raver119@gmail.com> * change imports/signatures Signed-off-by: raver119 <raver119@gmail.com> * Optional parralel inference Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Insert pause between tests as workaround for unavailable port issue Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * few unused imports removed Signed-off-by: raver119 <raver119@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * - InputAdapter + OutputAdapter = InferenceAdapter - JsonModelServer now allows separate configuration of InputAdapter and OutputAdapter Signed-off-by: raver119 <raver119@gmail.com> * unused import Signed-off-by: raver119 <raver119@gmail.com> * input adapter.. Signed-off-by: raver119 <raver119@gmail.com> * minor signature change Signed-off-by: raver119 <raver119@gmail.com> * few more signatures updated Signed-off-by: raver119 <raver119@gmail.com> * input/output adapter Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * javadocs added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * minor polishing Signed-off-by: raver119 <raver119@gmail.com> * more of javadoc Signed-off-by: raver119 <raver119@gmail.com> * signature change Signed-off-by: raver119 <raver119@gmail.com>
2019-08-14 12:11:09 +03:00
*
* @param serializer
* @return
*/
public Builder<I,O> outputSerializer(@NonNull JsonSerializer<O> serializer) {
this.serializer = serializer;
return this;
}
/**
* This method allows you to specify JSON deserializer.
* Incompatible with {@link #inputBinaryDeserializer(BinaryDeserializer)}
* Only one serializer - deserializer pair can be used by client and server.
[WIP] Remote inference (#96) * fix pad javadoc and @see links. (#72) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * [WIP] More fixes (#73) * special tests for ConstantTadHelper/ConstantShapeHelper Signed-off-by: raver119 <raver119@gmail.com> * release methods for data buffers Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary TadPack C++/Java side (#74) Signed-off-by: raver119 <raver119@gmail.com> * Zoo model TF import test updates (#75) * argLine fix, update compression_gru comment * updated comment for xception * undid but commented argLine change * updated xlnet comment * copyright headers * - new NDArray methods like()/ulike() (#77) - fix for depthwise_conv2d_bp + special test Signed-off-by: raver119 <raver119@gmail.com> * upsampling2d fix CUDA Signed-off-by: raver119 <raver119@gmail.com> * DL4J trace logging (#79) * MLN/CG trace logging for debugging Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tiny tweak Signed-off-by: AlexDBlack <blacka101@gmail.com> * strided_slice_bp shape fn leak fix Signed-off-by: raver119 <raver119@gmail.com> * SameDiff fixes and naming (#78) * remove SDVariable inplace methods * import methods * npe fix in OpVal * removed SameDiff inplace ops from tests * Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything * quick fixes * javadoc * SDVariable eval with placeholders * use regex match * better matching * fix javadoc. (#76) * fix javadoc. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace most @see with @link s. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * 4 additional tests Signed-off-by: raver119 <raver119@gmail.com> * Various DL4J/ND4J fixes (#81) * #7954 Force refresh of UI when switching tabs on overview page Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8017 Concurrent modification exception (synchronize) fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8033 Don't initialize updater in middle of writing memory crash dump Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8208 Fix shape checks for ND4J int[] creator methods Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6385 #7992 Keras import naming fixes + cleanup Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8016 Upsampling3D - add NDHWC format support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Refactor NativeOps.h to export C functions * Actually export functions from NativeOps.h * Adapt the Java wrappers in ND4J generated with JavaCPP * Create C wrappers for some of the C++ classes currently used by ND4J * remove duplicate code in createBufferDetached. (#83) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Keras model import - updater lr fix (#84) * Keras model import - updater lr fix Signed-off-by: eraly <susan.eraly@gmail.com> * Keras model import - updater lr fix, cleanup Signed-off-by: eraly <susan.eraly@gmail.com> * Fix functions of OpaqueVariablesSet * SameDiff Convolution Config validation, better output methods (#82) * Conv Config validation & tests Signed-off-by: Ryan Nett <rnett@skymind.io> * stackOutputs utility method Signed-off-by: Ryan Nett <rnett@skymind.io> * use constructor for validation, support negative kernel sizes (infered from weights) Signed-off-by: Ryan Nett <rnett@skymind.io> * better output methods Signed-off-by: Ryan Nett <rnett@skymind.io> * move output to be with fit and evaluate Signed-off-by: Ryan Nett <rnett@skymind.io> * fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * more fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * refactor duplicate code from pad methods. (#86) * refactor duplicate code from pad methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace switch with if. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes and improvements (#87) * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6488 ElementWiseVertex broadcast support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Constructors and broadcast supported it Transforms.max/min Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8054 ElementWiseVertex now supports broadcast inputs Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8057 Nd4j.create overload dtype fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7551 ND4J Shape validation fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * [WIP] Numpy boolean import (#91) * numpy bool type Signed-off-by: raver119 <raver119@gmail.com> * numpy bool java side Signed-off-by: raver119 <raver119@gmail.com> * remove create method with unused parameter. (#89) * remove create method with unused parameter. * removed more unused methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * removing more unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * last removal of unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * remove createSparse methods. (#92) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes (#90) * Deprecate Old*Op instances Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8063 #8054 Broadcast exceptions + cleanup inplace ops Signed-off-by: AlexDBlack <blacka101@gmail.com> * Small fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * Remove bad test condition Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7993 Fix shape function issue in crop_and_resize op Signed-off-by: AlexDBlack <blacka101@gmail.com> * DL4J SameDiff lambda layer fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8029 Fix for pnorm backprop math Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8038 Fix Op profiler NaN/Inf triggering + add tests (#93) Signed-off-by: AlexDBlack <blacka101@gmail.com> * createUninitializedDetached refactoring. (#94) * wip * update interface, add null implementations. * Breaking one test in a weird way. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * createUninitializedDetached refactored. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * cuda build fix for issues introduced by recent refactoring Signed-off-by: raver119 <raver119@gmail.com> * initial commit Signed-off-by: raver119 <raver119@gmail.com> * deps tweaks Signed-off-by: raver119 <raver119@gmail.com> * initial prototype Signed-off-by: raver119 <raver119@gmail.com> * modules reorganized Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * [WIP] More of CUDA (#95) * initial commit Signed-off-by: raver119 <raver119@gmail.com> * Implementation of hashcode cuda helper. Working edition. * Fixed parallel test input arangements. * Fixed tests for hashcode op. * Fixed shape calculation for image:crop_and_resize op and test. * NativeOps tests. Initial test suite. * Added tests for indexReduce methods. * Added test on execBroadcast with NDArray as dimensions. * Added test on execBroadcastBool with NDArray as dimensions. * Added tests on execPairwiseTransform and execPairwiseTransofrmBool. * Added tests for execReduce with scalar results. * Added reduce tests for non-empty dims array. * Added tests for reduce3. * Added tests for execScalar. * Added tests for execSummaryStats. * - provide cpu/cuda code for batch_to_space - testing it Signed-off-by: Yurii <yurii@skymind.io> * - remove old test for batch_to_space (had wrong format and numbers were not checked) Signed-off-by: Yurii <yurii@skymind.io> * Fixed complilation errors with test. * Added test for execTransformFloat. * Added test for execTransformSame. * Added test for execTransformBool. * Added test for execTransformStrict. * Added tests for execScalar/execScalarBool with TADs. * Added test for flatten. * - provide cpu/cuda code for space_to_Batch operaion Signed-off-by: Yurii <yurii@skymind.io> * Added test for concat. * comment unnecessary stuff in s_t_b Signed-off-by: Yurii <yurii@skymind.io> * Added test for specialConcat. * Added tests for memcpy/set routines. * Fixed pullRow cuda test. * Added pullRow test. * Added average test. * - correct typo in NDArray::applyPairwiseTransform(nd4j::pairwise::BoolOps op...) Signed-off-by: Yurii <yurii@skymind.io> * - debugging and fixing cuda tests in JavaInteropTests file Signed-off-by: Yurii <yurii@skymind.io> * - correct some tests Signed-off-by: Yurii <yurii@skymind.io> * Added test for shuffle. * Fixed ops declarations. * Restored omp and added shuffle test. * Added convertTypes test. * Added tests for execRandom. Eliminated usage of RandomBuffer with NativeOps. * Added sort tests. * Added tests for execCustomOp. * - further debuging and fixing tests terminated with crash Signed-off-by: Yurii <yurii@skymind.io> * Added tests for calculateOutputShapes. * Addded Benchmarks test. * Commented benchmark tests. * change assertion Signed-off-by: raver119 <raver119@gmail.com> * Added tests for apply_sgd op. Added cpu helper for that op. * Implement cuda helper for aplly_sgd op. Fixed tests for NativeOps. * Added test for assign broadcastable. * Added tests for assign_bp op. * Added tests for axpy op. * - assign/execScalar/execTransformAny signature change - minor test fix Signed-off-by: raver119 <raver119@gmail.com> * Fixed axpy op. * meh Signed-off-by: raver119 <raver119@gmail.com> * - fix tests for nativeOps::concat Signed-off-by: Yurii <yurii@skymind.io> * sequential transform/scalar Signed-off-by: raver119 <raver119@gmail.com> * allow nested parallelism Signed-off-by: raver119 <raver119@gmail.com> * assign_bp leak fix Signed-off-by: raver119 <raver119@gmail.com> * block setRNG fix Signed-off-by: raver119 <raver119@gmail.com> * enable parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * enable nested parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * Added cuda implementation for row_count helper. * Added implementation for tnse gains op helper. * - take into account possible situations when input arrays are empty in reduce_ cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implemented tsne/edge_forces op cuda-based helper. Parallelized cpu-based helper for edge_forces. * Added kernel for tsne/symmetrized op heleper. * Implementation of tsne/symmetrized op cuda helper. Working edition. * Eliminated waste printfs. * Added test for broadcastgradientargs op. * host-only fallback for empty reduce float Signed-off-by: raver119 <raver119@gmail.com> * - some tests fixes Signed-off-by: Yurii <yurii@skymind.io> * - correct the rest of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * - further correction of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * Added test for Cbow op. Also added cuda implementation for cbow helpers. * - improve code of stack operation for scalar case Signed-off-by: Yurii <yurii@skymind.io> * - provide cuda kernel for gatherND operation Signed-off-by: Yurii <yurii@skymind.io> * Implementation of cbow helpers with cuda kernels. * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * - further correction of cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implementatation of cbow op helper with cuda kernels. Working edition. * Skip random testing for cudablas case. * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for ELU and ELU_BP ops. * Added tests for eq_scalar, gt_scalar, gte_scalar and lte_scalar ops. * Added tests for neq_scalar. * Added test for noop. * - further work on clipbynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * - get rid of concat op call, use instead direct concat helper call Signed-off-by: Yurii <yurii@skymind.io> * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for lrelu and lrelu_bp. * Added tests for selu and selu_bp. * Fixed lrelu derivative helpers. * - some corrections in lstm Signed-off-by: Yurii <yurii@skymind.io> * operator * result shape fix Signed-off-by: raver119 <raver119@gmail.com> * - correct typo in lstmCell Signed-off-by: Yurii <yurii@skymind.io> * few tests fixed Signed-off-by: raver119 <raver119@gmail.com> * CUDA inverse broadcast bool fix Signed-off-by: raver119 <raver119@gmail.com> * disable MMAP test for CUDA Signed-off-by: raver119 <raver119@gmail.com> * BooleanOp syncToDevice Signed-off-by: raver119 <raver119@gmail.com> * meh Signed-off-by: raver119 <raver119@gmail.com> * additional data types for im2col/col2im Signed-off-by: raver119 <raver119@gmail.com> * Added test for firas_sparse op. * one more RandomBuffer test excluded Signed-off-by: raver119 <raver119@gmail.com> * Added tests for flatten op. * Added test for Floor op. * bunch of tests fixed Signed-off-by: raver119 <raver119@gmail.com> * mmulDot tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Implemented floordiv_bp op and tests. * Fixed scalar case with cuda implementation for bds. * - work on cuda kernel for clip_by_norm backprop op is completed Signed-off-by: Yurii <yurii@skymind.io> * Eliminate cbow crach. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Eliminated abortion with batched nlp test. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Fixed shared flag initializing. * disabled bunch of cpu workspaces tests Signed-off-by: raver119 <raver119@gmail.com> * scalar operators fix: missing registerSpecialUse call Signed-off-by: raver119 <raver119@gmail.com> * Fixed logdet for cuda and tests. * - correct clipBynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * Fixed crop_and_resize shape datatype. * - correct some mmul tests Signed-off-by: Yurii <yurii@skymind.io> * build fix Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI (#97) Signed-off-by: raver119 <raver119@gmail.com> * temporary stack fix Signed-off-by: raver119 <raver119@gmail.com> * downgrade jetty to latest stable version Signed-off-by: raver119 <raver119@gmail.com> * test and profiles Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton * one test case Signed-off-by: raver119 <raver119@gmail.com> * one test case Signed-off-by: raver119 <raver119@gmail.com> * compilation fix Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * Servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * logging + simple timing Signed-off-by: raver119 <raver119@gmail.com> * Content type fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Profile required Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Post test Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constants used Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Check content type Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Some tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Errors checking Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constraints and tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Dl4j servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Moving class to dl4j Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Builder extended Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * initial dl4j commit Signed-off-by: raver119 <raver119@gmail.com> * unirest version change Signed-off-by: raver119 <raver119@gmail.com> * temp fallback Signed-off-by: raver119 <raver119@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * revert unirest change Signed-off-by: raver119 <raver119@gmail.com> * some additional checks in builder Signed-off-by: raver119 <raver119@gmail.com> * few more fields Signed-off-by: raver119 <raver119@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * lombok Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * deps Signed-off-by: raver119 <raver119@gmail.com> * profiles re-introduced Signed-off-by: raver119 <raver119@gmail.com> * Added tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Model servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * get rid of old class Signed-off-by: raver119 <raver119@gmail.com> * use PI for inference Signed-off-by: raver119 <raver119@gmail.com> * superbuilder Signed-off-by: raver119 <raver119@gmail.com> * get back builder Signed-off-by: raver119 <raver119@gmail.com> * Servlet builder Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * PI setup Signed-off-by: raver119 <raver119@gmail.com> * get rid of superbuilder Signed-off-by: raver119 <raver119@gmail.com> * SameDiffServlet inheritance constructor Signed-off-by: raver119 <raver119@gmail.com> * dl4jservlet attached to samediffservlet Signed-off-by: raver119 <raver119@gmail.com> * builder types fix Signed-off-by: raver119 <raver119@gmail.com> * dummy model Signed-off-by: raver119 <raver119@gmail.com> * single out Signed-off-by: raver119 <raver119@gmail.com> * loss Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * missed builder type Signed-off-by: raver119 <raver119@gmail.com> * working serving example Signed-off-by: raver119 <raver119@gmail.com> * sd model fix Signed-off-by: raver119 <raver119@gmail.com> * fix unirest version Signed-off-by: raver119 <raver119@gmail.com> * More tests Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tests fixes Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Build fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Ser/deser added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * one more unirest fix Signed-off-by: raver119 <raver119@gmail.com> * Custom serializers Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests disabled Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * update Signed-off-by: raver119 <raver119@gmail.com> * some default fields values Signed-off-by: raver119 <raver119@gmail.com> * some comments/javadoc Signed-off-by: raver119 <raver119@gmail.com> * - move serde impls to client module - get rid of INDArray serde for now Signed-off-by: raver119 <raver119@gmail.com> * jackson-based serde for float[], double[] and String Signed-off-by: raver119 <raver119@gmail.com> * more of basic ser/de + tests Signed-off-by: raver119 <raver119@gmail.com> * minor api changes Signed-off-by: raver119 <raver119@gmail.com> * change imports/signatures Signed-off-by: raver119 <raver119@gmail.com> * Optional parralel inference Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Insert pause between tests as workaround for unavailable port issue Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * few unused imports removed Signed-off-by: raver119 <raver119@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * - InputAdapter + OutputAdapter = InferenceAdapter - JsonModelServer now allows separate configuration of InputAdapter and OutputAdapter Signed-off-by: raver119 <raver119@gmail.com> * unused import Signed-off-by: raver119 <raver119@gmail.com> * input adapter.. Signed-off-by: raver119 <raver119@gmail.com> * minor signature change Signed-off-by: raver119 <raver119@gmail.com> * few more signatures updated Signed-off-by: raver119 <raver119@gmail.com> * input/output adapter Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * javadocs added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * minor polishing Signed-off-by: raver119 <raver119@gmail.com> * more of javadoc Signed-off-by: raver119 <raver119@gmail.com> * signature change Signed-off-by: raver119 <raver119@gmail.com>
2019-08-14 12:11:09 +03:00
*
* @param deserializer
* @return
*/
public Builder<I,O> inputDeserializer(@NonNull JsonDeserializer<I> deserializer) {
this.deserializer = deserializer;
return this;
}
/**
* This method allows you to specify binary serializer.
* Incompatible with {@link #outputSerializer(JsonSerializer)}
* Only one serializer - deserializer pair can be used by client and server.
*
* @param serializer
* @return
*/
public Builder<I,O> outputBinarySerializer(@NonNull BinarySerializer<O> serializer) {
this.binarySerializer = serializer;
return this;
}
/**
* This method allows you to specify binary deserializer
* Incompatible with {@link #inputDeserializer(JsonDeserializer)}
* Only one serializer - deserializer pair can be used by client and server.
*
* @param deserializer
* @return
*/
public Builder<I,O> inputBinaryDeserializer(@NonNull BinaryDeserializer<I> deserializer) {
this.binaryDeserializer = deserializer;
return this;
}
[WIP] Remote inference (#96) * fix pad javadoc and @see links. (#72) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * [WIP] More fixes (#73) * special tests for ConstantTadHelper/ConstantShapeHelper Signed-off-by: raver119 <raver119@gmail.com> * release methods for data buffers Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary TadPack C++/Java side (#74) Signed-off-by: raver119 <raver119@gmail.com> * Zoo model TF import test updates (#75) * argLine fix, update compression_gru comment * updated comment for xception * undid but commented argLine change * updated xlnet comment * copyright headers * - new NDArray methods like()/ulike() (#77) - fix for depthwise_conv2d_bp + special test Signed-off-by: raver119 <raver119@gmail.com> * upsampling2d fix CUDA Signed-off-by: raver119 <raver119@gmail.com> * DL4J trace logging (#79) * MLN/CG trace logging for debugging Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tiny tweak Signed-off-by: AlexDBlack <blacka101@gmail.com> * strided_slice_bp shape fn leak fix Signed-off-by: raver119 <raver119@gmail.com> * SameDiff fixes and naming (#78) * remove SDVariable inplace methods * import methods * npe fix in OpVal * removed SameDiff inplace ops from tests * Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything * quick fixes * javadoc * SDVariable eval with placeholders * use regex match * better matching * fix javadoc. (#76) * fix javadoc. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace most @see with @link s. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * 4 additional tests Signed-off-by: raver119 <raver119@gmail.com> * Various DL4J/ND4J fixes (#81) * #7954 Force refresh of UI when switching tabs on overview page Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8017 Concurrent modification exception (synchronize) fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8033 Don't initialize updater in middle of writing memory crash dump Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8208 Fix shape checks for ND4J int[] creator methods Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6385 #7992 Keras import naming fixes + cleanup Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8016 Upsampling3D - add NDHWC format support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Refactor NativeOps.h to export C functions * Actually export functions from NativeOps.h * Adapt the Java wrappers in ND4J generated with JavaCPP * Create C wrappers for some of the C++ classes currently used by ND4J * remove duplicate code in createBufferDetached. (#83) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Keras model import - updater lr fix (#84) * Keras model import - updater lr fix Signed-off-by: eraly <susan.eraly@gmail.com> * Keras model import - updater lr fix, cleanup Signed-off-by: eraly <susan.eraly@gmail.com> * Fix functions of OpaqueVariablesSet * SameDiff Convolution Config validation, better output methods (#82) * Conv Config validation & tests Signed-off-by: Ryan Nett <rnett@skymind.io> * stackOutputs utility method Signed-off-by: Ryan Nett <rnett@skymind.io> * use constructor for validation, support negative kernel sizes (infered from weights) Signed-off-by: Ryan Nett <rnett@skymind.io> * better output methods Signed-off-by: Ryan Nett <rnett@skymind.io> * move output to be with fit and evaluate Signed-off-by: Ryan Nett <rnett@skymind.io> * fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * more fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * refactor duplicate code from pad methods. (#86) * refactor duplicate code from pad methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace switch with if. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes and improvements (#87) * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6488 ElementWiseVertex broadcast support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Constructors and broadcast supported it Transforms.max/min Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8054 ElementWiseVertex now supports broadcast inputs Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8057 Nd4j.create overload dtype fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7551 ND4J Shape validation fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * [WIP] Numpy boolean import (#91) * numpy bool type Signed-off-by: raver119 <raver119@gmail.com> * numpy bool java side Signed-off-by: raver119 <raver119@gmail.com> * remove create method with unused parameter. (#89) * remove create method with unused parameter. * removed more unused methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * removing more unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * last removal of unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * remove createSparse methods. (#92) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes (#90) * Deprecate Old*Op instances Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8063 #8054 Broadcast exceptions + cleanup inplace ops Signed-off-by: AlexDBlack <blacka101@gmail.com> * Small fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * Remove bad test condition Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7993 Fix shape function issue in crop_and_resize op Signed-off-by: AlexDBlack <blacka101@gmail.com> * DL4J SameDiff lambda layer fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8029 Fix for pnorm backprop math Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8038 Fix Op profiler NaN/Inf triggering + add tests (#93) Signed-off-by: AlexDBlack <blacka101@gmail.com> * createUninitializedDetached refactoring. (#94) * wip * update interface, add null implementations. * Breaking one test in a weird way. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * createUninitializedDetached refactored. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * cuda build fix for issues introduced by recent refactoring Signed-off-by: raver119 <raver119@gmail.com> * initial commit Signed-off-by: raver119 <raver119@gmail.com> * deps tweaks Signed-off-by: raver119 <raver119@gmail.com> * initial prototype Signed-off-by: raver119 <raver119@gmail.com> * modules reorganized Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * [WIP] More of CUDA (#95) * initial commit Signed-off-by: raver119 <raver119@gmail.com> * Implementation of hashcode cuda helper. Working edition. * Fixed parallel test input arangements. * Fixed tests for hashcode op. * Fixed shape calculation for image:crop_and_resize op and test. * NativeOps tests. Initial test suite. * Added tests for indexReduce methods. * Added test on execBroadcast with NDArray as dimensions. * Added test on execBroadcastBool with NDArray as dimensions. * Added tests on execPairwiseTransform and execPairwiseTransofrmBool. * Added tests for execReduce with scalar results. * Added reduce tests for non-empty dims array. * Added tests for reduce3. * Added tests for execScalar. * Added tests for execSummaryStats. * - provide cpu/cuda code for batch_to_space - testing it Signed-off-by: Yurii <yurii@skymind.io> * - remove old test for batch_to_space (had wrong format and numbers were not checked) Signed-off-by: Yurii <yurii@skymind.io> * Fixed complilation errors with test. * Added test for execTransformFloat. * Added test for execTransformSame. * Added test for execTransformBool. * Added test for execTransformStrict. * Added tests for execScalar/execScalarBool with TADs. * Added test for flatten. * - provide cpu/cuda code for space_to_Batch operaion Signed-off-by: Yurii <yurii@skymind.io> * Added test for concat. * comment unnecessary stuff in s_t_b Signed-off-by: Yurii <yurii@skymind.io> * Added test for specialConcat. * Added tests for memcpy/set routines. * Fixed pullRow cuda test. * Added pullRow test. * Added average test. * - correct typo in NDArray::applyPairwiseTransform(nd4j::pairwise::BoolOps op...) Signed-off-by: Yurii <yurii@skymind.io> * - debugging and fixing cuda tests in JavaInteropTests file Signed-off-by: Yurii <yurii@skymind.io> * - correct some tests Signed-off-by: Yurii <yurii@skymind.io> * Added test for shuffle. * Fixed ops declarations. * Restored omp and added shuffle test. * Added convertTypes test. * Added tests for execRandom. Eliminated usage of RandomBuffer with NativeOps. * Added sort tests. * Added tests for execCustomOp. * - further debuging and fixing tests terminated with crash Signed-off-by: Yurii <yurii@skymind.io> * Added tests for calculateOutputShapes. * Addded Benchmarks test. * Commented benchmark tests. * change assertion Signed-off-by: raver119 <raver119@gmail.com> * Added tests for apply_sgd op. Added cpu helper for that op. * Implement cuda helper for aplly_sgd op. Fixed tests for NativeOps. * Added test for assign broadcastable. * Added tests for assign_bp op. * Added tests for axpy op. * - assign/execScalar/execTransformAny signature change - minor test fix Signed-off-by: raver119 <raver119@gmail.com> * Fixed axpy op. * meh Signed-off-by: raver119 <raver119@gmail.com> * - fix tests for nativeOps::concat Signed-off-by: Yurii <yurii@skymind.io> * sequential transform/scalar Signed-off-by: raver119 <raver119@gmail.com> * allow nested parallelism Signed-off-by: raver119 <raver119@gmail.com> * assign_bp leak fix Signed-off-by: raver119 <raver119@gmail.com> * block setRNG fix Signed-off-by: raver119 <raver119@gmail.com> * enable parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * enable nested parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * Added cuda implementation for row_count helper. * Added implementation for tnse gains op helper. * - take into account possible situations when input arrays are empty in reduce_ cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implemented tsne/edge_forces op cuda-based helper. Parallelized cpu-based helper for edge_forces. * Added kernel for tsne/symmetrized op heleper. * Implementation of tsne/symmetrized op cuda helper. Working edition. * Eliminated waste printfs. * Added test for broadcastgradientargs op. * host-only fallback for empty reduce float Signed-off-by: raver119 <raver119@gmail.com> * - some tests fixes Signed-off-by: Yurii <yurii@skymind.io> * - correct the rest of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * - further correction of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * Added test for Cbow op. Also added cuda implementation for cbow helpers. * - improve code of stack operation for scalar case Signed-off-by: Yurii <yurii@skymind.io> * - provide cuda kernel for gatherND operation Signed-off-by: Yurii <yurii@skymind.io> * Implementation of cbow helpers with cuda kernels. * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * - further correction of cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implementatation of cbow op helper with cuda kernels. Working edition. * Skip random testing for cudablas case. * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for ELU and ELU_BP ops. * Added tests for eq_scalar, gt_scalar, gte_scalar and lte_scalar ops. * Added tests for neq_scalar. * Added test for noop. * - further work on clipbynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * - get rid of concat op call, use instead direct concat helper call Signed-off-by: Yurii <yurii@skymind.io> * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for lrelu and lrelu_bp. * Added tests for selu and selu_bp. * Fixed lrelu derivative helpers. * - some corrections in lstm Signed-off-by: Yurii <yurii@skymind.io> * operator * result shape fix Signed-off-by: raver119 <raver119@gmail.com> * - correct typo in lstmCell Signed-off-by: Yurii <yurii@skymind.io> * few tests fixed Signed-off-by: raver119 <raver119@gmail.com> * CUDA inverse broadcast bool fix Signed-off-by: raver119 <raver119@gmail.com> * disable MMAP test for CUDA Signed-off-by: raver119 <raver119@gmail.com> * BooleanOp syncToDevice Signed-off-by: raver119 <raver119@gmail.com> * meh Signed-off-by: raver119 <raver119@gmail.com> * additional data types for im2col/col2im Signed-off-by: raver119 <raver119@gmail.com> * Added test for firas_sparse op. * one more RandomBuffer test excluded Signed-off-by: raver119 <raver119@gmail.com> * Added tests for flatten op. * Added test for Floor op. * bunch of tests fixed Signed-off-by: raver119 <raver119@gmail.com> * mmulDot tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Implemented floordiv_bp op and tests. * Fixed scalar case with cuda implementation for bds. * - work on cuda kernel for clip_by_norm backprop op is completed Signed-off-by: Yurii <yurii@skymind.io> * Eliminate cbow crach. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Eliminated abortion with batched nlp test. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Fixed shared flag initializing. * disabled bunch of cpu workspaces tests Signed-off-by: raver119 <raver119@gmail.com> * scalar operators fix: missing registerSpecialUse call Signed-off-by: raver119 <raver119@gmail.com> * Fixed logdet for cuda and tests. * - correct clipBynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * Fixed crop_and_resize shape datatype. * - correct some mmul tests Signed-off-by: Yurii <yurii@skymind.io> * build fix Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI (#97) Signed-off-by: raver119 <raver119@gmail.com> * temporary stack fix Signed-off-by: raver119 <raver119@gmail.com> * downgrade jetty to latest stable version Signed-off-by: raver119 <raver119@gmail.com> * test and profiles Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton * one test case Signed-off-by: raver119 <raver119@gmail.com> * one test case Signed-off-by: raver119 <raver119@gmail.com> * compilation fix Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * Servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * logging + simple timing Signed-off-by: raver119 <raver119@gmail.com> * Content type fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Profile required Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Post test Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constants used Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Check content type Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Some tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Errors checking Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constraints and tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Dl4j servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Moving class to dl4j Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Builder extended Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * initial dl4j commit Signed-off-by: raver119 <raver119@gmail.com> * unirest version change Signed-off-by: raver119 <raver119@gmail.com> * temp fallback Signed-off-by: raver119 <raver119@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * revert unirest change Signed-off-by: raver119 <raver119@gmail.com> * some additional checks in builder Signed-off-by: raver119 <raver119@gmail.com> * few more fields Signed-off-by: raver119 <raver119@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * lombok Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * deps Signed-off-by: raver119 <raver119@gmail.com> * profiles re-introduced Signed-off-by: raver119 <raver119@gmail.com> * Added tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Model servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * get rid of old class Signed-off-by: raver119 <raver119@gmail.com> * use PI for inference Signed-off-by: raver119 <raver119@gmail.com> * superbuilder Signed-off-by: raver119 <raver119@gmail.com> * get back builder Signed-off-by: raver119 <raver119@gmail.com> * Servlet builder Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * PI setup Signed-off-by: raver119 <raver119@gmail.com> * get rid of superbuilder Signed-off-by: raver119 <raver119@gmail.com> * SameDiffServlet inheritance constructor Signed-off-by: raver119 <raver119@gmail.com> * dl4jservlet attached to samediffservlet Signed-off-by: raver119 <raver119@gmail.com> * builder types fix Signed-off-by: raver119 <raver119@gmail.com> * dummy model Signed-off-by: raver119 <raver119@gmail.com> * single out Signed-off-by: raver119 <raver119@gmail.com> * loss Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * missed builder type Signed-off-by: raver119 <raver119@gmail.com> * working serving example Signed-off-by: raver119 <raver119@gmail.com> * sd model fix Signed-off-by: raver119 <raver119@gmail.com> * fix unirest version Signed-off-by: raver119 <raver119@gmail.com> * More tests Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tests fixes Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Build fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Ser/deser added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * one more unirest fix Signed-off-by: raver119 <raver119@gmail.com> * Custom serializers Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests disabled Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * update Signed-off-by: raver119 <raver119@gmail.com> * some default fields values Signed-off-by: raver119 <raver119@gmail.com> * some comments/javadoc Signed-off-by: raver119 <raver119@gmail.com> * - move serde impls to client module - get rid of INDArray serde for now Signed-off-by: raver119 <raver119@gmail.com> * jackson-based serde for float[], double[] and String Signed-off-by: raver119 <raver119@gmail.com> * more of basic ser/de + tests Signed-off-by: raver119 <raver119@gmail.com> * minor api changes Signed-off-by: raver119 <raver119@gmail.com> * change imports/signatures Signed-off-by: raver119 <raver119@gmail.com> * Optional parralel inference Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Insert pause between tests as workaround for unavailable port issue Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * few unused imports removed Signed-off-by: raver119 <raver119@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * - InputAdapter + OutputAdapter = InferenceAdapter - JsonModelServer now allows separate configuration of InputAdapter and OutputAdapter Signed-off-by: raver119 <raver119@gmail.com> * unused import Signed-off-by: raver119 <raver119@gmail.com> * input adapter.. Signed-off-by: raver119 <raver119@gmail.com> * minor signature change Signed-off-by: raver119 <raver119@gmail.com> * few more signatures updated Signed-off-by: raver119 <raver119@gmail.com> * input/output adapter Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * javadocs added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * minor polishing Signed-off-by: raver119 <raver119@gmail.com> * more of javadoc Signed-off-by: raver119 <raver119@gmail.com> * signature change Signed-off-by: raver119 <raver119@gmail.com>
2019-08-14 12:11:09 +03:00
/**
* This method allows you to specify inference mode for parallel mode. See {@link InferenceMode} for more details
*
* @param inferenceMode
* @return
*/
public Builder<I,O> inferenceMode(@NonNull InferenceMode inferenceMode) {
this.inferenceMode = inferenceMode;
return this;
}
/**
* This method allows you to specify number of worker threads for ParallelInference
*
* @param numWorkers
* @return
*/
public Builder<I,O> numWorkers(int numWorkers) {
this.numWorkers = numWorkers;
return this;
}
/**
* This method allows you to specify the order in which the inputs should be mapped to the model placeholder arrays. This is only required for {@link SameDiff} models, not {@link MultiLayerNetwork} or {@link ComputationGraph} models
*
* PLEASE NOTE: this argument only used for SameDiff models
* @param args
* @return
*/
public Builder<I,O> orderedInputNodes(String... args) {
orderedInputNodes = args;
return this;
}
/**
* This method allows you to specify the order in which the inputs should be mapped to the model placeholder arrays. This is only required for {@link SameDiff} models, not {@link MultiLayerNetwork} or {@link ComputationGraph} models
*
* PLEASE NOTE: this argument only used for SameDiff models
* @param args
* @return
*/
public Builder<I,O> orderedInputNodes(@NonNull List<String> args) {
orderedInputNodes = args.toArray(new String[args.size()]);
return this;
}
/**
* This method allows you to specify output nodes
*
* PLEASE NOTE: this argument only used for SameDiff models
* @param args
* @return
*/
public Builder<I,O> orderedOutputNodes(String... args) {
Preconditions.checkArgument(args != null && args.length > 0, "OutputNodes should contain at least 1 element");
orderedOutputNodes = args;
return this;
}
/**
* This method allows you to specify output nodes
*
* PLEASE NOTE: this argument only used for SameDiff models
* @param args
* @return
*/
public Builder<I,O> orderedOutputNodes(@NonNull List<String> args) {
Preconditions.checkArgument(args.size() > 0, "OutputNodes should contain at least 1 element");
orderedOutputNodes = args.toArray(new String[args.size()]);
return this;
}
/**
* This method allows you to specify http port
*
* PLEASE NOTE: port must be free and be in range regular TCP/IP ports range
* @param port
* @return
*/
public Builder<I,O> port(int port) {
this.port = port;
return this;
}
/**
* This method switches on ParallelInference usage
* @param - true - to use ParallelInference, false - to use ComputationGraph or
* MultiLayerNetwork directly
*
* PLEASE NOTE: this doesn't apply to SameDiff models
*
* @throws Exception
*/
public Builder<I,O> parallelMode(boolean enable) {
this.parallelMode = enable;
return this;
}
public JsonModelServer<I,O> build() {
if (inferenceAdapter == null) {
if (inputAdapter != null && outputAdapter != null) {
inferenceAdapter = new InferenceAdapter<I, O>() {
@Override
public MultiDataSet apply(I input) {
return inputAdapter.apply(input);
}
@Override
public O apply(INDArray... outputs) {
return outputAdapter.apply(outputs);
}
};
} else
throw new IllegalArgumentException("Either InferenceAdapter<I,O> or InputAdapter<I> + OutputAdapter<O> should be configured");
}
JsonModelServer server = null;
[WIP] Remote inference (#96) * fix pad javadoc and @see links. (#72) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * [WIP] More fixes (#73) * special tests for ConstantTadHelper/ConstantShapeHelper Signed-off-by: raver119 <raver119@gmail.com> * release methods for data buffers Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary TadPack C++/Java side (#74) Signed-off-by: raver119 <raver119@gmail.com> * Zoo model TF import test updates (#75) * argLine fix, update compression_gru comment * updated comment for xception * undid but commented argLine change * updated xlnet comment * copyright headers * - new NDArray methods like()/ulike() (#77) - fix for depthwise_conv2d_bp + special test Signed-off-by: raver119 <raver119@gmail.com> * upsampling2d fix CUDA Signed-off-by: raver119 <raver119@gmail.com> * DL4J trace logging (#79) * MLN/CG trace logging for debugging Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tiny tweak Signed-off-by: AlexDBlack <blacka101@gmail.com> * strided_slice_bp shape fn leak fix Signed-off-by: raver119 <raver119@gmail.com> * SameDiff fixes and naming (#78) * remove SDVariable inplace methods * import methods * npe fix in OpVal * removed SameDiff inplace ops from tests * Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything * quick fixes * javadoc * SDVariable eval with placeholders * use regex match * better matching * fix javadoc. (#76) * fix javadoc. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace most @see with @link s. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * 4 additional tests Signed-off-by: raver119 <raver119@gmail.com> * Various DL4J/ND4J fixes (#81) * #7954 Force refresh of UI when switching tabs on overview page Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8017 Concurrent modification exception (synchronize) fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8033 Don't initialize updater in middle of writing memory crash dump Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8208 Fix shape checks for ND4J int[] creator methods Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6385 #7992 Keras import naming fixes + cleanup Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8016 Upsampling3D - add NDHWC format support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Refactor NativeOps.h to export C functions * Actually export functions from NativeOps.h * Adapt the Java wrappers in ND4J generated with JavaCPP * Create C wrappers for some of the C++ classes currently used by ND4J * remove duplicate code in createBufferDetached. (#83) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Keras model import - updater lr fix (#84) * Keras model import - updater lr fix Signed-off-by: eraly <susan.eraly@gmail.com> * Keras model import - updater lr fix, cleanup Signed-off-by: eraly <susan.eraly@gmail.com> * Fix functions of OpaqueVariablesSet * SameDiff Convolution Config validation, better output methods (#82) * Conv Config validation & tests Signed-off-by: Ryan Nett <rnett@skymind.io> * stackOutputs utility method Signed-off-by: Ryan Nett <rnett@skymind.io> * use constructor for validation, support negative kernel sizes (infered from weights) Signed-off-by: Ryan Nett <rnett@skymind.io> * better output methods Signed-off-by: Ryan Nett <rnett@skymind.io> * move output to be with fit and evaluate Signed-off-by: Ryan Nett <rnett@skymind.io> * fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * more fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * refactor duplicate code from pad methods. (#86) * refactor duplicate code from pad methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace switch with if. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes and improvements (#87) * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6488 ElementWiseVertex broadcast support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Constructors and broadcast supported it Transforms.max/min Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8054 ElementWiseVertex now supports broadcast inputs Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8057 Nd4j.create overload dtype fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7551 ND4J Shape validation fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * [WIP] Numpy boolean import (#91) * numpy bool type Signed-off-by: raver119 <raver119@gmail.com> * numpy bool java side Signed-off-by: raver119 <raver119@gmail.com> * remove create method with unused parameter. (#89) * remove create method with unused parameter. * removed more unused methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * removing more unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * last removal of unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * remove createSparse methods. (#92) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes (#90) * Deprecate Old*Op instances Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8063 #8054 Broadcast exceptions + cleanup inplace ops Signed-off-by: AlexDBlack <blacka101@gmail.com> * Small fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * Remove bad test condition Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7993 Fix shape function issue in crop_and_resize op Signed-off-by: AlexDBlack <blacka101@gmail.com> * DL4J SameDiff lambda layer fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8029 Fix for pnorm backprop math Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8038 Fix Op profiler NaN/Inf triggering + add tests (#93) Signed-off-by: AlexDBlack <blacka101@gmail.com> * createUninitializedDetached refactoring. (#94) * wip * update interface, add null implementations. * Breaking one test in a weird way. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * createUninitializedDetached refactored. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * cuda build fix for issues introduced by recent refactoring Signed-off-by: raver119 <raver119@gmail.com> * initial commit Signed-off-by: raver119 <raver119@gmail.com> * deps tweaks Signed-off-by: raver119 <raver119@gmail.com> * initial prototype Signed-off-by: raver119 <raver119@gmail.com> * modules reorganized Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * [WIP] More of CUDA (#95) * initial commit Signed-off-by: raver119 <raver119@gmail.com> * Implementation of hashcode cuda helper. Working edition. * Fixed parallel test input arangements. * Fixed tests for hashcode op. * Fixed shape calculation for image:crop_and_resize op and test. * NativeOps tests. Initial test suite. * Added tests for indexReduce methods. * Added test on execBroadcast with NDArray as dimensions. * Added test on execBroadcastBool with NDArray as dimensions. * Added tests on execPairwiseTransform and execPairwiseTransofrmBool. * Added tests for execReduce with scalar results. * Added reduce tests for non-empty dims array. * Added tests for reduce3. * Added tests for execScalar. * Added tests for execSummaryStats. * - provide cpu/cuda code for batch_to_space - testing it Signed-off-by: Yurii <yurii@skymind.io> * - remove old test for batch_to_space (had wrong format and numbers were not checked) Signed-off-by: Yurii <yurii@skymind.io> * Fixed complilation errors with test. * Added test for execTransformFloat. * Added test for execTransformSame. * Added test for execTransformBool. * Added test for execTransformStrict. * Added tests for execScalar/execScalarBool with TADs. * Added test for flatten. * - provide cpu/cuda code for space_to_Batch operaion Signed-off-by: Yurii <yurii@skymind.io> * Added test for concat. * comment unnecessary stuff in s_t_b Signed-off-by: Yurii <yurii@skymind.io> * Added test for specialConcat. * Added tests for memcpy/set routines. * Fixed pullRow cuda test. * Added pullRow test. * Added average test. * - correct typo in NDArray::applyPairwiseTransform(nd4j::pairwise::BoolOps op...) Signed-off-by: Yurii <yurii@skymind.io> * - debugging and fixing cuda tests in JavaInteropTests file Signed-off-by: Yurii <yurii@skymind.io> * - correct some tests Signed-off-by: Yurii <yurii@skymind.io> * Added test for shuffle. * Fixed ops declarations. * Restored omp and added shuffle test. * Added convertTypes test. * Added tests for execRandom. Eliminated usage of RandomBuffer with NativeOps. * Added sort tests. * Added tests for execCustomOp. * - further debuging and fixing tests terminated with crash Signed-off-by: Yurii <yurii@skymind.io> * Added tests for calculateOutputShapes. * Addded Benchmarks test. * Commented benchmark tests. * change assertion Signed-off-by: raver119 <raver119@gmail.com> * Added tests for apply_sgd op. Added cpu helper for that op. * Implement cuda helper for aplly_sgd op. Fixed tests for NativeOps. * Added test for assign broadcastable. * Added tests for assign_bp op. * Added tests for axpy op. * - assign/execScalar/execTransformAny signature change - minor test fix Signed-off-by: raver119 <raver119@gmail.com> * Fixed axpy op. * meh Signed-off-by: raver119 <raver119@gmail.com> * - fix tests for nativeOps::concat Signed-off-by: Yurii <yurii@skymind.io> * sequential transform/scalar Signed-off-by: raver119 <raver119@gmail.com> * allow nested parallelism Signed-off-by: raver119 <raver119@gmail.com> * assign_bp leak fix Signed-off-by: raver119 <raver119@gmail.com> * block setRNG fix Signed-off-by: raver119 <raver119@gmail.com> * enable parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * enable nested parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * Added cuda implementation for row_count helper. * Added implementation for tnse gains op helper. * - take into account possible situations when input arrays are empty in reduce_ cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implemented tsne/edge_forces op cuda-based helper. Parallelized cpu-based helper for edge_forces. * Added kernel for tsne/symmetrized op heleper. * Implementation of tsne/symmetrized op cuda helper. Working edition. * Eliminated waste printfs. * Added test for broadcastgradientargs op. * host-only fallback for empty reduce float Signed-off-by: raver119 <raver119@gmail.com> * - some tests fixes Signed-off-by: Yurii <yurii@skymind.io> * - correct the rest of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * - further correction of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * Added test for Cbow op. Also added cuda implementation for cbow helpers. * - improve code of stack operation for scalar case Signed-off-by: Yurii <yurii@skymind.io> * - provide cuda kernel for gatherND operation Signed-off-by: Yurii <yurii@skymind.io> * Implementation of cbow helpers with cuda kernels. * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * - further correction of cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implementatation of cbow op helper with cuda kernels. Working edition. * Skip random testing for cudablas case. * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for ELU and ELU_BP ops. * Added tests for eq_scalar, gt_scalar, gte_scalar and lte_scalar ops. * Added tests for neq_scalar. * Added test for noop. * - further work on clipbynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * - get rid of concat op call, use instead direct concat helper call Signed-off-by: Yurii <yurii@skymind.io> * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for lrelu and lrelu_bp. * Added tests for selu and selu_bp. * Fixed lrelu derivative helpers. * - some corrections in lstm Signed-off-by: Yurii <yurii@skymind.io> * operator * result shape fix Signed-off-by: raver119 <raver119@gmail.com> * - correct typo in lstmCell Signed-off-by: Yurii <yurii@skymind.io> * few tests fixed Signed-off-by: raver119 <raver119@gmail.com> * CUDA inverse broadcast bool fix Signed-off-by: raver119 <raver119@gmail.com> * disable MMAP test for CUDA Signed-off-by: raver119 <raver119@gmail.com> * BooleanOp syncToDevice Signed-off-by: raver119 <raver119@gmail.com> * meh Signed-off-by: raver119 <raver119@gmail.com> * additional data types for im2col/col2im Signed-off-by: raver119 <raver119@gmail.com> * Added test for firas_sparse op. * one more RandomBuffer test excluded Signed-off-by: raver119 <raver119@gmail.com> * Added tests for flatten op. * Added test for Floor op. * bunch of tests fixed Signed-off-by: raver119 <raver119@gmail.com> * mmulDot tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Implemented floordiv_bp op and tests. * Fixed scalar case with cuda implementation for bds. * - work on cuda kernel for clip_by_norm backprop op is completed Signed-off-by: Yurii <yurii@skymind.io> * Eliminate cbow crach. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Eliminated abortion with batched nlp test. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Fixed shared flag initializing. * disabled bunch of cpu workspaces tests Signed-off-by: raver119 <raver119@gmail.com> * scalar operators fix: missing registerSpecialUse call Signed-off-by: raver119 <raver119@gmail.com> * Fixed logdet for cuda and tests. * - correct clipBynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * Fixed crop_and_resize shape datatype. * - correct some mmul tests Signed-off-by: Yurii <yurii@skymind.io> * build fix Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI (#97) Signed-off-by: raver119 <raver119@gmail.com> * temporary stack fix Signed-off-by: raver119 <raver119@gmail.com> * downgrade jetty to latest stable version Signed-off-by: raver119 <raver119@gmail.com> * test and profiles Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton * one test case Signed-off-by: raver119 <raver119@gmail.com> * one test case Signed-off-by: raver119 <raver119@gmail.com> * compilation fix Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * Servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * logging + simple timing Signed-off-by: raver119 <raver119@gmail.com> * Content type fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Profile required Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Post test Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constants used Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Check content type Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Some tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Errors checking Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constraints and tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Dl4j servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Moving class to dl4j Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Builder extended Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * initial dl4j commit Signed-off-by: raver119 <raver119@gmail.com> * unirest version change Signed-off-by: raver119 <raver119@gmail.com> * temp fallback Signed-off-by: raver119 <raver119@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * revert unirest change Signed-off-by: raver119 <raver119@gmail.com> * some additional checks in builder Signed-off-by: raver119 <raver119@gmail.com> * few more fields Signed-off-by: raver119 <raver119@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * lombok Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * deps Signed-off-by: raver119 <raver119@gmail.com> * profiles re-introduced Signed-off-by: raver119 <raver119@gmail.com> * Added tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Model servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * get rid of old class Signed-off-by: raver119 <raver119@gmail.com> * use PI for inference Signed-off-by: raver119 <raver119@gmail.com> * superbuilder Signed-off-by: raver119 <raver119@gmail.com> * get back builder Signed-off-by: raver119 <raver119@gmail.com> * Servlet builder Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * PI setup Signed-off-by: raver119 <raver119@gmail.com> * get rid of superbuilder Signed-off-by: raver119 <raver119@gmail.com> * SameDiffServlet inheritance constructor Signed-off-by: raver119 <raver119@gmail.com> * dl4jservlet attached to samediffservlet Signed-off-by: raver119 <raver119@gmail.com> * builder types fix Signed-off-by: raver119 <raver119@gmail.com> * dummy model Signed-off-by: raver119 <raver119@gmail.com> * single out Signed-off-by: raver119 <raver119@gmail.com> * loss Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * missed builder type Signed-off-by: raver119 <raver119@gmail.com> * working serving example Signed-off-by: raver119 <raver119@gmail.com> * sd model fix Signed-off-by: raver119 <raver119@gmail.com> * fix unirest version Signed-off-by: raver119 <raver119@gmail.com> * More tests Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tests fixes Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Build fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Ser/deser added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * one more unirest fix Signed-off-by: raver119 <raver119@gmail.com> * Custom serializers Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests disabled Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * update Signed-off-by: raver119 <raver119@gmail.com> * some default fields values Signed-off-by: raver119 <raver119@gmail.com> * some comments/javadoc Signed-off-by: raver119 <raver119@gmail.com> * - move serde impls to client module - get rid of INDArray serde for now Signed-off-by: raver119 <raver119@gmail.com> * jackson-based serde for float[], double[] and String Signed-off-by: raver119 <raver119@gmail.com> * more of basic ser/de + tests Signed-off-by: raver119 <raver119@gmail.com> * minor api changes Signed-off-by: raver119 <raver119@gmail.com> * change imports/signatures Signed-off-by: raver119 <raver119@gmail.com> * Optional parralel inference Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Insert pause between tests as workaround for unavailable port issue Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * few unused imports removed Signed-off-by: raver119 <raver119@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * - InputAdapter + OutputAdapter = InferenceAdapter - JsonModelServer now allows separate configuration of InputAdapter and OutputAdapter Signed-off-by: raver119 <raver119@gmail.com> * unused import Signed-off-by: raver119 <raver119@gmail.com> * input adapter.. Signed-off-by: raver119 <raver119@gmail.com> * minor signature change Signed-off-by: raver119 <raver119@gmail.com> * few more signatures updated Signed-off-by: raver119 <raver119@gmail.com> * input/output adapter Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * javadocs added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * minor polishing Signed-off-by: raver119 <raver119@gmail.com> * more of javadoc Signed-off-by: raver119 <raver119@gmail.com> * signature change Signed-off-by: raver119 <raver119@gmail.com>
2019-08-14 12:11:09 +03:00
if (sdModel != null) {
server = new JsonModelServer<I, O>(sdModel, inferenceAdapter, serializer, deserializer, binarySerializer, binaryDeserializer, port, orderedInputNodes, orderedOutputNodes);
}
else if (cgModel != null) {
server = new JsonModelServer<I, O>(cgModel, inferenceAdapter, serializer, deserializer, binarySerializer, binaryDeserializer, port, inferenceMode, numWorkers);
}
else if (mlnModel != null) {
server = new JsonModelServer<I, O>(mlnModel, inferenceAdapter, serializer, deserializer, binarySerializer, binaryDeserializer, port, inferenceMode, numWorkers);
}
else if (pi != null) {
server = new JsonModelServer<I, O>(pi, inferenceAdapter, serializer, deserializer, binarySerializer, binaryDeserializer, port);
}
else
throw new IllegalStateException("No models were defined for JsonModelServer");
server.enabledParallel = parallelMode;
return server;
[WIP] Remote inference (#96) * fix pad javadoc and @see links. (#72) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * [WIP] More fixes (#73) * special tests for ConstantTadHelper/ConstantShapeHelper Signed-off-by: raver119 <raver119@gmail.com> * release methods for data buffers Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary buffer Java side Signed-off-by: raver119 <raver119@gmail.com> * delete temporary TadPack C++/Java side (#74) Signed-off-by: raver119 <raver119@gmail.com> * Zoo model TF import test updates (#75) * argLine fix, update compression_gru comment * updated comment for xception * undid but commented argLine change * updated xlnet comment * copyright headers * - new NDArray methods like()/ulike() (#77) - fix for depthwise_conv2d_bp + special test Signed-off-by: raver119 <raver119@gmail.com> * upsampling2d fix CUDA Signed-off-by: raver119 <raver119@gmail.com> * DL4J trace logging (#79) * MLN/CG trace logging for debugging Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tiny tweak Signed-off-by: AlexDBlack <blacka101@gmail.com> * strided_slice_bp shape fn leak fix Signed-off-by: raver119 <raver119@gmail.com> * SameDiff fixes and naming (#78) * remove SDVariable inplace methods * import methods * npe fix in OpVal * removed SameDiff inplace ops from tests * Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything * quick fixes * javadoc * SDVariable eval with placeholders * use regex match * better matching * fix javadoc. (#76) * fix javadoc. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace most @see with @link s. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * 4 additional tests Signed-off-by: raver119 <raver119@gmail.com> * Various DL4J/ND4J fixes (#81) * #7954 Force refresh of UI when switching tabs on overview page Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8017 Concurrent modification exception (synchronize) fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8033 Don't initialize updater in middle of writing memory crash dump Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8208 Fix shape checks for ND4J int[] creator methods Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6385 #7992 Keras import naming fixes + cleanup Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8016 Upsampling3D - add NDHWC format support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Refactor NativeOps.h to export C functions * Actually export functions from NativeOps.h * Adapt the Java wrappers in ND4J generated with JavaCPP * Create C wrappers for some of the C++ classes currently used by ND4J * remove duplicate code in createBufferDetached. (#83) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Keras model import - updater lr fix (#84) * Keras model import - updater lr fix Signed-off-by: eraly <susan.eraly@gmail.com> * Keras model import - updater lr fix, cleanup Signed-off-by: eraly <susan.eraly@gmail.com> * Fix functions of OpaqueVariablesSet * SameDiff Convolution Config validation, better output methods (#82) * Conv Config validation & tests Signed-off-by: Ryan Nett <rnett@skymind.io> * stackOutputs utility method Signed-off-by: Ryan Nett <rnett@skymind.io> * use constructor for validation, support negative kernel sizes (infered from weights) Signed-off-by: Ryan Nett <rnett@skymind.io> * better output methods Signed-off-by: Ryan Nett <rnett@skymind.io> * move output to be with fit and evaluate Signed-off-by: Ryan Nett <rnett@skymind.io> * fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * more fixes Signed-off-by: Ryan Nett <rnett@skymind.io> * refactor duplicate code from pad methods. (#86) * refactor duplicate code from pad methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * replace switch with if. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes and improvements (#87) * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * Reshape and reallocate - small fixes Signed-off-by: AlexDBlack <blacka101@gmail.com> * #6488 ElementWiseVertex broadcast support Signed-off-by: AlexDBlack <blacka101@gmail.com> * Constructors and broadcast supported it Transforms.max/min Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8054 ElementWiseVertex now supports broadcast inputs Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8057 Nd4j.create overload dtype fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7551 ND4J Shape validation fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * [WIP] Numpy boolean import (#91) * numpy bool type Signed-off-by: raver119 <raver119@gmail.com> * numpy bool java side Signed-off-by: raver119 <raver119@gmail.com> * remove create method with unused parameter. (#89) * remove create method with unused parameter. * removed more unused methods. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * removing more unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * last removal of unused code. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * remove createSparse methods. (#92) Signed-off-by: Robert Altena <Rob@Ra-ai.com> * Various ND4J/DL4J fixes (#90) * Deprecate Old*Op instances Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8063 #8054 Broadcast exceptions + cleanup inplace ops Signed-off-by: AlexDBlack <blacka101@gmail.com> * Small fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * Remove bad test condition Signed-off-by: AlexDBlack <blacka101@gmail.com> * #7993 Fix shape function issue in crop_and_resize op Signed-off-by: AlexDBlack <blacka101@gmail.com> * DL4J SameDiff lambda layer fix Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8029 Fix for pnorm backprop math Signed-off-by: AlexDBlack <blacka101@gmail.com> * #8038 Fix Op profiler NaN/Inf triggering + add tests (#93) Signed-off-by: AlexDBlack <blacka101@gmail.com> * createUninitializedDetached refactoring. (#94) * wip * update interface, add null implementations. * Breaking one test in a weird way. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * createUninitializedDetached refactored. Signed-off-by: Robert Altena <Rob@Ra-ai.com> * cuda build fix for issues introduced by recent refactoring Signed-off-by: raver119 <raver119@gmail.com> * initial commit Signed-off-by: raver119 <raver119@gmail.com> * deps tweaks Signed-off-by: raver119 <raver119@gmail.com> * initial prototype Signed-off-by: raver119 <raver119@gmail.com> * modules reorganized Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * gprc module moved to nd4j-remote as well Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * serving prototype Signed-off-by: raver119 <raver119@gmail.com> * [WIP] More of CUDA (#95) * initial commit Signed-off-by: raver119 <raver119@gmail.com> * Implementation of hashcode cuda helper. Working edition. * Fixed parallel test input arangements. * Fixed tests for hashcode op. * Fixed shape calculation for image:crop_and_resize op and test. * NativeOps tests. Initial test suite. * Added tests for indexReduce methods. * Added test on execBroadcast with NDArray as dimensions. * Added test on execBroadcastBool with NDArray as dimensions. * Added tests on execPairwiseTransform and execPairwiseTransofrmBool. * Added tests for execReduce with scalar results. * Added reduce tests for non-empty dims array. * Added tests for reduce3. * Added tests for execScalar. * Added tests for execSummaryStats. * - provide cpu/cuda code for batch_to_space - testing it Signed-off-by: Yurii <yurii@skymind.io> * - remove old test for batch_to_space (had wrong format and numbers were not checked) Signed-off-by: Yurii <yurii@skymind.io> * Fixed complilation errors with test. * Added test for execTransformFloat. * Added test for execTransformSame. * Added test for execTransformBool. * Added test for execTransformStrict. * Added tests for execScalar/execScalarBool with TADs. * Added test for flatten. * - provide cpu/cuda code for space_to_Batch operaion Signed-off-by: Yurii <yurii@skymind.io> * Added test for concat. * comment unnecessary stuff in s_t_b Signed-off-by: Yurii <yurii@skymind.io> * Added test for specialConcat. * Added tests for memcpy/set routines. * Fixed pullRow cuda test. * Added pullRow test. * Added average test. * - correct typo in NDArray::applyPairwiseTransform(nd4j::pairwise::BoolOps op...) Signed-off-by: Yurii <yurii@skymind.io> * - debugging and fixing cuda tests in JavaInteropTests file Signed-off-by: Yurii <yurii@skymind.io> * - correct some tests Signed-off-by: Yurii <yurii@skymind.io> * Added test for shuffle. * Fixed ops declarations. * Restored omp and added shuffle test. * Added convertTypes test. * Added tests for execRandom. Eliminated usage of RandomBuffer with NativeOps. * Added sort tests. * Added tests for execCustomOp. * - further debuging and fixing tests terminated with crash Signed-off-by: Yurii <yurii@skymind.io> * Added tests for calculateOutputShapes. * Addded Benchmarks test. * Commented benchmark tests. * change assertion Signed-off-by: raver119 <raver119@gmail.com> * Added tests for apply_sgd op. Added cpu helper for that op. * Implement cuda helper for aplly_sgd op. Fixed tests for NativeOps. * Added test for assign broadcastable. * Added tests for assign_bp op. * Added tests for axpy op. * - assign/execScalar/execTransformAny signature change - minor test fix Signed-off-by: raver119 <raver119@gmail.com> * Fixed axpy op. * meh Signed-off-by: raver119 <raver119@gmail.com> * - fix tests for nativeOps::concat Signed-off-by: Yurii <yurii@skymind.io> * sequential transform/scalar Signed-off-by: raver119 <raver119@gmail.com> * allow nested parallelism Signed-off-by: raver119 <raver119@gmail.com> * assign_bp leak fix Signed-off-by: raver119 <raver119@gmail.com> * block setRNG fix Signed-off-by: raver119 <raver119@gmail.com> * enable parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * enable nested parallelism by default Signed-off-by: raver119 <raver119@gmail.com> * Added cuda implementation for row_count helper. * Added implementation for tnse gains op helper. * - take into account possible situations when input arrays are empty in reduce_ cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implemented tsne/edge_forces op cuda-based helper. Parallelized cpu-based helper for edge_forces. * Added kernel for tsne/symmetrized op heleper. * Implementation of tsne/symmetrized op cuda helper. Working edition. * Eliminated waste printfs. * Added test for broadcastgradientargs op. * host-only fallback for empty reduce float Signed-off-by: raver119 <raver119@gmail.com> * - some tests fixes Signed-off-by: Yurii <yurii@skymind.io> * - correct the rest of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * - further correction of reduce_ stuff Signed-off-by: Yurii <yurii@skymind.io> * Added test for Cbow op. Also added cuda implementation for cbow helpers. * - improve code of stack operation for scalar case Signed-off-by: Yurii <yurii@skymind.io> * - provide cuda kernel for gatherND operation Signed-off-by: Yurii <yurii@skymind.io> * Implementation of cbow helpers with cuda kernels. * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * minor tests tweaks Signed-off-by: raver119 <raver119@gmail.com> * - further correction of cuda stuff Signed-off-by: Yurii <yurii@skymind.io> * Implementatation of cbow op helper with cuda kernels. Working edition. * Skip random testing for cudablas case. * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for ELU and ELU_BP ops. * Added tests for eq_scalar, gt_scalar, gte_scalar and lte_scalar ops. * Added tests for neq_scalar. * Added test for noop. * - further work on clipbynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * - get rid of concat op call, use instead direct concat helper call Signed-off-by: Yurii <yurii@skymind.io> * lstmBlockCell context fix Signed-off-by: raver119 <raver119@gmail.com> * Added tests for lrelu and lrelu_bp. * Added tests for selu and selu_bp. * Fixed lrelu derivative helpers. * - some corrections in lstm Signed-off-by: Yurii <yurii@skymind.io> * operator * result shape fix Signed-off-by: raver119 <raver119@gmail.com> * - correct typo in lstmCell Signed-off-by: Yurii <yurii@skymind.io> * few tests fixed Signed-off-by: raver119 <raver119@gmail.com> * CUDA inverse broadcast bool fix Signed-off-by: raver119 <raver119@gmail.com> * disable MMAP test for CUDA Signed-off-by: raver119 <raver119@gmail.com> * BooleanOp syncToDevice Signed-off-by: raver119 <raver119@gmail.com> * meh Signed-off-by: raver119 <raver119@gmail.com> * additional data types for im2col/col2im Signed-off-by: raver119 <raver119@gmail.com> * Added test for firas_sparse op. * one more RandomBuffer test excluded Signed-off-by: raver119 <raver119@gmail.com> * Added tests for flatten op. * Added test for Floor op. * bunch of tests fixed Signed-off-by: raver119 <raver119@gmail.com> * mmulDot tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Implemented floordiv_bp op and tests. * Fixed scalar case with cuda implementation for bds. * - work on cuda kernel for clip_by_norm backprop op is completed Signed-off-by: Yurii <yurii@skymind.io> * Eliminate cbow crach. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Eliminated abortion with batched nlp test. * more tests fixed Signed-off-by: raver119 <raver119@gmail.com> * Fixed shared flag initializing. * disabled bunch of cpu workspaces tests Signed-off-by: raver119 <raver119@gmail.com> * scalar operators fix: missing registerSpecialUse call Signed-off-by: raver119 <raver119@gmail.com> * Fixed logdet for cuda and tests. * - correct clipBynorm_bp Signed-off-by: Yurii <yurii@skymind.io> * Fixed crop_and_resize shape datatype. * - correct some mmul tests Signed-off-by: Yurii <yurii@skymind.io> * build fix Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI Signed-off-by: raver119 <raver119@gmail.com> * exclude two methods for JNI (#97) Signed-off-by: raver119 <raver119@gmail.com> * temporary stack fix Signed-off-by: raver119 <raver119@gmail.com> * downgrade jetty to latest stable version Signed-off-by: raver119 <raver119@gmail.com> * test and profiles Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton * one test case Signed-off-by: raver119 <raver119@gmail.com> * one test case Signed-off-by: raver119 <raver119@gmail.com> * compilation fix Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * draft improvements Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * proof of concept works Signed-off-by: raver119 <raver119@gmail.com> * Servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * logging + simple timing Signed-off-by: raver119 <raver119@gmail.com> * Content type fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Profile required Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Post test Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constants used Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Check content type Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Some tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Errors checking Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Constraints and tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tweaks Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Dl4j servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Moving class to dl4j Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Builder extended Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * initial dl4j commit Signed-off-by: raver119 <raver119@gmail.com> * unirest version change Signed-off-by: raver119 <raver119@gmail.com> * temp fallback Signed-off-by: raver119 <raver119@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Reverted unirest version Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * revert unirest change Signed-off-by: raver119 <raver119@gmail.com> * some additional checks in builder Signed-off-by: raver119 <raver119@gmail.com> * few more fields Signed-off-by: raver119 <raver119@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * lombok Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * deps Signed-off-by: raver119 <raver119@gmail.com> * profiles re-introduced Signed-off-by: raver119 <raver119@gmail.com> * Added tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Model servlet Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * Servlet skeleton Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Servlet tests Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * builders Signed-off-by: raver119 <raver119@gmail.com> * get rid of old class Signed-off-by: raver119 <raver119@gmail.com> * use PI for inference Signed-off-by: raver119 <raver119@gmail.com> * superbuilder Signed-off-by: raver119 <raver119@gmail.com> * get back builder Signed-off-by: raver119 <raver119@gmail.com> * Servlet builder Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * PI setup Signed-off-by: raver119 <raver119@gmail.com> * get rid of superbuilder Signed-off-by: raver119 <raver119@gmail.com> * SameDiffServlet inheritance constructor Signed-off-by: raver119 <raver119@gmail.com> * dl4jservlet attached to samediffservlet Signed-off-by: raver119 <raver119@gmail.com> * builder types fix Signed-off-by: raver119 <raver119@gmail.com> * dummy model Signed-off-by: raver119 <raver119@gmail.com> * single out Signed-off-by: raver119 <raver119@gmail.com> * loss Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * missed builder type Signed-off-by: raver119 <raver119@gmail.com> * working serving example Signed-off-by: raver119 <raver119@gmail.com> * sd model fix Signed-off-by: raver119 <raver119@gmail.com> * fix unirest version Signed-off-by: raver119 <raver119@gmail.com> * More tests Signed-off-by: AlexDBlack <blacka101@gmail.com> * Tests added: Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Minor tests fixes Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Build fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Ser/deser added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * one more unirest fix Signed-off-by: raver119 <raver119@gmail.com> * Custom serializers Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Tests disabled Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * revert back unirest version change Signed-off-by: raver119 <raver119@gmail.com> * update Signed-off-by: raver119 <raver119@gmail.com> * some default fields values Signed-off-by: raver119 <raver119@gmail.com> * some comments/javadoc Signed-off-by: raver119 <raver119@gmail.com> * - move serde impls to client module - get rid of INDArray serde for now Signed-off-by: raver119 <raver119@gmail.com> * jackson-based serde for float[], double[] and String Signed-off-by: raver119 <raver119@gmail.com> * more of basic ser/de + tests Signed-off-by: raver119 <raver119@gmail.com> * minor api changes Signed-off-by: raver119 <raver119@gmail.com> * change imports/signatures Signed-off-by: raver119 <raver119@gmail.com> * Optional parralel inference Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Insert pause between tests as workaround for unavailable port issue Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * few unused imports removed Signed-off-by: raver119 <raver119@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Models usage Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * - InputAdapter + OutputAdapter = InferenceAdapter - JsonModelServer now allows separate configuration of InputAdapter and OutputAdapter Signed-off-by: raver119 <raver119@gmail.com> * unused import Signed-off-by: raver119 <raver119@gmail.com> * input adapter.. Signed-off-by: raver119 <raver119@gmail.com> * minor signature change Signed-off-by: raver119 <raver119@gmail.com> * few more signatures updated Signed-off-by: raver119 <raver119@gmail.com> * input/output adapter Signed-off-by: raver119 <raver119@gmail.com> * Tests added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * javadocs added Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * Test fixed Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com> * minor polishing Signed-off-by: raver119 <raver119@gmail.com> * more of javadoc Signed-off-by: raver119 <raver119@gmail.com> * signature change Signed-off-by: raver119 <raver119@gmail.com>
2019-08-14 12:11:09 +03:00
}
}
}