@memberjunction/ai-openai 2.11.0 → 2.13.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.
@@ -1,13 +1,30 @@
1
1
  import { BaseLLM, ChatMessage, ChatParams, ChatResult, ClassifyParams, ClassifyResult, SummarizeParams, SummarizeResult } from "@memberjunction/ai";
2
2
  import { OpenAI } from "openai";
3
3
  import { ChatCompletionMessageParam } from "openai/resources";
4
+ /**
5
+ * OpenAI implementation of the BaseLLM class
6
+ */
4
7
  export declare class OpenAILLM extends BaseLLM {
5
- static _openAI: OpenAI;
8
+ private _openAI;
6
9
  constructor(apiKey: string);
10
+ /**
11
+ * Read only getter method to get the OpenAI instance
12
+ */
13
+ get OpenAI(): OpenAI;
7
14
  ChatCompletion(params: ChatParams): Promise<ChatResult>;
8
15
  SummarizeText(params: SummarizeParams): Promise<SummarizeResult>;
9
16
  ClassifyText(params: ClassifyParams): Promise<ClassifyResult>;
10
17
  ConvertMJToOpenAIChatMessages(messages: ChatMessage[]): ChatCompletionMessageParam[];
18
+ /**
19
+ * Utility method to map a MemberJunction role to OpenAI role
20
+ * - system maps to system
21
+ * - user maps to user
22
+ * - assistant maps to assistant
23
+ * - anything else throws an error
24
+ * While the above is a direct 1:1 mapping, it is possible that OpenAI may have more roles in the future and this method will need to be updated for flexibility
25
+ * @param role
26
+ * @returns
27
+ */
11
28
  ConvertMJToOpenAIRole(role: string): "user" | "system" | "assistant";
12
29
  }
13
30
  export declare function LoadOpenAILLM(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"openAI.d.ts","sourceRoot":"","sources":["../../src/models/openAI.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAmB,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAA4C,eAAe,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC/M,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAE9D,qBACa,SAAU,SAAQ,OAAO;IAClC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEX,MAAM,EAAE,MAAM;IAQb,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAuCvD,aAAa,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAmBhE,YAAY,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAInE,6BAA6B,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,0BAA0B,EAAE;IAUpF,qBAAqB,CAAC,IAAI,EAAE,MAAM;CAY5C;AAED,wBAAgB,aAAa,SAE5B"}
1
+ {"version":3,"file":"openAI.d.ts","sourceRoot":"","sources":["../../src/models/openAI.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAmB,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAA4C,eAAe,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC/M,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAE9D;;GAEG;AACH,qBACa,SAAU,SAAQ,OAAO;IAClC,OAAO,CAAC,OAAO,CAAS;gBAEZ,MAAM,EAAE,MAAM;IAS1B;;OAEG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IAEY,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAuCvD,aAAa,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAmBhE,YAAY,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAInE,6BAA6B,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,0BAA0B,EAAE;IAU3F;;;;;;;;;OASG;IACI,qBAAqB,CAAC,IAAI,EAAE,MAAM;CAY5C;AAED,wBAAgB,aAAa,SAE5B"}
@@ -5,24 +5,32 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- var OpenAILLM_1;
9
8
  Object.defineProperty(exports, "__esModule", { value: true });
10
9
  exports.LoadOpenAILLM = exports.OpenAILLM = void 0;
11
10
  const ai_1 = require("@memberjunction/ai");
12
11
  const openai_1 = require("openai");
13
12
  const global_1 = require("@memberjunction/global");
14
- let OpenAILLM = OpenAILLM_1 = class OpenAILLM extends ai_1.BaseLLM {
13
+ /**
14
+ * OpenAI implementation of the BaseLLM class
15
+ */
16
+ let OpenAILLM = class OpenAILLM extends ai_1.BaseLLM {
15
17
  constructor(apiKey) {
16
18
  super(apiKey);
17
- if (!OpenAILLM_1._openAI)
18
- OpenAILLM_1._openAI = new openai_1.OpenAI({
19
- apiKey: apiKey,
20
- });
19
+ // now create the OpenAI instance
20
+ this._openAI = new openai_1.OpenAI({
21
+ apiKey: apiKey,
22
+ });
23
+ }
24
+ /**
25
+ * Read only getter method to get the OpenAI instance
26
+ */
27
+ get OpenAI() {
28
+ return this._openAI;
21
29
  }
22
30
  async ChatCompletion(params) {
23
31
  const messages = this.ConvertMJToOpenAIChatMessages(params.messages);
24
32
  const startTime = new Date();
25
- const result = await OpenAILLM_1._openAI.chat.completions.create({
33
+ const result = await this.OpenAI.chat.completions.create({
26
34
  model: params.model,
27
35
  messages: messages,
28
36
  temperature: params.temperature,
@@ -56,7 +64,7 @@ let OpenAILLM = OpenAILLM_1 = class OpenAILLM extends ai_1.BaseLLM {
56
64
  async SummarizeText(params) {
57
65
  const messages = this.ConvertMJToOpenAIChatMessages(params.messages);
58
66
  const startTime = new Date();
59
- const result = await OpenAILLM_1._openAI.chat.completions.create({
67
+ const result = await this.OpenAI.chat.completions.create({
60
68
  model: params.model,
61
69
  messages: messages
62
70
  });
@@ -79,6 +87,16 @@ let OpenAILLM = OpenAILLM_1 = class OpenAILLM extends ai_1.BaseLLM {
79
87
  };
80
88
  });
81
89
  }
90
+ /**
91
+ * Utility method to map a MemberJunction role to OpenAI role
92
+ * - system maps to system
93
+ * - user maps to user
94
+ * - assistant maps to assistant
95
+ * - anything else throws an error
96
+ * While the above is a direct 1:1 mapping, it is possible that OpenAI may have more roles in the future and this method will need to be updated for flexibility
97
+ * @param role
98
+ * @returns
99
+ */
82
100
  ConvertMJToOpenAIRole(role) {
83
101
  switch (role.trim().toLowerCase()) {
84
102
  case 'system':
@@ -93,7 +111,7 @@ let OpenAILLM = OpenAILLM_1 = class OpenAILLM extends ai_1.BaseLLM {
93
111
  }
94
112
  };
95
113
  exports.OpenAILLM = OpenAILLM;
96
- exports.OpenAILLM = OpenAILLM = OpenAILLM_1 = __decorate([
114
+ exports.OpenAILLM = OpenAILLM = __decorate([
97
115
  (0, global_1.RegisterClass)(ai_1.BaseLLM, 'OpenAILLM')
98
116
  ], OpenAILLM);
99
117
  function LoadOpenAILLM() {
@@ -1 +1 @@
1
- {"version":3,"file":"openAI.js","sourceRoot":"","sources":["../../src/models/openAI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openAI.js","sourceRoot":"","sources":["../../src/models/openAI.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,12 @@
1
1
  import { EmbedTextParams, EmbedTextsParams, EmbedTextResult, EmbedTextsResult, Embeddings } from "@memberjunction/ai";
2
2
  import { OpenAI } from "openai";
3
3
  export declare class OpenAIEmbedding extends Embeddings {
4
- static _openAI: OpenAI;
4
+ private _openAI;
5
5
  constructor(apiKey: string);
6
+ /**
7
+ * Read only getter method to get the OpenAI instance
8
+ */
9
+ get OpenAI(): OpenAI;
6
10
  EmbedText(params: EmbedTextParams): Promise<EmbedTextResult>;
7
11
  EmbedTexts(params: EmbedTextsParams): Promise<EmbedTextsResult>;
8
12
  GetEmbeddingModels(): Promise<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"openAIEmbedding.d.ts","sourceRoot":"","sources":["../../src/models/openAIEmbedding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,UAAU,EAAc,MAAM,oBAAoB,CAAC;AAElI,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,qBACa,eAAgB,SAAQ,UAAU;IAC3C,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEX,MAAM,EAAE,MAAM;IAUb,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAsB5D,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAuB/D,kBAAkB,IAAI,OAAO,CAAC,GAAG,CAAC;CAmBlD;AAED,wBAAgB,mBAAmB,SAElC"}
1
+ {"version":3,"file":"openAIEmbedding.d.ts","sourceRoot":"","sources":["../../src/models/openAIEmbedding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,UAAU,EAAc,MAAM,oBAAoB,CAAC;AAElI,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,qBACa,eAAgB,SAAQ,UAAU;IAC3C,OAAO,CAAC,OAAO,CAAS;gBAEZ,MAAM,EAAE,MAAM;IAQ1B;;OAEG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IAEY,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAsB5D,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAuB/D,kBAAkB,IAAI,OAAO,CAAC,GAAG,CAAC;CAmBlD;AAED,wBAAgB,mBAAmB,SAElC"}
@@ -5,20 +5,23 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- var OpenAIEmbedding_1;
9
8
  Object.defineProperty(exports, "__esModule", { value: true });
10
9
  exports.LoadOpenAIEmbedding = exports.OpenAIEmbedding = void 0;
11
10
  const ai_1 = require("@memberjunction/ai");
12
11
  const global_1 = require("@memberjunction/global");
13
12
  const openai_1 = require("openai");
14
- let OpenAIEmbedding = OpenAIEmbedding_1 = class OpenAIEmbedding extends ai_1.Embeddings {
13
+ let OpenAIEmbedding = class OpenAIEmbedding extends ai_1.Embeddings {
15
14
  constructor(apiKey) {
16
15
  super(apiKey);
17
- if (!OpenAIEmbedding_1._openAI) {
18
- OpenAIEmbedding_1._openAI = new openai_1.OpenAI({
19
- apiKey: apiKey,
20
- });
21
- }
16
+ this._openAI = new openai_1.OpenAI({
17
+ apiKey: apiKey,
18
+ });
19
+ }
20
+ /**
21
+ * Read only getter method to get the OpenAI instance
22
+ */
23
+ get OpenAI() {
24
+ return this._openAI;
22
25
  }
23
26
  async EmbedText(params) {
24
27
  let body = {
@@ -26,7 +29,7 @@ let OpenAIEmbedding = OpenAIEmbedding_1 = class OpenAIEmbedding extends ai_1.Emb
26
29
  model: params.model || "text-embedding-3-small"
27
30
  };
28
31
  try {
29
- let response = await OpenAIEmbedding_1._openAI.embeddings.create(body);
32
+ let response = await this.OpenAI.embeddings.create(body);
30
33
  return {
31
34
  object: response.object,
32
35
  model: response.model,
@@ -45,7 +48,7 @@ let OpenAIEmbedding = OpenAIEmbedding_1 = class OpenAIEmbedding extends ai_1.Emb
45
48
  model: params.model || "text-embedding-3-small"
46
49
  };
47
50
  try {
48
- let response = await OpenAIEmbedding_1._openAI.embeddings.create(body);
51
+ let response = await this.OpenAI.embeddings.create(body);
49
52
  return {
50
53
  object: response.object,
51
54
  model: response.model,
@@ -80,7 +83,7 @@ let OpenAIEmbedding = OpenAIEmbedding_1 = class OpenAIEmbedding extends ai_1.Emb
80
83
  }
81
84
  };
82
85
  exports.OpenAIEmbedding = OpenAIEmbedding;
83
- exports.OpenAIEmbedding = OpenAIEmbedding = OpenAIEmbedding_1 = __decorate([
86
+ exports.OpenAIEmbedding = OpenAIEmbedding = __decorate([
84
87
  (0, global_1.RegisterClass)(ai_1.Embeddings, 'OpenAIEmbedding')
85
88
  ], OpenAIEmbedding);
86
89
  function LoadOpenAIEmbedding() {
@@ -1 +1 @@
1
- {"version":3,"file":"openAIEmbedding.js","sourceRoot":"","sources":["../../src/models/openAIEmbedding.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAkI;AAClI,mDAAuD;AACvD,mCAAgC;AAGzB,IAAM,eAAe,uBAArB,MAAM,eAAgB,SAAQ,eAAU;IAG3C,YAAY,MAAc;QACtB,KAAK,CAAC,MAAM,CAAC,CAAC;QAEd,IAAI,CAAC,iBAAe,CAAC,OAAO,EAAC,CAAC;YAC1B,iBAAe,CAAC,OAAO,GAAG,IAAI,eAAM,CAAC;gBACjC,MAAM,EAAE,MAAM;aACjB,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,MAAuB;QAC1C,IAAI,IAAI,GAA4C;YAChD,KAAK,EAAE,MAAM,CAAC,IAAI;YAClB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,wBAAwB;SAClD,CAAA;QAED,IAAG,CAAC;YACA,IAAI,QAAQ,GAAG,MAAM,iBAAe,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAErE,OAAO;gBACH,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,UAAU,EAAE,IAAI,eAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;gBAC3D,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;aACrC,CAAA;QACL,CAAC;QACD,OAAM,EAAE,EAAC,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,MAAwB;QAC5C,IAAI,IAAI,GAA4C;YAChD,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,wBAAwB;SAClD,CAAA;QAED,IAAG,CAAC;YACA,IAAI,QAAQ,GAAG,MAAM,iBAAe,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAErE,OAAO;gBACH,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,UAAU,EAAE,IAAI,eAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;gBAC3D,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;aACvD,CAAA;QACL,CAAC;QACD,OAAM,EAAE,EAAC,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED,4CAA4C;IACrC,KAAK,CAAC,kBAAkB;QAC3B,OAAO;YACH;gBACI,KAAK,EAAE,wBAAwB;gBAC/B,WAAW,EAAE,qEAAqE;gBAClF,eAAe,EAAE,IAAI;aACxB;YACD;gBACI,KAAK,EAAE,wBAAwB;gBAC/B,WAAW,EAAE,+DAA+D;gBAC5E,eAAe,EAAE,IAAI;aACxB;YACD;gBACI,KAAK,EAAE,wBAAwB;gBAC/B,WAAW,EAAE,mFAAmF;gBAChG,eAAe,EAAE,IAAI;aACxB;SACJ,CAAA;IACL,CAAC;CACJ,CAAA;AA7EY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,sBAAa,EAAC,eAAU,EAAE,iBAAiB,CAAC;GAChC,eAAe,CA6E3B;AAED,SAAgB,mBAAmB;IAC/B,iFAAiF;AACrF,CAAC;AAFD,kDAEC"}
1
+ {"version":3,"file":"openAIEmbedding.js","sourceRoot":"","sources":["../../src/models/openAIEmbedding.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAkI;AAClI,mDAAuD;AACvD,mCAAgC;AAGzB,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,eAAU;IAG3C,YAAY,MAAc;QACtB,KAAK,CAAC,MAAM,CAAC,CAAC;QAEd,IAAI,CAAC,OAAO,GAAG,IAAI,eAAM,CAAC;YACtB,MAAM,EAAE,MAAM;SACjB,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,MAAuB;QAC1C,IAAI,IAAI,GAA4C;YAChD,KAAK,EAAE,MAAM,CAAC,IAAI;YAClB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,wBAAwB;SAClD,CAAA;QAED,IAAG,CAAC;YACA,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAEzD,OAAO;gBACH,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,UAAU,EAAE,IAAI,eAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;gBAC3D,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;aACrC,CAAA;QACL,CAAC;QACD,OAAM,EAAE,EAAC,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,MAAwB;QAC5C,IAAI,IAAI,GAA4C;YAChD,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,wBAAwB;SAClD,CAAA;QAED,IAAG,CAAC;YACA,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAEzD,OAAO;gBACH,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,UAAU,EAAE,IAAI,eAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;gBAC3D,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;aACvD,CAAA;QACL,CAAC;QACD,OAAM,EAAE,EAAC,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED,4CAA4C;IACrC,KAAK,CAAC,kBAAkB;QAC3B,OAAO;YACH;gBACI,KAAK,EAAE,wBAAwB;gBAC/B,WAAW,EAAE,qEAAqE;gBAClF,eAAe,EAAE,IAAI;aACxB;YACD;gBACI,KAAK,EAAE,wBAAwB;gBAC/B,WAAW,EAAE,+DAA+D;gBAC5E,eAAe,EAAE,IAAI;aACxB;YACD;gBACI,KAAK,EAAE,wBAAwB;gBAC/B,WAAW,EAAE,mFAAmF;gBAChG,eAAe,EAAE,IAAI;aACxB;SACJ,CAAA;IACL,CAAC;CACJ,CAAA;AAlFY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,sBAAa,EAAC,eAAU,EAAE,iBAAiB,CAAC;GAChC,eAAe,CAkF3B;AAED,SAAgB,mBAAmB;IAC/B,iFAAiF;AACrF,CAAC;AAFD,kDAEC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/ai-openai",
3
- "version": "2.11.0",
3
+ "version": "2.13.0",
4
4
  "description": "MemberJunction Wrapper for OpenAI AI Models",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -19,8 +19,8 @@
19
19
  "typescript": "^5.4.5"
20
20
  },
21
21
  "dependencies": {
22
- "@memberjunction/ai": "2.11.0",
23
- "@memberjunction/global": "2.11.0",
22
+ "@memberjunction/ai": "2.13.0",
23
+ "@memberjunction/global": "2.13.0",
24
24
  "openai": "^4.28.4"
25
25
  }
26
26
  }