Skip to content

Commit cf0cb67

Browse files
committed
Merge branch 'master' into release-0.1
2 parents ec3ce7e + 957fcda commit cf0cb67

File tree

70 files changed

+396
-12237
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

70 files changed

+396
-12237
lines changed

CHANGELOG.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,34 @@
11
# Change Log
22

3+
## [v0.1.7](https://github.com/SeldonIO/seldon-core/tree/v0.1.7) (2018-06-04)
4+
[Full Changelog](https://github.com/SeldonIO/seldon-core/compare/v0.1.6...v0.1.7)
5+
6+
**Closed issues:**
7+
8+
- Quickstart problem [\#153](https://github.com/SeldonIO/seldon-core/issues/153)
9+
- NameError: global name 'ListValue' is not defined [\#148](https://github.com/SeldonIO/seldon-core/issues/148)
10+
- bad credentials error with get\_token function [\#144](https://github.com/SeldonIO/seldon-core/issues/144)
11+
- Make CRD Namespaced scoped [\#141](https://github.com/SeldonIO/seldon-core/issues/141)
12+
- Create wrappers for Java based models [\#137](https://github.com/SeldonIO/seldon-core/issues/137)
13+
- Update ksonnet prototypes for latest image version [\#130](https://github.com/SeldonIO/seldon-core/issues/130)
14+
- Create demo notebook for Azure [\#129](https://github.com/SeldonIO/seldon-core/issues/129)
15+
- Grafana Dashboard [\#109](https://github.com/SeldonIO/seldon-core/issues/109)
16+
- Multiple helm seldon-core installs on separate namespaces fails [\#106](https://github.com/SeldonIO/seldon-core/issues/106)
17+
18+
**Merged pull requests:**
19+
20+
- Add install guide [\#156](https://github.com/SeldonIO/seldon-core/pull/156) ([cliveseldon](https://github.com/cliveseldon))
21+
- WIP : PySpark and PMML example [\#155](https://github.com/SeldonIO/seldon-core/pull/155) ([cliveseldon](https://github.com/cliveseldon))
22+
- Fix gRPC tests for wrappers and update sklearn iris example to show use [\#150](https://github.com/SeldonIO/seldon-core/pull/150) ([cliveseldon](https://github.com/cliveseldon))
23+
- Minikube RBAC updates and Notebooks for Model examples [\#147](https://github.com/SeldonIO/seldon-core/pull/147) ([cliveseldon](https://github.com/cliveseldon))
24+
- change ClusterRoleBinding to RoleBinding [\#146](https://github.com/SeldonIO/seldon-core/pull/146) ([gsunner](https://github.com/gsunner))
25+
- MNIST loadtest [\#143](https://github.com/SeldonIO/seldon-core/pull/143) ([cliveseldon](https://github.com/cliveseldon))
26+
- Openshift article on using s2i in seldon-core [\#140](https://github.com/SeldonIO/seldon-core/pull/140) ([cliveseldon](https://github.com/cliveseldon))
27+
- Java wrappers [\#138](https://github.com/SeldonIO/seldon-core/pull/138) ([cliveseldon](https://github.com/cliveseldon))
28+
- add notebook for azure demo [\#135](https://github.com/SeldonIO/seldon-core/pull/135) ([gsunner](https://github.com/gsunner))
29+
- update ksonnet defaults to 0.1.6 [\#131](https://github.com/SeldonIO/seldon-core/pull/131) ([cliveseldon](https://github.com/cliveseldon))
30+
- Typos fix [\#128](https://github.com/SeldonIO/seldon-core/pull/128) ([LevineHuang](https://github.com/LevineHuang))
31+
332
## [v0.1.6](https://github.com/SeldonIO/seldon-core/tree/v0.1.6) (2018-03-29)
433
[Full Changelog](https://github.com/SeldonIO/seldon-core/compare/v0.1.5...v0.1.6)
534

api-frontend/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
<groupId>io.seldon.apife</groupId>
1212
<artifactId>seldon-apife</artifactId>
13-
<version>0.1.7</version>
13+
<version>0.1.8</version>
1414
<packaging>jar</packaging>
1515

1616
<name>api-frontend</name>

cluster-manager/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<groupId>io.seldon.clustermanager</groupId>
55
<artifactId>seldon-cluster-manager</artifactId>
66
<packaging>jar</packaging>
7-
<version>0.1.7</version>
7+
<version>0.1.8</version>
88
<name>seldon-cluster-manager</name>
99
<url>http://maven.apache.org</url>
1010

core-builder/Dockerfile

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,10 @@ RUN \
2727

2828
# dependencies for release script
2929
RUN \
30+
# install env for python3
3031
apt-get update -y && \
31-
apt-get install -y python-pip && \
32-
pip install pyyaml && \
32+
apt-get install -y python3-pip && \
33+
pip3 install pyyaml && \
3334
apt-get remove -y --auto-remove && apt-get clean -y && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
3435

3536
WORKDIR /work

core-builder/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
DOCKER_IMAGE_NAME=seldonio/core-builder
2-
DOCKER_IMAGE_VERSION=0.2
2+
DOCKER_IMAGE_VERSION=0.3
33

44
build_docker_image:
55
docker build --force-rm=true -t $(DOCKER_IMAGE_NAME):$(DOCKER_IMAGE_VERSION) .

docs/getting_started/minikube.md

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -213,12 +213,4 @@ The response contains:
213213
* "names": The names of your classes.
214214
* "ndarray": The predicted probabilities for each class.
215215
216-
## Next Steps
217-
218-
* You can run several notebooks that show various examples on minikube and Google cloud platform
219-
* [Jupyter Notebook showing deployment of prebuilt model using Minikube](https://github.com/SeldonIO/seldon-core/blob/master/notebooks/kubectl_demo_minikube.ipynb)
220-
* [Jupyter Notebook showing deployment of prebuilt model using GCP cluster](https://github.com/SeldonIO/seldon-core/blob/master/notebooks/kubectl_demo_gcp.ipynb)
221-
* [Epsilon-greedy multi-armed bandits for real time optimization of models](https://github.com/SeldonIO/seldon-core/blob/master/notebooks/epsilon_greedy_gcp.ipynb)
222-
* [Advanced graphs showing the various types of runtime prediction graphs that can be built](https://github.com/cliveseldon/seldon-core/blob/master/notebooks/advanced_graphs.ipynb)
223-
* [Jupyter notebook to create seldon-core with ksonnet and expose APIs using Ambassador.](https://github.com/SeldonIO/seldon-core/blob/master/notebooks/ksonnet_ambassador_minikube.ipynb)
224216

docs/readme.md

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
11
# Seldon Documentation
22

3-
## Quick Start
4-
5-
- [Quick Start using Minikube](./getting_started/minikube.md)
6-
- [Jupyter Notebook showing deployment of prebuilt model](https://github.com/SeldonIO/seldon-core/blob/master/notebooks/kubectl_demo_minikube.ipynb)
7-
83
## Deployment Guide
94

105
![API](./deploy.png)

docs/wrappers/java.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ Create a Spring Boot Maven project and include the dependency:
3838
<dependency>
3939
<groupId>io.seldon.wrapper</groupId>
4040
<artifactId>seldon-core-wrapper</artifactId>
41-
<version>0.1.0</version>
41+
<version>0.1.1</version>
4242
</dependency>
4343
```
4444

engine/pom.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
<groupId>io.seldon.engine</groupId>
1212
<artifactId>seldon-engine</artifactId>
13-
<version>0.1.7</version>
13+
<version>0.1.8</version>
1414
<packaging>jar</packaging>
1515

1616
<name>engine</name>
@@ -76,9 +76,9 @@
7676
<dependencies>
7777
<!-- https://mvnrepository.com/artifact/org.nd4j/nd4j-native -->
7878
<dependency>
79-
<groupId>org.nd4j</groupId>
80-
<artifactId>nd4j-native-platform</artifactId>
81-
<version>0.9.1</version>
79+
<groupId>org.ojalgo</groupId>
80+
<artifactId>ojalgo</artifactId>
81+
<version>45.1.1</version>
8282
</dependency>
8383
<dependency>
8484
<groupId>org.springframework.boot</groupId>

engine/src/main/java/io/seldon/engine/predictors/AverageCombinerUnit.java

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,14 @@
1818
import java.util.Iterator;
1919
import java.util.List;
2020

21-
import org.nd4j.linalg.api.ndarray.INDArray;
22-
import org.nd4j.linalg.factory.Nd4j;
21+
import org.ojalgo.matrix.BasicMatrix;
22+
import org.ojalgo.matrix.PrimitiveMatrix;
2323
import org.springframework.stereotype.Component;
2424

2525
import io.seldon.engine.exception.APIException;
2626
import io.seldon.protos.PredictionProtos.DefaultData;
2727
import io.seldon.protos.PredictionProtos.SeldonMessage;
2828

29-
import io.seldon.engine.predictors.PredictorUtils;
30-
3129
@Component
3230
public class AverageCombinerUnit extends PredictiveUnitImpl {
3331

@@ -49,8 +47,8 @@ public SeldonMessage aggregate(List<SeldonMessage> outputs, PredictiveUnitState
4947
if (shape.length!=2){
5048
throw new APIException(APIException.ApiExceptionType.ENGINE_INVALID_COMBINER_RESPONSE, String.format("Combiner received data that is not 2 dimensional"));
5149
}
52-
53-
INDArray currentSum = Nd4j.zeros(shape[0],shape[1]);
50+
BasicMatrix.Factory<PrimitiveMatrix> matrixFactory = PrimitiveMatrix.FACTORY;
51+
PrimitiveMatrix currentSum = matrixFactory.makeZero(shape[0], shape[1]);
5452
SeldonMessage.Builder respBuilder = SeldonMessage.newBuilder();
5553

5654
for (Iterator<SeldonMessage> i = outputs.iterator(); i.hasNext();)
@@ -69,10 +67,10 @@ public SeldonMessage aggregate(List<SeldonMessage> outputs, PredictiveUnitState
6967
if (inputShape[1] != shape[1]){
7068
throw new APIException(APIException.ApiExceptionType.ENGINE_INVALID_COMBINER_RESPONSE, String.format("Expected batch length %d but found %d",shape[1],inputShape[1]));
7169
}
72-
INDArray inputArr = PredictorUtils.getINDArray(inputData);
70+
PrimitiveMatrix inputArr = PredictorUtils.getOJMatrix(inputData);
7371
currentSum = currentSum.add(inputArr);
7472
}
75-
currentSum = currentSum.div((float)outputs.size());
73+
currentSum = currentSum.divide((float)outputs.size());
7674

7775
DefaultData newData = PredictorUtils.updateData(outputs.get(0).getData(), currentSum);
7876
respBuilder.setData(newData);

0 commit comments

Comments
 (0)