2
0

onnx-proto.js 57 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760
  1. import * as protobuf from './protobuf.js';
  2. export const onnx = {};
  3. onnx.Version = {
  4. "_START_VERSION": 0,
  5. "IR_VERSION_2017_10_10": 1,
  6. "IR_VERSION_2017_10_30": 2,
  7. "IR_VERSION_2017_11_3": 3,
  8. "IR_VERSION_2019_1_22": 4,
  9. "IR_VERSION_2019_3_18": 5,
  10. "IR_VERSION_2019_9_19": 6,
  11. "IR_VERSION_2020_5_8": 7,
  12. "IR_VERSION_2021_7_30": 8,
  13. "IR_VERSION_2023_5_5": 9,
  14. "IR_VERSION": 10
  15. };
  16. onnx.AttributeProto = class AttributeProto {
  17. constructor() {
  18. this.floats = [];
  19. this.ints = [];
  20. this.strings = [];
  21. this.tensors = [];
  22. this.graphs = [];
  23. this.sparse_tensors = [];
  24. this.type_protos = [];
  25. }
  26. static decode(reader, length) {
  27. const message = new onnx.AttributeProto();
  28. const end = length !== undefined ? reader.position + length : reader.length;
  29. while (reader.position < end) {
  30. const tag = reader.uint32();
  31. switch (tag >>> 3) {
  32. case 1:
  33. message.name = reader.string();
  34. break;
  35. case 21:
  36. message.ref_attr_name = reader.string();
  37. break;
  38. case 13:
  39. message.doc_string = reader.string();
  40. break;
  41. case 20:
  42. message.type = reader.int32();
  43. break;
  44. case 2:
  45. message.f = reader.float();
  46. break;
  47. case 3:
  48. message.i = reader.int64();
  49. break;
  50. case 4:
  51. message.s = reader.bytes();
  52. break;
  53. case 5:
  54. message.t = onnx.TensorProto.decode(reader, reader.uint32());
  55. break;
  56. case 6:
  57. message.g = onnx.GraphProto.decode(reader, reader.uint32());
  58. break;
  59. case 22:
  60. message.sparse_tensor = onnx.SparseTensorProto.decode(reader, reader.uint32());
  61. break;
  62. case 14:
  63. message.tp = onnx.TypeProto.decode(reader, reader.uint32());
  64. break;
  65. case 7:
  66. message.floats = reader.floats(message.floats, tag);
  67. break;
  68. case 8:
  69. message.ints = reader.array(message.ints, () => reader.int64(), tag);
  70. break;
  71. case 9:
  72. message.strings.push(reader.bytes());
  73. break;
  74. case 10:
  75. message.tensors.push(onnx.TensorProto.decode(reader, reader.uint32()));
  76. break;
  77. case 11:
  78. message.graphs.push(onnx.GraphProto.decode(reader, reader.uint32()));
  79. break;
  80. case 23:
  81. message.sparse_tensors.push(onnx.SparseTensorProto.decode(reader, reader.uint32()));
  82. break;
  83. case 15:
  84. message.type_protos.push(onnx.TypeProto.decode(reader, reader.uint32()));
  85. break;
  86. default:
  87. reader.skipType(tag & 7);
  88. break;
  89. }
  90. }
  91. return message;
  92. }
  93. static decodeText(reader) {
  94. const message = new onnx.AttributeProto();
  95. reader.start();
  96. while (!reader.end()) {
  97. const tag = reader.tag();
  98. switch (tag) {
  99. case "name":
  100. message.name = reader.string();
  101. break;
  102. case "ref_attr_name":
  103. message.ref_attr_name = reader.string();
  104. break;
  105. case "doc_string":
  106. message.doc_string = reader.string();
  107. break;
  108. case "type":
  109. message.type = reader.enum(onnx.AttributeProto.AttributeType);
  110. break;
  111. case "f":
  112. message.f = reader.float();
  113. break;
  114. case "i":
  115. message.i = reader.int64();
  116. break;
  117. case "s":
  118. message.s = reader.bytes();
  119. break;
  120. case "t":
  121. message.t = onnx.TensorProto.decodeText(reader);
  122. break;
  123. case "g":
  124. message.g = onnx.GraphProto.decodeText(reader);
  125. break;
  126. case "sparse_tensor":
  127. message.sparse_tensor = onnx.SparseTensorProto.decodeText(reader);
  128. break;
  129. case "tp":
  130. message.tp = onnx.TypeProto.decodeText(reader);
  131. break;
  132. case "floats":
  133. reader.array(message.floats, () => reader.float());
  134. break;
  135. case "ints":
  136. reader.array(message.ints, () => reader.int64());
  137. break;
  138. case "strings":
  139. reader.array(message.strings, () => reader.bytes());
  140. break;
  141. case "tensors":
  142. message.tensors.push(onnx.TensorProto.decodeText(reader));
  143. break;
  144. case "graphs":
  145. message.graphs.push(onnx.GraphProto.decodeText(reader));
  146. break;
  147. case "sparse_tensors":
  148. message.sparse_tensors.push(onnx.SparseTensorProto.decodeText(reader));
  149. break;
  150. case "type_protos":
  151. message.type_protos.push(onnx.TypeProto.decodeText(reader));
  152. break;
  153. default:
  154. reader.field(tag, message);
  155. break;
  156. }
  157. }
  158. return message;
  159. }
  160. };
  161. onnx.AttributeProto.prototype.name = "";
  162. onnx.AttributeProto.prototype.ref_attr_name = "";
  163. onnx.AttributeProto.prototype.doc_string = "";
  164. onnx.AttributeProto.prototype.type = 0;
  165. onnx.AttributeProto.prototype.f = 0;
  166. onnx.AttributeProto.prototype.i = protobuf.Int64.create(0);
  167. onnx.AttributeProto.prototype.s = new Uint8Array([]);
  168. onnx.AttributeProto.prototype.t = null;
  169. onnx.AttributeProto.prototype.g = null;
  170. onnx.AttributeProto.prototype.sparse_tensor = null;
  171. onnx.AttributeProto.prototype.tp = null;
  172. onnx.AttributeProto.AttributeType = {
  173. "UNDEFINED": 0,
  174. "FLOAT": 1,
  175. "INT": 2,
  176. "STRING": 3,
  177. "TENSOR": 4,
  178. "GRAPH": 5,
  179. "SPARSE_TENSOR": 11,
  180. "TYPE_PROTO": 13,
  181. "FLOATS": 6,
  182. "INTS": 7,
  183. "STRINGS": 8,
  184. "TENSORS": 9,
  185. "GRAPHS": 10,
  186. "SPARSE_TENSORS": 12,
  187. "TYPE_PROTOS": 14
  188. };
  189. onnx.ValueInfoProto = class ValueInfoProto {
  190. constructor() {
  191. }
  192. static decode(reader, length) {
  193. const message = new onnx.ValueInfoProto();
  194. const end = length !== undefined ? reader.position + length : reader.length;
  195. while (reader.position < end) {
  196. const tag = reader.uint32();
  197. switch (tag >>> 3) {
  198. case 1:
  199. message.name = reader.string();
  200. break;
  201. case 2:
  202. message.type = onnx.TypeProto.decode(reader, reader.uint32());
  203. break;
  204. case 3:
  205. message.doc_string = reader.string();
  206. break;
  207. default:
  208. reader.skipType(tag & 7);
  209. break;
  210. }
  211. }
  212. return message;
  213. }
  214. static decodeText(reader) {
  215. const message = new onnx.ValueInfoProto();
  216. reader.start();
  217. while (!reader.end()) {
  218. const tag = reader.tag();
  219. switch (tag) {
  220. case "name":
  221. message.name = reader.string();
  222. break;
  223. case "type":
  224. message.type = onnx.TypeProto.decodeText(reader);
  225. break;
  226. case "doc_string":
  227. message.doc_string = reader.string();
  228. break;
  229. default:
  230. reader.field(tag, message);
  231. break;
  232. }
  233. }
  234. return message;
  235. }
  236. };
  237. onnx.ValueInfoProto.prototype.name = "";
  238. onnx.ValueInfoProto.prototype.type = null;
  239. onnx.ValueInfoProto.prototype.doc_string = "";
  240. onnx.NodeProto = class NodeProto {
  241. constructor() {
  242. this.input = [];
  243. this.output = [];
  244. this.attribute = [];
  245. }
  246. static decode(reader, length) {
  247. const message = new onnx.NodeProto();
  248. const end = length !== undefined ? reader.position + length : reader.length;
  249. while (reader.position < end) {
  250. const tag = reader.uint32();
  251. switch (tag >>> 3) {
  252. case 1:
  253. message.input.push(reader.string());
  254. break;
  255. case 2:
  256. message.output.push(reader.string());
  257. break;
  258. case 3:
  259. message.name = reader.string();
  260. break;
  261. case 4:
  262. message.op_type = reader.string();
  263. break;
  264. case 7:
  265. message.domain = reader.string();
  266. break;
  267. case 5:
  268. message.attribute.push(onnx.AttributeProto.decode(reader, reader.uint32()));
  269. break;
  270. case 6:
  271. message.doc_string = reader.string();
  272. break;
  273. default:
  274. reader.skipType(tag & 7);
  275. break;
  276. }
  277. }
  278. return message;
  279. }
  280. static decodeText(reader) {
  281. const message = new onnx.NodeProto();
  282. reader.start();
  283. while (!reader.end()) {
  284. const tag = reader.tag();
  285. switch (tag) {
  286. case "input":
  287. reader.array(message.input, () => reader.string());
  288. break;
  289. case "output":
  290. reader.array(message.output, () => reader.string());
  291. break;
  292. case "name":
  293. message.name = reader.string();
  294. break;
  295. case "op_type":
  296. message.op_type = reader.string();
  297. break;
  298. case "domain":
  299. message.domain = reader.string();
  300. break;
  301. case "attribute":
  302. message.attribute.push(onnx.AttributeProto.decodeText(reader));
  303. break;
  304. case "doc_string":
  305. message.doc_string = reader.string();
  306. break;
  307. default:
  308. reader.field(tag, message);
  309. break;
  310. }
  311. }
  312. return message;
  313. }
  314. };
  315. onnx.NodeProto.prototype.name = "";
  316. onnx.NodeProto.prototype.op_type = "";
  317. onnx.NodeProto.prototype.domain = "";
  318. onnx.NodeProto.prototype.doc_string = "";
  319. onnx.TrainingInfoProto = class TrainingInfoProto {
  320. constructor() {
  321. this.initialization_binding = [];
  322. this.update_binding = [];
  323. }
  324. static decode(reader, length) {
  325. const message = new onnx.TrainingInfoProto();
  326. const end = length !== undefined ? reader.position + length : reader.length;
  327. while (reader.position < end) {
  328. const tag = reader.uint32();
  329. switch (tag >>> 3) {
  330. case 1:
  331. message.initialization = onnx.GraphProto.decode(reader, reader.uint32());
  332. break;
  333. case 2:
  334. message.algorithm = onnx.GraphProto.decode(reader, reader.uint32());
  335. break;
  336. case 3:
  337. message.initialization_binding.push(onnx.StringStringEntryProto.decode(reader, reader.uint32()));
  338. break;
  339. case 4:
  340. message.update_binding.push(onnx.StringStringEntryProto.decode(reader, reader.uint32()));
  341. break;
  342. default:
  343. reader.skipType(tag & 7);
  344. break;
  345. }
  346. }
  347. return message;
  348. }
  349. static decodeText(reader) {
  350. const message = new onnx.TrainingInfoProto();
  351. reader.start();
  352. while (!reader.end()) {
  353. const tag = reader.tag();
  354. switch (tag) {
  355. case "initialization":
  356. message.initialization = onnx.GraphProto.decodeText(reader);
  357. break;
  358. case "algorithm":
  359. message.algorithm = onnx.GraphProto.decodeText(reader);
  360. break;
  361. case "initialization_binding":
  362. message.initialization_binding.push(onnx.StringStringEntryProto.decodeText(reader));
  363. break;
  364. case "update_binding":
  365. message.update_binding.push(onnx.StringStringEntryProto.decodeText(reader));
  366. break;
  367. default:
  368. reader.field(tag, message);
  369. break;
  370. }
  371. }
  372. return message;
  373. }
  374. };
  375. onnx.TrainingInfoProto.prototype.initialization = null;
  376. onnx.TrainingInfoProto.prototype.algorithm = null;
  377. onnx.ModelProto = class ModelProto {
  378. constructor() {
  379. this.opset_import = [];
  380. this.metadata_props = [];
  381. this.training_info = [];
  382. this.functions = [];
  383. }
  384. static decode(reader, length) {
  385. const message = new onnx.ModelProto();
  386. const end = length !== undefined ? reader.position + length : reader.length;
  387. while (reader.position < end) {
  388. const tag = reader.uint32();
  389. switch (tag >>> 3) {
  390. case 1:
  391. message.ir_version = reader.int64();
  392. break;
  393. case 8:
  394. message.opset_import.push(onnx.OperatorSetIdProto.decode(reader, reader.uint32()));
  395. break;
  396. case 2:
  397. message.producer_name = reader.string();
  398. break;
  399. case 3:
  400. message.producer_version = reader.string();
  401. break;
  402. case 4:
  403. message.domain = reader.string();
  404. break;
  405. case 5:
  406. message.model_version = reader.int64();
  407. break;
  408. case 6:
  409. message.doc_string = reader.string();
  410. break;
  411. case 7:
  412. message.graph = onnx.GraphProto.decode(reader, reader.uint32());
  413. break;
  414. case 14:
  415. message.metadata_props.push(onnx.StringStringEntryProto.decode(reader, reader.uint32()));
  416. break;
  417. case 20:
  418. message.training_info.push(onnx.TrainingInfoProto.decode(reader, reader.uint32()));
  419. break;
  420. case 25:
  421. message.functions.push(onnx.FunctionProto.decode(reader, reader.uint32()));
  422. break;
  423. default:
  424. reader.skipType(tag & 7);
  425. break;
  426. }
  427. }
  428. return message;
  429. }
  430. static decodeText(reader) {
  431. const message = new onnx.ModelProto();
  432. reader.start();
  433. while (!reader.end()) {
  434. const tag = reader.tag();
  435. switch (tag) {
  436. case "ir_version":
  437. message.ir_version = reader.int64();
  438. break;
  439. case "opset_import":
  440. message.opset_import.push(onnx.OperatorSetIdProto.decodeText(reader));
  441. break;
  442. case "producer_name":
  443. message.producer_name = reader.string();
  444. break;
  445. case "producer_version":
  446. message.producer_version = reader.string();
  447. break;
  448. case "domain":
  449. message.domain = reader.string();
  450. break;
  451. case "model_version":
  452. message.model_version = reader.int64();
  453. break;
  454. case "doc_string":
  455. message.doc_string = reader.string();
  456. break;
  457. case "graph":
  458. message.graph = onnx.GraphProto.decodeText(reader);
  459. break;
  460. case "metadata_props":
  461. message.metadata_props.push(onnx.StringStringEntryProto.decodeText(reader));
  462. break;
  463. case "training_info":
  464. message.training_info.push(onnx.TrainingInfoProto.decodeText(reader));
  465. break;
  466. case "functions":
  467. message.functions.push(onnx.FunctionProto.decodeText(reader));
  468. break;
  469. default:
  470. reader.field(tag, message);
  471. break;
  472. }
  473. }
  474. return message;
  475. }
  476. };
  477. onnx.ModelProto.prototype.ir_version = protobuf.Int64.create(0);
  478. onnx.ModelProto.prototype.producer_name = "";
  479. onnx.ModelProto.prototype.producer_version = "";
  480. onnx.ModelProto.prototype.domain = "";
  481. onnx.ModelProto.prototype.model_version = protobuf.Int64.create(0);
  482. onnx.ModelProto.prototype.doc_string = "";
  483. onnx.ModelProto.prototype.graph = null;
  484. onnx.StringStringEntryProto = class StringStringEntryProto {
  485. constructor() {
  486. }
  487. static decode(reader, length) {
  488. const message = new onnx.StringStringEntryProto();
  489. const end = length !== undefined ? reader.position + length : reader.length;
  490. while (reader.position < end) {
  491. const tag = reader.uint32();
  492. switch (tag >>> 3) {
  493. case 1:
  494. message.key = reader.string();
  495. break;
  496. case 2:
  497. message.value = reader.string();
  498. break;
  499. default:
  500. reader.skipType(tag & 7);
  501. break;
  502. }
  503. }
  504. return message;
  505. }
  506. static decodeText(reader) {
  507. const message = new onnx.StringStringEntryProto();
  508. reader.start();
  509. while (!reader.end()) {
  510. const tag = reader.tag();
  511. switch (tag) {
  512. case "key":
  513. message.key = reader.string();
  514. break;
  515. case "value":
  516. message.value = reader.string();
  517. break;
  518. default:
  519. reader.field(tag, message);
  520. break;
  521. }
  522. }
  523. return message;
  524. }
  525. };
  526. onnx.StringStringEntryProto.prototype.key = "";
  527. onnx.StringStringEntryProto.prototype.value = "";
  528. onnx.TensorAnnotation = class TensorAnnotation {
  529. constructor() {
  530. this.quant_parameter_tensor_names = [];
  531. }
  532. static decode(reader, length) {
  533. const message = new onnx.TensorAnnotation();
  534. const end = length !== undefined ? reader.position + length : reader.length;
  535. while (reader.position < end) {
  536. const tag = reader.uint32();
  537. switch (tag >>> 3) {
  538. case 1:
  539. message.tensor_name = reader.string();
  540. break;
  541. case 2:
  542. message.quant_parameter_tensor_names.push(onnx.StringStringEntryProto.decode(reader, reader.uint32()));
  543. break;
  544. default:
  545. reader.skipType(tag & 7);
  546. break;
  547. }
  548. }
  549. return message;
  550. }
  551. static decodeText(reader) {
  552. const message = new onnx.TensorAnnotation();
  553. reader.start();
  554. while (!reader.end()) {
  555. const tag = reader.tag();
  556. switch (tag) {
  557. case "tensor_name":
  558. message.tensor_name = reader.string();
  559. break;
  560. case "quant_parameter_tensor_names":
  561. message.quant_parameter_tensor_names.push(onnx.StringStringEntryProto.decodeText(reader));
  562. break;
  563. default:
  564. reader.field(tag, message);
  565. break;
  566. }
  567. }
  568. return message;
  569. }
  570. };
  571. onnx.TensorAnnotation.prototype.tensor_name = "";
  572. onnx.GraphProto = class GraphProto {
  573. constructor() {
  574. this.node = [];
  575. this.initializer = [];
  576. this.sparse_initializer = [];
  577. this.input = [];
  578. this.output = [];
  579. this.value_info = [];
  580. this.quantization_annotation = [];
  581. }
  582. static decode(reader, length) {
  583. const message = new onnx.GraphProto();
  584. const end = length !== undefined ? reader.position + length : reader.length;
  585. while (reader.position < end) {
  586. const tag = reader.uint32();
  587. switch (tag >>> 3) {
  588. case 1:
  589. message.node.push(onnx.NodeProto.decode(reader, reader.uint32()));
  590. break;
  591. case 2:
  592. message.name = reader.string();
  593. break;
  594. case 5:
  595. message.initializer.push(onnx.TensorProto.decode(reader, reader.uint32()));
  596. break;
  597. case 15:
  598. message.sparse_initializer.push(onnx.SparseTensorProto.decode(reader, reader.uint32()));
  599. break;
  600. case 10:
  601. message.doc_string = reader.string();
  602. break;
  603. case 11:
  604. message.input.push(onnx.ValueInfoProto.decode(reader, reader.uint32()));
  605. break;
  606. case 12:
  607. message.output.push(onnx.ValueInfoProto.decode(reader, reader.uint32()));
  608. break;
  609. case 13:
  610. message.value_info.push(onnx.ValueInfoProto.decode(reader, reader.uint32()));
  611. break;
  612. case 14:
  613. message.quantization_annotation.push(onnx.TensorAnnotation.decode(reader, reader.uint32()));
  614. break;
  615. default:
  616. reader.skipType(tag & 7);
  617. break;
  618. }
  619. }
  620. return message;
  621. }
  622. static decodeText(reader) {
  623. const message = new onnx.GraphProto();
  624. reader.start();
  625. while (!reader.end()) {
  626. const tag = reader.tag();
  627. switch (tag) {
  628. case "node":
  629. message.node.push(onnx.NodeProto.decodeText(reader));
  630. break;
  631. case "name":
  632. message.name = reader.string();
  633. break;
  634. case "initializer":
  635. message.initializer.push(onnx.TensorProto.decodeText(reader));
  636. break;
  637. case "sparse_initializer":
  638. message.sparse_initializer.push(onnx.SparseTensorProto.decodeText(reader));
  639. break;
  640. case "doc_string":
  641. message.doc_string = reader.string();
  642. break;
  643. case "input":
  644. message.input.push(onnx.ValueInfoProto.decodeText(reader));
  645. break;
  646. case "output":
  647. message.output.push(onnx.ValueInfoProto.decodeText(reader));
  648. break;
  649. case "value_info":
  650. message.value_info.push(onnx.ValueInfoProto.decodeText(reader));
  651. break;
  652. case "quantization_annotation":
  653. message.quantization_annotation.push(onnx.TensorAnnotation.decodeText(reader));
  654. break;
  655. default:
  656. reader.field(tag, message);
  657. break;
  658. }
  659. }
  660. return message;
  661. }
  662. };
  663. onnx.GraphProto.prototype.name = "";
  664. onnx.GraphProto.prototype.doc_string = "";
  665. onnx.TensorProto = class TensorProto {
  666. constructor() {
  667. this.dims = [];
  668. this.float_data = [];
  669. this.int32_data = [];
  670. this.string_data = [];
  671. this.int64_data = [];
  672. this.external_data = [];
  673. this.double_data = [];
  674. this.uint64_data = [];
  675. }
  676. static decode(reader, length) {
  677. const message = new onnx.TensorProto();
  678. const end = length !== undefined ? reader.position + length : reader.length;
  679. while (reader.position < end) {
  680. const tag = reader.uint32();
  681. switch (tag >>> 3) {
  682. case 1:
  683. message.dims = reader.array(message.dims, () => reader.int64(), tag);
  684. break;
  685. case 2:
  686. message.data_type = reader.int32();
  687. break;
  688. case 3:
  689. message.segment = onnx.TensorProto.Segment.decode(reader, reader.uint32());
  690. break;
  691. case 4:
  692. message.float_data = reader.floats(message.float_data, tag);
  693. break;
  694. case 5:
  695. message.int32_data = reader.array(message.int32_data, () => reader.int32(), tag);
  696. break;
  697. case 6:
  698. message.string_data.push(reader.bytes());
  699. break;
  700. case 7:
  701. message.int64_data = reader.array(message.int64_data, () => reader.int64(), tag);
  702. break;
  703. case 8:
  704. message.name = reader.string();
  705. break;
  706. case 12:
  707. message.doc_string = reader.string();
  708. break;
  709. case 9:
  710. message.raw_data = reader.bytes();
  711. break;
  712. case 13:
  713. message.external_data.push(onnx.StringStringEntryProto.decode(reader, reader.uint32()));
  714. break;
  715. case 14:
  716. message.data_location = reader.int32();
  717. break;
  718. case 10:
  719. message.double_data = reader.doubles(message.double_data, tag);
  720. break;
  721. case 11:
  722. message.uint64_data = reader.array(message.uint64_data, () => reader.uint64(), tag);
  723. break;
  724. default:
  725. reader.skipType(tag & 7);
  726. break;
  727. }
  728. }
  729. return message;
  730. }
  731. static decodeText(reader) {
  732. const message = new onnx.TensorProto();
  733. reader.start();
  734. while (!reader.end()) {
  735. const tag = reader.tag();
  736. switch (tag) {
  737. case "dims":
  738. reader.array(message.dims, () => reader.int64());
  739. break;
  740. case "data_type":
  741. message.data_type = reader.int32();
  742. break;
  743. case "segment":
  744. message.segment = onnx.TensorProto.Segment.decodeText(reader);
  745. break;
  746. case "float_data":
  747. reader.array(message.float_data, () => reader.float());
  748. break;
  749. case "int32_data":
  750. reader.array(message.int32_data, () => reader.int32());
  751. break;
  752. case "string_data":
  753. reader.array(message.string_data, () => reader.bytes());
  754. break;
  755. case "int64_data":
  756. reader.array(message.int64_data, () => reader.int64());
  757. break;
  758. case "name":
  759. message.name = reader.string();
  760. break;
  761. case "doc_string":
  762. message.doc_string = reader.string();
  763. break;
  764. case "raw_data":
  765. message.raw_data = reader.bytes();
  766. break;
  767. case "external_data":
  768. message.external_data.push(onnx.StringStringEntryProto.decodeText(reader));
  769. break;
  770. case "data_location":
  771. message.data_location = reader.enum(onnx.TensorProto.DataLocation);
  772. break;
  773. case "double_data":
  774. reader.array(message.double_data, () => reader.double());
  775. break;
  776. case "uint64_data":
  777. reader.array(message.uint64_data, () => reader.uint64());
  778. break;
  779. default:
  780. reader.field(tag, message);
  781. break;
  782. }
  783. }
  784. return message;
  785. }
  786. };
  787. onnx.TensorProto.prototype.data_type = 0;
  788. onnx.TensorProto.prototype.segment = null;
  789. onnx.TensorProto.prototype.name = "";
  790. onnx.TensorProto.prototype.doc_string = "";
  791. onnx.TensorProto.prototype.raw_data = new Uint8Array([]);
  792. onnx.TensorProto.prototype.data_location = 0;
  793. onnx.TensorProto.DataType = {
  794. "UNDEFINED": 0,
  795. "FLOAT": 1,
  796. "UINT8": 2,
  797. "INT8": 3,
  798. "UINT16": 4,
  799. "INT16": 5,
  800. "INT32": 6,
  801. "INT64": 7,
  802. "STRING": 8,
  803. "BOOL": 9,
  804. "FLOAT16": 10,
  805. "DOUBLE": 11,
  806. "UINT32": 12,
  807. "UINT64": 13,
  808. "COMPLEX64": 14,
  809. "COMPLEX128": 15,
  810. "BFLOAT16": 16,
  811. "FLOAT8E4M3FN": 17,
  812. "FLOAT8E4M3FNUZ": 18,
  813. "FLOAT8E5M2": 19,
  814. "FLOAT8E5M2FNUZ": 20,
  815. "UINT4": 21,
  816. "INT4": 22
  817. };
  818. onnx.TensorProto.Segment = class Segment {
  819. constructor() {
  820. }
  821. static decode(reader, length) {
  822. const message = new onnx.TensorProto.Segment();
  823. const end = length !== undefined ? reader.position + length : reader.length;
  824. while (reader.position < end) {
  825. const tag = reader.uint32();
  826. switch (tag >>> 3) {
  827. case 1:
  828. message.begin = reader.int64();
  829. break;
  830. case 2:
  831. message.end = reader.int64();
  832. break;
  833. default:
  834. reader.skipType(tag & 7);
  835. break;
  836. }
  837. }
  838. return message;
  839. }
  840. static decodeText(reader) {
  841. const message = new onnx.TensorProto.Segment();
  842. reader.start();
  843. while (!reader.end()) {
  844. const tag = reader.tag();
  845. switch (tag) {
  846. case "begin":
  847. message.begin = reader.int64();
  848. break;
  849. case "end":
  850. message.end = reader.int64();
  851. break;
  852. default:
  853. reader.field(tag, message);
  854. break;
  855. }
  856. }
  857. return message;
  858. }
  859. };
  860. onnx.TensorProto.Segment.prototype.begin = protobuf.Int64.create(0);
  861. onnx.TensorProto.Segment.prototype.end = protobuf.Int64.create(0);
  862. onnx.TensorProto.DataLocation = {
  863. "DEFAULT": 0,
  864. "EXTERNAL": 1
  865. };
  866. onnx.SparseTensorProto = class SparseTensorProto {
  867. constructor() {
  868. this.dims = [];
  869. }
  870. static decode(reader, length) {
  871. const message = new onnx.SparseTensorProto();
  872. const end = length !== undefined ? reader.position + length : reader.length;
  873. while (reader.position < end) {
  874. const tag = reader.uint32();
  875. switch (tag >>> 3) {
  876. case 1:
  877. message.values = onnx.TensorProto.decode(reader, reader.uint32());
  878. break;
  879. case 2:
  880. message.indices = onnx.TensorProto.decode(reader, reader.uint32());
  881. break;
  882. case 3:
  883. message.dims = reader.array(message.dims, () => reader.int64(), tag);
  884. break;
  885. default:
  886. reader.skipType(tag & 7);
  887. break;
  888. }
  889. }
  890. return message;
  891. }
  892. static decodeText(reader) {
  893. const message = new onnx.SparseTensorProto();
  894. reader.start();
  895. while (!reader.end()) {
  896. const tag = reader.tag();
  897. switch (tag) {
  898. case "values":
  899. message.values = onnx.TensorProto.decodeText(reader);
  900. break;
  901. case "indices":
  902. message.indices = onnx.TensorProto.decodeText(reader);
  903. break;
  904. case "dims":
  905. reader.array(message.dims, () => reader.int64());
  906. break;
  907. default:
  908. reader.field(tag, message);
  909. break;
  910. }
  911. }
  912. return message;
  913. }
  914. };
  915. onnx.SparseTensorProto.prototype.values = null;
  916. onnx.SparseTensorProto.prototype.indices = null;
  917. onnx.TensorShapeProto = class TensorShapeProto {
  918. constructor() {
  919. this.dim = [];
  920. }
  921. static decode(reader, length) {
  922. const message = new onnx.TensorShapeProto();
  923. const end = length !== undefined ? reader.position + length : reader.length;
  924. while (reader.position < end) {
  925. const tag = reader.uint32();
  926. switch (tag >>> 3) {
  927. case 1:
  928. message.dim.push(onnx.TensorShapeProto.Dimension.decode(reader, reader.uint32()));
  929. break;
  930. default:
  931. reader.skipType(tag & 7);
  932. break;
  933. }
  934. }
  935. return message;
  936. }
  937. static decodeText(reader) {
  938. const message = new onnx.TensorShapeProto();
  939. reader.start();
  940. while (!reader.end()) {
  941. const tag = reader.tag();
  942. switch (tag) {
  943. case "dim":
  944. message.dim.push(onnx.TensorShapeProto.Dimension.decodeText(reader));
  945. break;
  946. default:
  947. reader.field(tag, message);
  948. break;
  949. }
  950. }
  951. return message;
  952. }
  953. };
  954. onnx.TensorShapeProto.Dimension = class Dimension {
  955. constructor() {
  956. }
  957. get value() {
  958. onnx.TensorShapeProto.Dimension.valueSet = onnx.TensorShapeProto.Dimension.valueSet || new Set([ "dim_value", "dim_param"]);
  959. return Object.keys(this).find((key) => onnx.TensorShapeProto.Dimension.valueSet.has(key) && this[key] != null);
  960. }
  961. static decode(reader, length) {
  962. const message = new onnx.TensorShapeProto.Dimension();
  963. const end = length !== undefined ? reader.position + length : reader.length;
  964. while (reader.position < end) {
  965. const tag = reader.uint32();
  966. switch (tag >>> 3) {
  967. case 1:
  968. message.dim_value = reader.int64();
  969. break;
  970. case 2:
  971. message.dim_param = reader.string();
  972. break;
  973. case 3:
  974. message.denotation = reader.string();
  975. break;
  976. default:
  977. reader.skipType(tag & 7);
  978. break;
  979. }
  980. }
  981. return message;
  982. }
  983. static decodeText(reader) {
  984. const message = new onnx.TensorShapeProto.Dimension();
  985. reader.start();
  986. while (!reader.end()) {
  987. const tag = reader.tag();
  988. switch (tag) {
  989. case "dim_value":
  990. message.dim_value = reader.int64();
  991. break;
  992. case "dim_param":
  993. message.dim_param = reader.string();
  994. break;
  995. case "denotation":
  996. message.denotation = reader.string();
  997. break;
  998. default:
  999. reader.field(tag, message);
  1000. break;
  1001. }
  1002. }
  1003. return message;
  1004. }
  1005. };
  1006. onnx.TensorShapeProto.Dimension.prototype.denotation = "";
  1007. onnx.TypeProto = class TypeProto {
  1008. constructor() {
  1009. }
  1010. get value() {
  1011. onnx.TypeProto.valueSet = onnx.TypeProto.valueSet || new Set([ "tensor_type", "sequence_type", "map_type", "optional_type", "sparse_tensor_type", "opaque_type"]);
  1012. return Object.keys(this).find((key) => onnx.TypeProto.valueSet.has(key) && this[key] != null);
  1013. }
  1014. static decode(reader, length) {
  1015. const message = new onnx.TypeProto();
  1016. const end = length !== undefined ? reader.position + length : reader.length;
  1017. while (reader.position < end) {
  1018. const tag = reader.uint32();
  1019. switch (tag >>> 3) {
  1020. case 1:
  1021. message.tensor_type = onnx.TypeProto.Tensor.decode(reader, reader.uint32());
  1022. break;
  1023. case 4:
  1024. message.sequence_type = onnx.TypeProto.Sequence.decode(reader, reader.uint32());
  1025. break;
  1026. case 5:
  1027. message.map_type = onnx.TypeProto.Map.decode(reader, reader.uint32());
  1028. break;
  1029. case 9:
  1030. message.optional_type = onnx.TypeProto.Optional.decode(reader, reader.uint32());
  1031. break;
  1032. case 8:
  1033. message.sparse_tensor_type = onnx.TypeProto.SparseTensor.decode(reader, reader.uint32());
  1034. break;
  1035. case 7:
  1036. message.opaque_type = onnx.TypeProto.Opaque.decode(reader, reader.uint32());
  1037. break;
  1038. case 6:
  1039. message.denotation = reader.string();
  1040. break;
  1041. default:
  1042. reader.skipType(tag & 7);
  1043. break;
  1044. }
  1045. }
  1046. return message;
  1047. }
  1048. static decodeText(reader) {
  1049. const message = new onnx.TypeProto();
  1050. reader.start();
  1051. while (!reader.end()) {
  1052. const tag = reader.tag();
  1053. switch (tag) {
  1054. case "tensor_type":
  1055. message.tensor_type = onnx.TypeProto.Tensor.decodeText(reader);
  1056. break;
  1057. case "sequence_type":
  1058. message.sequence_type = onnx.TypeProto.Sequence.decodeText(reader);
  1059. break;
  1060. case "map_type":
  1061. message.map_type = onnx.TypeProto.Map.decodeText(reader);
  1062. break;
  1063. case "optional_type":
  1064. message.optional_type = onnx.TypeProto.Optional.decodeText(reader);
  1065. break;
  1066. case "sparse_tensor_type":
  1067. message.sparse_tensor_type = onnx.TypeProto.SparseTensor.decodeText(reader);
  1068. break;
  1069. case "opaque_type":
  1070. message.opaque_type = onnx.TypeProto.Opaque.decodeText(reader);
  1071. break;
  1072. case "denotation":
  1073. message.denotation = reader.string();
  1074. break;
  1075. default:
  1076. reader.field(tag, message);
  1077. break;
  1078. }
  1079. }
  1080. return message;
  1081. }
  1082. };
  1083. onnx.TypeProto.prototype.denotation = "";
  1084. onnx.TypeProto.Tensor = class Tensor {
  1085. constructor() {
  1086. }
  1087. static decode(reader, length) {
  1088. const message = new onnx.TypeProto.Tensor();
  1089. const end = length !== undefined ? reader.position + length : reader.length;
  1090. while (reader.position < end) {
  1091. const tag = reader.uint32();
  1092. switch (tag >>> 3) {
  1093. case 1:
  1094. message.elem_type = reader.int32();
  1095. break;
  1096. case 2:
  1097. message.shape = onnx.TensorShapeProto.decode(reader, reader.uint32());
  1098. break;
  1099. default:
  1100. reader.skipType(tag & 7);
  1101. break;
  1102. }
  1103. }
  1104. return message;
  1105. }
  1106. static decodeText(reader) {
  1107. const message = new onnx.TypeProto.Tensor();
  1108. reader.start();
  1109. while (!reader.end()) {
  1110. const tag = reader.tag();
  1111. switch (tag) {
  1112. case "elem_type":
  1113. message.elem_type = reader.int32();
  1114. break;
  1115. case "shape":
  1116. message.shape = onnx.TensorShapeProto.decodeText(reader);
  1117. break;
  1118. default:
  1119. reader.field(tag, message);
  1120. break;
  1121. }
  1122. }
  1123. return message;
  1124. }
  1125. };
  1126. onnx.TypeProto.Tensor.prototype.elem_type = 0;
  1127. onnx.TypeProto.Tensor.prototype.shape = null;
  1128. onnx.TypeProto.Sequence = class Sequence {
  1129. constructor() {
  1130. }
  1131. static decode(reader, length) {
  1132. const message = new onnx.TypeProto.Sequence();
  1133. const end = length !== undefined ? reader.position + length : reader.length;
  1134. while (reader.position < end) {
  1135. const tag = reader.uint32();
  1136. switch (tag >>> 3) {
  1137. case 1:
  1138. message.elem_type = onnx.TypeProto.decode(reader, reader.uint32());
  1139. break;
  1140. default:
  1141. reader.skipType(tag & 7);
  1142. break;
  1143. }
  1144. }
  1145. return message;
  1146. }
  1147. static decodeText(reader) {
  1148. const message = new onnx.TypeProto.Sequence();
  1149. reader.start();
  1150. while (!reader.end()) {
  1151. const tag = reader.tag();
  1152. switch (tag) {
  1153. case "elem_type":
  1154. message.elem_type = onnx.TypeProto.decodeText(reader);
  1155. break;
  1156. default:
  1157. reader.field(tag, message);
  1158. break;
  1159. }
  1160. }
  1161. return message;
  1162. }
  1163. };
  1164. onnx.TypeProto.Sequence.prototype.elem_type = null;
  1165. onnx.TypeProto.Map = class Map {
  1166. constructor() {
  1167. }
  1168. static decode(reader, length) {
  1169. const message = new onnx.TypeProto.Map();
  1170. const end = length !== undefined ? reader.position + length : reader.length;
  1171. while (reader.position < end) {
  1172. const tag = reader.uint32();
  1173. switch (tag >>> 3) {
  1174. case 1:
  1175. message.key_type = reader.int32();
  1176. break;
  1177. case 2:
  1178. message.value_type = onnx.TypeProto.decode(reader, reader.uint32());
  1179. break;
  1180. default:
  1181. reader.skipType(tag & 7);
  1182. break;
  1183. }
  1184. }
  1185. return message;
  1186. }
  1187. static decodeText(reader) {
  1188. const message = new onnx.TypeProto.Map();
  1189. reader.start();
  1190. while (!reader.end()) {
  1191. const tag = reader.tag();
  1192. switch (tag) {
  1193. case "key_type":
  1194. message.key_type = reader.int32();
  1195. break;
  1196. case "value_type":
  1197. message.value_type = onnx.TypeProto.decodeText(reader);
  1198. break;
  1199. default:
  1200. reader.field(tag, message);
  1201. break;
  1202. }
  1203. }
  1204. return message;
  1205. }
  1206. };
  1207. onnx.TypeProto.Map.prototype.key_type = 0;
  1208. onnx.TypeProto.Map.prototype.value_type = null;
  1209. onnx.TypeProto.Optional = class Optional {
  1210. constructor() {
  1211. }
  1212. static decode(reader, length) {
  1213. const message = new onnx.TypeProto.Optional();
  1214. const end = length !== undefined ? reader.position + length : reader.length;
  1215. while (reader.position < end) {
  1216. const tag = reader.uint32();
  1217. switch (tag >>> 3) {
  1218. case 1:
  1219. message.elem_type = onnx.TypeProto.decode(reader, reader.uint32());
  1220. break;
  1221. default:
  1222. reader.skipType(tag & 7);
  1223. break;
  1224. }
  1225. }
  1226. return message;
  1227. }
  1228. static decodeText(reader) {
  1229. const message = new onnx.TypeProto.Optional();
  1230. reader.start();
  1231. while (!reader.end()) {
  1232. const tag = reader.tag();
  1233. switch (tag) {
  1234. case "elem_type":
  1235. message.elem_type = onnx.TypeProto.decodeText(reader);
  1236. break;
  1237. default:
  1238. reader.field(tag, message);
  1239. break;
  1240. }
  1241. }
  1242. return message;
  1243. }
  1244. };
  1245. onnx.TypeProto.Optional.prototype.elem_type = null;
  1246. onnx.TypeProto.SparseTensor = class SparseTensor {
  1247. constructor() {
  1248. }
  1249. static decode(reader, length) {
  1250. const message = new onnx.TypeProto.SparseTensor();
  1251. const end = length !== undefined ? reader.position + length : reader.length;
  1252. while (reader.position < end) {
  1253. const tag = reader.uint32();
  1254. switch (tag >>> 3) {
  1255. case 1:
  1256. message.elem_type = reader.int32();
  1257. break;
  1258. case 2:
  1259. message.shape = onnx.TensorShapeProto.decode(reader, reader.uint32());
  1260. break;
  1261. default:
  1262. reader.skipType(tag & 7);
  1263. break;
  1264. }
  1265. }
  1266. return message;
  1267. }
  1268. static decodeText(reader) {
  1269. const message = new onnx.TypeProto.SparseTensor();
  1270. reader.start();
  1271. while (!reader.end()) {
  1272. const tag = reader.tag();
  1273. switch (tag) {
  1274. case "elem_type":
  1275. message.elem_type = reader.int32();
  1276. break;
  1277. case "shape":
  1278. message.shape = onnx.TensorShapeProto.decodeText(reader);
  1279. break;
  1280. default:
  1281. reader.field(tag, message);
  1282. break;
  1283. }
  1284. }
  1285. return message;
  1286. }
  1287. };
  1288. onnx.TypeProto.SparseTensor.prototype.elem_type = 0;
  1289. onnx.TypeProto.SparseTensor.prototype.shape = null;
  1290. onnx.TypeProto.Opaque = class Opaque {
  1291. constructor() {
  1292. }
  1293. static decode(reader, length) {
  1294. const message = new onnx.TypeProto.Opaque();
  1295. const end = length !== undefined ? reader.position + length : reader.length;
  1296. while (reader.position < end) {
  1297. const tag = reader.uint32();
  1298. switch (tag >>> 3) {
  1299. case 1:
  1300. message.domain = reader.string();
  1301. break;
  1302. case 2:
  1303. message.name = reader.string();
  1304. break;
  1305. default:
  1306. reader.skipType(tag & 7);
  1307. break;
  1308. }
  1309. }
  1310. return message;
  1311. }
  1312. static decodeText(reader) {
  1313. const message = new onnx.TypeProto.Opaque();
  1314. reader.start();
  1315. while (!reader.end()) {
  1316. const tag = reader.tag();
  1317. switch (tag) {
  1318. case "domain":
  1319. message.domain = reader.string();
  1320. break;
  1321. case "name":
  1322. message.name = reader.string();
  1323. break;
  1324. default:
  1325. reader.field(tag, message);
  1326. break;
  1327. }
  1328. }
  1329. return message;
  1330. }
  1331. };
  1332. onnx.TypeProto.Opaque.prototype.domain = "";
  1333. onnx.TypeProto.Opaque.prototype.name = "";
  1334. onnx.OperatorSetIdProto = class OperatorSetIdProto {
  1335. constructor() {
  1336. }
  1337. static decode(reader, length) {
  1338. const message = new onnx.OperatorSetIdProto();
  1339. const end = length !== undefined ? reader.position + length : reader.length;
  1340. while (reader.position < end) {
  1341. const tag = reader.uint32();
  1342. switch (tag >>> 3) {
  1343. case 1:
  1344. message.domain = reader.string();
  1345. break;
  1346. case 2:
  1347. message.version = reader.int64();
  1348. break;
  1349. default:
  1350. reader.skipType(tag & 7);
  1351. break;
  1352. }
  1353. }
  1354. return message;
  1355. }
  1356. static decodeText(reader) {
  1357. const message = new onnx.OperatorSetIdProto();
  1358. reader.start();
  1359. while (!reader.end()) {
  1360. const tag = reader.tag();
  1361. switch (tag) {
  1362. case "domain":
  1363. message.domain = reader.string();
  1364. break;
  1365. case "version":
  1366. message.version = reader.int64();
  1367. break;
  1368. default:
  1369. reader.field(tag, message);
  1370. break;
  1371. }
  1372. }
  1373. return message;
  1374. }
  1375. };
  1376. onnx.OperatorSetIdProto.prototype.domain = "";
  1377. onnx.OperatorSetIdProto.prototype.version = protobuf.Int64.create(0);
  1378. onnx.OperatorStatus = {
  1379. "EXPERIMENTAL": 0,
  1380. "STABLE": 1
  1381. };
  1382. onnx.FunctionProto = class FunctionProto {
  1383. constructor() {
  1384. this.input = [];
  1385. this.output = [];
  1386. this.attribute = [];
  1387. this.attribute_proto = [];
  1388. this.node = [];
  1389. this.opset_import = [];
  1390. this.value_info = [];
  1391. }
  1392. static decode(reader, length) {
  1393. const message = new onnx.FunctionProto();
  1394. const end = length !== undefined ? reader.position + length : reader.length;
  1395. while (reader.position < end) {
  1396. const tag = reader.uint32();
  1397. switch (tag >>> 3) {
  1398. case 1:
  1399. message.name = reader.string();
  1400. break;
  1401. case 4:
  1402. message.input.push(reader.string());
  1403. break;
  1404. case 5:
  1405. message.output.push(reader.string());
  1406. break;
  1407. case 6:
  1408. message.attribute.push(reader.string());
  1409. break;
  1410. case 11:
  1411. message.attribute_proto.push(onnx.AttributeProto.decode(reader, reader.uint32()));
  1412. break;
  1413. case 7:
  1414. message.node.push(onnx.NodeProto.decode(reader, reader.uint32()));
  1415. break;
  1416. case 8:
  1417. message.doc_string = reader.string();
  1418. break;
  1419. case 9:
  1420. message.opset_import.push(onnx.OperatorSetIdProto.decode(reader, reader.uint32()));
  1421. break;
  1422. case 10:
  1423. message.domain = reader.string();
  1424. break;
  1425. case 12:
  1426. message.value_info.push(onnx.ValueInfoProto.decode(reader, reader.uint32()));
  1427. break;
  1428. default:
  1429. reader.skipType(tag & 7);
  1430. break;
  1431. }
  1432. }
  1433. return message;
  1434. }
  1435. static decodeText(reader) {
  1436. const message = new onnx.FunctionProto();
  1437. reader.start();
  1438. while (!reader.end()) {
  1439. const tag = reader.tag();
  1440. switch (tag) {
  1441. case "name":
  1442. message.name = reader.string();
  1443. break;
  1444. case "input":
  1445. reader.array(message.input, () => reader.string());
  1446. break;
  1447. case "output":
  1448. reader.array(message.output, () => reader.string());
  1449. break;
  1450. case "attribute":
  1451. reader.array(message.attribute, () => reader.string());
  1452. break;
  1453. case "attribute_proto":
  1454. message.attribute_proto.push(onnx.AttributeProto.decodeText(reader));
  1455. break;
  1456. case "node":
  1457. message.node.push(onnx.NodeProto.decodeText(reader));
  1458. break;
  1459. case "doc_string":
  1460. message.doc_string = reader.string();
  1461. break;
  1462. case "opset_import":
  1463. message.opset_import.push(onnx.OperatorSetIdProto.decodeText(reader));
  1464. break;
  1465. case "domain":
  1466. message.domain = reader.string();
  1467. break;
  1468. case "value_info":
  1469. message.value_info.push(onnx.ValueInfoProto.decodeText(reader));
  1470. break;
  1471. default:
  1472. reader.field(tag, message);
  1473. break;
  1474. }
  1475. }
  1476. return message;
  1477. }
  1478. };
  1479. onnx.FunctionProto.prototype.name = "";
  1480. onnx.FunctionProto.prototype.doc_string = "";
  1481. onnx.FunctionProto.prototype.domain = "";
  1482. onnx.OperatorProto = class OperatorProto {
  1483. constructor() {
  1484. }
  1485. static decode(reader, length) {
  1486. const message = new onnx.OperatorProto();
  1487. const end = length !== undefined ? reader.position + length : reader.length;
  1488. while (reader.position < end) {
  1489. const tag = reader.uint32();
  1490. switch (tag >>> 3) {
  1491. case 1:
  1492. message.op_type = reader.string();
  1493. break;
  1494. case 2:
  1495. message.since_version = reader.int64();
  1496. break;
  1497. case 3:
  1498. message.status = reader.int32();
  1499. break;
  1500. case 10:
  1501. message.doc_string = reader.string();
  1502. break;
  1503. default:
  1504. reader.skipType(tag & 7);
  1505. break;
  1506. }
  1507. }
  1508. return message;
  1509. }
  1510. static decodeText(reader) {
  1511. const message = new onnx.OperatorProto();
  1512. reader.start();
  1513. while (!reader.end()) {
  1514. const tag = reader.tag();
  1515. switch (tag) {
  1516. case "op_type":
  1517. message.op_type = reader.string();
  1518. break;
  1519. case "since_version":
  1520. message.since_version = reader.int64();
  1521. break;
  1522. case "status":
  1523. message.status = reader.enum(onnx.OperatorStatus);
  1524. break;
  1525. case "doc_string":
  1526. message.doc_string = reader.string();
  1527. break;
  1528. default:
  1529. reader.field(tag, message);
  1530. break;
  1531. }
  1532. }
  1533. return message;
  1534. }
  1535. };
  1536. onnx.OperatorProto.prototype.op_type = "";
  1537. onnx.OperatorProto.prototype.since_version = protobuf.Int64.create(0);
  1538. onnx.OperatorProto.prototype.status = 0;
  1539. onnx.OperatorProto.prototype.doc_string = "";
  1540. onnx.OperatorSetProto = class OperatorSetProto {
  1541. constructor() {
  1542. this.operator = [];
  1543. this.functions = [];
  1544. }
  1545. static decode(reader, length) {
  1546. const message = new onnx.OperatorSetProto();
  1547. const end = length !== undefined ? reader.position + length : reader.length;
  1548. while (reader.position < end) {
  1549. const tag = reader.uint32();
  1550. switch (tag >>> 3) {
  1551. case 1:
  1552. message.magic = reader.string();
  1553. break;
  1554. case 2:
  1555. message.ir_version = reader.int64();
  1556. break;
  1557. case 3:
  1558. message.ir_version_prerelease = reader.string();
  1559. break;
  1560. case 7:
  1561. message.ir_build_metadata = reader.string();
  1562. break;
  1563. case 4:
  1564. message.domain = reader.string();
  1565. break;
  1566. case 5:
  1567. message.opset_version = reader.int64();
  1568. break;
  1569. case 6:
  1570. message.doc_string = reader.string();
  1571. break;
  1572. case 8:
  1573. message.operator.push(onnx.OperatorProto.decode(reader, reader.uint32()));
  1574. break;
  1575. case 9:
  1576. message.functions.push(onnx.FunctionProto.decode(reader, reader.uint32()));
  1577. break;
  1578. default:
  1579. reader.skipType(tag & 7);
  1580. break;
  1581. }
  1582. }
  1583. return message;
  1584. }
  1585. static decodeText(reader) {
  1586. const message = new onnx.OperatorSetProto();
  1587. reader.start();
  1588. while (!reader.end()) {
  1589. const tag = reader.tag();
  1590. switch (tag) {
  1591. case "magic":
  1592. message.magic = reader.string();
  1593. break;
  1594. case "ir_version":
  1595. message.ir_version = reader.int64();
  1596. break;
  1597. case "ir_version_prerelease":
  1598. message.ir_version_prerelease = reader.string();
  1599. break;
  1600. case "ir_build_metadata":
  1601. message.ir_build_metadata = reader.string();
  1602. break;
  1603. case "domain":
  1604. message.domain = reader.string();
  1605. break;
  1606. case "opset_version":
  1607. message.opset_version = reader.int64();
  1608. break;
  1609. case "doc_string":
  1610. message.doc_string = reader.string();
  1611. break;
  1612. case "operator":
  1613. message.operator.push(onnx.OperatorProto.decodeText(reader));
  1614. break;
  1615. case "functions":
  1616. message.functions.push(onnx.FunctionProto.decodeText(reader));
  1617. break;
  1618. default:
  1619. reader.field(tag, message);
  1620. break;
  1621. }
  1622. }
  1623. return message;
  1624. }
  1625. };
  1626. onnx.OperatorSetProto.prototype.magic = "";
  1627. onnx.OperatorSetProto.prototype.ir_version = protobuf.Int64.create(0);
  1628. onnx.OperatorSetProto.prototype.ir_version_prerelease = "";
  1629. onnx.OperatorSetProto.prototype.ir_build_metadata = "";
  1630. onnx.OperatorSetProto.prototype.domain = "";
  1631. onnx.OperatorSetProto.prototype.opset_version = protobuf.Int64.create(0);
  1632. onnx.OperatorSetProto.prototype.doc_string = "";