未验证 提交 391135cd 编写于 作者: J Jiawei Wang 提交者: GitHub

Merge pull request #1025 from HexToString/fix_java_client

fix java Client indarray shape bug by HexToString
......@@ -7,8 +7,8 @@
In order to facilitate users to use java for development, we provide the compiled Serving project to be placed in the java mirror. The way to get the mirror and enter the development environment is
```
docker pull hub.baidubce.com/paddlepaddle/serving:0.4.0-java
docker run --rm -dit --name java_serving hub.baidubce.com/paddlepaddle/serving:0.4.0-java
docker pull hub.baidubce.com/paddlepaddle/serving:0.4.1-java
docker run --rm -dit --name java_serving hub.baidubce.com/paddlepaddle/serving:0.4.1-java
docker exec -it java_serving bash
cd Serving/java
```
......
......@@ -7,8 +7,8 @@
为了方便用户使用java进行开发,我们提供了编译好的Serving工程放置在java镜像当中,获取镜像并进入开发环境的方式是
```
docker pull hub.baidubce.com/paddlepaddle/serving:0.4.0-java
docker run --rm -dit --name java_serving hub.baidubce.com/paddlepaddle/serving:0.4.0-java
docker pull hub.baidubce.com/paddlepaddle/serving:0.4.1-java
docker run --rm -dit --name java_serving hub.baidubce.com/paddlepaddle/serving:0.4.1-java
docker exec -it java_serving bash
cd Serving/java
```
......
......@@ -16,9 +16,11 @@ public class PaddleServingClientExample {
0.0582f, -0.0727f, -0.1583f, -0.0584f,
0.6283f, 0.4919f, 0.1856f, 0.0795f, -0.0332f};
INDArray npdata = Nd4j.createFromArray(data);
long[] batch_shape = {1,13};
INDArray batch_npdata = npdata.reshape(batch_shape);
HashMap<String, INDArray> feed_data
= new HashMap<String, INDArray>() {{
put("x", npdata);
put("x", batch_npdata);
}};
List<String> fetch = Arrays.asList("price");
......@@ -69,12 +71,16 @@ public class PaddleServingClientExample {
// Div(255.0)
INDArray image = RGBimage.divi(255.0);
long[] batch_shape = {1,image.shape()[0],image.shape()[1],image.shape()[2]};
INDArray batch_image = image.reshape(batch_shape);
INDArray im_size = Nd4j.createFromArray(new int[]{height, width});
long[] batch_size_shape = {1,2};
INDArray batch_im_size = im_size.reshape(batch_size_shape);
HashMap<String, INDArray> feed_data
= new HashMap<String, INDArray>() {{
put("image", image);
put("im_size", im_size);
put("image", batch_image);
put("im_size", batch_im_size);
}};
List<String> fetch = Arrays.asList("save_infer_model/scale_0.tmp_0");
......
......@@ -4,6 +4,9 @@ import java.util.*;
import java.util.function.Function;
import java.lang.management.ManagementFactory;
import java.lang.management.RuntimeMXBean;
import java.util.stream.Collectors;
import java.util.List;
import java.util.ArrayList;
import io.grpc.ManagedChannel;
import io.grpc.ManagedChannelBuilder;
......@@ -238,7 +241,11 @@ public class Client {
} else {
throw new IllegalArgumentException("error tensor value type.");
}
tensor_builder.addAllShape(feedShapes_.get(name));
long[] longArray = variable.shape();
int[] intArray = Arrays.stream(longArray).mapToInt(i -> (int) i).toArray();
List<Integer> indarrayShapeList = Arrays.stream(intArray).boxed().collect(Collectors.toList());
//tensor_builder.addAllShape(feedShapes_.get(name));
tensor_builder.addAllShape(indarrayShapeList);
inst_builder.addTensorArray(tensor_builder.build());
}
req_builder.addInsts(inst_builder.build());
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册