Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
 

374 Zeilen
12 KiB

  1. // Code generated by protoc-gen-go. DO NOT EDIT.
  2. // source: google/cloud/ml/v1/prediction_service.proto
  3. package ml // import "google.golang.org/genproto/googleapis/cloud/ml/v1"
  4. import proto "github.com/golang/protobuf/proto"
  5. import fmt "fmt"
  6. import math "math"
  7. import _ "google.golang.org/genproto/googleapis/api/annotations"
  8. import httpbody "google.golang.org/genproto/googleapis/api/httpbody"
  9. import (
  10. context "golang.org/x/net/context"
  11. grpc "google.golang.org/grpc"
  12. )
  13. // Reference imports to suppress errors if they are not otherwise used.
  14. var _ = proto.Marshal
  15. var _ = fmt.Errorf
  16. var _ = math.Inf
  17. // This is a compile-time assertion to ensure that this generated file
  18. // is compatible with the proto package it is being compiled against.
  19. // A compilation error at this line likely means your copy of the
  20. // proto package needs to be updated.
  21. const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
  22. // Request for predictions to be issued against a trained model.
  23. //
  24. // The body of the request is a single JSON object with a single top-level
  25. // field:
  26. //
  27. // <dl>
  28. // <dt>instances</dt>
  29. // <dd>A JSON array containing values representing the instances to use for
  30. // prediction.</dd>
  31. // </dl>
  32. //
  33. // The structure of each element of the instances list is determined by your
  34. // model's input definition. Instances can include named inputs or can contain
  35. // only unlabeled values.
  36. //
  37. // Not all data includes named inputs. Some instances will be simple
  38. // JSON values (boolean, number, or string). However, instances are often lists
  39. // of simple values, or complex nested lists. Here are some examples of request
  40. // bodies:
  41. //
  42. // CSV data with each row encoded as a string value:
  43. // <pre>
  44. // {"instances": ["1.0,true,\\"x\\"", "-2.0,false,\\"y\\""]}
  45. // </pre>
  46. // Plain text:
  47. // <pre>
  48. // {"instances": ["the quick brown fox", "la bruja le dio"]}
  49. // </pre>
  50. // Sentences encoded as lists of words (vectors of strings):
  51. // <pre>
  52. // {
  53. // "instances": [
  54. // ["the","quick","brown"],
  55. // ["la","bruja","le"],
  56. // ...
  57. // ]
  58. // }
  59. // </pre>
  60. // Floating point scalar values:
  61. // <pre>
  62. // {"instances": [0.0, 1.1, 2.2]}
  63. // </pre>
  64. // Vectors of integers:
  65. // <pre>
  66. // {
  67. // "instances": [
  68. // [0, 1, 2],
  69. // [3, 4, 5],
  70. // ...
  71. // ]
  72. // }
  73. // </pre>
  74. // Tensors (in this case, two-dimensional tensors):
  75. // <pre>
  76. // {
  77. // "instances": [
  78. // [
  79. // [0, 1, 2],
  80. // [3, 4, 5]
  81. // ],
  82. // ...
  83. // ]
  84. // }
  85. // </pre>
  86. // Images can be represented different ways. In this encoding scheme the first
  87. // two dimensions represent the rows and columns of the image, and the third
  88. // contains lists (vectors) of the R, G, and B values for each pixel.
  89. // <pre>
  90. // {
  91. // "instances": [
  92. // [
  93. // [
  94. // [138, 30, 66],
  95. // [130, 20, 56],
  96. // ...
  97. // ],
  98. // [
  99. // [126, 38, 61],
  100. // [122, 24, 57],
  101. // ...
  102. // ],
  103. // ...
  104. // ],
  105. // ...
  106. // ]
  107. // }
  108. // </pre>
  109. // JSON strings must be encoded as UTF-8. To send binary data, you must
  110. // base64-encode the data and mark it as binary. To mark a JSON string
  111. // as binary, replace it with a JSON object with a single attribute named `b64`:
  112. // <pre>{"b64": "..."} </pre>
  113. // For example:
  114. //
  115. // Two Serialized tf.Examples (fake data, for illustrative purposes only):
  116. // <pre>
  117. // {"instances": [{"b64": "X5ad6u"}, {"b64": "IA9j4nx"}]}
  118. // </pre>
  119. // Two JPEG image byte strings (fake data, for illustrative purposes only):
  120. // <pre>
  121. // {"instances": [{"b64": "ASa8asdf"}, {"b64": "JLK7ljk3"}]}
  122. // </pre>
  123. // If your data includes named references, format each instance as a JSON object
  124. // with the named references as the keys:
  125. //
  126. // JSON input data to be preprocessed:
  127. // <pre>
  128. // {
  129. // "instances": [
  130. // {
  131. // "a": 1.0,
  132. // "b": true,
  133. // "c": "x"
  134. // },
  135. // {
  136. // "a": -2.0,
  137. // "b": false,
  138. // "c": "y"
  139. // }
  140. // ]
  141. // }
  142. // </pre>
  143. // Some models have an underlying TensorFlow graph that accepts multiple input
  144. // tensors. In this case, you should use the names of JSON name/value pairs to
  145. // identify the input tensors, as shown in the following exmaples:
  146. //
  147. // For a graph with input tensor aliases "tag" (string) and "image"
  148. // (base64-encoded string):
  149. // <pre>
  150. // {
  151. // "instances": [
  152. // {
  153. // "tag": "beach",
  154. // "image": {"b64": "ASa8asdf"}
  155. // },
  156. // {
  157. // "tag": "car",
  158. // "image": {"b64": "JLK7ljk3"}
  159. // }
  160. // ]
  161. // }
  162. // </pre>
  163. // For a graph with input tensor aliases "tag" (string) and "image"
  164. // (3-dimensional array of 8-bit ints):
  165. // <pre>
  166. // {
  167. // "instances": [
  168. // {
  169. // "tag": "beach",
  170. // "image": [
  171. // [
  172. // [138, 30, 66],
  173. // [130, 20, 56],
  174. // ...
  175. // ],
  176. // [
  177. // [126, 38, 61],
  178. // [122, 24, 57],
  179. // ...
  180. // ],
  181. // ...
  182. // ]
  183. // },
  184. // {
  185. // "tag": "car",
  186. // "image": [
  187. // [
  188. // [255, 0, 102],
  189. // [255, 0, 97],
  190. // ...
  191. // ],
  192. // [
  193. // [254, 1, 101],
  194. // [254, 2, 93],
  195. // ...
  196. // ],
  197. // ...
  198. // ]
  199. // },
  200. // ...
  201. // ]
  202. // }
  203. // </pre>
  204. // If the call is successful, the response body will contain one prediction
  205. // entry per instance in the request body. If prediction fails for any
  206. // instance, the response body will contain no predictions and will contian
  207. // a single error entry instead.
  208. type PredictRequest struct {
  209. // Required. The resource name of a model or a version.
  210. //
  211. // Authorization: requires `Viewer` role on the parent project.
  212. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  213. //
  214. // Required. The prediction request body.
  215. HttpBody *httpbody.HttpBody `protobuf:"bytes,2,opt,name=http_body,json=httpBody,proto3" json:"http_body,omitempty"`
  216. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  217. XXX_unrecognized []byte `json:"-"`
  218. XXX_sizecache int32 `json:"-"`
  219. }
  220. func (m *PredictRequest) Reset() { *m = PredictRequest{} }
  221. func (m *PredictRequest) String() string { return proto.CompactTextString(m) }
  222. func (*PredictRequest) ProtoMessage() {}
  223. func (*PredictRequest) Descriptor() ([]byte, []int) {
  224. return fileDescriptor_prediction_service_917133d9a7213060, []int{0}
  225. }
  226. func (m *PredictRequest) XXX_Unmarshal(b []byte) error {
  227. return xxx_messageInfo_PredictRequest.Unmarshal(m, b)
  228. }
  229. func (m *PredictRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  230. return xxx_messageInfo_PredictRequest.Marshal(b, m, deterministic)
  231. }
  232. func (dst *PredictRequest) XXX_Merge(src proto.Message) {
  233. xxx_messageInfo_PredictRequest.Merge(dst, src)
  234. }
  235. func (m *PredictRequest) XXX_Size() int {
  236. return xxx_messageInfo_PredictRequest.Size(m)
  237. }
  238. func (m *PredictRequest) XXX_DiscardUnknown() {
  239. xxx_messageInfo_PredictRequest.DiscardUnknown(m)
  240. }
  241. var xxx_messageInfo_PredictRequest proto.InternalMessageInfo
  242. func (m *PredictRequest) GetName() string {
  243. if m != nil {
  244. return m.Name
  245. }
  246. return ""
  247. }
  248. func (m *PredictRequest) GetHttpBody() *httpbody.HttpBody {
  249. if m != nil {
  250. return m.HttpBody
  251. }
  252. return nil
  253. }
  254. func init() {
  255. proto.RegisterType((*PredictRequest)(nil), "google.cloud.ml.v1.PredictRequest")
  256. }
  257. // Reference imports to suppress errors if they are not otherwise used.
  258. var _ context.Context
  259. var _ grpc.ClientConn
  260. // This is a compile-time assertion to ensure that this generated file
  261. // is compatible with the grpc package it is being compiled against.
  262. const _ = grpc.SupportPackageIsVersion4
  263. // OnlinePredictionServiceClient is the client API for OnlinePredictionService service.
  264. //
  265. // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
  266. type OnlinePredictionServiceClient interface {
  267. // Performs prediction on the data in the request.
  268. //
  269. // **** REMOVE FROM GENERATED DOCUMENTATION
  270. Predict(ctx context.Context, in *PredictRequest, opts ...grpc.CallOption) (*httpbody.HttpBody, error)
  271. }
  272. type onlinePredictionServiceClient struct {
  273. cc *grpc.ClientConn
  274. }
  275. func NewOnlinePredictionServiceClient(cc *grpc.ClientConn) OnlinePredictionServiceClient {
  276. return &onlinePredictionServiceClient{cc}
  277. }
  278. func (c *onlinePredictionServiceClient) Predict(ctx context.Context, in *PredictRequest, opts ...grpc.CallOption) (*httpbody.HttpBody, error) {
  279. out := new(httpbody.HttpBody)
  280. err := c.cc.Invoke(ctx, "/google.cloud.ml.v1.OnlinePredictionService/Predict", in, out, opts...)
  281. if err != nil {
  282. return nil, err
  283. }
  284. return out, nil
  285. }
  286. // OnlinePredictionServiceServer is the server API for OnlinePredictionService service.
  287. type OnlinePredictionServiceServer interface {
  288. // Performs prediction on the data in the request.
  289. //
  290. // **** REMOVE FROM GENERATED DOCUMENTATION
  291. Predict(context.Context, *PredictRequest) (*httpbody.HttpBody, error)
  292. }
  293. func RegisterOnlinePredictionServiceServer(s *grpc.Server, srv OnlinePredictionServiceServer) {
  294. s.RegisterService(&_OnlinePredictionService_serviceDesc, srv)
  295. }
  296. func _OnlinePredictionService_Predict_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  297. in := new(PredictRequest)
  298. if err := dec(in); err != nil {
  299. return nil, err
  300. }
  301. if interceptor == nil {
  302. return srv.(OnlinePredictionServiceServer).Predict(ctx, in)
  303. }
  304. info := &grpc.UnaryServerInfo{
  305. Server: srv,
  306. FullMethod: "/google.cloud.ml.v1.OnlinePredictionService/Predict",
  307. }
  308. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  309. return srv.(OnlinePredictionServiceServer).Predict(ctx, req.(*PredictRequest))
  310. }
  311. return interceptor(ctx, in, info, handler)
  312. }
  313. var _OnlinePredictionService_serviceDesc = grpc.ServiceDesc{
  314. ServiceName: "google.cloud.ml.v1.OnlinePredictionService",
  315. HandlerType: (*OnlinePredictionServiceServer)(nil),
  316. Methods: []grpc.MethodDesc{
  317. {
  318. MethodName: "Predict",
  319. Handler: _OnlinePredictionService_Predict_Handler,
  320. },
  321. },
  322. Streams: []grpc.StreamDesc{},
  323. Metadata: "google/cloud/ml/v1/prediction_service.proto",
  324. }
  325. func init() {
  326. proto.RegisterFile("google/cloud/ml/v1/prediction_service.proto", fileDescriptor_prediction_service_917133d9a7213060)
  327. }
  328. var fileDescriptor_prediction_service_917133d9a7213060 = []byte{
  329. // 308 bytes of a gzipped FileDescriptorProto
  330. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x6c, 0x51, 0x4f, 0x4b, 0xfb, 0x30,
  331. 0x18, 0xa6, 0xe3, 0xc7, 0x4f, 0x17, 0xc1, 0x43, 0x10, 0x9d, 0x45, 0x64, 0xd4, 0xcb, 0x9c, 0x90,
  332. 0xd0, 0xe9, 0x69, 0xe2, 0x65, 0x27, 0x6f, 0x96, 0x79, 0x10, 0xbc, 0x8c, 0xac, 0x0d, 0x59, 0x24,
  333. 0xcd, 0x1b, 0xdb, 0xac, 0x30, 0xc4, 0x8b, 0x37, 0xcf, 0x7e, 0x34, 0xbf, 0x82, 0x1f, 0x44, 0xd2,
  334. 0x04, 0x99, 0xd4, 0xdb, 0x4b, 0xde, 0xe7, 0x79, 0x9f, 0x3f, 0x41, 0x17, 0x02, 0x40, 0x28, 0x4e,
  335. 0x73, 0x05, 0xeb, 0x82, 0x96, 0x8a, 0x36, 0x29, 0x35, 0x15, 0x2f, 0x64, 0x6e, 0x25, 0xe8, 0x45,
  336. 0xcd, 0xab, 0x46, 0xe6, 0x9c, 0x98, 0x0a, 0x2c, 0x60, 0xec, 0xc1, 0xa4, 0x05, 0x93, 0x52, 0x91,
  337. 0x26, 0x8d, 0x4f, 0xc2, 0x01, 0x66, 0x24, 0x65, 0x5a, 0x83, 0x65, 0x8e, 0x58, 0x7b, 0x46, 0x7c,
  338. 0xbc, 0xb5, 0x5d, 0x59, 0x6b, 0x96, 0x50, 0x6c, 0xfc, 0x2a, 0x79, 0x40, 0xfb, 0x99, 0x17, 0x9a,
  339. 0xf3, 0xe7, 0x35, 0xaf, 0x2d, 0xc6, 0xe8, 0x9f, 0x66, 0x25, 0x1f, 0x44, 0xc3, 0x68, 0xd4, 0x9f,
  340. 0xb7, 0x33, 0x4e, 0x51, 0xdf, 0xf1, 0x16, 0x8e, 0x38, 0xe8, 0x0d, 0xa3, 0xd1, 0xde, 0xe4, 0x80,
  341. 0x04, 0x1b, 0xcc, 0x48, 0x72, 0x6b, 0xad, 0x99, 0x41, 0xb1, 0x99, 0xef, 0xae, 0xc2, 0x34, 0x79,
  342. 0x8f, 0xd0, 0xd1, 0x9d, 0x56, 0x52, 0xf3, 0xec, 0x27, 0xc8, 0xbd, 0xcf, 0x81, 0x35, 0xda, 0x09,
  343. 0x8f, 0x38, 0x21, 0xdd, 0x34, 0xe4, 0xb7, 0xa3, 0xf8, 0x4f, 0xa9, 0xe4, 0xfc, 0xed, 0xf3, 0xeb,
  344. 0xa3, 0x77, 0x96, 0x9c, 0xba, 0xb2, 0x5e, 0x9c, 0xcd, 0x1b, 0x53, 0xc1, 0x13, 0xcf, 0x6d, 0x4d,
  345. 0xc7, 0xe3, 0xd7, 0x69, 0xe8, 0x6f, 0x1a, 0x8d, 0x67, 0x0a, 0xc5, 0x39, 0x94, 0x1d, 0x25, 0x77,
  346. 0xae, 0x49, 0x67, 0x87, 0x1d, 0x83, 0x99, 0xab, 0x26, 0x8b, 0x1e, 0xaf, 0x02, 0x43, 0x80, 0x62,
  347. 0x5a, 0x10, 0xa8, 0x04, 0x15, 0x5c, 0xb7, 0xc5, 0x51, 0xbf, 0x62, 0x46, 0xd6, 0xdb, 0xbf, 0x76,
  348. 0x5d, 0xaa, 0xe5, 0xff, 0x16, 0x70, 0xf9, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x81, 0x8e, 0x25, 0xca,
  349. 0xd5, 0x01, 0x00, 0x00,
  350. }