@zimtsui/brainswitch 0.0.56 → 0.0.59

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (322) hide show
  1. package/README.md +109 -54
  2. package/assets/verbatim/declarations.handlebars +11 -0
  3. package/assets/verbatim/instruction.md +49 -0
  4. package/build/adaptor.d.ts +40 -9
  5. package/build/adaptor.js +36 -38
  6. package/build/adaptor.js.map +1 -1
  7. package/build/api-types/anthropic/billing.d.ts +5 -5
  8. package/build/api-types/anthropic/billing.js +1 -2
  9. package/build/api-types/anthropic/billing.js.map +1 -1
  10. package/build/api-types/anthropic/tool-codec.d.ts +11 -12
  11. package/build/api-types/anthropic/tool-codec.js +27 -42
  12. package/build/api-types/anthropic/tool-codec.js.map +1 -1
  13. package/build/api-types/google/billing.d.ts +5 -5
  14. package/build/api-types/google/billing.js +2 -3
  15. package/build/api-types/google/billing.js.map +1 -1
  16. package/build/api-types/google/restful-request.d.ts +1 -1
  17. package/build/api-types/google/restful-request.js +0 -1
  18. package/build/api-types/google/restful-request.js.map +1 -1
  19. package/build/api-types/google/tool-codec.d.ts +11 -11
  20. package/build/api-types/google/tool-codec.js +21 -19
  21. package/build/api-types/google/tool-codec.js.map +1 -1
  22. package/build/api-types/{openai-chatcompletion → openai-chatcompletions}/billing.d.ts +2 -3
  23. package/build/api-types/{openai-chatcompletion → openai-chatcompletions}/billing.js +0 -2
  24. package/build/api-types/openai-chatcompletions/billing.js.map +1 -0
  25. package/build/api-types/openai-chatcompletions/tool-codec.d.ts +17 -0
  26. package/build/api-types/{openai-chatcompletion → openai-chatcompletions}/tool-codec.js +26 -32
  27. package/build/api-types/openai-chatcompletions/tool-codec.js.map +1 -0
  28. package/build/api-types/openai-responses/billing.d.ts +5 -5
  29. package/build/api-types/openai-responses/billing.js +1 -2
  30. package/build/api-types/openai-responses/billing.js.map +1 -1
  31. package/build/api-types/openai-responses/tool-codec.d.ts +11 -11
  32. package/build/api-types/openai-responses/tool-codec.js +36 -32
  33. package/build/api-types/openai-responses/tool-codec.js.map +1 -1
  34. package/build/assets.d.ts +7 -0
  35. package/build/assets.js +8 -0
  36. package/build/assets.js.map +1 -0
  37. package/build/compatible-engine/session.d.ts +67 -0
  38. package/build/compatible-engine/session.js +92 -0
  39. package/build/compatible-engine/session.js.map +1 -0
  40. package/build/compatible-engine/structuring.d.ts +36 -0
  41. package/build/compatible-engine/structuring.js +34 -0
  42. package/build/compatible-engine/structuring.js.map +1 -0
  43. package/build/compatible-engine/validation.d.ts +21 -0
  44. package/build/compatible-engine/validation.js +82 -0
  45. package/build/compatible-engine/validation.js.map +1 -0
  46. package/build/compatible-engine.d/agentloop.d.ts +12 -0
  47. package/build/compatible-engine.d/agentloop.js +52 -0
  48. package/build/compatible-engine.d/agentloop.js.map +1 -0
  49. package/build/compatible-engine.d/aliyun/transport.d.ts +12 -0
  50. package/build/compatible-engine.d/aliyun/transport.js +7 -0
  51. package/build/compatible-engine.d/aliyun/transport.js.map +1 -0
  52. package/build/compatible-engine.d/aliyun.d.ts +24 -0
  53. package/build/compatible-engine.d/aliyun.js +46 -0
  54. package/build/compatible-engine.d/aliyun.js.map +1 -0
  55. package/build/compatible-engine.d/anthropic/choice-codec.d.ts +5 -0
  56. package/build/compatible-engine.d/anthropic/choice-codec.js +26 -0
  57. package/build/compatible-engine.d/anthropic/choice-codec.js.map +1 -0
  58. package/build/compatible-engine.d/anthropic/message-codec.d.ts +36 -0
  59. package/build/compatible-engine.d/anthropic/message-codec.js +86 -0
  60. package/build/compatible-engine.d/anthropic/message-codec.js.map +1 -0
  61. package/build/compatible-engine.d/anthropic/transport.d.ts +34 -0
  62. package/build/compatible-engine.d/anthropic/transport.js +150 -0
  63. package/build/compatible-engine.d/anthropic/transport.js.map +1 -0
  64. package/build/compatible-engine.d/anthropic.d.ts +26 -0
  65. package/build/compatible-engine.d/anthropic.js +46 -0
  66. package/build/compatible-engine.d/anthropic.js.map +1 -0
  67. package/build/compatible-engine.d/google/choice-codec.d.ts +5 -0
  68. package/build/compatible-engine.d/google/choice-codec.js +27 -0
  69. package/build/compatible-engine.d/google/choice-codec.js.map +1 -0
  70. package/build/compatible-engine.d/google/message-codec.d.ts +36 -0
  71. package/build/compatible-engine.d/google/message-codec.js +94 -0
  72. package/build/compatible-engine.d/google/message-codec.js.map +1 -0
  73. package/build/compatible-engine.d/google/transport.d.ts +30 -0
  74. package/build/{compatible.d → compatible-engine.d}/google/transport.js +22 -18
  75. package/build/compatible-engine.d/google/transport.js.map +1 -0
  76. package/build/compatible-engine.d/google.d.ts +26 -0
  77. package/build/compatible-engine.d/google.js +50 -0
  78. package/build/compatible-engine.d/google.js.map +1 -0
  79. package/build/compatible-engine.d/openai-chatcompletions/choice-codec.d.ts +5 -0
  80. package/build/compatible-engine.d/openai-chatcompletions/choice-codec.js +31 -0
  81. package/build/compatible-engine.d/openai-chatcompletions/choice-codec.js.map +1 -0
  82. package/build/compatible-engine.d/openai-chatcompletions/message-codec.d.ts +24 -0
  83. package/build/compatible-engine.d/openai-chatcompletions/message-codec.js +71 -0
  84. package/build/compatible-engine.d/openai-chatcompletions/message-codec.js.map +1 -0
  85. package/build/compatible-engine.d/openai-chatcompletions/transport.d/monolith.d.ts +38 -0
  86. package/build/{compatible.d/openai-chatcompletions.d → compatible-engine.d/openai-chatcompletions/transport.d}/monolith.js +25 -22
  87. package/build/compatible-engine.d/openai-chatcompletions/transport.d/monolith.js.map +1 -0
  88. package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.d.ts +37 -0
  89. package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.js +190 -0
  90. package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.js.map +1 -0
  91. package/build/compatible-engine.d/openai-chatcompletions/transport.d.ts +10 -0
  92. package/build/compatible-engine.d/openai-chatcompletions/transport.js +11 -0
  93. package/build/compatible-engine.d/openai-chatcompletions/transport.js.map +1 -0
  94. package/build/compatible-engine.d/openai-chatcompletions.d.ts +17 -0
  95. package/build/compatible-engine.d/openai-chatcompletions.js +14 -0
  96. package/build/compatible-engine.d/openai-chatcompletions.js.map +1 -0
  97. package/build/compatible-engine.d/openai-responses/choice-codec.d.ts +5 -0
  98. package/build/compatible-engine.d/openai-responses/choice-codec.js +30 -0
  99. package/build/compatible-engine.d/openai-responses/choice-codec.js.map +1 -0
  100. package/build/compatible-engine.d/openai-responses/message-codec.d.ts +36 -0
  101. package/build/compatible-engine.d/openai-responses/message-codec.js +96 -0
  102. package/build/compatible-engine.d/openai-responses/message-codec.js.map +1 -0
  103. package/build/compatible-engine.d/openai-responses/transport.d.ts +35 -0
  104. package/build/{compatible.d → compatible-engine.d}/openai-responses/transport.js +21 -29
  105. package/build/compatible-engine.d/openai-responses/transport.js.map +1 -0
  106. package/build/compatible-engine.d/openai-responses.d.ts +26 -0
  107. package/build/compatible-engine.d/openai-responses.js +46 -0
  108. package/build/compatible-engine.d/openai-responses.js.map +1 -0
  109. package/build/compatible-engine.d.ts +22 -0
  110. package/build/compatible-engine.js +29 -0
  111. package/build/compatible-engine.js.map +1 -0
  112. package/build/config.d.ts +1 -0
  113. package/build/config.js +1 -2
  114. package/build/config.js.map +1 -1
  115. package/build/endpoint-spec.d.ts +1 -0
  116. package/build/endpoint-spec.js +2 -1
  117. package/build/endpoint-spec.js.map +1 -1
  118. package/build/engine/session.d.ts +7 -0
  119. package/build/{session.js.map → engine/session.js.map} +1 -1
  120. package/build/engine/transport.d.ts +5 -0
  121. package/build/engine/transport.js +1 -0
  122. package/build/engine/transport.js.map +1 -0
  123. package/build/engine/validation.d.ts +9 -0
  124. package/build/engine/validation.js +1 -0
  125. package/build/engine/validation.js.map +1 -0
  126. package/build/engine.d.ts +49 -40
  127. package/build/engine.js +88 -70
  128. package/build/engine.js.map +1 -1
  129. package/build/exports.d.ts +14 -14
  130. package/build/exports.js +14 -14
  131. package/build/exports.js.map +1 -1
  132. package/build/function.d.ts +79 -66
  133. package/build/function.js +30 -47
  134. package/build/function.js.map +1 -1
  135. package/build/inference-context.d.ts +2 -2
  136. package/build/inference-context.js +0 -1
  137. package/build/inference-context.js.map +1 -1
  138. package/build/native-engines.d/google/message-codec.d.ts +18 -16
  139. package/build/native-engines.d/google/message-codec.js +31 -33
  140. package/build/native-engines.d/google/message-codec.js.map +1 -1
  141. package/build/native-engines.d/google/session.d.ts +44 -51
  142. package/build/native-engines.d/google/session.js +85 -81
  143. package/build/native-engines.d/google/session.js.map +1 -1
  144. package/build/native-engines.d/google/transport.d.ts +22 -19
  145. package/build/native-engines.d/google/transport.js +13 -13
  146. package/build/native-engines.d/google/transport.js.map +1 -1
  147. package/build/native-engines.d/google/validation.d.ts +22 -0
  148. package/build/native-engines.d/google/validation.js +20 -0
  149. package/build/native-engines.d/google/validation.js.map +1 -0
  150. package/build/native-engines.d/google.d/agentloop.d.ts +12 -0
  151. package/build/native-engines.d/google.d/agentloop.js +57 -0
  152. package/build/native-engines.d/google.d/agentloop.js.map +1 -0
  153. package/build/native-engines.d/google.d/exports.d.ts +3 -0
  154. package/build/native-engines.d/google.d/exports.js +4 -0
  155. package/build/native-engines.d/google.d/exports.js.map +1 -0
  156. package/build/native-engines.d/google.d.ts +42 -0
  157. package/build/native-engines.d/google.js +83 -0
  158. package/build/native-engines.d/google.js.map +1 -0
  159. package/build/native-engines.d/openai-responses/choice-codec.d.ts +5 -0
  160. package/build/native-engines.d/openai-responses/choice-codec.js +30 -0
  161. package/build/native-engines.d/openai-responses/choice-codec.js.map +1 -0
  162. package/build/native-engines.d/openai-responses/message-codec.d.ts +19 -17
  163. package/build/native-engines.d/openai-responses/message-codec.js +31 -25
  164. package/build/native-engines.d/openai-responses/message-codec.js.map +1 -1
  165. package/build/native-engines.d/openai-responses/session.d.ts +47 -45
  166. package/build/native-engines.d/openai-responses/session.js +75 -105
  167. package/build/native-engines.d/openai-responses/session.js.map +1 -1
  168. package/build/native-engines.d/openai-responses/structuring.d.ts +19 -0
  169. package/build/native-engines.d/openai-responses/structuring.js +19 -0
  170. package/build/native-engines.d/openai-responses/structuring.js.map +1 -0
  171. package/build/native-engines.d/openai-responses/tool.d.ts +15 -12
  172. package/build/native-engines.d/openai-responses/tool.js +1 -12
  173. package/build/native-engines.d/openai-responses/tool.js.map +1 -1
  174. package/build/native-engines.d/openai-responses/transport.d.ts +24 -25
  175. package/build/native-engines.d/openai-responses/transport.js +21 -41
  176. package/build/native-engines.d/openai-responses/transport.js.map +1 -1
  177. package/build/native-engines.d/openai-responses/validation.d.ts +20 -0
  178. package/build/native-engines.d/openai-responses/validation.js +80 -0
  179. package/build/native-engines.d/openai-responses/validation.js.map +1 -0
  180. package/build/native-engines.d/openai-responses.d/agentloop.d.ts +12 -0
  181. package/build/native-engines.d/openai-responses.d/agentloop.js +61 -0
  182. package/build/native-engines.d/openai-responses.d/agentloop.js.map +1 -0
  183. package/build/native-engines.d/openai-responses.d/exports.d.ts +4 -0
  184. package/build/native-engines.d/openai-responses.d/exports.js +5 -0
  185. package/build/native-engines.d/openai-responses.d/exports.js.map +1 -0
  186. package/build/native-engines.d/openai-responses.d.ts +44 -0
  187. package/build/native-engines.d/openai-responses.js +78 -0
  188. package/build/native-engines.d/openai-responses.js.map +1 -0
  189. package/build/throttle.d.ts +6 -5
  190. package/build/throttle.js +17 -14
  191. package/build/throttle.js.map +1 -1
  192. package/build/tsconfig.tsbuildinfo +1 -1
  193. package/build/verbatim/codec/declarations.d.ts +2 -0
  194. package/build/verbatim/codec/declarations.js +22 -0
  195. package/build/verbatim/codec/declarations.js.map +1 -0
  196. package/build/verbatim/codec/request.d.ts +7 -0
  197. package/build/verbatim/codec/request.js +53 -0
  198. package/build/verbatim/codec/request.js.map +1 -0
  199. package/build/verbatim/codec.d.ts +2 -0
  200. package/build/verbatim/codec.js +3 -0
  201. package/build/verbatim/codec.js.map +1 -0
  202. package/build/verbatim.d.ts +74 -0
  203. package/build/verbatim.js +17 -0
  204. package/build/verbatim.js.map +1 -0
  205. package/examples/agent.ts +65 -0
  206. package/examples/chat.ts +24 -0
  207. package/examples/config.ts +24 -0
  208. package/{test/src → examples}/tsconfig.json +6 -2
  209. package/examples/verbatim.ts +44 -0
  210. package/package.json +15 -13
  211. package/build/agentloop.d.ts +0 -12
  212. package/build/agentloop.js +0 -43
  213. package/build/agentloop.js.map +0 -1
  214. package/build/api-types/openai-chatcompletion/billing.js.map +0 -1
  215. package/build/api-types/openai-chatcompletion/tool-codec.d.ts +0 -18
  216. package/build/api-types/openai-chatcompletion/tool-codec.js.map +0 -1
  217. package/build/compatible/engine.d/aliyun.d.ts +0 -23
  218. package/build/compatible/engine.d/aliyun.js +0 -44
  219. package/build/compatible/engine.d/aliyun.js.map +0 -1
  220. package/build/compatible/engine.d/anthropic.d.ts +0 -23
  221. package/build/compatible/engine.d/anthropic.js +0 -41
  222. package/build/compatible/engine.d/anthropic.js.map +0 -1
  223. package/build/compatible/engine.d/google.d.ts +0 -23
  224. package/build/compatible/engine.d/google.js +0 -45
  225. package/build/compatible/engine.d/google.js.map +0 -1
  226. package/build/compatible/engine.d/openai-responses.d.ts +0 -23
  227. package/build/compatible/engine.d/openai-responses.js +0 -41
  228. package/build/compatible/engine.d/openai-responses.js.map +0 -1
  229. package/build/compatible/engine.d.ts +0 -18
  230. package/build/compatible/engine.js +0 -21
  231. package/build/compatible/engine.js.map +0 -1
  232. package/build/compatible/session.d.ts +0 -78
  233. package/build/compatible/session.js +0 -138
  234. package/build/compatible/session.js.map +0 -1
  235. package/build/compatible/tool-call-validator.d.ts +0 -11
  236. package/build/compatible/tool-call-validator.js +0 -12
  237. package/build/compatible/tool-call-validator.js.map +0 -1
  238. package/build/compatible.d/aliyun/transport.d.ts +0 -11
  239. package/build/compatible.d/aliyun/transport.js +0 -9
  240. package/build/compatible.d/aliyun/transport.js.map +0 -1
  241. package/build/compatible.d/anthropic/message-codec.d.ts +0 -31
  242. package/build/compatible.d/anthropic/message-codec.js +0 -88
  243. package/build/compatible.d/anthropic/message-codec.js.map +0 -1
  244. package/build/compatible.d/anthropic/transport.d.ts +0 -31
  245. package/build/compatible.d/anthropic/transport.js +0 -137
  246. package/build/compatible.d/anthropic/transport.js.map +0 -1
  247. package/build/compatible.d/google/message-codec.d.ts +0 -31
  248. package/build/compatible.d/google/message-codec.js +0 -98
  249. package/build/compatible.d/google/message-codec.js.map +0 -1
  250. package/build/compatible.d/google/transport.d.ts +0 -28
  251. package/build/compatible.d/google/transport.js.map +0 -1
  252. package/build/compatible.d/openai-chatcompletions/message-codec.d.ts +0 -19
  253. package/build/compatible.d/openai-chatcompletions/message-codec.js +0 -66
  254. package/build/compatible.d/openai-chatcompletions/message-codec.js.map +0 -1
  255. package/build/compatible.d/openai-chatcompletions/transport.d.ts +0 -9
  256. package/build/compatible.d/openai-chatcompletions/transport.js +0 -25
  257. package/build/compatible.d/openai-chatcompletions/transport.js.map +0 -1
  258. package/build/compatible.d/openai-chatcompletions.d/monolith.d.ts +0 -36
  259. package/build/compatible.d/openai-chatcompletions.d/monolith.js.map +0 -1
  260. package/build/compatible.d/openai-chatcompletions.d/stream.d.ts +0 -35
  261. package/build/compatible.d/openai-chatcompletions.d/stream.js +0 -196
  262. package/build/compatible.d/openai-chatcompletions.d/stream.js.map +0 -1
  263. package/build/compatible.d/openai-responses/message-codec.d.ts +0 -32
  264. package/build/compatible.d/openai-responses/message-codec.js +0 -105
  265. package/build/compatible.d/openai-responses/message-codec.js.map +0 -1
  266. package/build/compatible.d/openai-responses/transport.d.ts +0 -33
  267. package/build/compatible.d/openai-responses/transport.js.map +0 -1
  268. package/build/frontmatter.d.ts +0 -5
  269. package/build/frontmatter.js +0 -13
  270. package/build/frontmatter.js.map +0 -1
  271. package/build/native-engines.d/google/agentloop.d.ts +0 -12
  272. package/build/native-engines.d/google/agentloop.js +0 -42
  273. package/build/native-engines.d/google/agentloop.js.map +0 -1
  274. package/build/native-engines.d/google/engine.d.ts +0 -35
  275. package/build/native-engines.d/google/engine.js +0 -73
  276. package/build/native-engines.d/google/engine.js.map +0 -1
  277. package/build/native-engines.d/google/exports.d.ts +0 -5
  278. package/build/native-engines.d/google/exports.js +0 -6
  279. package/build/native-engines.d/google/exports.js.map +0 -1
  280. package/build/native-engines.d/openai-responses/agentloop.d.ts +0 -13
  281. package/build/native-engines.d/openai-responses/agentloop.js +0 -53
  282. package/build/native-engines.d/openai-responses/agentloop.js.map +0 -1
  283. package/build/native-engines.d/openai-responses/engine.d.ts +0 -32
  284. package/build/native-engines.d/openai-responses/engine.js +0 -63
  285. package/build/native-engines.d/openai-responses/engine.js.map +0 -1
  286. package/build/native-engines.d/openai-responses/exports.d.ts +0 -6
  287. package/build/native-engines.d/openai-responses/exports.js +0 -7
  288. package/build/native-engines.d/openai-responses/exports.js.map +0 -1
  289. package/build/native-engines.d/openai-responses/tool-call-validator.d.ts +0 -12
  290. package/build/native-engines.d/openai-responses/tool-call-validator.js +0 -33
  291. package/build/native-engines.d/openai-responses/tool-call-validator.js.map +0 -1
  292. package/build/session.d.ts +0 -7
  293. package/test/build/test-codecs.d.ts +0 -1
  294. package/test/build/test-codecs.js +0 -230
  295. package/test/build/test-codecs.js.map +0 -1
  296. package/test/build/test-compatible-engine.d.ts +0 -1
  297. package/test/build/test-compatible-engine.js +0 -27
  298. package/test/build/test-compatible-engine.js.map +0 -1
  299. package/test/build/test-compatible-engines.d.ts +0 -1
  300. package/test/build/test-compatible-engines.js +0 -112
  301. package/test/build/test-compatible-engines.js.map +0 -1
  302. package/test/build/test-engine.d.ts +0 -1
  303. package/test/build/test-engine.js +0 -97
  304. package/test/build/test-engine.js.map +0 -1
  305. package/test/build/test-helpers.d.ts +0 -46
  306. package/test/build/test-helpers.js +0 -45
  307. package/test/build/test-helpers.js.map +0 -1
  308. package/test/build/test-native-engines.d.ts +0 -1
  309. package/test/build/test-native-engines.js +0 -64
  310. package/test/build/test-native-engines.js.map +0 -1
  311. package/test/build/test.d.ts +0 -5
  312. package/test/build/test.js +0 -6
  313. package/test/build/test.js.map +0 -1
  314. package/test/build/tsconfig.tsbuildinfo +0 -1
  315. package/test/src/test-codecs.ts +0 -256
  316. package/test/src/test-compatible-engine.ts +0 -45
  317. package/test/src/test-compatible-engines.ts +0 -129
  318. package/test/src/test-engine.ts +0 -144
  319. package/test/src/test-helpers.ts +0 -53
  320. package/test/src/test-native-engines.ts +0 -75
  321. package/test/src/test.ts +0 -5
  322. /package/build/{session.js → engine/session.js} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"monolith.js","sourceRoot":"","sources":["../../../src/compatible.d/openai-chatcompletions.d/monolith.ts"],"names":[],"mappings":"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"}
@@ -1,35 +0,0 @@
1
- import { RoleMessage, type Session } from '#@/compatible/session.ts';
2
- import { Function } from '#@/function.ts';
3
- import OpenAI from 'openai';
4
- import { OpenAIChatCompletionsCompatibleTransport } from '#@/compatible.d/openai-chatcompletions/transport.ts';
5
- import { type InferenceContext } from '#@/inference-context.ts';
6
- import { type InferenceParams, type ProviderSpec } from '#@/engine.ts';
7
- import type { ToolCallValidator } from '#@/compatible/tool-call-validator.ts';
8
- import type { OpenAIChatCompletionsBilling } from '#@/api-types/openai-chatcompletion/billing.ts';
9
- import type { OpenAIChatCompletionsToolCodec } from '#@/api-types/openai-chatcompletion/tool-codec.ts';
10
- import { Throttle } from '#@/throttle.ts';
11
- import { type OpenAIChatCompletionsCompatibleMessageCodec } from '#@/compatible.d/openai-chatcompletions/message-codec.ts';
12
- export declare abstract class OpenAIChatCompletionsCompatibleStream<in out fdm extends Function.Declaration.Map> extends OpenAIChatCompletionsCompatibleTransport<fdm> {
13
- protected ctx: OpenAIChatCompletionsCompatibleStream.Context<fdm>;
14
- protected client: OpenAI;
15
- constructor(ctx: OpenAIChatCompletionsCompatibleStream.Context<fdm>);
16
- protected makeParams(session: Session<fdm>): OpenAI.ChatCompletionCreateParamsStreaming;
17
- convertToFunctionCallFromDelta(apifc: OpenAI.ChatCompletionChunk.Choice.Delta.ToolCall): Function.Call.From<fdm>;
18
- convertCompletionStockToCompletion(stock: OpenAI.ChatCompletionChunk): OpenAI.ChatCompletion;
19
- fetchRaw(wfctx: InferenceContext, session: Session<fdm>, signal?: AbortSignal): Promise<RoleMessage.Ai<fdm>>;
20
- protected abstract getDeltaThoughts(delta: OpenAI.ChatCompletionChunk.Choice.Delta): string;
21
- }
22
- export declare namespace OpenAIChatCompletionsCompatibleStream {
23
- interface Context<in out fdm extends Function.Declaration.Map> {
24
- inferenceParams: InferenceParams;
25
- providerSpec: ProviderSpec;
26
- fdm: fdm;
27
- throttle: Throttle;
28
- toolChoice: Function.ToolChoice<fdm>;
29
- parallelToolCall: boolean;
30
- messageCodec: OpenAIChatCompletionsCompatibleMessageCodec<fdm>;
31
- toolCodec: OpenAIChatCompletionsToolCodec<fdm>;
32
- billing: OpenAIChatCompletionsBilling<fdm>;
33
- toolCallValidator: ToolCallValidator<fdm>;
34
- }
35
- }
@@ -1,196 +0,0 @@
1
- import { RoleMessage } from '#@/compatible/session.ts';
2
- import { Function } from '#@/function.ts';
3
- import OpenAI from 'openai';
4
- import { OpenAIChatCompletionsCompatibleTransport } from '#@/compatible.d/openai-chatcompletions/transport.ts';
5
- import {} from '#@/inference-context.ts';
6
- import { ResponseInvalid } from '#@/engine.ts';
7
- import { logger } from '#@/telemetry.ts';
8
- import { Throttle } from '#@/throttle.ts';
9
- import * as Undici from 'undici';
10
- import {} from '#@/compatible.d/openai-chatcompletions/message-codec.ts';
11
- export class OpenAIChatCompletionsCompatibleStream extends OpenAIChatCompletionsCompatibleTransport {
12
- ctx;
13
- client;
14
- constructor(ctx) {
15
- super();
16
- this.ctx = ctx;
17
- this.client = new OpenAI({
18
- baseURL: this.ctx.providerSpec.baseUrl,
19
- apiKey: this.ctx.providerSpec.apiKey,
20
- fetchOptions: {
21
- dispatcher: this.ctx.providerSpec.proxyAgent,
22
- },
23
- });
24
- }
25
- makeParams(session) {
26
- const tools = this.ctx.toolCodec.convertFromFunctionDeclarationMap(this.ctx.fdm);
27
- return {
28
- model: this.ctx.inferenceParams.model,
29
- messages: [
30
- ...(session.developerMessage ? this.ctx.messageCodec.convertFromRoleMessage(session.developerMessage) : []),
31
- ...this.ctx.messageCodec.convertFromChatMessages(session.chatMessages),
32
- ],
33
- tools: tools.length ? tools : undefined,
34
- tool_choice: tools.length ? this.ctx.toolCodec.convertFromToolChoice(this.ctx.toolChoice) : undefined,
35
- parallel_tool_calls: tools.length ? this.ctx.parallelToolCall : undefined,
36
- stream: true,
37
- stream_options: {
38
- include_usage: true
39
- },
40
- max_completion_tokens: this.ctx.inferenceParams.maxTokens ?? undefined,
41
- ...this.ctx.inferenceParams.additionalOptions,
42
- };
43
- }
44
- convertToFunctionCallFromDelta(apifc) {
45
- if (apifc.id) { }
46
- else
47
- throw new Error();
48
- if (apifc.function?.name) { }
49
- else
50
- throw new Error();
51
- if (apifc.function?.arguments) { }
52
- else
53
- throw new Error();
54
- return this.ctx.toolCodec.convertToFunctionCall(apifc);
55
- }
56
- convertCompletionStockToCompletion(stock) {
57
- const stockChoice = stock?.choices[0];
58
- if (stockChoice?.finish_reason) { }
59
- else
60
- throw new ResponseInvalid('Finish reason missing', { cause: stock });
61
- const completion = {
62
- id: stock.id,
63
- object: 'chat.completion',
64
- created: stock.created,
65
- model: stock.model,
66
- choices: [{
67
- index: 0,
68
- finish_reason: stockChoice.finish_reason,
69
- message: {
70
- role: 'assistant',
71
- content: stockChoice.delta.content ?? null,
72
- tool_calls: stockChoice.delta.tool_calls?.map(apifc => {
73
- if (apifc.id) { }
74
- else
75
- throw new Error();
76
- if (apifc.function?.name) { }
77
- else
78
- throw new Error();
79
- if (apifc.function?.arguments) { }
80
- else
81
- throw new Error();
82
- return {
83
- id: apifc.id,
84
- function: {
85
- name: apifc.function.name,
86
- arguments: apifc.function.arguments,
87
- },
88
- type: 'function',
89
- };
90
- }),
91
- refusal: stockChoice.delta.refusal ?? null,
92
- },
93
- logprobs: stockChoice.logprobs ?? null,
94
- }],
95
- usage: stock.usage ?? undefined,
96
- };
97
- return completion;
98
- }
99
- async fetchRaw(wfctx, session, signal) {
100
- const params = this.makeParams(session);
101
- logger.message.trace(params);
102
- await this.ctx.throttle.requests(wfctx);
103
- const stream = await this.client.chat.completions.create(params, { signal });
104
- let stock = null;
105
- let thoughts = null, thinking = false;
106
- for await (const chunk of stream) {
107
- stock ??= {
108
- id: chunk.id,
109
- created: chunk.created,
110
- model: chunk.model,
111
- choices: [],
112
- object: 'chat.completion.chunk',
113
- };
114
- // choice
115
- const deltaChoice = chunk.choices[0];
116
- if (deltaChoice) {
117
- if (!stock.choices.length)
118
- stock.choices.push({
119
- index: 0,
120
- finish_reason: null,
121
- delta: {},
122
- });
123
- // thoughts
124
- const deltaThoughts = this.getDeltaThoughts(deltaChoice.delta);
125
- if (deltaThoughts) {
126
- if (!thinking) {
127
- thinking = true;
128
- logger.inference.trace('<think>\n');
129
- }
130
- logger.inference.trace(deltaThoughts);
131
- thoughts ??= '';
132
- thoughts += deltaThoughts;
133
- }
134
- // content
135
- if (deltaChoice.delta.content) {
136
- if (thinking) {
137
- thinking = false;
138
- logger.inference.trace('\n</think>\n');
139
- }
140
- logger.inference.debug(deltaChoice.delta.content);
141
- stock.choices[0].delta.content ??= '';
142
- stock.choices[0].delta.content += deltaChoice.delta.content;
143
- }
144
- // function calls
145
- if (deltaChoice.delta.tool_calls) {
146
- if (thinking) {
147
- thinking = false;
148
- logger.inference.trace('\n</think>\n');
149
- }
150
- stock.choices[0].delta.tool_calls ??= [];
151
- for (const deltaToolCall of deltaChoice.delta.tool_calls) {
152
- const toolCalls = stock.choices[0].delta.tool_calls;
153
- toolCalls[deltaToolCall.index] ??= { index: deltaToolCall.index };
154
- toolCalls[deltaToolCall.index].id ??= deltaToolCall.id;
155
- if (deltaToolCall.function) {
156
- toolCalls[deltaToolCall.index].function ??= {};
157
- toolCalls[deltaToolCall.index].function.name ??= deltaToolCall.function.name;
158
- if (deltaToolCall.function.arguments) {
159
- toolCalls[deltaToolCall.index].function.arguments ??= '';
160
- toolCalls[deltaToolCall.index].function.arguments += deltaToolCall.function?.arguments || '';
161
- }
162
- }
163
- }
164
- }
165
- // finish reason
166
- stock.choices[0].finish_reason ??= deltaChoice.finish_reason;
167
- }
168
- // usage
169
- stock.usage ??= chunk.usage;
170
- }
171
- if (stock) { }
172
- else
173
- throw new Error();
174
- const completion = this.convertCompletionStockToCompletion(stock);
175
- const choice = completion.choices[0];
176
- if (choice) { }
177
- else
178
- throw new ResponseInvalid('Content missing', { cause: completion });
179
- if (choice.message.content)
180
- logger.inference.debug('\n');
181
- this.handleFinishReason(completion, choice.finish_reason);
182
- if (completion.usage) { }
183
- else
184
- throw new Error();
185
- const cost = this.ctx.billing.charge(completion.usage);
186
- const aiMessage = this.ctx.messageCodec.convertToAiMessage(choice.message);
187
- const apifcs = choice.message.tool_calls;
188
- if (apifcs?.length)
189
- logger.message.debug(apifcs);
190
- logger.message.debug(completion.usage);
191
- wfctx.cost?.(cost);
192
- this.ctx.toolCallValidator.validate(aiMessage.getFunctionCalls());
193
- return aiMessage;
194
- }
195
- }
196
- //# sourceMappingURL=stream.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../../src/compatible.d/openai-chatcompletions.d/stream.ts"],"names":[],"mappings":"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"}
@@ -1,32 +0,0 @@
1
- import { RoleMessage, type Session } from '#@/compatible/session.ts';
2
- import { Function } from '#@/function.ts';
3
- import OpenAI from 'openai';
4
- import type { OpenAIResponsesToolCodec } from '#@/api-types/openai-responses/tool-codec.ts';
5
- export declare class OpenAIResponsesCompatibleMessageCodec<in out fdm extends Function.Declaration.Map> {
6
- protected ctx: OpenAIResponsesCompatibleMessageCodec.Context<fdm>;
7
- constructor(ctx: OpenAIResponsesCompatibleMessageCodec.Context<fdm>);
8
- convertToAiMessage(output: OpenAI.Responses.ResponseOutputItem[]): OpenAIResponsesCompatibleMessageCodec.Message.Ai<fdm>;
9
- convertFromFunctionCall(fc: Function.Call.From<fdm>): OpenAI.Responses.ResponseFunctionToolCall;
10
- convertFromUserMessage(userMessage: RoleMessage.User<fdm>): OpenAI.Responses.ResponseInput;
11
- convertFromAiMessage(aiMessage: RoleMessage.Ai<fdm>): OpenAI.Responses.ResponseInput;
12
- convertFromDeveloperMessage(developerMessage: RoleMessage.Developer): string;
13
- convertFromChatMessage(chatMessage: Session.ChatMessage<fdm>): OpenAI.Responses.ResponseInput;
14
- }
15
- export declare namespace OpenAIResponsesCompatibleMessageCodec {
16
- interface Context<in out fdm extends Function.Declaration.Map> {
17
- toolCodec: OpenAIResponsesToolCodec<fdm>;
18
- }
19
- namespace Message {
20
- type Ai<fdm extends Function.Declaration.Map> = Ai.Instance<fdm>;
21
- namespace Ai {
22
- function create<fdm extends Function.Declaration.Map>(parts: RoleMessage.Ai.Part<fdm>[], raw: OpenAI.Responses.ResponseOutputItem[]): Ai<fdm>;
23
- const NOMINAL: unique symbol;
24
- class Instance<in out fdm extends Function.Declaration.Map> extends RoleMessage.Ai.Instance<fdm> {
25
- protected raw: OpenAI.Responses.ResponseOutputItem[];
26
- readonly [NOMINAL]: void;
27
- constructor(parts: RoleMessage.Ai.Part<fdm>[], raw: OpenAI.Responses.ResponseOutputItem[]);
28
- getRaw(): OpenAI.Responses.ResponseOutputItem[];
29
- }
30
- }
31
- }
32
- }
@@ -1,105 +0,0 @@
1
- import { ResponseInvalid } from '#@/engine.ts';
2
- import { RoleMessage } from '#@/compatible/session.ts';
3
- import { Function } from '#@/function.ts';
4
- import OpenAI from 'openai';
5
- export class OpenAIResponsesCompatibleMessageCodec {
6
- ctx;
7
- constructor(ctx) {
8
- this.ctx = ctx;
9
- }
10
- convertToAiMessage(output) {
11
- const parts = output.flatMap((item) => {
12
- if (item.type === 'message') {
13
- if (item.content.every(part => part.type === 'output_text')) { }
14
- else
15
- throw new Error();
16
- return [RoleMessage.Part.Text.create(item.content.map(part => part.text).join(''))];
17
- }
18
- else if (item.type === 'function_call')
19
- return [this.ctx.toolCodec.convertToFunctionCall(item)];
20
- else if (item.type === 'reasoning')
21
- return [];
22
- else
23
- throw new Error();
24
- });
25
- return OpenAIResponsesCompatibleMessageCodec.Message.Ai.create(parts, output);
26
- }
27
- convertFromFunctionCall(fc) {
28
- if (fc.id) { }
29
- else
30
- throw new Error();
31
- return {
32
- type: 'function_call',
33
- call_id: fc.id,
34
- name: fc.name,
35
- arguments: JSON.stringify(fc.args),
36
- };
37
- }
38
- convertFromUserMessage(userMessage) {
39
- return userMessage.getParts().map(part => {
40
- if (part instanceof RoleMessage.Part.Text.Instance)
41
- return {
42
- type: 'message',
43
- role: 'user',
44
- content: part.text,
45
- };
46
- else if (part instanceof Function.Response)
47
- return this.ctx.toolCodec.convertFromFunctionResponse(part);
48
- else
49
- throw new Error();
50
- });
51
- }
52
- convertFromAiMessage(aiMessage) {
53
- if (aiMessage instanceof OpenAIResponsesCompatibleMessageCodec.Message.Ai.Instance)
54
- return aiMessage.getRaw();
55
- else {
56
- return aiMessage.getParts().map(part => {
57
- if (part instanceof RoleMessage.Part.Text.Instance)
58
- return {
59
- role: 'assistant',
60
- content: part.text,
61
- };
62
- else if (part instanceof Function.Call)
63
- return this.convertFromFunctionCall(part);
64
- else
65
- throw new Error();
66
- });
67
- }
68
- }
69
- convertFromDeveloperMessage(developerMessage) {
70
- return developerMessage.getOnlyText();
71
- }
72
- convertFromChatMessage(chatMessage) {
73
- if (chatMessage instanceof RoleMessage.User.Instance)
74
- return this.convertFromUserMessage(chatMessage);
75
- else if (chatMessage instanceof RoleMessage.Ai.Instance)
76
- return this.convertFromAiMessage(chatMessage);
77
- else
78
- throw new Error();
79
- }
80
- }
81
- (function (OpenAIResponsesCompatibleMessageCodec) {
82
- let Message;
83
- (function (Message) {
84
- let Ai;
85
- (function (Ai) {
86
- function create(parts, raw) {
87
- return new Instance(parts, raw);
88
- }
89
- Ai.create = create;
90
- Ai.NOMINAL = Symbol();
91
- class Instance extends RoleMessage.Ai.Instance {
92
- raw;
93
- constructor(parts, raw) {
94
- super(parts);
95
- this.raw = raw;
96
- }
97
- getRaw() {
98
- return this.raw;
99
- }
100
- }
101
- Ai.Instance = Instance;
102
- })(Ai = Message.Ai || (Message.Ai = {}));
103
- })(Message = OpenAIResponsesCompatibleMessageCodec.Message || (OpenAIResponsesCompatibleMessageCodec.Message = {}));
104
- })(OpenAIResponsesCompatibleMessageCodec || (OpenAIResponsesCompatibleMessageCodec = {}));
105
- //# sourceMappingURL=message-codec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"message-codec.js","sourceRoot":"","sources":["../../../src/compatible.d/openai-responses/message-codec.ts"],"names":[],"mappings":"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"}
@@ -1,33 +0,0 @@
1
- import { type InferenceParams, type ProviderSpec } from '#@/engine.ts';
2
- import { RoleMessage, type Session } from '#@/compatible/session.ts';
3
- import { Function } from '#@/function.ts';
4
- import OpenAI from 'openai';
5
- import { type InferenceContext } from '#@/inference-context.ts';
6
- import { Throttle } from '#@/throttle.ts';
7
- import type { OpenAIResponsesCompatibleMessageCodec } from '#@/compatible.d/openai-responses/message-codec.ts';
8
- import type { OpenAIResponsesToolCodec } from '#@/api-types/openai-responses/tool-codec.ts';
9
- import type { OpenAIResponsesBilling } from '#@/api-types/openai-responses/billing.ts';
10
- import type { ToolCallValidator } from '#@/compatible/tool-call-validator.ts';
11
- export declare class OpenAIResponsesCompatibleTransport<in out fdm extends Function.Declaration.Map> {
12
- protected ctx: OpenAIResponsesCompatibleTransport.Context<fdm>;
13
- protected apiURL: URL;
14
- constructor(ctx: OpenAIResponsesCompatibleTransport.Context<fdm>);
15
- protected makeParams(session: Session<fdm>): OpenAI.Responses.ResponseCreateParamsNonStreaming;
16
- protected logAiMessage(output: OpenAI.Responses.ResponseOutputItem[]): void;
17
- protected fetchRaw(wfctx: InferenceContext, session: Session<fdm>, signal?: AbortSignal): Promise<OpenAIResponsesCompatibleMessageCodec.Message.Ai<fdm>>;
18
- fetch(wfctx: InferenceContext, session: Session<fdm>, signal?: AbortSignal): Promise<RoleMessage.Ai<fdm>>;
19
- }
20
- export declare namespace OpenAIResponsesCompatibleTransport {
21
- interface Context<in out fdm extends Function.Declaration.Map> {
22
- inferenceSpec: InferenceParams;
23
- providerSpec: ProviderSpec;
24
- fdm: fdm;
25
- throttle: Throttle;
26
- toolChoice: Function.ToolChoice<fdm>;
27
- parallelToolCall: boolean;
28
- messageCodec: OpenAIResponsesCompatibleMessageCodec<fdm>;
29
- toolCodec: OpenAIResponsesToolCodec<fdm>;
30
- billing: OpenAIResponsesBilling;
31
- toolCallValidator: ToolCallValidator<fdm>;
32
- }
33
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/compatible.d/openai-responses/transport.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- export declare function prepend(metadata: object): string;
2
- export declare namespace prepend {
3
- class SyntaxError extends globalThis.SyntaxError {
4
- }
5
- }
@@ -1,13 +0,0 @@
1
- import { spawnSync } from 'node:child_process';
2
- export function prepend(metadata) {
3
- const frontmatterResult = spawnSync('cat | pandoc --wrap=none --standalone -f markdown -t markdown --metadata-file=<(cat) /dev/null', { shell: '/usr/bin/bash', input: JSON.stringify(metadata), encoding: 'utf-8' });
4
- if (frontmatterResult.status)
5
- throw new prepend.SyntaxError(frontmatterResult.stderr);
6
- return frontmatterResult.stdout;
7
- }
8
- (function (prepend) {
9
- class SyntaxError extends globalThis.SyntaxError {
10
- }
11
- prepend.SyntaxError = SyntaxError;
12
- })(prepend || (prepend = {}));
13
- //# sourceMappingURL=frontmatter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../src/frontmatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG/C,MAAM,UAAU,OAAO,CAAC,QAAgB;IACpC,MAAM,iBAAiB,GAAG,SAAS,CAC/B,gGAAgG,EAChG,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CACjF,CAAC;IACF,IAAI,iBAAiB,CAAC,MAAM;QAAE,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACtF,OAAO,iBAAiB,CAAC,MAAM,CAAC;AACpC,CAAC;AACD,WAAiB,OAAO;IACpB,MAAa,WAAY,SAAQ,UAAU,CAAC,WAAW;KAAG;IAA7C,mBAAW,cAAkC,CAAA;AAC9D,CAAC,EAFgB,OAAO,KAAP,OAAO,QAEvB"}
@@ -1,12 +0,0 @@
1
- import { type InferenceContext } from '#@/inference-context.ts';
2
- import { type Session } from '#@/native-engines.d/google/session.ts';
3
- import { Function } from '#@/function.ts';
4
- import { type GoogleNativeEngine } from '#@/native-engines.d/google/engine.ts';
5
- import * as CompatibleAgentloopModule from '#@/agentloop.ts';
6
- /**
7
- * @param session mutable
8
- */
9
- export declare function agentloop<fdm extends Function.Declaration.Map>(wfctx: InferenceContext, session: Session<fdm>, engine: GoogleNativeEngine<fdm>, fnm: Function.Map<fdm>, limit?: number): AsyncGenerator<string, string, void>;
10
- export declare namespace agentloop {
11
- export import FunctionCallLimitExceeded = CompatibleAgentloopModule.agentloop.FunctionCallLimitExceeded;
12
- }
@@ -1,42 +0,0 @@
1
- import {} from '#@/inference-context.ts';
2
- import { RoleMessage } from '#@/native-engines.d/google/session.ts';
3
- import { Function } from '#@/function.ts';
4
- import {} from '#@/native-engines.d/google/engine.ts';
5
- import * as CompatibleAgentloopModule from '#@/agentloop.ts';
6
- /**
7
- * @param session mutable
8
- */
9
- export async function* agentloop(wfctx, session, engine, fnm, limit = Number.POSITIVE_INFINITY) {
10
- for (let i = 0; i < limit; i++) {
11
- const response = await engine.stateful(wfctx, session);
12
- const fcs = response.getFunctionCalls();
13
- if (!fcs.length)
14
- return response.getOnlyText();
15
- const pfrs = [];
16
- for (const part of response.getParts()) {
17
- if (part instanceof RoleMessage.Part.Text.Instance) {
18
- yield part.text;
19
- }
20
- else if (part instanceof Function.Call) {
21
- const fc = part;
22
- const f = fnm[fc.name];
23
- pfrs.push((async () => {
24
- return Function.Response.create({
25
- id: fc.id,
26
- name: fc.name,
27
- text: await f.call(fnm, fc.args),
28
- });
29
- })());
30
- }
31
- else
32
- throw new Error();
33
- }
34
- const frs = await Promise.all(pfrs);
35
- engine.pushUserMessage(session, RoleMessage.User.create(frs));
36
- }
37
- throw new agentloop.FunctionCallLimitExceeded('Function call limit exceeded.');
38
- }
39
- (function (agentloop) {
40
- agentloop.FunctionCallLimitExceeded = CompatibleAgentloopModule.agentloop.FunctionCallLimitExceeded;
41
- })(agentloop || (agentloop = {}));
42
- //# sourceMappingURL=agentloop.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agentloop.js","sourceRoot":"","sources":["../../../src/native-engines.d/google/agentloop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,WAAW,EAAgB,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAA2B,MAAM,sCAAsC,CAAC;AAC/E,OAAO,KAAK,yBAAyB,MAAM,iBAAiB,CAAC;AAG7D;;GAEG;AACH,MAAM,CAAC,KAAK,SAAU,CAAC,CAAA,SAAS,CAC5B,KAAuB,EACvB,OAAqB,EACrB,MAA+B,EAC/B,GAAsB,EACtB,KAAK,GAAG,MAAM,CAAC,iBAAiB;IAEhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACvD,MAAM,GAAG,GAAG,QAAQ,CAAC,gBAAgB,EAAE,CAAC;QACxC,IAAI,CAAC,GAAG,CAAC,MAAM;YAAE,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,IAAI,GAAmD,EAAE,CAAC;QAChE,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;YACrC,IAAI,IAAI,YAAY,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACjD,MAAM,IAAI,CAAC,IAAI,CAAC;YACpB,CAAC;iBAAM,IAAI,IAAI,YAAY,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACvC,MAAM,EAAE,GAAG,IAA+B,CAAC;gBAC3C,MAAM,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;gBACvB,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE;oBAClB,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAM;wBACjC,EAAE,EAAE,EAAE,CAAC,EAAE;wBACT,IAAI,EAAE,EAAE,CAAC,IAAI;wBACb,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC;qBACM,CAAC,CAAC;gBAChD,CAAC,CAAC,EAAE,CAAC,CAAC;YACV,CAAC;;gBAAM,MAAM,IAAI,KAAK,EAAE,CAAC;QAC7B,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAM,GAAG,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,MAAM,IAAI,SAAS,CAAC,yBAAyB,CAAC,+BAA+B,CAAC,CAAC;AACnF,CAAC;AAED,WAAiB,SAAS;IACR,mCAAyB,GAAG,yBAAyB,CAAC,SAAS,CAAC,yBAAyB,CAAC;AAC5G,CAAC,EAFgB,SAAS,KAAT,SAAS,QAEzB"}
@@ -1,35 +0,0 @@
1
- import { Function } from '#@/function.ts';
2
- import { RoleMessage, type Session } from '#@/native-engines.d/google/session.ts';
3
- import { Engine } from '#@/engine.ts';
4
- import { type InferenceContext } from '#@/inference-context.ts';
5
- import { GoogleToolCodec } from '#@/api-types/google/tool-codec.ts';
6
- import { GoogleBilling } from '#@/api-types/google/billing.ts';
7
- import { ToolCallValidator } from '#@/compatible/tool-call-validator.ts';
8
- import { GoogleCompatibleMessageCodec } from '#@/compatible.d/google/message-codec.ts';
9
- import { GoogleNativeMessageCodec } from '#@/native-engines.d/google/message-codec.ts';
10
- import { GoogleNativeTransport } from '#@/native-engines.d/google/transport.ts';
11
- export declare class GoogleNativeEngine<in out fdm extends Function.Declaration.Map> extends Engine<fdm, RoleMessage.User<fdm>, RoleMessage.Ai<fdm>, RoleMessage.Developer, Session<fdm>> {
12
- protected toolChoice: Function.ToolChoice<fdm>;
13
- protected codeExecution: boolean;
14
- protected urlContext: boolean;
15
- protected googleSearch: boolean;
16
- protected toolCodec: GoogleToolCodec<fdm>;
17
- protected compatibleMessageCodec: GoogleCompatibleMessageCodec<fdm>;
18
- protected messageCodec: GoogleNativeMessageCodec<fdm>;
19
- protected billing: GoogleBilling;
20
- protected toolCallValidator: ToolCallValidator<fdm>;
21
- protected transport: GoogleNativeTransport<fdm>;
22
- protected parallelToolCall: boolean;
23
- constructor(options: GoogleNativeEngine.Options<fdm>);
24
- protected infer(wfctx: InferenceContext, session: Session<fdm>, signal?: AbortSignal): Promise<RoleMessage.Ai<fdm>>;
25
- appendUserMessage(session: Session<fdm>, message: RoleMessage.User<fdm>): Session<fdm>;
26
- pushUserMessage(session: Session<fdm>, message: RoleMessage.User<fdm>): Session<fdm>;
27
- }
28
- export declare namespace GoogleNativeEngine {
29
- interface Options<in out fdm extends Function.Declaration.Map> extends Engine.Options<fdm> {
30
- toolChoice?: Function.ToolChoice<fdm>;
31
- codeExecution?: boolean;
32
- urlContext?: boolean;
33
- googleSearch?: boolean;
34
- }
35
- }
@@ -1,73 +0,0 @@
1
- import { Function } from '#@/function.ts';
2
- import { RoleMessage } from '#@/native-engines.d/google/session.ts';
3
- import { Engine } from '#@/engine.ts';
4
- import {} from '#@/inference-context.ts';
5
- import { GoogleToolCodec } from '#@/api-types/google/tool-codec.ts';
6
- import { GoogleBilling } from '#@/api-types/google/billing.ts';
7
- import { ToolCallValidator } from '#@/compatible/tool-call-validator.ts';
8
- import { GoogleCompatibleMessageCodec } from '#@/compatible.d/google/message-codec.ts';
9
- import { GoogleNativeMessageCodec } from '#@/native-engines.d/google/message-codec.ts';
10
- import { GoogleNativeTransport } from '#@/native-engines.d/google/transport.ts';
11
- export class GoogleNativeEngine extends Engine {
12
- toolChoice;
13
- codeExecution;
14
- urlContext;
15
- googleSearch;
16
- toolCodec;
17
- compatibleMessageCodec;
18
- messageCodec;
19
- billing;
20
- toolCallValidator;
21
- transport;
22
- parallelToolCall;
23
- constructor(options) {
24
- super(options);
25
- this.parallelToolCall = options.parallelToolCall ?? true;
26
- if (this.parallelToolCall) { }
27
- else
28
- throw new Error('Parallel tool calling is required by Google engine.');
29
- this.toolChoice = options.toolChoice ?? Function.ToolChoice.AUTO;
30
- this.codeExecution = options.codeExecution ?? false;
31
- this.urlContext = options.urlContext ?? false;
32
- this.googleSearch = options.googleSearch ?? false;
33
- this.toolCodec = new GoogleToolCodec({
34
- fdm: this.fdm,
35
- });
36
- this.compatibleMessageCodec = new GoogleCompatibleMessageCodec({ toolCodec: this.toolCodec });
37
- this.messageCodec = new GoogleNativeMessageCodec({
38
- toolCodec: this.toolCodec,
39
- compatibleMessageCodec: this.compatibleMessageCodec,
40
- codeExecution: this.codeExecution,
41
- });
42
- this.billing = new GoogleBilling({ pricing: this.pricing });
43
- this.toolCallValidator = new ToolCallValidator({ toolChoice: this.toolChoice });
44
- this.transport = new GoogleNativeTransport({
45
- inferenceParams: this.inferenceParams,
46
- providerSpec: this.providerSpec,
47
- fdm: this.fdm,
48
- throttle: this.throttle,
49
- toolChoice: this.toolChoice,
50
- codeExecution: this.codeExecution,
51
- urlContext: this.urlContext,
52
- googleSearch: this.googleSearch,
53
- messageCodec: this.messageCodec,
54
- toolCodec: this.toolCodec,
55
- billing: this.billing,
56
- toolCallValidator: this.toolCallValidator,
57
- });
58
- }
59
- infer(wfctx, session, signal) {
60
- return this.transport.fetch(wfctx, session, signal);
61
- }
62
- appendUserMessage(session, message) {
63
- return {
64
- developerMessage: session.developerMessage,
65
- chatMessages: [...session.chatMessages, message],
66
- };
67
- }
68
- pushUserMessage(session, message) {
69
- session.chatMessages.push(message);
70
- return session;
71
- }
72
- }
73
- //# sourceMappingURL=engine.js.map