Skip to content

Instantly share code, notes, and snippets.

@masroorhasan
Last active January 20, 2019 23:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save masroorhasan/0addfd33d8e5759008a0a20b4ff404eb to your computer and use it in GitHub Desktop.
Save masroorhasan/0addfd33d8e5759008a0a20b4ff404eb to your computer and use it in GitHub Desktop.
package main
import (
"context"
"flag"
"log"
"google.golang.org/grpc"
"google.golang.org/grpc/metadata"
seldonapi "github.com/seldonio/seldon-core/proto/golang/prediction"
)
var (
ambassadorEndpoint = flag.String("ambassador_endpoint", "seldon-core-ambassador.seldon-serving:80", "Address for the seldoncore ambassador API gateway")
)
func main() {
flag.Parse()
// build grpc seldon prediction client
conn, err := grpc.Dial(*ambassadorEndpoint, grpc.WithInsecure())
if err != nil {
log.Fatalf("failed to create gRPC connection to seldon ambassador endpoint: %v", err)
}
apiClient := seldonapi.NewSeldonClient(conn)
// build context and data
ctx := metadata.NewOutgoingContext(
context.Background(),
metadata.Pairs("seldon", "housing-serve-gb"),
)
data := &seldonapi.SeldonMessage_Data{
Data: &seldonapi.DefaultData{
DataOneof: &seldonapi.DefaultData_Tensor{
Tensor: &seldonapi.Tensor{
Shape: []int32{1, 37},
Values: []float64{1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0,
21.0, 22.0, 23.0, 24.0, 25.0, 26.0, 27.0, 28.0, 29.0, 30.0, 31.0, 32.0, 33.0, 34.0, 35.0, 36.0, 37.0,
},
},
},
},
}
// make prediction request
var resp *seldonapi.SeldonMessage
if resp, err = apiClient.Predict(ctx, &seldonapi.SeldonMessage{DataOneof: data}); err != nil {
log.Fatalf("error response from mock classifier model server: %v", err)
}
log.Printf("response from model server: %v", resp)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment