@launchdarkly/server-sdk-ai 0.9.8 → 0.10.0

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 (64) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/__tests__/LDAIClientImpl.test.ts +3 -0
  3. package/__tests__/LDAIConfigMapper.test.ts +159 -0
  4. package/__tests__/LDAIConfigTrackerImpl.test.ts +445 -0
  5. package/__tests__/TokenUsage.test.ts +43 -2
  6. package/dist/LDAIClientImpl.d.ts.map +1 -1
  7. package/dist/LDAIClientImpl.js +3 -1
  8. package/dist/LDAIClientImpl.js.map +1 -1
  9. package/dist/LDAIConfigMapper.d.ts +10 -0
  10. package/dist/LDAIConfigMapper.d.ts.map +1 -0
  11. package/dist/LDAIConfigMapper.js +54 -0
  12. package/dist/LDAIConfigMapper.js.map +1 -0
  13. package/dist/LDAIConfigTrackerImpl.d.ts +15 -0
  14. package/dist/LDAIConfigTrackerImpl.d.ts.map +1 -1
  15. package/dist/LDAIConfigTrackerImpl.js +51 -2
  16. package/dist/LDAIConfigTrackerImpl.js.map +1 -1
  17. package/dist/api/config/LDAIConfig.d.ts +16 -3
  18. package/dist/api/config/LDAIConfig.d.ts.map +1 -1
  19. package/dist/api/config/LDAIConfigTracker.d.ts +39 -0
  20. package/dist/api/config/LDAIConfigTracker.d.ts.map +1 -1
  21. package/dist/api/config/VercelAISDK.d.ts +18 -0
  22. package/dist/api/config/VercelAISDK.d.ts.map +1 -0
  23. package/dist/api/config/VercelAISDK.js +3 -0
  24. package/dist/api/config/VercelAISDK.js.map +1 -0
  25. package/dist/api/config/index.d.ts +1 -0
  26. package/dist/api/config/index.d.ts.map +1 -1
  27. package/dist/api/config/index.js +1 -0
  28. package/dist/api/config/index.js.map +1 -1
  29. package/dist/api/metrics/VercelAISDKTokenUsage.d.ts +7 -0
  30. package/dist/api/metrics/VercelAISDKTokenUsage.d.ts.map +1 -0
  31. package/dist/api/metrics/VercelAISDKTokenUsage.js +13 -0
  32. package/dist/api/metrics/VercelAISDKTokenUsage.js.map +1 -0
  33. package/dist/api/metrics/index.d.ts +2 -0
  34. package/dist/api/metrics/index.d.ts.map +1 -1
  35. package/dist/api/metrics/index.js +2 -0
  36. package/dist/api/metrics/index.js.map +1 -1
  37. package/docs/assets/search.js +1 -1
  38. package/docs/enums/LDFeedbackKind.html +11 -6
  39. package/docs/functions/createBedrockTokenUsage.html +9 -4
  40. package/docs/functions/createOpenAiUsage.html +73 -0
  41. package/docs/functions/createVercelAISDKTokenUsage.html +73 -0
  42. package/docs/functions/initAi.html +9 -4
  43. package/docs/index.html +14 -4
  44. package/docs/interfaces/LDAIClient.html +10 -5
  45. package/docs/interfaces/LDAIConfig.html +53 -9
  46. package/docs/interfaces/LDAIConfigTracker.html +92 -15
  47. package/docs/interfaces/LDMessage.html +11 -6
  48. package/docs/interfaces/LDModelConfig.html +12 -7
  49. package/docs/interfaces/LDProviderConfig.html +11 -6
  50. package/docs/interfaces/LDTokenUsage.html +12 -7
  51. package/docs/interfaces/VercelAISDKConfig.html +149 -0
  52. package/docs/interfaces/VercelAISDKMapOptions.html +81 -0
  53. package/docs/types/LDAIDefaults.html +11 -6
  54. package/docs/types/VercelAISDKProvider.html +75 -0
  55. package/package.json +2 -2
  56. package/src/LDAIClientImpl.ts +21 -3
  57. package/src/LDAIConfigMapper.ts +64 -0
  58. package/src/LDAIConfigTrackerImpl.ts +73 -2
  59. package/src/api/config/LDAIConfig.ts +20 -3
  60. package/src/api/config/LDAIConfigTracker.ts +49 -0
  61. package/src/api/config/VercelAISDK.ts +20 -0
  62. package/src/api/config/index.ts +1 -0
  63. package/src/api/metrics/VercelAISDKTokenUsage.ts +13 -0
  64. package/src/api/metrics/index.ts +2 -0
@@ -1,5 +1,8 @@
1
- import { createBedrockTokenUsage } from '../src/api/metrics/BedrockTokenUsage';
2
- import { createOpenAiUsage } from '../src/api/metrics/OpenAiUsage';
1
+ import {
2
+ createBedrockTokenUsage,
3
+ createOpenAiUsage,
4
+ createVercelAISDKTokenUsage,
5
+ } from '../src/api/metrics';
3
6
 
4
7
  it('createBedrockTokenUsage should create token usage with all values provided', () => {
5
8
  const usage = createBedrockTokenUsage({
@@ -76,3 +79,41 @@ it('createOpenAiUsage should handle explicitly undefined values', () => {
76
79
  output: 0,
77
80
  });
78
81
  });
82
+
83
+ it('createVercelAISDKTokenUsage should create token usage with all values provided', () => {
84
+ const usage = createVercelAISDKTokenUsage({
85
+ totalTokens: 100,
86
+ promptTokens: 40,
87
+ completionTokens: 60,
88
+ });
89
+
90
+ expect(usage).toEqual({
91
+ total: 100,
92
+ input: 40,
93
+ output: 60,
94
+ });
95
+ });
96
+
97
+ it('createVercelAISDKTokenUsage should default to 0 for missing values', () => {
98
+ const usage = createVercelAISDKTokenUsage({});
99
+
100
+ expect(usage).toEqual({
101
+ total: 0,
102
+ input: 0,
103
+ output: 0,
104
+ });
105
+ });
106
+
107
+ it('createVercelAISDKTokenUsage should handle explicitly undefined values', () => {
108
+ const usage = createVercelAISDKTokenUsage({
109
+ totalTokens: undefined,
110
+ promptTokens: 40,
111
+ completionTokens: undefined,
112
+ });
113
+
114
+ expect(usage).toEqual({
115
+ total: 0,
116
+ input: 40,
117
+ output: 0,
118
+ });
119
+ });
@@ -1 +1 @@
1
- {"version":3,"file":"LDAIClientImpl.d.ts","sourceRoot":"","sources":["../src/LDAIClientImpl.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAE/D,OAAO,EAAE,UAAU,EAAE,YAAY,EAA8C,MAAM,cAAc,CAAC;AACpG,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAsB5C,qBAAa,cAAe,YAAW,UAAU;IACnC,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,WAAW;IAE1C,OAAO,CAAC,oBAAoB;IAItB,MAAM,CACV,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,SAAS,EAClB,YAAY,EAAE,YAAY,EAC1B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,OAAO,CAAC,UAAU,CAAC;CAoCvB"}
1
+ {"version":3,"file":"LDAIClientImpl.d.ts","sourceRoot":"","sources":["../src/LDAIClientImpl.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAE/D,OAAO,EACL,UAAU,EACV,YAAY,EAOb,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAsB5C,qBAAa,cAAe,YAAW,UAAU;IACnC,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,WAAW;IAE1C,OAAO,CAAC,oBAAoB;IAItB,MAAM,CACV,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,SAAS,EAClB,YAAY,EAAE,YAAY,EAC1B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,OAAO,CAAC,UAAU,CAAC;CA4CvB"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LDAIClientImpl = void 0;
4
4
  const Mustache = require("mustache");
5
+ const LDAIConfigMapper_1 = require("./LDAIConfigMapper");
5
6
  const LDAIConfigTrackerImpl_1 = require("./LDAIConfigTrackerImpl");
6
7
  class LDAIClientImpl {
7
8
  constructor(_ldClient) {
@@ -36,7 +37,8 @@ class LDAIClientImpl {
36
37
  if (value.messages) {
37
38
  config.messages = value.messages.map((entry) => (Object.assign(Object.assign({}, entry), { content: this._interpolateTemplate(entry.content, allVariables) })));
38
39
  }
39
- return config;
40
+ const mapper = new LDAIConfigMapper_1.LDAIConfigMapper(config.model, config.provider, config.messages);
41
+ return Object.assign(Object.assign({}, config), { toVercelAISDK: (provider, options) => mapper.toVercelAISDK(provider, options) });
40
42
  }
41
43
  }
42
44
  exports.LDAIClientImpl = LDAIClientImpl;
@@ -1 +1 @@
1
- {"version":3,"file":"LDAIClientImpl.js","sourceRoot":"","sources":["../src/LDAIClientImpl.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AAMrC,mEAAgE;AAuBhE,MAAa,cAAc;IACzB,YAAoB,SAAsB;QAAtB,cAAS,GAAT,SAAS,CAAa;IAAG,CAAC;IAEtC,oBAAoB,CAAC,QAAgB,EAAE,SAAkC;QAC/E,OAAO,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1F,CAAC;IAED,KAAK,CAAC,MAAM,CACV,GAAW,EACX,OAAkB,EAClB,YAA0B,EAC1B,SAAmC;;QAEnC,MAAM,KAAK,GAAqB,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;QAC3F,MAAM,OAAO,GAAG,IAAI,6CAAqB,CACvC,IAAI,CAAC,SAAS,EACd,GAAG;QACH,gDAAgD;QAChD,MAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,YAAY,mCAAI,EAAE;QACjC,gDAAgD;QAChD,MAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,OAAO,mCAAI,CAAC,EAC3B,OAAO,CACR,CAAC;QACF,gDAAgD;QAChD,MAAM,OAAO,GAAG,CAAC,CAAC,CAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,OAAO,CAAA,CAAC;QACzC,MAAM,MAAM,GAAe;YACzB,OAAO;YACP,OAAO;SACR,CAAC;QACF,gFAAgF;QAChF,+FAA+F;QAC/F,IAAI,KAAK,CAAC,KAAK,EAAE;YACf,MAAM,CAAC,KAAK,qBAAQ,KAAK,CAAC,KAAK,CAAE,CAAC;SACnC;QACD,IAAI,KAAK,CAAC,QAAQ,EAAE;YAClB,MAAM,CAAC,QAAQ,qBAAQ,KAAK,CAAC,QAAQ,CAAE,CAAC;SACzC;QACD,MAAM,YAAY,mCAAQ,SAAS,KAAE,KAAK,EAAE,OAAO,GAAE,CAAC;QAEtD,IAAI,KAAK,CAAC,QAAQ,EAAE;YAClB,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,iCAChD,KAAK,KACR,OAAO,EAAE,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,IAC/D,CAAC,CAAC;SACL;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAhDD,wCAgDC"}
1
+ {"version":3,"file":"LDAIClientImpl.js","sourceRoot":"","sources":["../src/LDAIClientImpl.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AAerC,yDAAsD;AACtD,mEAAgE;AAuBhE,MAAa,cAAc;IACzB,YAAoB,SAAsB;QAAtB,cAAS,GAAT,SAAS,CAAa;IAAG,CAAC;IAEtC,oBAAoB,CAAC,QAAgB,EAAE,SAAkC;QAC/E,OAAO,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1F,CAAC;IAED,KAAK,CAAC,MAAM,CACV,GAAW,EACX,OAAkB,EAClB,YAA0B,EAC1B,SAAmC;;QAEnC,MAAM,KAAK,GAAqB,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;QAC3F,MAAM,OAAO,GAAG,IAAI,6CAAqB,CACvC,IAAI,CAAC,SAAS,EACd,GAAG;QACH,gDAAgD;QAChD,MAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,YAAY,mCAAI,EAAE;QACjC,gDAAgD;QAChD,MAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,OAAO,mCAAI,CAAC,EAC3B,OAAO,CACR,CAAC;QACF,gDAAgD;QAChD,MAAM,OAAO,GAAG,CAAC,CAAC,CAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,OAAO,CAAA,CAAC;QACzC,MAAM,MAAM,GAAsC;YAChD,OAAO;YACP,OAAO;SACR,CAAC;QACF,gFAAgF;QAChF,+FAA+F;QAC/F,IAAI,KAAK,CAAC,KAAK,EAAE;YACf,MAAM,CAAC,KAAK,qBAAQ,KAAK,CAAC,KAAK,CAAE,CAAC;SACnC;QACD,IAAI,KAAK,CAAC,QAAQ,EAAE;YAClB,MAAM,CAAC,QAAQ,qBAAQ,KAAK,CAAC,QAAQ,CAAE,CAAC;SACzC;QACD,MAAM,YAAY,mCAAQ,SAAS,KAAE,KAAK,EAAE,OAAO,GAAE,CAAC;QAEtD,IAAI,KAAK,CAAC,QAAQ,EAAE;YAClB,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,iCAChD,KAAK,KACR,OAAO,EAAE,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,IAC/D,CAAC,CAAC;SACL;QAED,MAAM,MAAM,GAAG,IAAI,mCAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEpF,uCACK,MAAM,KACT,aAAa,EAAE,CACb,QAA+E,EAC/E,OAA2C,EAClB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,IACrE;IACJ,CAAC;CACF;AAxDD,wCAwDC"}
@@ -0,0 +1,10 @@
1
+ import { LDMessage, LDModelConfig, LDProviderConfig, VercelAISDKConfig, VercelAISDKMapOptions, VercelAISDKProvider } from './api/config';
2
+ export declare class LDAIConfigMapper {
3
+ private _model?;
4
+ private _provider?;
5
+ private _messages?;
6
+ constructor(_model?: LDModelConfig | undefined, _provider?: LDProviderConfig | undefined, _messages?: LDMessage[] | undefined);
7
+ private _findParameter;
8
+ toVercelAISDK<TMod>(provider: VercelAISDKProvider<TMod> | Record<string, VercelAISDKProvider<TMod>>, options?: VercelAISDKMapOptions | undefined): VercelAISDKConfig<TMod>;
9
+ }
10
+ //# sourceMappingURL=LDAIConfigMapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LDAIConfigMapper.d.ts","sourceRoot":"","sources":["../src/LDAIConfigMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAEtB,qBAAa,gBAAgB;IAEzB,OAAO,CAAC,MAAM,CAAC;IACf,OAAO,CAAC,SAAS,CAAC;IAClB,OAAO,CAAC,SAAS,CAAC;gBAFV,MAAM,CAAC,2BAA2B,EAClC,SAAS,CAAC,8BAA8B,EACxC,SAAS,CAAC,yBAAyB;IAG7C,OAAO,CAAC,cAAc;IAatB,aAAa,CAAC,IAAI,EAChB,QAAQ,EAAE,mBAAmB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,EAC/E,OAAO,CAAC,EAAE,qBAAqB,GAAG,SAAS,GAC1C,iBAAiB,CAAC,IAAI,CAAC;CA+B3B"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LDAIConfigMapper = void 0;
4
+ class LDAIConfigMapper {
5
+ constructor(_model, _provider, _messages) {
6
+ this._model = _model;
7
+ this._provider = _provider;
8
+ this._messages = _messages;
9
+ }
10
+ _findParameter(...paramNames) {
11
+ var _a, _b, _c, _d, _e, _f, _g, _h;
12
+ for (let i = 0; i < paramNames.length; i += 1) {
13
+ const paramName = paramNames[i];
14
+ if (((_b = (_a = this._model) === null || _a === void 0 ? void 0 : _a.parameters) === null || _b === void 0 ? void 0 : _b[paramName]) !== undefined) {
15
+ return (_d = (_c = this._model) === null || _c === void 0 ? void 0 : _c.parameters) === null || _d === void 0 ? void 0 : _d[paramName];
16
+ }
17
+ if (((_f = (_e = this._model) === null || _e === void 0 ? void 0 : _e.custom) === null || _f === void 0 ? void 0 : _f[paramName]) !== undefined) {
18
+ return (_h = (_g = this._model) === null || _g === void 0 ? void 0 : _g.custom) === null || _h === void 0 ? void 0 : _h[paramName];
19
+ }
20
+ }
21
+ return undefined;
22
+ }
23
+ toVercelAISDK(provider, options) {
24
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
25
+ let model;
26
+ if (typeof provider === 'function') {
27
+ model = provider((_b = (_a = this._model) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : '');
28
+ }
29
+ else {
30
+ model = (_e = provider[(_d = (_c = this._provider) === null || _c === void 0 ? void 0 : _c.name) !== null && _d !== void 0 ? _d : '']) === null || _e === void 0 ? void 0 : _e.call(provider, (_g = (_f = this._model) === null || _f === void 0 ? void 0 : _f.name) !== null && _g !== void 0 ? _g : '');
31
+ }
32
+ if (!model) {
33
+ throw new Error('Vercel AI SDK model cannot be determined from the supplied provider parameter.');
34
+ }
35
+ let messages;
36
+ if (this._messages || (options === null || options === void 0 ? void 0 : options.nonInterpolatedMessages)) {
37
+ messages = [...((_h = this._messages) !== null && _h !== void 0 ? _h : []), ...((_j = options === null || options === void 0 ? void 0 : options.nonInterpolatedMessages) !== null && _j !== void 0 ? _j : [])];
38
+ }
39
+ return {
40
+ model,
41
+ messages,
42
+ maxTokens: this._findParameter('max_tokens', 'maxTokens'),
43
+ temperature: this._findParameter('temperature'),
44
+ topP: this._findParameter('top_p', 'topP'),
45
+ topK: this._findParameter('top_k', 'topK'),
46
+ presencePenalty: this._findParameter('presence_penalty', 'presencePenalty'),
47
+ frequencyPenalty: this._findParameter('frequency_penalty', 'frequencyPenalty'),
48
+ stopSequences: this._findParameter('stop', 'stop_sequences', 'stopSequences'),
49
+ seed: this._findParameter('seed'),
50
+ };
51
+ }
52
+ }
53
+ exports.LDAIConfigMapper = LDAIConfigMapper;
54
+ //# sourceMappingURL=LDAIConfigMapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LDAIConfigMapper.js","sourceRoot":"","sources":["../src/LDAIConfigMapper.ts"],"names":[],"mappings":";;;AASA,MAAa,gBAAgB;IAC3B,YACU,MAAkC,EAClC,SAAwC,EACxC,SAAmC;QAFnC,WAAM,GAAN,MAAM,CAA4B;QAClC,cAAS,GAAT,SAAS,CAA+B;QACxC,cAAS,GAAT,SAAS,CAA0B;IAC1C,CAAC;IAEI,cAAc,CAAI,GAAG,UAAoB;;QAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YAC7C,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAChC,IAAI,CAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,UAAU,0CAAG,SAAS,CAAC,MAAK,SAAS,EAAE;gBACtD,OAAO,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,UAAU,0CAAG,SAAS,CAAM,CAAC;aAClD;YACD,IAAI,CAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAG,SAAS,CAAC,MAAK,SAAS,EAAE;gBAClD,OAAO,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAG,SAAS,CAAM,CAAC;aAC9C;SACF;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,aAAa,CACX,QAA+E,EAC/E,OAA2C;;QAE3C,IAAI,KAAuB,CAAC;QAC5B,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;YAClC,KAAK,GAAG,QAAQ,CAAC,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,IAAI,mCAAI,EAAE,CAAC,CAAC;SAC3C;aAAM;YACL,KAAK,GAAG,MAAA,QAAQ,CAAC,MAAA,MAAA,IAAI,CAAC,SAAS,0CAAE,IAAI,mCAAI,EAAE,CAAC,yDAAG,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,IAAI,mCAAI,EAAE,CAAC,CAAC;SACzE;QACD,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,KAAK,CACb,gFAAgF,CACjF,CAAC;SACH;QAED,IAAI,QAAiC,CAAC;QACtC,IAAI,IAAI,CAAC,SAAS,KAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,uBAAuB,CAAA,EAAE;YACtD,QAAQ,GAAG,CAAC,GAAG,CAAC,MAAA,IAAI,CAAC,SAAS,mCAAI,EAAE,CAAC,EAAE,GAAG,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,uBAAuB,mCAAI,EAAE,CAAC,CAAC,CAAC;SACrF;QAED,OAAO;YACL,KAAK;YACL,QAAQ;YACR,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,WAAW,CAAC;YACzD,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;YAC/C,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC;YAC1C,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC;YAC1C,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,iBAAiB,CAAC;YAC3E,gBAAgB,EAAE,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;YAC9E,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,gBAAgB,EAAE,eAAe,CAAC;YAC7E,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;SAClC,CAAC;IACJ,CAAC;CACF;AAtDD,4CAsDC"}
@@ -40,6 +40,21 @@ export declare class LDAIConfigTrackerImpl implements LDAIConfigTracker {
40
40
  totalTokens?: number;
41
41
  };
42
42
  }>(res: TRes): TRes;
43
+ trackVercelAISDKGenerateTextMetrics<TRes extends {
44
+ usage?: {
45
+ totalTokens?: number;
46
+ promptTokens?: number;
47
+ completionTokens?: number;
48
+ };
49
+ }>(func: () => Promise<TRes>): Promise<TRes>;
50
+ trackVercelAISDKStreamTextMetrics<TRes extends {
51
+ finishReason?: Promise<string>;
52
+ usage?: Promise<{
53
+ totalTokens?: number;
54
+ promptTokens?: number;
55
+ completionTokens?: number;
56
+ }>;
57
+ }>(func: () => TRes): TRes;
43
58
  trackTokens(tokens: LDTokenUsage): void;
44
59
  /**
45
60
  * Get a summary of the tracked metrics.
@@ -1 +1 @@
1
- {"version":3,"file":"LDAIConfigTrackerImpl.d.ts","sourceRoot":"","sources":["../src/LDAIConfigTrackerImpl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAE/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAA2B,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEtF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,qBAAa,qBAAsB,YAAW,iBAAiB;IAI3D,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,QAAQ;IAPlB,OAAO,CAAC,eAAe,CAAyB;gBAGtC,SAAS,EAAE,WAAW,EACtB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,SAAS;IAG7B,OAAO,CAAC,aAAa;IAQrB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAK/B,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAarE,qBAAqB,CAAC,kBAAkB,EAAE,MAAM;IAUhD,aAAa,CAAC,QAAQ,EAAE;QAAE,IAAI,EAAE,cAAc,CAAA;KAAE,GAAG,IAAI;IASvD,YAAY,IAAI,IAAI;IAMpB,UAAU,IAAI,IAAI;IAMZ,kBAAkB,CACtB,IAAI,SAAS;QACX,KAAK,CAAC,EAAE;YACN,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,aAAa,CAAC,EAAE,MAAM,CAAC;YACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;SAC5B,CAAC;KACH,EACD,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAc3C,2BAA2B,CACzB,IAAI,SAAS;QACX,SAAS,EAAE;YAAE,cAAc,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QACvC,OAAO,CAAC,EAAE;YAAE,SAAS,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QACjC,KAAK,CAAC,EAAE;YACN,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,WAAW,CAAC,EAAE,MAAM,CAAC;SACtB,CAAC;KACH,EACD,GAAG,EAAE,IAAI,GAAG,IAAI;IAelB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAcvC;;OAEG;IACH,UAAU,IAAI,iBAAiB;CAGhC"}
1
+ {"version":3,"file":"LDAIConfigTrackerImpl.d.ts","sourceRoot":"","sources":["../src/LDAIConfigTrackerImpl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAE/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAIL,cAAc,EACd,YAAY,EACb,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,qBAAa,qBAAsB,YAAW,iBAAiB;IAI3D,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,QAAQ;IAPlB,OAAO,CAAC,eAAe,CAAyB;gBAGtC,SAAS,EAAE,WAAW,EACtB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,SAAS;IAG7B,OAAO,CAAC,aAAa;IAQrB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAK/B,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAarE,qBAAqB,CAAC,kBAAkB,EAAE,MAAM;IAUhD,aAAa,CAAC,QAAQ,EAAE;QAAE,IAAI,EAAE,cAAc,CAAA;KAAE,GAAG,IAAI;IASvD,YAAY,IAAI,IAAI;IAMpB,UAAU,IAAI,IAAI;IAMZ,kBAAkB,CACtB,IAAI,SAAS;QACX,KAAK,CAAC,EAAE;YACN,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,aAAa,CAAC,EAAE,MAAM,CAAC;YACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;SAC5B,CAAC;KACH,EACD,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAc3C,2BAA2B,CACzB,IAAI,SAAS;QACX,SAAS,EAAE;YAAE,cAAc,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QACvC,OAAO,CAAC,EAAE;YAAE,SAAS,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QACjC,KAAK,CAAC,EAAE;YACN,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,WAAW,CAAC,EAAE,MAAM,CAAC;SACtB,CAAC;KACH,EACD,GAAG,EAAE,IAAI,GAAG,IAAI;IAeZ,mCAAmC,CACvC,IAAI,SAAS;QACX,KAAK,CAAC,EAAE;YACN,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;SAC3B,CAAC;KACH,EACD,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAc3C,iCAAiC,CAC/B,IAAI,SAAS;QACX,YAAY,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAC/B,KAAK,CAAC,EAAE,OAAO,CAAC;YACd,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;SAC3B,CAAC,CAAC;KACJ,EACD,IAAI,EAAE,MAAM,IAAI,GAAG,IAAI;IAmCzB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAcvC;;OAEG;IACH,UAAU,IAAI,iBAAiB;CAGhC"}
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LDAIConfigTrackerImpl = void 0;
4
4
  const metrics_1 = require("./api/metrics");
5
- const OpenAiUsage_1 = require("./api/metrics/OpenAiUsage");
6
5
  class LDAIConfigTrackerImpl {
7
6
  constructor(_ldClient, _configKey, _variationKey, _version, _context) {
8
7
  this._ldClient = _ldClient;
@@ -64,7 +63,7 @@ class LDAIConfigTrackerImpl {
64
63
  const result = await this.trackDurationOf(func);
65
64
  this.trackSuccess();
66
65
  if (result.usage) {
67
- this.trackTokens((0, OpenAiUsage_1.createOpenAiUsage)(result.usage));
66
+ this.trackTokens((0, metrics_1.createOpenAiUsage)(result.usage));
68
67
  }
69
68
  return result;
70
69
  }
@@ -89,6 +88,56 @@ class LDAIConfigTrackerImpl {
89
88
  }
90
89
  return res;
91
90
  }
91
+ async trackVercelAISDKGenerateTextMetrics(func) {
92
+ try {
93
+ const result = await this.trackDurationOf(func);
94
+ this.trackSuccess();
95
+ if (result.usage) {
96
+ this.trackTokens((0, metrics_1.createVercelAISDKTokenUsage)(result.usage));
97
+ }
98
+ return result;
99
+ }
100
+ catch (err) {
101
+ this.trackError();
102
+ throw err;
103
+ }
104
+ }
105
+ trackVercelAISDKStreamTextMetrics(func) {
106
+ var _a;
107
+ const startTime = Date.now();
108
+ try {
109
+ const result = func();
110
+ (_a = result.finishReason) === null || _a === void 0 ? void 0 : _a.then(async (finishReason) => {
111
+ const endTime = Date.now();
112
+ this.trackDuration(endTime - startTime);
113
+ if (finishReason === 'error') {
114
+ this.trackError();
115
+ }
116
+ else {
117
+ this.trackSuccess();
118
+ if (result.usage) {
119
+ try {
120
+ this.trackTokens((0, metrics_1.createVercelAISDKTokenUsage)(await result.usage));
121
+ }
122
+ catch (_a) {
123
+ // Intentionally squashing this error
124
+ }
125
+ }
126
+ }
127
+ }).catch(() => {
128
+ const endTime = Date.now();
129
+ this.trackDuration(endTime - startTime);
130
+ this.trackError();
131
+ });
132
+ return result;
133
+ }
134
+ catch (err) {
135
+ const endTime = Date.now();
136
+ this.trackDuration(endTime - startTime);
137
+ this.trackError();
138
+ throw err;
139
+ }
140
+ }
92
141
  trackTokens(tokens) {
93
142
  this._trackedMetrics.tokens = tokens;
94
143
  const trackData = this._getTrackData();
@@ -1 +1 @@
1
- {"version":3,"file":"LDAIConfigTrackerImpl.js","sourceRoot":"","sources":["../src/LDAIConfigTrackerImpl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LDAIConfigTrackerImpl.js","sourceRoot":"","sources":["../src/LDAIConfigTrackerImpl.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { LDAIConfigTracker } from './LDAIConfigTracker';
2
+ import { VercelAISDKConfig, VercelAISDKMapOptions, VercelAISDKProvider } from './VercelAISDK';
2
3
  /**
3
4
  * Configuration related to the model.
4
5
  */
@@ -22,7 +23,7 @@ export interface LDModelConfig {
22
23
  }
23
24
  export interface LDProviderConfig {
24
25
  /**
25
- * The ID of the provider.
26
+ * The name of the provider.
26
27
  */
27
28
  name: string;
28
29
  }
@@ -63,12 +64,24 @@ export interface LDAIConfig {
63
64
  * Whether the configuration is enabled.
64
65
  */
65
66
  enabled: boolean;
67
+ /**
68
+ * Maps this AI config to a format usable direcly in Vercel AI SDK generateText()
69
+ * and streamText() methods.
70
+ *
71
+ * WARNING: this method can throw an exception if a Vercel AI SDK model cannot be determined.
72
+ *
73
+ * @param provider A Vercel AI SDK Provider or a map of provider names to Vercel AI SDK Providers.
74
+ * @param options Optional mapping options.
75
+ * @returns A configuration directly usable in Vercel AI SDK generateText() and streamText()
76
+ * @throws {Error} if a Vercel AI SDK model cannot be determined from the given provider parameter.
77
+ */
78
+ toVercelAISDK: <TMod>(provider: VercelAISDKProvider<TMod> | Record<string, VercelAISDKProvider<TMod>>, options?: VercelAISDKMapOptions | undefined) => VercelAISDKConfig<TMod>;
66
79
  }
67
80
  /**
68
81
  * Default value for a `modelConfig`. This is the same as the LDAIConfig, but it does not include
69
- * a tracker and `enabled` is optional.
82
+ * a tracker or mapper, and `enabled` is optional.
70
83
  */
71
- export type LDAIDefaults = Omit<LDAIConfig, 'tracker' | 'enabled'> & {
84
+ export type LDAIDefaults = Omit<LDAIConfig, 'tracker' | 'enabled' | 'toVercelAISDK'> & {
72
85
  /**
73
86
  * Whether the configuration is enabled.
74
87
  *
@@ -1 +1 @@
1
- {"version":3,"file":"LDAIConfig.d.ts","sourceRoot":"","sources":["../../../src/api/config/LDAIConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,UAAU,CAAC,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAE1C;;OAEG;IACH,MAAM,CAAC,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;CACvC;AAED,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAE5B;;OAEG;IACH,OAAO,EAAE,iBAAiB,CAAC;IAE3B;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,GAAG,SAAS,CAAC,GAAG;IACnE;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC"}
1
+ {"version":3,"file":"LDAIConfig.d.ts","sourceRoot":"","sources":["../../../src/api/config/LDAIConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAE9F;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,UAAU,CAAC,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAE1C;;OAEG;IACH,MAAM,CAAC,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;CACvC;AAED,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAE5B;;OAEG;IACH,OAAO,EAAE,iBAAiB,CAAC;IAE3B;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;;;;;;;;;OAUG;IACH,aAAa,EAAE,CAAC,IAAI,EAClB,QAAQ,EAAE,mBAAmB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,EAC/E,OAAO,CAAC,EAAE,qBAAqB,GAAG,SAAS,KACxC,iBAAiB,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,GAAG,SAAS,GAAG,eAAe,CAAC,GAAG;IACrF;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC"}
@@ -118,6 +118,45 @@ export interface LDAIConfigTracker {
118
118
  totalTokens?: number;
119
119
  };
120
120
  }>(res: TRes): TRes;
121
+ /**
122
+ * Track a Vercel AI SDK generateText operation.
123
+ *
124
+ * This function will track the duration of the operation, the token usage, and the success or error status.
125
+ *
126
+ * If the provided function throws, then this method will also throw.
127
+ * In the case the provided function throws, this function will record the duration and an error.
128
+ * A failed operation will not have any token usage data.
129
+ *
130
+ * @param func Function which executes the operation.
131
+ * @returns The result of the operation.
132
+ */
133
+ trackVercelAISDKGenerateTextMetrics<TRes extends {
134
+ usage?: {
135
+ totalTokens?: number;
136
+ promptTokens?: number;
137
+ completionTokens?: number;
138
+ };
139
+ }>(func: () => Promise<TRes>): Promise<TRes>;
140
+ /**
141
+ * Track a Vercel AI SDK streamText operation.
142
+ *
143
+ * This function will track the duration of the operation, the token usage, and the success or error status.
144
+ *
145
+ * If the provided function throws, then this method will also throw.
146
+ * In the case the provided function throws, this function will record the duration and an error.
147
+ * A failed operation will not have any token usage data.
148
+ *
149
+ * @param func Function which executes the operation.
150
+ * @returns The result of the operation.
151
+ */
152
+ trackVercelAISDKStreamTextMetrics<TRes extends {
153
+ finishReason?: Promise<string>;
154
+ usage?: Promise<{
155
+ totalTokens?: number;
156
+ promptTokens?: number;
157
+ completionTokens?: number;
158
+ }>;
159
+ }>(func: () => TRes): TRes;
121
160
  /**
122
161
  * Get a summary of the tracked metrics.
123
162
  */
@@ -1 +1 @@
1
- {"version":3,"file":"LDAIConfigTracker.d.ts","sourceRoot":"","sources":["../../../src/api/config/LDAIConfigTracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,cAAc,CAAA;KAAE,CAAC;IAEpC;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;OAMG;IACH,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAExC;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAExC;;OAEG;IACH,YAAY,IAAI,IAAI,CAAC;IAErB;;OAEG;IACH,UAAU,IAAI,IAAI,CAAC;IAEnB;;;;OAIG;IACH,aAAa,CAAC,QAAQ,EAAE;QAAE,IAAI,EAAE,cAAc,CAAA;KAAE,GAAG,IAAI,CAAC;IAExD;;;;OAIG;IACH,qBAAqB,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAExD;;;;;;;;;;OAUG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAExD;;;;;;;;;;;OAWG;IACH,kBAAkB,CAChB,IAAI,SAAS;QACX,KAAK,CAAC,EAAE;YACN,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,aAAa,CAAC,EAAE,MAAM,CAAC;YACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;SAC5B,CAAC;KACH,EAED,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GACxB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;;OAOG;IACH,2BAA2B,CACzB,IAAI,SAAS;QACX,SAAS,EAAE;YAAE,cAAc,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QACvC,OAAO,CAAC,EAAE;YAAE,SAAS,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QACjC,KAAK,CAAC,EAAE;YACN,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,WAAW,CAAC,EAAE,MAAM,CAAC;SACtB,CAAC;KACH,EAED,GAAG,EAAE,IAAI,GACR,IAAI,CAAC;IAER;;OAEG;IACH,UAAU,IAAI,iBAAiB,CAAC;CACjC"}
1
+ {"version":3,"file":"LDAIConfigTracker.d.ts","sourceRoot":"","sources":["../../../src/api/config/LDAIConfigTracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,cAAc,CAAA;KAAE,CAAC;IAEpC;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;OAMG;IACH,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAExC;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAExC;;OAEG;IACH,YAAY,IAAI,IAAI,CAAC;IAErB;;OAEG;IACH,UAAU,IAAI,IAAI,CAAC;IAEnB;;;;OAIG;IACH,aAAa,CAAC,QAAQ,EAAE;QAAE,IAAI,EAAE,cAAc,CAAA;KAAE,GAAG,IAAI,CAAC;IAExD;;;;OAIG;IACH,qBAAqB,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAExD;;;;;;;;;;OAUG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAExD;;;;;;;;;;;OAWG;IACH,kBAAkB,CAChB,IAAI,SAAS;QACX,KAAK,CAAC,EAAE;YACN,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,aAAa,CAAC,EAAE,MAAM,CAAC;YACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;SAC5B,CAAC;KACH,EAED,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GACxB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;;OAOG;IACH,2BAA2B,CACzB,IAAI,SAAS;QACX,SAAS,EAAE;YAAE,cAAc,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QACvC,OAAO,CAAC,EAAE;YAAE,SAAS,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QACjC,KAAK,CAAC,EAAE;YACN,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,WAAW,CAAC,EAAE,MAAM,CAAC;SACtB,CAAC;KACH,EAED,GAAG,EAAE,IAAI,GACR,IAAI,CAAC;IAER;;;;;;;;;;;OAWG;IACH,mCAAmC,CACjC,IAAI,SAAS;QACX,KAAK,CAAC,EAAE;YACN,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;SAC3B,CAAC;KACH,EAED,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GACxB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;;;;;;OAWG;IACH,iCAAiC,CAC/B,IAAI,SAAS;QACX,YAAY,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAC/B,KAAK,CAAC,EAAE,OAAO,CAAC;YACd,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;SAC3B,CAAC,CAAC;KACJ,EAED,IAAI,EAAE,MAAM,IAAI,GACf,IAAI,CAAC;IAER;;OAEG;IACH,UAAU,IAAI,iBAAiB,CAAC;CACjC"}
@@ -0,0 +1,18 @@
1
+ import { type LDMessage } from './LDAIConfig';
2
+ export type VercelAISDKProvider<TMod> = (modelName: string) => TMod;
3
+ export interface VercelAISDKMapOptions {
4
+ nonInterpolatedMessages?: LDMessage[] | undefined;
5
+ }
6
+ export interface VercelAISDKConfig<TMod> {
7
+ model: TMod;
8
+ messages?: LDMessage[] | undefined;
9
+ maxTokens?: number | undefined;
10
+ temperature?: number | undefined;
11
+ topP?: number | undefined;
12
+ topK?: number | undefined;
13
+ presencePenalty?: number | undefined;
14
+ frequencyPenalty?: number | undefined;
15
+ stopSequences?: string[] | undefined;
16
+ seed?: number | undefined;
17
+ }
18
+ //# sourceMappingURL=VercelAISDK.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VercelAISDK.d.ts","sourceRoot":"","sources":["../../../src/api/config/VercelAISDK.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,MAAM,mBAAmB,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;AAEpE,MAAM,WAAW,qBAAqB;IACpC,uBAAuB,CAAC,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC;CACnD;AAED,MAAM,WAAW,iBAAiB,CAAC,IAAI;IACrC,KAAK,EAAE,IAAI,CAAC;IACZ,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACrC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=VercelAISDK.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VercelAISDK.js","sourceRoot":"","sources":["../../../src/api/config/VercelAISDK.ts"],"names":[],"mappings":""}
@@ -1,3 +1,4 @@
1
1
  export * from './LDAIConfig';
2
+ export * from './VercelAISDK';
2
3
  export { LDAIConfigTracker } from './LDAIConfigTracker';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -15,4 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./LDAIConfig"), exports);
18
+ __exportStar(require("./VercelAISDK"), exports);
18
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/config/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/config/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,gDAA8B"}
@@ -0,0 +1,7 @@
1
+ import { LDTokenUsage } from './LDTokenUsage';
2
+ export declare function createVercelAISDKTokenUsage(data: {
3
+ totalTokens?: number;
4
+ promptTokens?: number;
5
+ completionTokens?: number;
6
+ }): LDTokenUsage;
7
+ //# sourceMappingURL=VercelAISDKTokenUsage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VercelAISDKTokenUsage.d.ts","sourceRoot":"","sources":["../../../src/api/metrics/VercelAISDKTokenUsage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,wBAAgB,2BAA2B,CAAC,IAAI,EAAE;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,GAAG,YAAY,CAMf"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createVercelAISDKTokenUsage = void 0;
4
+ function createVercelAISDKTokenUsage(data) {
5
+ var _a, _b, _c;
6
+ return {
7
+ total: (_a = data.totalTokens) !== null && _a !== void 0 ? _a : 0,
8
+ input: (_b = data.promptTokens) !== null && _b !== void 0 ? _b : 0,
9
+ output: (_c = data.completionTokens) !== null && _c !== void 0 ? _c : 0,
10
+ };
11
+ }
12
+ exports.createVercelAISDKTokenUsage = createVercelAISDKTokenUsage;
13
+ //# sourceMappingURL=VercelAISDKTokenUsage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VercelAISDKTokenUsage.js","sourceRoot":"","sources":["../../../src/api/metrics/VercelAISDKTokenUsage.ts"],"names":[],"mappings":";;;AAEA,SAAgB,2BAA2B,CAAC,IAI3C;;IACC,OAAO;QACL,KAAK,EAAE,MAAA,IAAI,CAAC,WAAW,mCAAI,CAAC;QAC5B,KAAK,EAAE,MAAA,IAAI,CAAC,YAAY,mCAAI,CAAC;QAC7B,MAAM,EAAE,MAAA,IAAI,CAAC,gBAAgB,mCAAI,CAAC;KACnC,CAAC;AACJ,CAAC;AAVD,kEAUC"}
@@ -1,4 +1,6 @@
1
1
  export * from './BedrockTokenUsage';
2
+ export * from './OpenAiUsage';
2
3
  export * from './LDFeedbackKind';
3
4
  export * from './LDTokenUsage';
5
+ export * from './VercelAISDKTokenUsage';
4
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/metrics/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/metrics/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC"}
@@ -15,6 +15,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./BedrockTokenUsage"), exports);
18
+ __exportStar(require("./OpenAiUsage"), exports);
18
19
  __exportStar(require("./LDFeedbackKind"), exports);
19
20
  __exportStar(require("./LDTokenUsage"), exports);
21
+ __exportStar(require("./VercelAISDKTokenUsage"), exports);
20
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/metrics/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,mDAAiC;AACjC,iDAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/metrics/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,gDAA8B;AAC9B,mDAAiC;AACjC,iDAA+B;AAC/B,0DAAwC"}
@@ -1 +1 @@
1
- window.searchData = JSON.parse("{\"rows\":[{\"kind\":64,\"name\":\"initAi\",\"url\":\"functions/initAi.html\",\"classes\":\"\"},{\"kind\":256,\"name\":\"LDAIConfigTracker\",\"url\":\"interfaces/LDAIConfigTracker.html\",\"classes\":\"\"},{\"kind\":2048,\"name\":\"trackDuration\",\"url\":\"interfaces/LDAIConfigTracker.html#trackDuration\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackTokens\",\"url\":\"interfaces/LDAIConfigTracker.html#trackTokens\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackSuccess\",\"url\":\"interfaces/LDAIConfigTracker.html#trackSuccess\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackError\",\"url\":\"interfaces/LDAIConfigTracker.html#trackError\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackFeedback\",\"url\":\"interfaces/LDAIConfigTracker.html#trackFeedback\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackTimeToFirstToken\",\"url\":\"interfaces/LDAIConfigTracker.html#trackTimeToFirstToken\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackDurationOf\",\"url\":\"interfaces/LDAIConfigTracker.html#trackDurationOf\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackOpenAIMetrics\",\"url\":\"interfaces/LDAIConfigTracker.html#trackOpenAIMetrics\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackBedrockConverseMetrics\",\"url\":\"interfaces/LDAIConfigTracker.html#trackBedrockConverseMetrics\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"getSummary\",\"url\":\"interfaces/LDAIConfigTracker.html#getSummary\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":256,\"name\":\"LDModelConfig\",\"url\":\"interfaces/LDModelConfig.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"name\",\"url\":\"interfaces/LDModelConfig.html#name\",\"classes\":\"\",\"parent\":\"LDModelConfig\"},{\"kind\":1024,\"name\":\"parameters\",\"url\":\"interfaces/LDModelConfig.html#parameters\",\"classes\":\"\",\"parent\":\"LDModelConfig\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/LDModelConfig.html#parameters.__type-1\",\"classes\":\"\",\"parent\":\"LDModelConfig.parameters\"},{\"kind\":1024,\"name\":\"custom\",\"url\":\"interfaces/LDModelConfig.html#custom\",\"classes\":\"\",\"parent\":\"LDModelConfig\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/LDModelConfig.html#custom.__type\",\"classes\":\"\",\"parent\":\"LDModelConfig.custom\"},{\"kind\":256,\"name\":\"LDProviderConfig\",\"url\":\"interfaces/LDProviderConfig.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"name\",\"url\":\"interfaces/LDProviderConfig.html#name\",\"classes\":\"\",\"parent\":\"LDProviderConfig\"},{\"kind\":256,\"name\":\"LDMessage\",\"url\":\"interfaces/LDMessage.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"role\",\"url\":\"interfaces/LDMessage.html#role\",\"classes\":\"\",\"parent\":\"LDMessage\"},{\"kind\":1024,\"name\":\"content\",\"url\":\"interfaces/LDMessage.html#content\",\"classes\":\"\",\"parent\":\"LDMessage\"},{\"kind\":256,\"name\":\"LDAIConfig\",\"url\":\"interfaces/LDAIConfig.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"model\",\"url\":\"interfaces/LDAIConfig.html#model\",\"classes\":\"\",\"parent\":\"LDAIConfig\"},{\"kind\":1024,\"name\":\"messages\",\"url\":\"interfaces/LDAIConfig.html#messages\",\"classes\":\"\",\"parent\":\"LDAIConfig\"},{\"kind\":1024,\"name\":\"provider\",\"url\":\"interfaces/LDAIConfig.html#provider\",\"classes\":\"\",\"parent\":\"LDAIConfig\"},{\"kind\":1024,\"name\":\"tracker\",\"url\":\"interfaces/LDAIConfig.html#tracker\",\"classes\":\"\",\"parent\":\"LDAIConfig\"},{\"kind\":1024,\"name\":\"enabled\",\"url\":\"interfaces/LDAIConfig.html#enabled\",\"classes\":\"\",\"parent\":\"LDAIConfig\"},{\"kind\":2097152,\"name\":\"LDAIDefaults\",\"url\":\"types/LDAIDefaults.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"createBedrockTokenUsage\",\"url\":\"functions/createBedrockTokenUsage.html\",\"classes\":\"\"},{\"kind\":8,\"name\":\"LDFeedbackKind\",\"url\":\"enums/LDFeedbackKind.html\",\"classes\":\"\"},{\"kind\":16,\"name\":\"Positive\",\"url\":\"enums/LDFeedbackKind.html#Positive\",\"classes\":\"\",\"parent\":\"LDFeedbackKind\"},{\"kind\":16,\"name\":\"Negative\",\"url\":\"enums/LDFeedbackKind.html#Negative\",\"classes\":\"\",\"parent\":\"LDFeedbackKind\"},{\"kind\":256,\"name\":\"LDTokenUsage\",\"url\":\"interfaces/LDTokenUsage.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"total\",\"url\":\"interfaces/LDTokenUsage.html#total\",\"classes\":\"\",\"parent\":\"LDTokenUsage\"},{\"kind\":1024,\"name\":\"input\",\"url\":\"interfaces/LDTokenUsage.html#input\",\"classes\":\"\",\"parent\":\"LDTokenUsage\"},{\"kind\":1024,\"name\":\"output\",\"url\":\"interfaces/LDTokenUsage.html#output\",\"classes\":\"\",\"parent\":\"LDTokenUsage\"},{\"kind\":256,\"name\":\"LDAIClient\",\"url\":\"interfaces/LDAIClient.html\",\"classes\":\"\"},{\"kind\":2048,\"name\":\"config\",\"url\":\"interfaces/LDAIClient.html#config\",\"classes\":\"\",\"parent\":\"LDAIClient\"}],\"index\":{\"version\":\"2.3.9\",\"fields\":[\"name\",\"comment\"],\"fieldVectors\":[[\"name/0\",[0,33.081]],[\"comment/0\",[]],[\"name/1\",[1,33.081]],[\"comment/1\",[]],[\"name/2\",[2,33.081]],[\"comment/2\",[]],[\"name/3\",[3,33.081]],[\"comment/3\",[]],[\"name/4\",[4,33.081]],[\"comment/4\",[]],[\"name/5\",[5,33.081]],[\"comment/5\",[]],[\"name/6\",[6,33.081]],[\"comment/6\",[]],[\"name/7\",[7,33.081]],[\"comment/7\",[]],[\"name/8\",[8,33.081]],[\"comment/8\",[]],[\"name/9\",[9,33.081]],[\"comment/9\",[]],[\"name/10\",[10,33.081]],[\"comment/10\",[]],[\"name/11\",[11,33.081]],[\"comment/11\",[]],[\"name/12\",[12,33.081]],[\"comment/12\",[]],[\"name/13\",[13,27.973]],[\"comment/13\",[]],[\"name/14\",[14,33.081]],[\"comment/14\",[]],[\"name/15\",[15,27.973]],[\"comment/15\",[]],[\"name/16\",[16,33.081]],[\"comment/16\",[]],[\"name/17\",[15,27.973]],[\"comment/17\",[]],[\"name/18\",[17,33.081]],[\"comment/18\",[]],[\"name/19\",[13,27.973]],[\"comment/19\",[]],[\"name/20\",[18,33.081]],[\"comment/20\",[]],[\"name/21\",[19,33.081]],[\"comment/21\",[]],[\"name/22\",[20,33.081]],[\"comment/22\",[]],[\"name/23\",[21,33.081]],[\"comment/23\",[]],[\"name/24\",[22,33.081]],[\"comment/24\",[]],[\"name/25\",[23,33.081]],[\"comment/25\",[]],[\"name/26\",[24,33.081]],[\"comment/26\",[]],[\"name/27\",[25,33.081]],[\"comment/27\",[]],[\"name/28\",[26,33.081]],[\"comment/28\",[]],[\"name/29\",[27,33.081]],[\"comment/29\",[]],[\"name/30\",[28,33.081]],[\"comment/30\",[]],[\"name/31\",[29,33.081]],[\"comment/31\",[]],[\"name/32\",[30,33.081]],[\"comment/32\",[]],[\"name/33\",[31,33.081]],[\"comment/33\",[]],[\"name/34\",[32,33.081]],[\"comment/34\",[]],[\"name/35\",[33,33.081]],[\"comment/35\",[]],[\"name/36\",[34,33.081]],[\"comment/36\",[]],[\"name/37\",[35,33.081]],[\"comment/37\",[]],[\"name/38\",[36,33.081]],[\"comment/38\",[]],[\"name/39\",[37,33.081]],[\"comment/39\",[]]],\"invertedIndex\":[[\"__type\",{\"_index\":15,\"name\":{\"15\":{},\"17\":{}},\"comment\":{}}],[\"config\",{\"_index\":37,\"name\":{\"39\":{}},\"comment\":{}}],[\"content\",{\"_index\":20,\"name\":{\"22\":{}},\"comment\":{}}],[\"createbedrocktokenusage\",{\"_index\":28,\"name\":{\"30\":{}},\"comment\":{}}],[\"custom\",{\"_index\":16,\"name\":{\"16\":{}},\"comment\":{}}],[\"enabled\",{\"_index\":26,\"name\":{\"28\":{}},\"comment\":{}}],[\"getsummary\",{\"_index\":11,\"name\":{\"11\":{}},\"comment\":{}}],[\"initai\",{\"_index\":0,\"name\":{\"0\":{}},\"comment\":{}}],[\"input\",{\"_index\":34,\"name\":{\"36\":{}},\"comment\":{}}],[\"ldaiclient\",{\"_index\":36,\"name\":{\"38\":{}},\"comment\":{}}],[\"ldaiconfig\",{\"_index\":21,\"name\":{\"23\":{}},\"comment\":{}}],[\"ldaiconfigtracker\",{\"_index\":1,\"name\":{\"1\":{}},\"comment\":{}}],[\"ldaidefaults\",{\"_index\":27,\"name\":{\"29\":{}},\"comment\":{}}],[\"ldfeedbackkind\",{\"_index\":29,\"name\":{\"31\":{}},\"comment\":{}}],[\"ldmessage\",{\"_index\":18,\"name\":{\"20\":{}},\"comment\":{}}],[\"ldmodelconfig\",{\"_index\":12,\"name\":{\"12\":{}},\"comment\":{}}],[\"ldproviderconfig\",{\"_index\":17,\"name\":{\"18\":{}},\"comment\":{}}],[\"ldtokenusage\",{\"_index\":32,\"name\":{\"34\":{}},\"comment\":{}}],[\"messages\",{\"_index\":23,\"name\":{\"25\":{}},\"comment\":{}}],[\"model\",{\"_index\":22,\"name\":{\"24\":{}},\"comment\":{}}],[\"name\",{\"_index\":13,\"name\":{\"13\":{},\"19\":{}},\"comment\":{}}],[\"negative\",{\"_index\":31,\"name\":{\"33\":{}},\"comment\":{}}],[\"output\",{\"_index\":35,\"name\":{\"37\":{}},\"comment\":{}}],[\"parameters\",{\"_index\":14,\"name\":{\"14\":{}},\"comment\":{}}],[\"positive\",{\"_index\":30,\"name\":{\"32\":{}},\"comment\":{}}],[\"provider\",{\"_index\":24,\"name\":{\"26\":{}},\"comment\":{}}],[\"role\",{\"_index\":19,\"name\":{\"21\":{}},\"comment\":{}}],[\"total\",{\"_index\":33,\"name\":{\"35\":{}},\"comment\":{}}],[\"trackbedrockconversemetrics\",{\"_index\":10,\"name\":{\"10\":{}},\"comment\":{}}],[\"trackduration\",{\"_index\":2,\"name\":{\"2\":{}},\"comment\":{}}],[\"trackdurationof\",{\"_index\":8,\"name\":{\"8\":{}},\"comment\":{}}],[\"tracker\",{\"_index\":25,\"name\":{\"27\":{}},\"comment\":{}}],[\"trackerror\",{\"_index\":5,\"name\":{\"5\":{}},\"comment\":{}}],[\"trackfeedback\",{\"_index\":6,\"name\":{\"6\":{}},\"comment\":{}}],[\"trackopenaimetrics\",{\"_index\":9,\"name\":{\"9\":{}},\"comment\":{}}],[\"tracksuccess\",{\"_index\":4,\"name\":{\"4\":{}},\"comment\":{}}],[\"tracktimetofirsttoken\",{\"_index\":7,\"name\":{\"7\":{}},\"comment\":{}}],[\"tracktokens\",{\"_index\":3,\"name\":{\"3\":{}},\"comment\":{}}]],\"pipeline\":[]}}");
1
+ window.searchData = JSON.parse("{\"rows\":[{\"kind\":64,\"name\":\"initAi\",\"url\":\"functions/initAi.html\",\"classes\":\"\"},{\"kind\":256,\"name\":\"LDAIConfigTracker\",\"url\":\"interfaces/LDAIConfigTracker.html\",\"classes\":\"\"},{\"kind\":2048,\"name\":\"trackDuration\",\"url\":\"interfaces/LDAIConfigTracker.html#trackDuration\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackTokens\",\"url\":\"interfaces/LDAIConfigTracker.html#trackTokens\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackSuccess\",\"url\":\"interfaces/LDAIConfigTracker.html#trackSuccess\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackError\",\"url\":\"interfaces/LDAIConfigTracker.html#trackError\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackFeedback\",\"url\":\"interfaces/LDAIConfigTracker.html#trackFeedback\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackTimeToFirstToken\",\"url\":\"interfaces/LDAIConfigTracker.html#trackTimeToFirstToken\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackDurationOf\",\"url\":\"interfaces/LDAIConfigTracker.html#trackDurationOf\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackOpenAIMetrics\",\"url\":\"interfaces/LDAIConfigTracker.html#trackOpenAIMetrics\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackBedrockConverseMetrics\",\"url\":\"interfaces/LDAIConfigTracker.html#trackBedrockConverseMetrics\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackVercelAISDKGenerateTextMetrics\",\"url\":\"interfaces/LDAIConfigTracker.html#trackVercelAISDKGenerateTextMetrics\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"trackVercelAISDKStreamTextMetrics\",\"url\":\"interfaces/LDAIConfigTracker.html#trackVercelAISDKStreamTextMetrics\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":2048,\"name\":\"getSummary\",\"url\":\"interfaces/LDAIConfigTracker.html#getSummary\",\"classes\":\"\",\"parent\":\"LDAIConfigTracker\"},{\"kind\":256,\"name\":\"LDModelConfig\",\"url\":\"interfaces/LDModelConfig.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"name\",\"url\":\"interfaces/LDModelConfig.html#name\",\"classes\":\"\",\"parent\":\"LDModelConfig\"},{\"kind\":1024,\"name\":\"parameters\",\"url\":\"interfaces/LDModelConfig.html#parameters\",\"classes\":\"\",\"parent\":\"LDModelConfig\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/LDModelConfig.html#parameters.__type-1\",\"classes\":\"\",\"parent\":\"LDModelConfig.parameters\"},{\"kind\":1024,\"name\":\"custom\",\"url\":\"interfaces/LDModelConfig.html#custom\",\"classes\":\"\",\"parent\":\"LDModelConfig\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/LDModelConfig.html#custom.__type\",\"classes\":\"\",\"parent\":\"LDModelConfig.custom\"},{\"kind\":256,\"name\":\"LDProviderConfig\",\"url\":\"interfaces/LDProviderConfig.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"name\",\"url\":\"interfaces/LDProviderConfig.html#name\",\"classes\":\"\",\"parent\":\"LDProviderConfig\"},{\"kind\":256,\"name\":\"LDMessage\",\"url\":\"interfaces/LDMessage.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"role\",\"url\":\"interfaces/LDMessage.html#role\",\"classes\":\"\",\"parent\":\"LDMessage\"},{\"kind\":1024,\"name\":\"content\",\"url\":\"interfaces/LDMessage.html#content\",\"classes\":\"\",\"parent\":\"LDMessage\"},{\"kind\":256,\"name\":\"LDAIConfig\",\"url\":\"interfaces/LDAIConfig.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"model\",\"url\":\"interfaces/LDAIConfig.html#model\",\"classes\":\"\",\"parent\":\"LDAIConfig\"},{\"kind\":1024,\"name\":\"messages\",\"url\":\"interfaces/LDAIConfig.html#messages\",\"classes\":\"\",\"parent\":\"LDAIConfig\"},{\"kind\":1024,\"name\":\"provider\",\"url\":\"interfaces/LDAIConfig.html#provider\",\"classes\":\"\",\"parent\":\"LDAIConfig\"},{\"kind\":1024,\"name\":\"tracker\",\"url\":\"interfaces/LDAIConfig.html#tracker\",\"classes\":\"\",\"parent\":\"LDAIConfig\"},{\"kind\":1024,\"name\":\"enabled\",\"url\":\"interfaces/LDAIConfig.html#enabled\",\"classes\":\"\",\"parent\":\"LDAIConfig\"},{\"kind\":1024,\"name\":\"toVercelAISDK\",\"url\":\"interfaces/LDAIConfig.html#toVercelAISDK\",\"classes\":\"\",\"parent\":\"LDAIConfig\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/LDAIConfig.html#toVercelAISDK.__type\",\"classes\":\"\",\"parent\":\"LDAIConfig.toVercelAISDK\"},{\"kind\":2097152,\"name\":\"LDAIDefaults\",\"url\":\"types/LDAIDefaults.html\",\"classes\":\"\"},{\"kind\":2097152,\"name\":\"VercelAISDKProvider\",\"url\":\"types/VercelAISDKProvider.html\",\"classes\":\"\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/VercelAISDKProvider.html#__type\",\"classes\":\"\",\"parent\":\"VercelAISDKProvider\"},{\"kind\":256,\"name\":\"VercelAISDKMapOptions\",\"url\":\"interfaces/VercelAISDKMapOptions.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"nonInterpolatedMessages\",\"url\":\"interfaces/VercelAISDKMapOptions.html#nonInterpolatedMessages\",\"classes\":\"\",\"parent\":\"VercelAISDKMapOptions\"},{\"kind\":256,\"name\":\"VercelAISDKConfig\",\"url\":\"interfaces/VercelAISDKConfig.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"model\",\"url\":\"interfaces/VercelAISDKConfig.html#model\",\"classes\":\"\",\"parent\":\"VercelAISDKConfig\"},{\"kind\":1024,\"name\":\"messages\",\"url\":\"interfaces/VercelAISDKConfig.html#messages\",\"classes\":\"\",\"parent\":\"VercelAISDKConfig\"},{\"kind\":1024,\"name\":\"maxTokens\",\"url\":\"interfaces/VercelAISDKConfig.html#maxTokens\",\"classes\":\"\",\"parent\":\"VercelAISDKConfig\"},{\"kind\":1024,\"name\":\"temperature\",\"url\":\"interfaces/VercelAISDKConfig.html#temperature\",\"classes\":\"\",\"parent\":\"VercelAISDKConfig\"},{\"kind\":1024,\"name\":\"topP\",\"url\":\"interfaces/VercelAISDKConfig.html#topP\",\"classes\":\"\",\"parent\":\"VercelAISDKConfig\"},{\"kind\":1024,\"name\":\"topK\",\"url\":\"interfaces/VercelAISDKConfig.html#topK\",\"classes\":\"\",\"parent\":\"VercelAISDKConfig\"},{\"kind\":1024,\"name\":\"presencePenalty\",\"url\":\"interfaces/VercelAISDKConfig.html#presencePenalty\",\"classes\":\"\",\"parent\":\"VercelAISDKConfig\"},{\"kind\":1024,\"name\":\"frequencyPenalty\",\"url\":\"interfaces/VercelAISDKConfig.html#frequencyPenalty\",\"classes\":\"\",\"parent\":\"VercelAISDKConfig\"},{\"kind\":1024,\"name\":\"stopSequences\",\"url\":\"interfaces/VercelAISDKConfig.html#stopSequences\",\"classes\":\"\",\"parent\":\"VercelAISDKConfig\"},{\"kind\":1024,\"name\":\"seed\",\"url\":\"interfaces/VercelAISDKConfig.html#seed\",\"classes\":\"\",\"parent\":\"VercelAISDKConfig\"},{\"kind\":64,\"name\":\"createBedrockTokenUsage\",\"url\":\"functions/createBedrockTokenUsage.html\",\"classes\":\"\"},{\"kind\":64,\"name\":\"createOpenAiUsage\",\"url\":\"functions/createOpenAiUsage.html\",\"classes\":\"\"},{\"kind\":8,\"name\":\"LDFeedbackKind\",\"url\":\"enums/LDFeedbackKind.html\",\"classes\":\"\"},{\"kind\":16,\"name\":\"Positive\",\"url\":\"enums/LDFeedbackKind.html#Positive\",\"classes\":\"\",\"parent\":\"LDFeedbackKind\"},{\"kind\":16,\"name\":\"Negative\",\"url\":\"enums/LDFeedbackKind.html#Negative\",\"classes\":\"\",\"parent\":\"LDFeedbackKind\"},{\"kind\":256,\"name\":\"LDTokenUsage\",\"url\":\"interfaces/LDTokenUsage.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"total\",\"url\":\"interfaces/LDTokenUsage.html#total\",\"classes\":\"\",\"parent\":\"LDTokenUsage\"},{\"kind\":1024,\"name\":\"input\",\"url\":\"interfaces/LDTokenUsage.html#input\",\"classes\":\"\",\"parent\":\"LDTokenUsage\"},{\"kind\":1024,\"name\":\"output\",\"url\":\"interfaces/LDTokenUsage.html#output\",\"classes\":\"\",\"parent\":\"LDTokenUsage\"},{\"kind\":64,\"name\":\"createVercelAISDKTokenUsage\",\"url\":\"functions/createVercelAISDKTokenUsage.html\",\"classes\":\"\"},{\"kind\":256,\"name\":\"LDAIClient\",\"url\":\"interfaces/LDAIClient.html\",\"classes\":\"\"},{\"kind\":2048,\"name\":\"config\",\"url\":\"interfaces/LDAIClient.html#config\",\"classes\":\"\",\"parent\":\"LDAIClient\"}],\"index\":{\"version\":\"2.3.9\",\"fields\":[\"name\",\"comment\"],\"fieldVectors\":[[\"name/0\",[0,37.217]],[\"comment/0\",[]],[\"name/1\",[1,37.217]],[\"comment/1\",[]],[\"name/2\",[2,37.217]],[\"comment/2\",[]],[\"name/3\",[3,37.217]],[\"comment/3\",[]],[\"name/4\",[4,37.217]],[\"comment/4\",[]],[\"name/5\",[5,37.217]],[\"comment/5\",[]],[\"name/6\",[6,37.217]],[\"comment/6\",[]],[\"name/7\",[7,37.217]],[\"comment/7\",[]],[\"name/8\",[8,37.217]],[\"comment/8\",[]],[\"name/9\",[9,37.217]],[\"comment/9\",[]],[\"name/10\",[10,37.217]],[\"comment/10\",[]],[\"name/11\",[11,37.217]],[\"comment/11\",[]],[\"name/12\",[12,37.217]],[\"comment/12\",[]],[\"name/13\",[13,37.217]],[\"comment/13\",[]],[\"name/14\",[14,37.217]],[\"comment/14\",[]],[\"name/15\",[15,32.108]],[\"comment/15\",[]],[\"name/16\",[16,37.217]],[\"comment/16\",[]],[\"name/17\",[17,26.231]],[\"comment/17\",[]],[\"name/18\",[18,37.217]],[\"comment/18\",[]],[\"name/19\",[17,26.231]],[\"comment/19\",[]],[\"name/20\",[19,37.217]],[\"comment/20\",[]],[\"name/21\",[15,32.108]],[\"comment/21\",[]],[\"name/22\",[20,37.217]],[\"comment/22\",[]],[\"name/23\",[21,37.217]],[\"comment/23\",[]],[\"name/24\",[22,37.217]],[\"comment/24\",[]],[\"name/25\",[23,37.217]],[\"comment/25\",[]],[\"name/26\",[24,32.108]],[\"comment/26\",[]],[\"name/27\",[25,32.108]],[\"comment/27\",[]],[\"name/28\",[26,37.217]],[\"comment/28\",[]],[\"name/29\",[27,37.217]],[\"comment/29\",[]],[\"name/30\",[28,37.217]],[\"comment/30\",[]],[\"name/31\",[29,37.217]],[\"comment/31\",[]],[\"name/32\",[17,26.231]],[\"comment/32\",[]],[\"name/33\",[30,37.217]],[\"comment/33\",[]],[\"name/34\",[31,37.217]],[\"comment/34\",[]],[\"name/35\",[17,26.231]],[\"comment/35\",[]],[\"name/36\",[32,37.217]],[\"comment/36\",[]],[\"name/37\",[33,37.217]],[\"comment/37\",[]],[\"name/38\",[34,37.217]],[\"comment/38\",[]],[\"name/39\",[24,32.108]],[\"comment/39\",[]],[\"name/40\",[25,32.108]],[\"comment/40\",[]],[\"name/41\",[35,37.217]],[\"comment/41\",[]],[\"name/42\",[36,37.217]],[\"comment/42\",[]],[\"name/43\",[37,37.217]],[\"comment/43\",[]],[\"name/44\",[38,37.217]],[\"comment/44\",[]],[\"name/45\",[39,37.217]],[\"comment/45\",[]],[\"name/46\",[40,37.217]],[\"comment/46\",[]],[\"name/47\",[41,37.217]],[\"comment/47\",[]],[\"name/48\",[42,37.217]],[\"comment/48\",[]],[\"name/49\",[43,37.217]],[\"comment/49\",[]],[\"name/50\",[44,37.217]],[\"comment/50\",[]],[\"name/51\",[45,37.217]],[\"comment/51\",[]],[\"name/52\",[46,37.217]],[\"comment/52\",[]],[\"name/53\",[47,37.217]],[\"comment/53\",[]],[\"name/54\",[48,37.217]],[\"comment/54\",[]],[\"name/55\",[49,37.217]],[\"comment/55\",[]],[\"name/56\",[50,37.217]],[\"comment/56\",[]],[\"name/57\",[51,37.217]],[\"comment/57\",[]],[\"name/58\",[52,37.217]],[\"comment/58\",[]],[\"name/59\",[53,37.217]],[\"comment/59\",[]],[\"name/60\",[54,37.217]],[\"comment/60\",[]]],\"invertedIndex\":[[\"__type\",{\"_index\":17,\"name\":{\"17\":{},\"19\":{},\"32\":{},\"35\":{}},\"comment\":{}}],[\"config\",{\"_index\":54,\"name\":{\"60\":{}},\"comment\":{}}],[\"content\",{\"_index\":22,\"name\":{\"24\":{}},\"comment\":{}}],[\"createbedrocktokenusage\",{\"_index\":43,\"name\":{\"49\":{}},\"comment\":{}}],[\"createopenaiusage\",{\"_index\":44,\"name\":{\"50\":{}},\"comment\":{}}],[\"createvercelaisdktokenusage\",{\"_index\":52,\"name\":{\"58\":{}},\"comment\":{}}],[\"custom\",{\"_index\":18,\"name\":{\"18\":{}},\"comment\":{}}],[\"enabled\",{\"_index\":28,\"name\":{\"30\":{}},\"comment\":{}}],[\"frequencypenalty\",{\"_index\":40,\"name\":{\"46\":{}},\"comment\":{}}],[\"getsummary\",{\"_index\":13,\"name\":{\"13\":{}},\"comment\":{}}],[\"initai\",{\"_index\":0,\"name\":{\"0\":{}},\"comment\":{}}],[\"input\",{\"_index\":50,\"name\":{\"56\":{}},\"comment\":{}}],[\"ldaiclient\",{\"_index\":53,\"name\":{\"59\":{}},\"comment\":{}}],[\"ldaiconfig\",{\"_index\":23,\"name\":{\"25\":{}},\"comment\":{}}],[\"ldaiconfigtracker\",{\"_index\":1,\"name\":{\"1\":{}},\"comment\":{}}],[\"ldaidefaults\",{\"_index\":30,\"name\":{\"33\":{}},\"comment\":{}}],[\"ldfeedbackkind\",{\"_index\":45,\"name\":{\"51\":{}},\"comment\":{}}],[\"ldmessage\",{\"_index\":20,\"name\":{\"22\":{}},\"comment\":{}}],[\"ldmodelconfig\",{\"_index\":14,\"name\":{\"14\":{}},\"comment\":{}}],[\"ldproviderconfig\",{\"_index\":19,\"name\":{\"20\":{}},\"comment\":{}}],[\"ldtokenusage\",{\"_index\":48,\"name\":{\"54\":{}},\"comment\":{}}],[\"maxtokens\",{\"_index\":35,\"name\":{\"41\":{}},\"comment\":{}}],[\"messages\",{\"_index\":25,\"name\":{\"27\":{},\"40\":{}},\"comment\":{}}],[\"model\",{\"_index\":24,\"name\":{\"26\":{},\"39\":{}},\"comment\":{}}],[\"name\",{\"_index\":15,\"name\":{\"15\":{},\"21\":{}},\"comment\":{}}],[\"negative\",{\"_index\":47,\"name\":{\"53\":{}},\"comment\":{}}],[\"noninterpolatedmessages\",{\"_index\":33,\"name\":{\"37\":{}},\"comment\":{}}],[\"output\",{\"_index\":51,\"name\":{\"57\":{}},\"comment\":{}}],[\"parameters\",{\"_index\":16,\"name\":{\"16\":{}},\"comment\":{}}],[\"positive\",{\"_index\":46,\"name\":{\"52\":{}},\"comment\":{}}],[\"presencepenalty\",{\"_index\":39,\"name\":{\"45\":{}},\"comment\":{}}],[\"provider\",{\"_index\":26,\"name\":{\"28\":{}},\"comment\":{}}],[\"role\",{\"_index\":21,\"name\":{\"23\":{}},\"comment\":{}}],[\"seed\",{\"_index\":42,\"name\":{\"48\":{}},\"comment\":{}}],[\"stopsequences\",{\"_index\":41,\"name\":{\"47\":{}},\"comment\":{}}],[\"temperature\",{\"_index\":36,\"name\":{\"42\":{}},\"comment\":{}}],[\"topk\",{\"_index\":38,\"name\":{\"44\":{}},\"comment\":{}}],[\"topp\",{\"_index\":37,\"name\":{\"43\":{}},\"comment\":{}}],[\"total\",{\"_index\":49,\"name\":{\"55\":{}},\"comment\":{}}],[\"tovercelaisdk\",{\"_index\":29,\"name\":{\"31\":{}},\"comment\":{}}],[\"trackbedrockconversemetrics\",{\"_index\":10,\"name\":{\"10\":{}},\"comment\":{}}],[\"trackduration\",{\"_index\":2,\"name\":{\"2\":{}},\"comment\":{}}],[\"trackdurationof\",{\"_index\":8,\"name\":{\"8\":{}},\"comment\":{}}],[\"tracker\",{\"_index\":27,\"name\":{\"29\":{}},\"comment\":{}}],[\"trackerror\",{\"_index\":5,\"name\":{\"5\":{}},\"comment\":{}}],[\"trackfeedback\",{\"_index\":6,\"name\":{\"6\":{}},\"comment\":{}}],[\"trackopenaimetrics\",{\"_index\":9,\"name\":{\"9\":{}},\"comment\":{}}],[\"tracksuccess\",{\"_index\":4,\"name\":{\"4\":{}},\"comment\":{}}],[\"tracktimetofirsttoken\",{\"_index\":7,\"name\":{\"7\":{}},\"comment\":{}}],[\"tracktokens\",{\"_index\":3,\"name\":{\"3\":{}},\"comment\":{}}],[\"trackvercelaisdkgeneratetextmetrics\",{\"_index\":11,\"name\":{\"11\":{}},\"comment\":{}}],[\"trackvercelaisdkstreamtextmetrics\",{\"_index\":12,\"name\":{\"12\":{}},\"comment\":{}}],[\"vercelaisdkconfig\",{\"_index\":34,\"name\":{\"38\":{}},\"comment\":{}}],[\"vercelaisdkmapoptions\",{\"_index\":32,\"name\":{\"36\":{}},\"comment\":{}}],[\"vercelaisdkprovider\",{\"_index\":31,\"name\":{\"34\":{}},\"comment\":{}}]],\"pipeline\":[]}}");