@theia/ai-openai 1.77.0-next.4 → 1.77.0-next.43

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 (89) hide show
  1. package/lib/browser/openai-frontend-application-contribution.js +1 -1
  2. package/lib/browser/openai-frontend-application-contribution.js.map +1 -1
  3. package/lib/browser/openai-frontend-application-contribution.spec.d.ts +2 -0
  4. package/lib/browser/openai-frontend-application-contribution.spec.d.ts.map +1 -0
  5. package/lib/browser/openai-frontend-application-contribution.spec.js +66 -0
  6. package/lib/browser/openai-frontend-application-contribution.spec.js.map +1 -0
  7. package/lib/common/openai-preferences.d.ts.map +1 -1
  8. package/lib/common/openai-preferences.js +6 -4
  9. package/lib/common/openai-preferences.js.map +1 -1
  10. package/lib/node/openai-backend-module.d.ts +0 -1
  11. package/lib/node/openai-backend-module.d.ts.map +1 -1
  12. package/lib/node/openai-backend-module.js +17 -3
  13. package/lib/node/openai-backend-module.js.map +1 -1
  14. package/lib/node/openai-chat-completion-stream.d.ts +74 -0
  15. package/lib/node/openai-chat-completion-stream.d.ts.map +1 -0
  16. package/lib/node/openai-chat-completion-stream.js +231 -0
  17. package/lib/node/openai-chat-completion-stream.js.map +1 -0
  18. package/lib/node/openai-chat-completion-stream.spec.d.ts +2 -0
  19. package/lib/node/openai-chat-completion-stream.spec.d.ts.map +1 -0
  20. package/lib/node/openai-chat-completion-stream.spec.js +383 -0
  21. package/lib/node/openai-chat-completion-stream.spec.js.map +1 -0
  22. package/lib/node/openai-language-model.d.ts +47 -57
  23. package/lib/node/openai-language-model.d.ts.map +1 -1
  24. package/lib/node/openai-language-model.js +91 -205
  25. package/lib/node/openai-language-model.js.map +1 -1
  26. package/lib/node/openai-language-model.spec.js +127 -31
  27. package/lib/node/openai-language-model.spec.js.map +1 -1
  28. package/lib/node/openai-language-models-manager-impl.d.ts +2 -4
  29. package/lib/node/openai-language-models-manager-impl.d.ts.map +1 -1
  30. package/lib/node/openai-language-models-manager-impl.js +26 -9
  31. package/lib/node/openai-language-models-manager-impl.js.map +1 -1
  32. package/lib/node/openai-model-defaults.d.ts +1 -1
  33. package/lib/node/openai-model-defaults.d.ts.map +1 -1
  34. package/lib/node/openai-model-defaults.js +9 -5
  35. package/lib/node/openai-model-defaults.js.map +1 -1
  36. package/lib/node/openai-model-defaults.spec.js +45 -19
  37. package/lib/node/openai-model-defaults.spec.js.map +1 -1
  38. package/lib/node/openai-model-utils.d.ts +27 -0
  39. package/lib/node/openai-model-utils.d.ts.map +1 -0
  40. package/lib/node/openai-model-utils.js +135 -0
  41. package/lib/node/openai-model-utils.js.map +1 -0
  42. package/lib/node/openai-model-utils.spec.js +20 -2
  43. package/lib/node/openai-model-utils.spec.js.map +1 -1
  44. package/lib/node/openai-reasoning.d.ts.map +1 -1
  45. package/lib/node/openai-reasoning.js +5 -10
  46. package/lib/node/openai-reasoning.js.map +1 -1
  47. package/lib/node/openai-request-settings.d.ts +10 -0
  48. package/lib/node/openai-request-settings.d.ts.map +1 -0
  49. package/lib/node/openai-request-settings.js +48 -0
  50. package/lib/node/openai-request-settings.js.map +1 -0
  51. package/lib/node/openai-response-api-utils.d.ts +7 -4
  52. package/lib/node/openai-response-api-utils.d.ts.map +1 -1
  53. package/lib/node/openai-response-api-utils.js +52 -116
  54. package/lib/node/openai-response-api-utils.js.map +1 -1
  55. package/lib/node/openai-response-api-utils.spec.js +205 -50
  56. package/lib/node/openai-response-api-utils.spec.js.map +1 -1
  57. package/lib/node/openai-streaming-iterator.d.ts +3 -15
  58. package/lib/node/openai-streaming-iterator.d.ts.map +1 -1
  59. package/lib/node/openai-streaming-iterator.js +3 -61
  60. package/lib/node/openai-streaming-iterator.js.map +1 -1
  61. package/lib/node/streaming-response-iterator.d.ts +34 -0
  62. package/lib/node/streaming-response-iterator.d.ts.map +1 -0
  63. package/lib/node/streaming-response-iterator.js +103 -0
  64. package/lib/node/streaming-response-iterator.js.map +1 -0
  65. package/lib/node/streaming-response-iterator.spec.d.ts +2 -0
  66. package/lib/node/streaming-response-iterator.spec.d.ts.map +1 -0
  67. package/lib/node/streaming-response-iterator.spec.js +41 -0
  68. package/lib/node/streaming-response-iterator.spec.js.map +1 -0
  69. package/package.json +6 -6
  70. package/src/browser/openai-frontend-application-contribution.spec.ts +78 -0
  71. package/src/browser/openai-frontend-application-contribution.ts +1 -1
  72. package/src/common/openai-preferences.ts +6 -4
  73. package/src/node/openai-backend-module.ts +26 -4
  74. package/src/node/openai-chat-completion-stream.spec.ts +458 -0
  75. package/src/node/openai-chat-completion-stream.ts +275 -0
  76. package/src/node/openai-language-model.spec.ts +135 -54
  77. package/src/node/openai-language-model.ts +130 -234
  78. package/src/node/openai-language-models-manager-impl.ts +24 -30
  79. package/src/node/openai-model-defaults.spec.ts +46 -19
  80. package/src/node/openai-model-defaults.ts +11 -6
  81. package/src/node/openai-model-utils.spec.ts +23 -1
  82. package/src/node/openai-model-utils.ts +148 -0
  83. package/src/node/openai-reasoning.ts +5 -11
  84. package/src/node/openai-request-settings.ts +54 -0
  85. package/src/node/openai-response-api-utils.spec.ts +219 -62
  86. package/src/node/openai-response-api-utils.ts +57 -128
  87. package/src/node/openai-streaming-iterator.ts +4 -63
  88. package/src/node/streaming-response-iterator.spec.ts +46 -0
  89. package/src/node/streaming-response-iterator.ts +101 -0
@@ -120,7 +120,7 @@ let OpenAiFrontendApplicationContribution = class OpenAiFrontendApplicationContr
120
120
  const modelId = model.id;
121
121
  const id = `${common_1.OPENAI_PROVIDER_ID}/${modelId}`;
122
122
  const maxRetries = this.aiCorePreferences.get(ai_core_preferences_1.PREFERENCE_NAME_MAX_RETRIES) ?? 3;
123
- const useResponseApi = this.preferenceService.get(openai_preferences_1.USE_RESPONSE_API_PREF, false);
123
+ const useResponseApi = this.preferenceService.get(openai_preferences_1.USE_RESPONSE_API_PREF, true);
124
124
  const globalCompaction = this.preferenceService.get(ai_core_preferences_1.PREFERENCE_NAME_SERVER_SIDE_COMPACTION, true);
125
125
  const compactionOverride = this.preferenceService.get(openai_preferences_1.SERVER_SIDE_COMPACTION_PREF, 'default');
126
126
  const serverSideCompactionEnabledByDefault = (0, ai_core_1.resolveCompactionDefault)(globalCompaction, compactionOverride);
@@ -1 +1 @@
1
- {"version":3,"file":"openai-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/openai-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/openai-frontend-application-contribution.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAAkE;AAClE,4CAEwB;AACxB,wDAAqG;AAErG,sCAAoG;AACpG,qEAGsC;AACtC,uFAGuD;AACvD,sCAAoD;AAEpD,2FAA2F;AAC3F,MAAM,2BAA2B,GAAG,gBAAgB,CAAC;AAG9C,IAAM,qCAAqC,GAA3C,MAAM,qCAAsC,SAAQ,yCAAuD;IAA3G;;QAQgB,eAAU,GAAG,2BAA2B,CAAC;QACzC,kBAAa,GAAG,QAAQ,CAAC;QACzB,6BAAwB,GAAG,yCAAoB,CAAC;QAChD,qCAAgC,GAAG,2CAAsB,CAAC;QAOnE,qBAAgB,GAAsC,EAAE,CAAC;IAuJvE,CAAC;IA5JG,kGAAkG;IAClG,IAAuB,aAAa;QAChC,OAAO,2BAAkB,CAAC;IAC9B,CAAC;IAID,IAAc,iBAAiB;QAC3B,OAAO;YACH,aAAa,EAAE,UAAG,CAAC,QAAQ,CAAC,iCAAiC,EAAE,sDAAsD,CAAC;YACtH,eAAe,EAAE,UAAG,CAAC,QAAQ,CAAC,2CAA2C,EACrE,qFAAqF,CAAC;YAC1F,aAAa,EAAE,UAAG,CAAC,QAAQ,CAAC,yCAAyC,EACjE,4HAA4H,CAAC;YACjI,iBAAiB,EAAE,UAAG,CAAC,QAAQ,CAAC,qCAAqC,EAAE,SAAS,CAAC;YACjF,UAAU,EAAE,UAAG,CAAC,QAAQ,CAAC,sCAAsC,EAC3D,kHAAkH,CAAC;YACvH,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,UAAG,CAAC,QAAQ,CAAC,kCAAkC,EAAE,iDAAiD,EAAE,KAAK,CAAC;SAC9H,CAAC;IACN,CAAC;IAEkB,kBAAkB;QACjC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAS,iCAAY,EAAE,SAAS,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAS,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC;QAEtF,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAoC,0CAAqB,EAAE,EAAE,CAAC,CAAC;QAC9G,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,GAAG,IAAI,CAAC,4CAA4C,CAAC,YAAY,CAAC,CAAC,CAAC;QAC9G,IAAI,CAAC,gBAAgB,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;QAE1C,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE;YAC/C,IAAI,KAAK,CAAC,cAAc,KAAK,iDAA2B,EAAE,CAAC;gBACvD,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAClC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAEkB,sBAAsB,CAAC,KAAuB;QAC7D,IAAI,KAAK,CAAC,cAAc,KAAK,iCAAY,EAAE,CAAC;YACxC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAS,iCAAY,EAAE,SAAS,CAAC,CAAC,CAAC;YACpF,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACrC,CAAC;aAAM,IAAI,KAAK,CAAC,cAAc,KAAK,0CAAqB,EAAE,CAAC;YACxD,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAoC,0CAAqB,EAAE,EAAE,CAAC,CAAC,CAAC;QAC5H,CAAC;aAAM,IAAI,KAAK,CAAC,cAAc,KAAK,0CAAqB;YACrD,KAAK,CAAC,cAAc,KAAK,gDAA2B;YACpD,KAAK,CAAC,cAAc,KAAK,4DAAsC;YAC/D,KAAK,CAAC,cAAc,KAAK,gEAA2C;YACpE,KAAK,CAAC,cAAc,KAAK,4EAAsD,EAAE,CAAC;YAClF,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAClC,CAAC;aAAM,IAAI,KAAK,CAAC,cAAc,KAAK,YAAY,EAAE,CAAC;YAC/C,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAS,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC;YACtF,qFAAqF;YACrF,+EAA+E;YAC/E,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACrC,CAAC;IACL,CAAC;IAES,wBAAwB,CAAC,eAAkD;QACjF,MAAM,SAAS,GAAG,IAAI,CAAC,4CAA4C,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3F,MAAM,SAAS,GAAG,IAAI,CAAC,4CAA4C,CAAC,eAAe,CAAC,CAAC;QAErF,MAAM,cAAc,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QACxG,MAAM,mBAAmB,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CACpD,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CACpB,KAAK,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE;YACxB,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK;YAC9B,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG;YAC1B,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC,UAAU;YACxC,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM;YAChC,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC,UAAU;YACxC,KAAK,CAAC,wBAAwB,KAAK,QAAQ,CAAC,wBAAwB;YACpE,KAAK,CAAC,wBAAwB,KAAK,QAAQ,CAAC,wBAAwB;YACpE,KAAK,CAAC,eAAe,KAAK,QAAQ,CAAC,eAAe;YAClD,KAAK,CAAC,cAAc,KAAK,QAAQ,CAAC,cAAc;YAChD,KAAK,CAAC,oCAAoC,KAAK,QAAQ,CAAC,oCAAoC;YAC5F,KAAK,CAAC,2CAA2C,KAAK,QAAQ,CAAC,2CAA2C;YAC1G,sBAAsB,CAAC,KAAK,CAAC,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB,CAAC;YACzE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE7E,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5E,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,GAAG,mBAAmB,CAAC,CAAC;QAClE,IAAI,CAAC,gBAAgB,GAAG,CAAC,GAAG,eAAe,CAAC,CAAC;IACjD,CAAC;IAEkB,sBAAsB;QACrC,KAAK,CAAC,sBAAsB,EAAE,CAAC;QAC/B,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC9B,CAAC;IAED,4EAA4E;IAClE,kBAAkB;QACxB,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAoC,0CAAqB,EAAE,EAAE,CAAC,CAAC;QAC9G,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,GAAG,IAAI,CAAC,4CAA4C,CAAC,YAAY,CAAC,CAAC,CAAC;IAClH,CAAC;IAED,4GAA4G;IAClG,sBAAsB,CAAC,KAAsB;QACnD,MAAM,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,EAAE,GAAG,GAAG,2BAAkB,IAAI,OAAO,EAAE,CAAC;QAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,iDAA2B,CAAC,IAAI,CAAC,CAAC;QAChF,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAU,0CAAqB,EAAE,IAAI,CAAC,CAAC;QACxF,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAU,4DAAsC,EAAE,IAAI,CAAC,CAAC;QAC3G,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAA8B,gDAA2B,EAAE,SAAS,CAAC,CAAC;QAC3H,MAAM,oCAAoC,GAAG,IAAA,kCAAwB,EAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;QAC5G,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAS,4EAAsD,EAAE,SAAS,CAAC,CAAC;QAC9H,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAS,gEAA2C,EAAE,SAAS,CAAC,CAAC;QACrH,MAAM,2CAA2C,GAAG,IAAA,gDAAsC,EAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;QAC/H,OAAO;YACH,EAAE,EAAE,EAAE;YACN,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,UAAU;YACtB,cAAc,EAAE,cAAc;YAC9B,oCAAoC;YACpC,2CAA2C;YAC3C,QAAQ,EAAE,KAAK,CAAC,QAAQ;SAC3B,CAAC;IACN,CAAC;IAES,4CAA4C,CAClD,WAA8C;QAE9C,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,iDAA2B,CAAC,IAAI,CAAC,CAAC;QAChF,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAU,4DAAsC,EAAE,IAAI,CAAC,CAAC;QAC3G,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAA8B,gDAA2B,EAAE,SAAS,CAAC,CAAC;QAC3H,MAAM,oCAAoC,GAAG,IAAA,kCAAwB,EAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;QAC5G,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAS,4EAAsD,EAAE,SAAS,CAAC,CAAC;QAC9H,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAS,gEAA2C,EAAE,SAAS,CAAC,CAAC;QACrH,MAAM,2CAA2C,GAAG,IAAA,gDAAsC,EAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;QAC/H,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACpC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC7F,OAAO,GAAG,CAAC;YACf,CAAC;YACD,OAAO;gBACH,GAAG,GAAG;gBACN;oBACI,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK;oBACjE,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,UAAU,EAAE,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;oBAChG,MAAM,EAAE,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;oBACzF,UAAU,EAAE,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;oBACzG,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;oBACvD,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;oBACvD,eAAe,EAAE,IAAI,CAAC,eAAe;oBACrC,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,UAAU;oBACzC,cAAc,EAAE,IAAI,CAAC,cAAc,IAAI,KAAK;oBAC5C,OAAO,EAAE,IAAA,mCAAyB,EAAC,IAAI,CAAC,OAAO,CAAC;oBAChD,gBAAgB,EAAE,kBAAkB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS;oBAC/F,oCAAoC;oBACpC,2CAA2C;iBAC9C;aACJ,CAAC;QACN,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC;CACJ,CAAA;AAzKY,sFAAqC;AAG3B;IADlB,IAAA,kBAAM,EAAC,oCAA2B,CAAC;;sEACoB;AAG9C;IADT,IAAA,kBAAM,EAAC,uCAAiB,CAAC;;gFACqB;gDANtC,qCAAqC;IADjD,IAAA,sBAAU,GAAE;GACA,qCAAqC,CAyKjD;AAED,SAAS,kBAAkB,CAAC,KAAc;IACtC,OAAO,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAE,KAA0B,CAAC,eAAe,CAAC,CAAC;AAC9G,CAAC;AAED,uHAAuH;AACvH,SAAS,sBAAsB,CAAC,CAA+B,EAAE,CAA+B;IAC5F,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,YAAY;WACjC,CAAC,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,CAAC,eAAe,CAAC,MAAM;WACrD,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;AACzF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=openai-frontend-application-contribution.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openai-frontend-application-contribution.spec.d.ts","sourceRoot":"","sources":["../../src/browser/openai-frontend-application-contribution.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 EclipseSource GmbH.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const jsdom_1 = require("@theia/core/lib/browser/test/jsdom");
19
+ const disableJSDOM = (0, jsdom_1.enableJSDOM)();
20
+ const frontend_application_config_provider_1 = require("@theia/core/lib/browser/frontend-application-config-provider");
21
+ frontend_application_config_provider_1.FrontendApplicationConfigProvider.set({});
22
+ const chai_1 = require("chai");
23
+ const openai_preferences_1 = require("../common/openai-preferences");
24
+ const openai_frontend_application_contribution_1 = require("./openai-frontend-application-contribution");
25
+ disableJSDOM();
26
+ class TestOpenAiFrontendApplicationContribution extends openai_frontend_application_contribution_1.OpenAiFrontendApplicationContribution {
27
+ constructor(officialUseResponseApi) {
28
+ super();
29
+ this.officialUseResponseApi = officialUseResponseApi;
30
+ this.preferenceService = {
31
+ get: (name, defaultValue) => name === openai_preferences_1.USE_RESPONSE_API_PREF && this.officialUseResponseApi !== undefined ? this.officialUseResponseApi : defaultValue
32
+ };
33
+ this.aiCorePreferences = { get: () => undefined };
34
+ }
35
+ createModelDescription(model) {
36
+ return super.createModelDescription(model);
37
+ }
38
+ createCustomModelDescriptionsFromPreferences(preferences) {
39
+ return super.createCustomModelDescriptionsFromPreferences(preferences);
40
+ }
41
+ }
42
+ describe('OpenAiFrontendApplicationContribution Responses API defaults', () => {
43
+ it('defaults the official preference schema to true', () => {
44
+ (0, chai_1.expect)(openai_preferences_1.OpenAiPreferencesSchema.properties[openai_preferences_1.USE_RESPONSE_API_PREF].default).to.equal(true);
45
+ });
46
+ for (const officialSetting of [undefined, true, false]) {
47
+ it(`uses ${officialSetting ?? true} for official models when the preference is ${officialSetting}`, () => {
48
+ const contribution = new TestOpenAiFrontendApplicationContribution(officialSetting);
49
+ const description = contribution.createModelDescription({ id: 'gpt-4o' });
50
+ (0, chai_1.expect)(description.useResponseApi).to.equal(officialSetting ?? true);
51
+ });
52
+ for (const customSetting of [undefined, false, true]) {
53
+ it(`uses ${customSetting ?? false} for custom setting ${customSetting} independently of official setting ${officialSetting}`, () => {
54
+ const contribution = new TestOpenAiFrontendApplicationContribution(officialSetting);
55
+ const preference = { model: 'custom-model', url: 'https://example.com/v1' };
56
+ if (customSetting !== undefined) {
57
+ preference.useResponseApi = customSetting;
58
+ }
59
+ const descriptions = contribution.createCustomModelDescriptionsFromPreferences([preference]);
60
+ (0, chai_1.expect)(descriptions).to.have.lengthOf(1);
61
+ (0, chai_1.expect)(descriptions[0].useResponseApi).to.equal(customSetting ?? false);
62
+ });
63
+ }
64
+ }
65
+ });
66
+ //# sourceMappingURL=openai-frontend-application-contribution.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openai-frontend-application-contribution.spec.js","sourceRoot":"","sources":["../../src/browser/openai-frontend-application-contribution.spec.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAEhF,8DAAiE;AACjE,MAAM,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC;AACnC,uHAAiH;AACjH,wEAAiC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAE1C,+BAA8B;AAK9B,qEAA8F;AAC9F,yGAAmG;AAEnG,YAAY,EAAE,CAAC;AAEf,MAAM,yCAA0C,SAAQ,gFAAqC;IAQzF,YAA+B,sBAA2C;QACtE,KAAK,EAAE,CAAC;QADmB,2BAAsB,GAAtB,sBAAsB,CAAqB;QAP9C,sBAAiB,GAAG;YAC5C,GAAG,EAAE,CAAI,IAAY,EAAE,YAAe,EAAK,EAAE,CACzC,IAAI,KAAK,0CAAqB,IAAI,IAAI,CAAC,sBAAsB,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,sBAA2B,CAAC,CAAC,CAAC,YAAY;SAC/G,CAAC;QAEJ,sBAAiB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,SAAS,EAAkC,CAAC;IAIhG,CAAC;IAEQ,sBAAsB,CAAC,KAAsB;QAClD,OAAO,KAAK,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAEQ,4CAA4C,CAAC,WAA8C;QAChG,OAAO,KAAK,CAAC,4CAA4C,CAAC,WAAW,CAAC,CAAC;IAC3E,CAAC;CACJ;AAED,QAAQ,CAAC,8DAA8D,EAAE,GAAG,EAAE;IAC1E,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACvD,IAAA,aAAM,EAAC,4CAAuB,CAAC,UAAU,CAAC,0CAAqB,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7F,CAAC,CAAC,CAAC;IAEH,KAAK,MAAM,eAAe,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;QACrD,EAAE,CAAC,QAAQ,eAAe,IAAI,IAAI,+CAA+C,eAAe,EAAE,EAAE,GAAG,EAAE;YACrG,MAAM,YAAY,GAAG,IAAI,yCAAyC,CAAC,eAAe,CAAC,CAAC;YACpF,MAAM,WAAW,GAAG,YAAY,CAAC,sBAAsB,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC1E,IAAA,aAAM,EAAC,WAAW,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,eAAe,IAAI,IAAI,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,KAAK,MAAM,aAAa,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;YACnD,EAAE,CAAC,QAAQ,aAAa,IAAI,KAAK,uBAAuB,aAAa,sCAAsC,eAAe,EAAE,EAAE,GAAG,EAAE;gBAC/H,MAAM,YAAY,GAAG,IAAI,yCAAyC,CAAC,eAAe,CAAC,CAAC;gBACpF,MAAM,UAAU,GAAoC,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,wBAAwB,EAAE,CAAC;gBAC7G,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;oBAC9B,UAAU,CAAC,cAAc,GAAG,aAAa,CAAC;gBAC9C,CAAC;gBACD,MAAM,YAAY,GAAG,YAAY,CAAC,4CAA4C,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;gBAC7F,IAAA,aAAM,EAAC,YAAY,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACzC,IAAA,aAAM,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,CAAC;YAC5E,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"openai-preferences.d.ts","sourceRoot":"","sources":["../../src/common/openai-preferences.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAuB,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpE,eAAO,MAAM,YAAY,4CAA4C,CAAC;AACtE,eAAO,MAAM,sBAAsB,sDAAsD,CAAC;AAC1F,eAAO,MAAM,oBAAoB,8CAA8C,CAAC;AAChF,eAAO,MAAM,qBAAqB,8CAA8C,CAAC;AACjF,eAAO,MAAM,2BAA2B,oDAAoD,CAAC;AAC7F,eAAO,MAAM,2CAA2C,kEAAkE,CAAC;AAC3H,eAAO,MAAM,qBAAqB,gDAAgD,CAAC;AAEnF,eAAO,MAAM,uBAAuB,EAAE,gBAqLrC,CAAC"}
1
+ {"version":3,"file":"openai-preferences.d.ts","sourceRoot":"","sources":["../../src/common/openai-preferences.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAuB,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpE,eAAO,MAAM,YAAY,4CAA4C,CAAC;AACtE,eAAO,MAAM,sBAAsB,sDAAsD,CAAC;AAC1F,eAAO,MAAM,oBAAoB,8CAA8C,CAAC;AAChF,eAAO,MAAM,qBAAqB,8CAA8C,CAAC;AACjF,eAAO,MAAM,2BAA2B,oDAAoD,CAAC;AAC7F,eAAO,MAAM,2CAA2C,kEAAkE,CAAC;AAC3H,eAAO,MAAM,qBAAqB,gDAAgD,CAAC;AAEnF,eAAO,MAAM,uBAAuB,EAAE,gBAuLrC,CAAC"}
@@ -54,7 +54,7 @@ on the machine running Theia. Use the environment variable `OPENAI_API_KEY` to s
54
54
  },
55
55
  [exports.USE_RESPONSE_API_PREF]: {
56
56
  type: 'boolean',
57
- default: false,
57
+ default: true,
58
58
  title: ai_core_preferences_1.AI_CORE_PREFERENCES_TITLE,
59
59
  markdownDescription: core_1.nls.localize('theia/ai/openai/useResponseApi/mdDescription', 'Use the newer OpenAI Response API instead of the Chat Completion API for official OpenAI models. ' +
60
60
  'This setting only applies to official OpenAI models - custom providers must configure this individually.')
@@ -110,7 +110,9 @@ on the machine running Theia. Use the environment variable `OPENAI_API_KEY` to s
110
110
  - specify `useResponseApi: true` to use the newer OpenAI Response API instead of the Chat Completion API (requires compatible endpoint).\
111
111
  \n\
112
112
  - specify `reasoningSupport` to opt in to the chat reasoning selector. Provide an object with\
113
- `supportedLevels` (e.g. `["off", "low", "medium", "high", "auto"]`) and an optional `defaultLevel`.\
113
+ `supportedLevels` (choices: `off`, `none`, `minimal`, `low`, `medium`, `high`, `xhigh`, `max`, `auto`) and an optional `defaultLevel`.\
114
+ `none` sends an explicit no-reasoning effort; `off` omits generated reasoning settings; `auto` uses the provider default effort.\
115
+ Only declare levels supported by your endpoint.\
114
116
  \n\
115
117
  - specify `headers` to send additional HTTP headers with every request to the endpoint, e.g. headers required by a gateway in front of the API.\
116
118
  \n\
@@ -172,12 +174,12 @@ on the machine running Theia. Use the environment variable `OPENAI_API_KEY` to s
172
174
  type: 'array',
173
175
  items: {
174
176
  type: 'string',
175
- enum: ['off', 'minimal', 'low', 'medium', 'high', 'auto']
177
+ enum: ['off', 'none', 'minimal', 'low', 'medium', 'high', 'xhigh', 'max', 'auto']
176
178
  }
177
179
  },
178
180
  defaultLevel: {
179
181
  type: 'string',
180
- enum: ['off', 'minimal', 'low', 'medium', 'high', 'auto']
182
+ enum: ['off', 'none', 'minimal', 'low', 'medium', 'high', 'xhigh', 'max', 'auto']
181
183
  }
182
184
  }
183
185
  },
@@ -1 +1 @@
1
- {"version":3,"file":"openai-preferences.js","sourceRoot":"","sources":["../../src/common/openai-preferences.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai-preferences.js","sourceRoot":"","sources":["../../src/common/openai-preferences.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import { ContainerModule } from '@theia/core/shared/inversify';
2
- export declare const OpenAiModelFactory: unique symbol;
3
2
  declare const _default: ContainerModule;
4
3
  export default _default;
5
4
  //# sourceMappingURL=openai-backend-module.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai-backend-module.d.ts","sourceRoot":"","sources":["../../src/node/openai-backend-module.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAS/D,eAAO,MAAM,kBAAkB,eAA+B,CAAC;;AAW/D,wBAKG"}
1
+ {"version":3,"file":"openai-backend-module.d.ts","sourceRoot":"","sources":["../../src/node/openai-backend-module.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAa,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AAiC1E,wBAcG"}
@@ -15,26 +15,40 @@
15
15
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.OpenAiModelFactory = void 0;
19
18
  const inversify_1 = require("@theia/core/shared/inversify");
20
19
  const openai_language_models_manager_1 = require("../common/openai-language-models-manager");
21
20
  const core_1 = require("@theia/core");
22
21
  const openai_language_models_manager_impl_1 = require("./openai-language-models-manager-impl");
23
22
  const connection_container_module_1 = require("@theia/core/lib/node/messaging/connection-container-module");
24
23
  const openai_language_model_1 = require("./openai-language-model");
24
+ const openai_model_utils_1 = require("./openai-model-utils");
25
+ const openai_chat_completion_stream_1 = require("./openai-chat-completion-stream");
25
26
  const openai_response_api_utils_1 = require("./openai-response-api-utils");
26
27
  const openai_preferences_1 = require("../common/openai-preferences");
27
- exports.OpenAiModelFactory = Symbol('OpenAiModelFactory');
28
28
  // We use a connection module to handle AI services separately for each frontend.
29
29
  const openAiConnectionModule = connection_container_module_1.ConnectionContainerModule.create(({ bind, bindBackendService, bindFrontendService }) => {
30
30
  bind(openai_language_models_manager_impl_1.OpenAiLanguageModelsManagerImpl).toSelf().inSingletonScope();
31
31
  bind(openai_language_models_manager_1.OpenAiLanguageModelsManager).toService(openai_language_models_manager_impl_1.OpenAiLanguageModelsManagerImpl);
32
+ bind(openai_language_model_1.OpenAiModel).toSelf().inTransientScope();
33
+ bind(openai_language_model_1.OpenAiLanguageModelFactory).toFactory(({ container }) => params => {
34
+ const child = new inversify_1.Container();
35
+ child.parent = container;
36
+ child.bind(openai_language_model_1.OpenAiModelParams).toConstantValue(params);
37
+ return child.get(openai_language_model_1.OpenAiModel);
38
+ });
32
39
  bind(core_1.ConnectionHandler).toDynamicValue(ctx => new core_1.RpcConnectionHandler(openai_language_models_manager_1.OPENAI_LANGUAGE_MODELS_MANAGER_PATH, () => ctx.container.get(openai_language_models_manager_1.OpenAiLanguageModelsManager))).inSingletonScope();
33
40
  });
34
41
  exports.default = new inversify_1.ContainerModule(bind => {
35
42
  bind(core_1.PreferenceContribution).toConstantValue({ schema: openai_preferences_1.OpenAiPreferencesSchema });
36
- bind(openai_language_model_1.OpenAiModelUtils).toSelf().inSingletonScope();
43
+ bind(openai_model_utils_1.OpenAiModelUtils).toSelf().inSingletonScope();
37
44
  bind(openai_response_api_utils_1.OpenAiResponseApiUtils).toSelf().inSingletonScope();
45
+ bind(openai_chat_completion_stream_1.ChatCompletionStreamingAsyncIterator).toSelf().inTransientScope();
46
+ bind(openai_chat_completion_stream_1.ChatCompletionStreamingAsyncIteratorFactory).toFactory(({ container }) => options => {
47
+ const child = new inversify_1.Container();
48
+ child.parent = container;
49
+ child.bind(openai_chat_completion_stream_1.ChatCompletionToolLoopOptions).toConstantValue(options);
50
+ return child.get(openai_chat_completion_stream_1.ChatCompletionStreamingAsyncIterator);
51
+ });
38
52
  bind(connection_container_module_1.ConnectionContainerModule).toConstantValue(openAiConnectionModule);
39
53
  });
40
54
  //# sourceMappingURL=openai-backend-module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai-backend-module.js","sourceRoot":"","sources":["../../src/node/openai-backend-module.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,4DAA+D;AAC/D,6FAA4H;AAC5H,sCAA8F;AAC9F,+FAAwF;AACxF,4GAAuG;AACvG,mEAA2D;AAC3D,2EAAqE;AACrE,qEAAuE;AAE1D,QAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAE/D,iFAAiF;AACjF,MAAM,sBAAsB,GAAG,uDAAyB,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,EAAE,EAAE;IAClH,IAAI,CAAC,qEAA+B,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAClE,IAAI,CAAC,4DAA2B,CAAC,CAAC,SAAS,CAAC,qEAA+B,CAAC,CAAC;IAC7E,IAAI,CAAC,wBAAiB,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CACzC,IAAI,2BAAoB,CAAC,oEAAmC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,4DAA2B,CAAC,CAAC,CACtH,CAAC,gBAAgB,EAAE,CAAC;AACzB,CAAC,CAAC,CAAC;AAEH,kBAAe,IAAI,2BAAe,CAAC,IAAI,CAAC,EAAE;IACtC,IAAI,CAAC,6BAAsB,CAAC,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,4CAAuB,EAAE,CAAC,CAAC;IAClF,IAAI,CAAC,wCAAgB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACnD,IAAI,CAAC,kDAAsB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACzD,IAAI,CAAC,uDAAyB,CAAC,CAAC,eAAe,CAAC,sBAAsB,CAAC,CAAC;AAC5E,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"openai-backend-module.js","sourceRoot":"","sources":["../../src/node/openai-backend-module.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAEhF,4DAA0E;AAC1E,6FAA4H;AAC5H,sCAA8F;AAC9F,+FAAwF;AACxF,4GAAuG;AACvG,mEAAqG;AACrG,6DAAwD;AACxD,mFAIyC;AACzC,2EAAqE;AACrE,qEAAuE;AAEvE,iFAAiF;AACjF,MAAM,sBAAsB,GAAG,uDAAyB,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,EAAE,EAAE;IAClH,IAAI,CAAC,qEAA+B,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAClE,IAAI,CAAC,4DAA2B,CAAC,CAAC,SAAS,CAAC,qEAA+B,CAAC,CAAC;IAC7E,IAAI,CAAC,mCAAW,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAC9C,IAAI,CAAC,kDAA0B,CAAC,CAAC,SAAS,CACtC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE;QACxB,MAAM,KAAK,GAAG,IAAI,qBAAS,EAAE,CAAC;QAC9B,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,yCAAiB,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACtD,OAAO,KAAK,CAAC,GAAG,CAAC,mCAAW,CAAC,CAAC;IAClC,CAAC,CACJ,CAAC;IACF,IAAI,CAAC,wBAAiB,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CACzC,IAAI,2BAAoB,CAAC,oEAAmC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,4DAA2B,CAAC,CAAC,CACtH,CAAC,gBAAgB,EAAE,CAAC;AACzB,CAAC,CAAC,CAAC;AAEH,kBAAe,IAAI,2BAAe,CAAC,IAAI,CAAC,EAAE;IACtC,IAAI,CAAC,6BAAsB,CAAC,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,4CAAuB,EAAE,CAAC,CAAC;IAClF,IAAI,CAAC,qCAAgB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACnD,IAAI,CAAC,kDAAsB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACzD,IAAI,CAAC,oEAAoC,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACvE,IAAI,CAAC,2EAA2C,CAAC,CAAC,SAAS,CACvD,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE;QACzB,MAAM,KAAK,GAAG,IAAI,qBAAS,EAAE,CAAC;QAC9B,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,6DAA6B,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACnE,OAAO,KAAK,CAAC,GAAG,CAAC,oEAAoC,CAAC,CAAC;IAC3D,CAAC,CACJ,CAAC;IACF,IAAI,CAAC,uDAAyB,CAAC,CAAC,eAAe,CAAC,sBAAsB,CAAC,CAAC;AAC5E,CAAC,CAAC,CAAC"}
@@ -0,0 +1,74 @@
1
+ import { ToolCallExecutor, ToolCallResult, UserRequest } from '@theia/ai-core';
2
+ import { CancellationToken, ILogger } from '@theia/core';
3
+ import { OpenAI } from 'openai';
4
+ import { AbstractStreamingResponseIterator } from './streaming-response-iterator';
5
+ import { ChatCompletionChunk, ChatCompletionMessageParam, ChatCompletionTool } from 'openai/resources';
6
+ /** Accumulator for a single tool call streamed across multiple chunk deltas (keyed by `index`). */
7
+ interface CollectedToolCall {
8
+ index: number;
9
+ id: string;
10
+ name: string;
11
+ arguments: string;
12
+ /** Whether the `finished: false` "open" part has already been emitted for this call. */
13
+ opened: boolean;
14
+ }
15
+ export declare const ChatCompletionToolLoopOptions: unique symbol;
16
+ export interface ChatCompletionToolLoopOptions {
17
+ readonly openai: OpenAI;
18
+ readonly model: string;
19
+ /** The originating request; its `tools` carry the actual handlers to invoke. */
20
+ readonly request: UserRequest;
21
+ /** The already-processed messages that seed the conversation. */
22
+ readonly messages: ChatCompletionMessageParam[];
23
+ /** Additional request settings (may include `stream_options`, temperature, etc.). */
24
+ readonly settings: Record<string, unknown>;
25
+ readonly tools: ChatCompletionTool[];
26
+ readonly maxRetries: number;
27
+ readonly cancellationToken?: CancellationToken;
28
+ }
29
+ /**
30
+ * Drives a multi-turn OpenAI Chat Completions conversation with tool calling, executing the tool
31
+ * calls of each turn **concurrently** via {@link ToolCallExecutor}.
32
+ *
33
+ * This replaces the OpenAI SDK's `chat.completions.runTools(...)` runner, whose built-in tool loop
34
+ * executes tool calls strictly sequentially. By driving the raw chunk stream
35
+ * (`chat.completions.create({ stream: true })`) ourselves, multiple tool calls emitted in a single
36
+ * model turn (e.g. parallel agent delegations) run in parallel.
37
+ */
38
+ export declare class ChatCompletionStreamingAsyncIterator extends AbstractStreamingResponseIterator {
39
+ protected messages: ChatCompletionMessageParam[];
40
+ /**
41
+ * Aborts the provider request. Its signal is handed to every `create()` call, so that it covers the
42
+ * request while it is still in flight just as well as the chunk stream that it eventually yields.
43
+ * The OpenAI SDK forwards the abort to the stream's own controller.
44
+ */
45
+ protected readonly abortController: AbortController;
46
+ protected readonly options: ChatCompletionToolLoopOptions;
47
+ protected readonly toolCallExecutor: ToolCallExecutor;
48
+ protected readonly logger: ILogger;
49
+ protected init(): void;
50
+ protected get cancellationRequested(): boolean;
51
+ /**
52
+ * Aborts the active provider stream and immediately terminates the iterator, so a `next()` call pending on
53
+ * tool execution (which is only cooperatively cancelled via the token forwarded to handlers) settles promptly
54
+ * instead of stalling until an uninterruptible handler eventually finishes.
55
+ */
56
+ protected cancel(): void;
57
+ protected startIteration(): Promise<void>;
58
+ /** Streams a single completion, emitting text/tool-call parts and collecting the turn's tool calls. */
59
+ protected processStream(): Promise<{
60
+ assistantText: string;
61
+ toolCalls: CollectedToolCall[];
62
+ }>;
63
+ protected collectToolCallDelta(collected: Map<number, CollectedToolCall>, toolCallDelta: ChatCompletionChunk.Choice.Delta.ToolCall): void;
64
+ protected executeAndAppendToolCalls(assistantText: string, toolCalls: CollectedToolCall[]): Promise<void>;
65
+ protected formatToolResult(result: ToolCallResult): string;
66
+ }
67
+ export declare const ChatCompletionStreamingAsyncIteratorFactory: unique symbol;
68
+ /**
69
+ * Creates the iterator that drives a tool-calling chat-completion turn. Rebind in the DI container
70
+ * to substitute a customized {@link ChatCompletionStreamingAsyncIterator} implementation.
71
+ */
72
+ export type ChatCompletionStreamingAsyncIteratorFactory = (options: ChatCompletionToolLoopOptions) => ChatCompletionStreamingAsyncIterator;
73
+ export {};
74
+ //# sourceMappingURL=openai-chat-completion-stream.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openai-chat-completion-stream.d.ts","sourceRoot":"","sources":["../../src/node/openai-chat-completion-stream.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAiC,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC9G,OAAO,EAAqB,iBAAiB,EAAc,OAAO,EAAE,MAAM,aAAa,CAAC;AAExF,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,iCAAiC,EAAE,MAAM,+BAA+B,CAAC;AAClF,OAAO,EAEH,mBAAmB,EAEnB,0BAA0B,EAC1B,kBAAkB,EACrB,MAAM,kBAAkB,CAAC;AAK1B,mGAAmG;AACnG,UAAU,iBAAiB;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,wFAAwF;IACxF,MAAM,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,6BAA6B,eAA0C,CAAC;AAErF,MAAM,WAAW,6BAA6B;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,gFAAgF;IAChF,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,iEAAiE;IACjE,QAAQ,CAAC,QAAQ,EAAE,0BAA0B,EAAE,CAAC;IAChD,qFAAqF;IACrF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,QAAQ,CAAC,KAAK,EAAE,kBAAkB,EAAE,CAAC;IACrC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CAClD;AAED;;;;;;;;GAQG;AACH,qBACa,oCAAqC,SAAQ,iCAAiC;IAEvF,SAAS,CAAC,QAAQ,EAAE,0BAA0B,EAAE,CAAC;IAEjD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,eAAe,kBAAyB;IAG3D,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,6BAA6B,CAAC;IAG1D,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAGnC,SAAS,CAAC,IAAI,IAAI,IAAI;IAWtB,SAAS,KAAK,qBAAqB,IAAI,OAAO,CAE7C;IAED;;;;OAIG;IACH,SAAS,CAAC,MAAM,IAAI,IAAI;cASR,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAiC/C,uGAAuG;cACvF,aAAa,IAAI,OAAO,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,iBAAiB,EAAE,CAAA;KAAE,CAAC;IAkDnG,SAAS,CAAC,oBAAoB,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,EAAE,aAAa,EAAE,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI;cA2BzH,yBAAyB,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiC/G,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM;CAI7D;AAED,eAAO,MAAM,2CAA2C,eAAwD,CAAC;AACjH;;;GAGG;AACH,MAAM,MAAM,2CAA2C,GACnD,CAAC,OAAO,EAAE,6BAA6B,KAAK,oCAAoC,CAAC"}
@@ -0,0 +1,231 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 EclipseSource GmbH and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.ChatCompletionStreamingAsyncIteratorFactory = exports.ChatCompletionStreamingAsyncIterator = exports.ChatCompletionToolLoopOptions = void 0;
19
+ const tslib_1 = require("tslib");
20
+ const ai_core_1 = require("@theia/ai-core");
21
+ const core_1 = require("@theia/core");
22
+ const inversify_1 = require("@theia/core/shared/inversify");
23
+ const streaming_response_iterator_1 = require("./streaming-response-iterator");
24
+ exports.ChatCompletionToolLoopOptions = Symbol('ChatCompletionToolLoopOptions');
25
+ /**
26
+ * Drives a multi-turn OpenAI Chat Completions conversation with tool calling, executing the tool
27
+ * calls of each turn **concurrently** via {@link ToolCallExecutor}.
28
+ *
29
+ * This replaces the OpenAI SDK's `chat.completions.runTools(...)` runner, whose built-in tool loop
30
+ * executes tool calls strictly sequentially. By driving the raw chunk stream
31
+ * (`chat.completions.create({ stream: true })`) ourselves, multiple tool calls emitted in a single
32
+ * model turn (e.g. parallel agent delegations) run in parallel.
33
+ */
34
+ let ChatCompletionStreamingAsyncIterator = class ChatCompletionStreamingAsyncIterator extends streaming_response_iterator_1.AbstractStreamingResponseIterator {
35
+ constructor() {
36
+ super(...arguments);
37
+ /**
38
+ * Aborts the provider request. Its signal is handed to every `create()` call, so that it covers the
39
+ * request while it is still in flight just as well as the chunk stream that it eventually yields.
40
+ * The OpenAI SDK forwards the abort to the stream's own controller.
41
+ */
42
+ this.abortController = new AbortController();
43
+ }
44
+ init() {
45
+ this.messages = [...this.options.messages];
46
+ // Abort the provider request whenever the iterator terminates, including when the consumer
47
+ // abandons it (`return()`), so that we never leave a request running for nobody.
48
+ this.toDispose.push(core_1.Disposable.create(() => this.abortController.abort()));
49
+ if (this.options.cancellationToken) {
50
+ this.toDispose.push(this.options.cancellationToken.onCancellationRequested(() => this.cancel()));
51
+ }
52
+ this.startIteration();
53
+ }
54
+ get cancellationRequested() {
55
+ return !!this.options.cancellationToken?.isCancellationRequested;
56
+ }
57
+ /**
58
+ * Aborts the active provider stream and immediately terminates the iterator, so a `next()` call pending on
59
+ * tool execution (which is only cooperatively cancelled via the token forwarded to handlers) settles promptly
60
+ * instead of stalling until an uninterruptible handler eventually finishes.
61
+ */
62
+ cancel() {
63
+ if (this.done) {
64
+ // Already terminated: `dispose()` has aborted the request.
65
+ return;
66
+ }
67
+ this.terminalError = new core_1.CancellationError();
68
+ this.dispose();
69
+ }
70
+ async startIteration() {
71
+ try {
72
+ while (!this.done && !this.cancellationRequested) {
73
+ const { assistantText, toolCalls } = await this.processStream();
74
+ if (this.done || this.cancellationRequested) {
75
+ // Cancelled or abandoned while the stream was wrapping up: don't start executing the
76
+ // collected tool calls.
77
+ break;
78
+ }
79
+ if (toolCalls.length === 0) {
80
+ // No tool calls: the conversation is complete.
81
+ this.dispose();
82
+ return;
83
+ }
84
+ await this.executeAndAppendToolCalls(assistantText, toolCalls);
85
+ }
86
+ // Cancelled or abandoned before the model stopped requesting tools. `cancel()` (via the cancellation
87
+ // listener) or `return()` has already disposed the iterator; this is a no-op unless cancellation was
88
+ // observed some other way.
89
+ this.dispose();
90
+ }
91
+ catch (error) {
92
+ if (this.cancellationRequested) {
93
+ this.terminalError = new core_1.CancellationError();
94
+ }
95
+ else if (!this.done) {
96
+ this.logger.error('Error in OpenAI chat completion stream:', error);
97
+ this.terminalError = error instanceof Error ? error : new Error(String(error));
98
+ }
99
+ // Otherwise the iterator was already terminated and the error is just the fall-out of the
100
+ // abort that `dispose()` triggered, so there is nobody left to report it to.
101
+ this.dispose();
102
+ }
103
+ }
104
+ /** Streams a single completion, emitting text/tool-call parts and collecting the turn's tool calls. */
105
+ async processStream() {
106
+ const collected = new Map();
107
+ let assistantText = '';
108
+ const body = {
109
+ model: this.options.model,
110
+ messages: this.messages,
111
+ stream: true,
112
+ tools: this.options.tools,
113
+ tool_choice: 'auto',
114
+ ...this.options.settings
115
+ };
116
+ const stream = await this.options.openai.chat.completions.create(body, {
117
+ maxRetries: this.options.maxRetries,
118
+ signal: this.abortController.signal
119
+ });
120
+ for await (const chunk of stream) {
121
+ if (this.done || this.cancellationRequested) {
122
+ break;
123
+ }
124
+ if (chunk.usage) {
125
+ const inputTokens = chunk.usage.prompt_tokens || 0;
126
+ const outputTokens = chunk.usage.completion_tokens || 0;
127
+ if (inputTokens > 0 || outputTokens > 0) {
128
+ this.handleIncoming({ input_tokens: inputTokens, output_tokens: outputTokens });
129
+ }
130
+ }
131
+ const delta = chunk.choices[0]?.delta;
132
+ if (!delta) {
133
+ continue;
134
+ }
135
+ // Some providers stream reasoning tokens on the delta; surface them as thoughts.
136
+ const reasoning = delta.reasoning
137
+ ?? delta.reasoning_content;
138
+ if (reasoning) {
139
+ this.handleIncoming({ thought: reasoning, signature: '' });
140
+ }
141
+ if (delta.content) {
142
+ assistantText += delta.content;
143
+ this.handleIncoming({ content: delta.content });
144
+ }
145
+ for (const toolCallDelta of delta.tool_calls ?? []) {
146
+ this.collectToolCallDelta(collected, toolCallDelta);
147
+ }
148
+ }
149
+ return { assistantText, toolCalls: [...collected.values()].sort((a, b) => a.index - b.index) };
150
+ }
151
+ collectToolCallDelta(collected, toolCallDelta) {
152
+ let slot = collected.get(toolCallDelta.index);
153
+ if (!slot) {
154
+ slot = { index: toolCallDelta.index, id: toolCallDelta.id ?? '', name: '', arguments: '', opened: false };
155
+ collected.set(toolCallDelta.index, slot);
156
+ }
157
+ if (toolCallDelta.id && !slot.id) {
158
+ slot.id = toolCallDelta.id;
159
+ }
160
+ if (toolCallDelta.function?.name) {
161
+ slot.name += toolCallDelta.function.name;
162
+ }
163
+ // Open the tool call (emit a `finished: false` part) once we know both its ID and name. `merge` on the
164
+ // receiving `ToolCallChatResponseContentImpl` never updates the name afterwards, so opening early with an
165
+ // empty name would leave the call nameless for good.
166
+ if (!slot.opened && slot.id && slot.name) {
167
+ slot.opened = true;
168
+ this.handleIncoming({ tool_calls: [{ id: slot.id, finished: false, function: { name: slot.name, arguments: '' } }] });
169
+ }
170
+ if (toolCallDelta.function?.arguments) {
171
+ slot.arguments += toolCallDelta.function.arguments;
172
+ if (slot.opened) {
173
+ this.handleIncoming({ tool_calls: [{ id: slot.id, argumentsDelta: true, function: { arguments: toolCallDelta.function.arguments } }] });
174
+ }
175
+ }
176
+ }
177
+ async executeAndAppendToolCalls(assistantText, toolCalls) {
178
+ const results = await this.toolCallExecutor.executeToolCalls(toolCalls.map(toolCall => ({ id: toolCall.id, name: toolCall.name, arguments: toolCall.arguments || '{}' })), this.options.request.tools, { cancellationToken: this.options.cancellationToken });
179
+ // Emit the finished tool calls (in stable input order).
180
+ for (const result of results) {
181
+ this.handleIncoming({
182
+ tool_calls: [{ id: result.id, finished: true, function: { name: result.name, arguments: result.arguments }, result: result.result }]
183
+ });
184
+ }
185
+ // Append the assistant turn and the tool results so the next completion sees them.
186
+ // Every assistant tool_call must be paired with a tool message that has the same ID.
187
+ const assistantMessage = {
188
+ role: 'assistant',
189
+ tool_calls: toolCalls.map(toolCall => ({
190
+ id: toolCall.id,
191
+ type: 'function',
192
+ function: { name: toolCall.name, arguments: toolCall.arguments || '{}' }
193
+ }))
194
+ };
195
+ if (assistantText) {
196
+ assistantMessage.content = assistantText;
197
+ }
198
+ this.messages.push(assistantMessage);
199
+ for (const result of results) {
200
+ this.messages.push({ role: 'tool', tool_call_id: result.id, content: this.formatToolResult(result.result) });
201
+ }
202
+ }
203
+ formatToolResult(result) {
204
+ return result === undefined ? '' : (0, ai_core_1.formatToolCallContentForModel)(result);
205
+ }
206
+ };
207
+ exports.ChatCompletionStreamingAsyncIterator = ChatCompletionStreamingAsyncIterator;
208
+ tslib_1.__decorate([
209
+ (0, inversify_1.inject)(exports.ChatCompletionToolLoopOptions),
210
+ tslib_1.__metadata("design:type", Object)
211
+ ], ChatCompletionStreamingAsyncIterator.prototype, "options", void 0);
212
+ tslib_1.__decorate([
213
+ (0, inversify_1.inject)(ai_core_1.ToolCallExecutor),
214
+ tslib_1.__metadata("design:type", Object)
215
+ ], ChatCompletionStreamingAsyncIterator.prototype, "toolCallExecutor", void 0);
216
+ tslib_1.__decorate([
217
+ (0, inversify_1.inject)(core_1.ILogger),
218
+ (0, inversify_1.named)('ai-openai:ChatCompletionStreamingAsyncIterator'),
219
+ tslib_1.__metadata("design:type", Object)
220
+ ], ChatCompletionStreamingAsyncIterator.prototype, "logger", void 0);
221
+ tslib_1.__decorate([
222
+ (0, inversify_1.postConstruct)(),
223
+ tslib_1.__metadata("design:type", Function),
224
+ tslib_1.__metadata("design:paramtypes", []),
225
+ tslib_1.__metadata("design:returntype", void 0)
226
+ ], ChatCompletionStreamingAsyncIterator.prototype, "init", null);
227
+ exports.ChatCompletionStreamingAsyncIterator = ChatCompletionStreamingAsyncIterator = tslib_1.__decorate([
228
+ (0, inversify_1.injectable)()
229
+ ], ChatCompletionStreamingAsyncIterator);
230
+ exports.ChatCompletionStreamingAsyncIteratorFactory = Symbol('ChatCompletionStreamingAsyncIteratorFactory');
231
+ //# sourceMappingURL=openai-chat-completion-stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openai-chat-completion-stream.js","sourceRoot":"","sources":["../../src/node/openai-chat-completion-stream.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=openai-chat-completion-stream.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openai-chat-completion-stream.spec.d.ts","sourceRoot":"","sources":["../../src/node/openai-chat-completion-stream.spec.ts"],"names":[],"mappings":""}