@aigne/openai 1.74.0-beta.7 → 1.74.0-beta.9
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.
- package/dist/index.cjs +2 -0
- package/dist/index.d.cts +2 -1
- package/dist/index.d.mts +2 -1
- package/dist/index.mjs +2 -1
- package/dist/openai-embedding-model.cjs +68 -0
- package/dist/openai-embedding-model.d.cts +28 -0
- package/dist/openai-embedding-model.d.cts.map +1 -0
- package/dist/openai-embedding-model.d.mts +28 -0
- package/dist/openai-embedding-model.d.mts.map +1 -0
- package/dist/openai-embedding-model.mjs +68 -0
- package/dist/openai-embedding-model.mjs.map +1 -0
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
const require_openai_chat_model = require('./openai-chat-model.cjs');
|
|
2
|
+
const require_openai_embedding_model = require('./openai-embedding-model.cjs');
|
|
2
3
|
const require_openai_image_model = require('./openai-image-model.cjs');
|
|
3
4
|
const require_openai_video_model = require('./openai-video-model.cjs');
|
|
4
5
|
|
|
5
6
|
exports.OpenAIChatModel = require_openai_chat_model.OpenAIChatModel;
|
|
7
|
+
exports.OpenAIEmbeddingModel = require_openai_embedding_model.OpenAIEmbeddingModel;
|
|
6
8
|
exports.OpenAIImageModel = require_openai_image_model.OpenAIImageModel;
|
|
7
9
|
exports.OpenAIVideoModel = require_openai_video_model.OpenAIVideoModel;
|
|
8
10
|
exports.contentsFromInputMessages = require_openai_chat_model.contentsFromInputMessages;
|
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { OpenAIChatModel, OpenAIChatModelCapabilities, OpenAIChatModelOptions, contentsFromInputMessages, openAIChatModelOptionsSchema, toolsFromInputTools } from "./openai-chat-model.cjs";
|
|
2
|
+
import { OpenAIEmbeddingModel, OpenAIEmbeddingModelInput, OpenAIEmbeddingModelOptions, OpenAIEmbeddingModelOutput } from "./openai-embedding-model.cjs";
|
|
2
3
|
import { OpenAIImageModel, OpenAIImageModelInput, OpenAIImageModelOptions, OpenAIImageModelOutput } from "./openai-image-model.cjs";
|
|
3
4
|
import { OpenAIVideoModel, OpenAIVideoModelInput, OpenAIVideoModelOptions, OpenAIVideoModelOutput } from "./openai-video-model.cjs";
|
|
4
|
-
export { OpenAIChatModel, OpenAIChatModelCapabilities, OpenAIChatModelOptions, OpenAIImageModel, OpenAIImageModelInput, OpenAIImageModelOptions, OpenAIImageModelOutput, OpenAIVideoModel, OpenAIVideoModelInput, OpenAIVideoModelOptions, OpenAIVideoModelOutput, contentsFromInputMessages, openAIChatModelOptionsSchema, toolsFromInputTools };
|
|
5
|
+
export { OpenAIChatModel, OpenAIChatModelCapabilities, OpenAIChatModelOptions, OpenAIEmbeddingModel, OpenAIEmbeddingModelInput, OpenAIEmbeddingModelOptions, OpenAIEmbeddingModelOutput, OpenAIImageModel, OpenAIImageModelInput, OpenAIImageModelOptions, OpenAIImageModelOutput, OpenAIVideoModel, OpenAIVideoModelInput, OpenAIVideoModelOptions, OpenAIVideoModelOutput, contentsFromInputMessages, openAIChatModelOptionsSchema, toolsFromInputTools };
|
package/dist/index.d.mts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { OpenAIChatModel, OpenAIChatModelCapabilities, OpenAIChatModelOptions, contentsFromInputMessages, openAIChatModelOptionsSchema, toolsFromInputTools } from "./openai-chat-model.mjs";
|
|
2
|
+
import { OpenAIEmbeddingModel, OpenAIEmbeddingModelInput, OpenAIEmbeddingModelOptions, OpenAIEmbeddingModelOutput } from "./openai-embedding-model.mjs";
|
|
2
3
|
import { OpenAIImageModel, OpenAIImageModelInput, OpenAIImageModelOptions, OpenAIImageModelOutput } from "./openai-image-model.mjs";
|
|
3
4
|
import { OpenAIVideoModel, OpenAIVideoModelInput, OpenAIVideoModelOptions, OpenAIVideoModelOutput } from "./openai-video-model.mjs";
|
|
4
|
-
export { OpenAIChatModel, OpenAIChatModelCapabilities, OpenAIChatModelOptions, OpenAIImageModel, OpenAIImageModelInput, OpenAIImageModelOptions, OpenAIImageModelOutput, OpenAIVideoModel, OpenAIVideoModelInput, OpenAIVideoModelOptions, OpenAIVideoModelOutput, contentsFromInputMessages, openAIChatModelOptionsSchema, toolsFromInputTools };
|
|
5
|
+
export { OpenAIChatModel, OpenAIChatModelCapabilities, OpenAIChatModelOptions, OpenAIEmbeddingModel, OpenAIEmbeddingModelInput, OpenAIEmbeddingModelOptions, OpenAIEmbeddingModelOutput, OpenAIImageModel, OpenAIImageModelInput, OpenAIImageModelOptions, OpenAIImageModelOutput, OpenAIVideoModel, OpenAIVideoModelInput, OpenAIVideoModelOptions, OpenAIVideoModelOutput, contentsFromInputMessages, openAIChatModelOptionsSchema, toolsFromInputTools };
|
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { OpenAIChatModel, contentsFromInputMessages, openAIChatModelOptionsSchema, toolsFromInputTools } from "./openai-chat-model.mjs";
|
|
2
|
+
import { OpenAIEmbeddingModel } from "./openai-embedding-model.mjs";
|
|
2
3
|
import { OpenAIImageModel } from "./openai-image-model.mjs";
|
|
3
4
|
import { OpenAIVideoModel } from "./openai-video-model.mjs";
|
|
4
5
|
|
|
5
|
-
export { OpenAIChatModel, OpenAIImageModel, OpenAIVideoModel, contentsFromInputMessages, openAIChatModelOptionsSchema, toolsFromInputTools };
|
|
6
|
+
export { OpenAIChatModel, OpenAIEmbeddingModel, OpenAIImageModel, OpenAIVideoModel, contentsFromInputMessages, openAIChatModelOptionsSchema, toolsFromInputTools };
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
const require_rolldown_runtime = require('./_virtual/rolldown_runtime.cjs');
|
|
2
|
+
const require_openai = require('./openai.cjs');
|
|
3
|
+
let _aigne_model_base = require("@aigne/model-base");
|
|
4
|
+
let _aigne_model_base_utils_type_utils = require("@aigne/model-base/utils/type-utils");
|
|
5
|
+
let zod = require("zod");
|
|
6
|
+
|
|
7
|
+
//#region src/openai-embedding-model.ts
|
|
8
|
+
const DEFAULT_MODEL = "text-embedding-3-small";
|
|
9
|
+
const openAIEmbeddingModelInputSchema = _aigne_model_base.embeddingModelInputSchema.extend({});
|
|
10
|
+
const openAIEmbeddingModelOptionsSchema = zod.z.object({
|
|
11
|
+
apiKey: zod.z.string().optional(),
|
|
12
|
+
baseURL: zod.z.string().optional(),
|
|
13
|
+
model: zod.z.string().optional(),
|
|
14
|
+
modelOptions: zod.z.object({}).optional(),
|
|
15
|
+
clientOptions: zod.z.object({}).optional()
|
|
16
|
+
});
|
|
17
|
+
var OpenAIEmbeddingModel = class extends _aigne_model_base.EmbeddingModel {
|
|
18
|
+
constructor(options) {
|
|
19
|
+
super({
|
|
20
|
+
...options,
|
|
21
|
+
inputSchema: openAIEmbeddingModelInputSchema,
|
|
22
|
+
description: options?.description ?? "Generate embeddings by OpenAI embedding models"
|
|
23
|
+
});
|
|
24
|
+
this.options = options;
|
|
25
|
+
if (options) (0, _aigne_model_base_utils_type_utils.checkArguments)(this.name, openAIEmbeddingModelOptionsSchema, options);
|
|
26
|
+
}
|
|
27
|
+
_client;
|
|
28
|
+
apiKeyEnvName = "OPENAI_API_KEY";
|
|
29
|
+
get client() {
|
|
30
|
+
if (this._client) return this._client;
|
|
31
|
+
const { apiKey, url } = this.credential;
|
|
32
|
+
if (!apiKey) throw new Error(`${this.name} requires an API key. Please provide it via \`options.apiKey\`, or set the \`${this.apiKeyEnvName}\` environment variable`);
|
|
33
|
+
this._client ??= new require_openai.CustomOpenAI({
|
|
34
|
+
baseURL: url,
|
|
35
|
+
apiKey,
|
|
36
|
+
...this.options?.clientOptions
|
|
37
|
+
});
|
|
38
|
+
return this._client;
|
|
39
|
+
}
|
|
40
|
+
get credential() {
|
|
41
|
+
return {
|
|
42
|
+
url: this.options?.baseURL || process.env.OPENAI_BASE_URL,
|
|
43
|
+
apiKey: this.options?.apiKey || process.env[this.apiKeyEnvName],
|
|
44
|
+
model: this.options?.model || DEFAULT_MODEL
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
async process(input, _options) {
|
|
48
|
+
const model = input.modelOptions?.model || this.credential.model;
|
|
49
|
+
const body = {
|
|
50
|
+
input: input.input,
|
|
51
|
+
model,
|
|
52
|
+
...input.dimensions ? { dimensions: input.dimensions } : {},
|
|
53
|
+
...input.modelOptions?.encoding_format ? { encoding_format: input.modelOptions.encoding_format } : {}
|
|
54
|
+
};
|
|
55
|
+
const response = await this.client.embeddings.create(body);
|
|
56
|
+
return {
|
|
57
|
+
embeddings: response.data.map((item) => item.embedding),
|
|
58
|
+
usage: {
|
|
59
|
+
inputTokens: response.usage?.prompt_tokens ?? 0,
|
|
60
|
+
outputTokens: 0
|
|
61
|
+
},
|
|
62
|
+
model: response.model
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
//#endregion
|
|
68
|
+
exports.OpenAIEmbeddingModel = OpenAIEmbeddingModel;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { EmbeddingModel, EmbeddingModelInput, EmbeddingModelOptions, EmbeddingModelOutput, ModelInvokeOptions } from "@aigne/model-base";
|
|
2
|
+
import OpenAI, { ClientOptions } from "openai";
|
|
3
|
+
|
|
4
|
+
//#region src/openai-embedding-model.d.ts
|
|
5
|
+
interface OpenAIEmbeddingModelInput extends EmbeddingModelInput {}
|
|
6
|
+
interface OpenAIEmbeddingModelOutput extends EmbeddingModelOutput {}
|
|
7
|
+
interface OpenAIEmbeddingModelOptions extends EmbeddingModelOptions<OpenAIEmbeddingModelInput, OpenAIEmbeddingModelOutput> {
|
|
8
|
+
apiKey?: string;
|
|
9
|
+
baseURL?: string;
|
|
10
|
+
model?: string;
|
|
11
|
+
clientOptions?: Partial<ClientOptions>;
|
|
12
|
+
}
|
|
13
|
+
declare class OpenAIEmbeddingModel extends EmbeddingModel<OpenAIEmbeddingModelInput, OpenAIEmbeddingModelOutput> {
|
|
14
|
+
options?: OpenAIEmbeddingModelOptions | undefined;
|
|
15
|
+
constructor(options?: OpenAIEmbeddingModelOptions | undefined);
|
|
16
|
+
protected _client?: OpenAI;
|
|
17
|
+
protected apiKeyEnvName: string;
|
|
18
|
+
get client(): OpenAI;
|
|
19
|
+
get credential(): {
|
|
20
|
+
url: string | undefined;
|
|
21
|
+
apiKey: string | undefined;
|
|
22
|
+
model: string;
|
|
23
|
+
};
|
|
24
|
+
process(input: OpenAIEmbeddingModelInput, _options: ModelInvokeOptions): Promise<OpenAIEmbeddingModelOutput>;
|
|
25
|
+
}
|
|
26
|
+
//#endregion
|
|
27
|
+
export { OpenAIEmbeddingModel, OpenAIEmbeddingModelInput, OpenAIEmbeddingModelOptions, OpenAIEmbeddingModelOutput };
|
|
28
|
+
//# sourceMappingURL=openai-embedding-model.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai-embedding-model.d.cts","names":[],"sources":["../src/openai-embedding-model.ts"],"mappings":";;;;UAgBiB,yBAAA,SAAkC,mBAAA;AAAA,UAElC,0BAAA,SAAmC,oBAAA;AAAA,UAEnC,2BAAA,SACP,qBAAA,CAAsB,yBAAA,EAA2B,0BAAA;EACzD,MAAA;EACA,OAAA;EACA,KAAA;EACA,aAAA,GAAgB,OAAA,CAAQ,aAAA;AAAA;AAAA,cAab,oBAAA,SAA6B,cAAA,CACxC,yBAAA,EACA,0BAAA;EAE4B,OAAA,GAAU,2BAAA;cAAV,OAAA,GAAU,2BAAA;EAAA,UAS5B,OAAA,GAAU,MAAA;EAAA,UAEV,aAAA;EAAA,IAEN,MAAA,CAAA,GAAM,MAAA;EAAA,IAmBG,UAAA,CAAA;;;;;EAQE,OAAA,CACb,KAAA,EAAO,yBAAA,EACP,QAAA,EAAU,kBAAA,GACT,OAAA,CAAQ,0BAAA;AAAA"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { EmbeddingModel, EmbeddingModelInput, EmbeddingModelOptions, EmbeddingModelOutput, ModelInvokeOptions } from "@aigne/model-base";
|
|
2
|
+
import OpenAI, { ClientOptions } from "openai";
|
|
3
|
+
|
|
4
|
+
//#region src/openai-embedding-model.d.ts
|
|
5
|
+
interface OpenAIEmbeddingModelInput extends EmbeddingModelInput {}
|
|
6
|
+
interface OpenAIEmbeddingModelOutput extends EmbeddingModelOutput {}
|
|
7
|
+
interface OpenAIEmbeddingModelOptions extends EmbeddingModelOptions<OpenAIEmbeddingModelInput, OpenAIEmbeddingModelOutput> {
|
|
8
|
+
apiKey?: string;
|
|
9
|
+
baseURL?: string;
|
|
10
|
+
model?: string;
|
|
11
|
+
clientOptions?: Partial<ClientOptions>;
|
|
12
|
+
}
|
|
13
|
+
declare class OpenAIEmbeddingModel extends EmbeddingModel<OpenAIEmbeddingModelInput, OpenAIEmbeddingModelOutput> {
|
|
14
|
+
options?: OpenAIEmbeddingModelOptions | undefined;
|
|
15
|
+
constructor(options?: OpenAIEmbeddingModelOptions | undefined);
|
|
16
|
+
protected _client?: OpenAI;
|
|
17
|
+
protected apiKeyEnvName: string;
|
|
18
|
+
get client(): OpenAI;
|
|
19
|
+
get credential(): {
|
|
20
|
+
url: string | undefined;
|
|
21
|
+
apiKey: string | undefined;
|
|
22
|
+
model: string;
|
|
23
|
+
};
|
|
24
|
+
process(input: OpenAIEmbeddingModelInput, _options: ModelInvokeOptions): Promise<OpenAIEmbeddingModelOutput>;
|
|
25
|
+
}
|
|
26
|
+
//#endregion
|
|
27
|
+
export { OpenAIEmbeddingModel, OpenAIEmbeddingModelInput, OpenAIEmbeddingModelOptions, OpenAIEmbeddingModelOutput };
|
|
28
|
+
//# sourceMappingURL=openai-embedding-model.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai-embedding-model.d.mts","names":[],"sources":["../src/openai-embedding-model.ts"],"mappings":";;;;UAgBiB,yBAAA,SAAkC,mBAAA;AAAA,UAElC,0BAAA,SAAmC,oBAAA;AAAA,UAEnC,2BAAA,SACP,qBAAA,CAAsB,yBAAA,EAA2B,0BAAA;EACzD,MAAA;EACA,OAAA;EACA,KAAA;EACA,aAAA,GAAgB,OAAA,CAAQ,aAAA;AAAA;AAAA,cAab,oBAAA,SAA6B,cAAA,CACxC,yBAAA,EACA,0BAAA;EAE4B,OAAA,GAAU,2BAAA;cAAV,OAAA,GAAU,2BAAA;EAAA,UAS5B,OAAA,GAAU,MAAA;EAAA,UAEV,aAAA;EAAA,IAEN,MAAA,CAAA,GAAM,MAAA;EAAA,IAmBG,UAAA,CAAA;;;;;EAQE,OAAA,CACb,KAAA,EAAO,yBAAA,EACP,QAAA,EAAU,kBAAA,GACT,OAAA,CAAQ,0BAAA;AAAA"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { CustomOpenAI } from "./openai.mjs";
|
|
2
|
+
import { EmbeddingModel, embeddingModelInputSchema } from "@aigne/model-base";
|
|
3
|
+
import { checkArguments } from "@aigne/model-base/utils/type-utils";
|
|
4
|
+
import { z } from "zod";
|
|
5
|
+
|
|
6
|
+
//#region src/openai-embedding-model.ts
|
|
7
|
+
const DEFAULT_MODEL = "text-embedding-3-small";
|
|
8
|
+
const openAIEmbeddingModelInputSchema = embeddingModelInputSchema.extend({});
|
|
9
|
+
const openAIEmbeddingModelOptionsSchema = z.object({
|
|
10
|
+
apiKey: z.string().optional(),
|
|
11
|
+
baseURL: z.string().optional(),
|
|
12
|
+
model: z.string().optional(),
|
|
13
|
+
modelOptions: z.object({}).optional(),
|
|
14
|
+
clientOptions: z.object({}).optional()
|
|
15
|
+
});
|
|
16
|
+
var OpenAIEmbeddingModel = class extends EmbeddingModel {
|
|
17
|
+
constructor(options) {
|
|
18
|
+
super({
|
|
19
|
+
...options,
|
|
20
|
+
inputSchema: openAIEmbeddingModelInputSchema,
|
|
21
|
+
description: options?.description ?? "Generate embeddings by OpenAI embedding models"
|
|
22
|
+
});
|
|
23
|
+
this.options = options;
|
|
24
|
+
if (options) checkArguments(this.name, openAIEmbeddingModelOptionsSchema, options);
|
|
25
|
+
}
|
|
26
|
+
_client;
|
|
27
|
+
apiKeyEnvName = "OPENAI_API_KEY";
|
|
28
|
+
get client() {
|
|
29
|
+
if (this._client) return this._client;
|
|
30
|
+
const { apiKey, url } = this.credential;
|
|
31
|
+
if (!apiKey) throw new Error(`${this.name} requires an API key. Please provide it via \`options.apiKey\`, or set the \`${this.apiKeyEnvName}\` environment variable`);
|
|
32
|
+
this._client ??= new CustomOpenAI({
|
|
33
|
+
baseURL: url,
|
|
34
|
+
apiKey,
|
|
35
|
+
...this.options?.clientOptions
|
|
36
|
+
});
|
|
37
|
+
return this._client;
|
|
38
|
+
}
|
|
39
|
+
get credential() {
|
|
40
|
+
return {
|
|
41
|
+
url: this.options?.baseURL || process.env.OPENAI_BASE_URL,
|
|
42
|
+
apiKey: this.options?.apiKey || process.env[this.apiKeyEnvName],
|
|
43
|
+
model: this.options?.model || DEFAULT_MODEL
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
async process(input, _options) {
|
|
47
|
+
const model = input.modelOptions?.model || this.credential.model;
|
|
48
|
+
const body = {
|
|
49
|
+
input: input.input,
|
|
50
|
+
model,
|
|
51
|
+
...input.dimensions ? { dimensions: input.dimensions } : {},
|
|
52
|
+
...input.modelOptions?.encoding_format ? { encoding_format: input.modelOptions.encoding_format } : {}
|
|
53
|
+
};
|
|
54
|
+
const response = await this.client.embeddings.create(body);
|
|
55
|
+
return {
|
|
56
|
+
embeddings: response.data.map((item) => item.embedding),
|
|
57
|
+
usage: {
|
|
58
|
+
inputTokens: response.usage?.prompt_tokens ?? 0,
|
|
59
|
+
outputTokens: 0
|
|
60
|
+
},
|
|
61
|
+
model: response.model
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
//#endregion
|
|
67
|
+
export { OpenAIEmbeddingModel };
|
|
68
|
+
//# sourceMappingURL=openai-embedding-model.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai-embedding-model.mjs","names":[],"sources":["../src/openai-embedding-model.ts"],"sourcesContent":["import {\n EmbeddingModel,\n type EmbeddingModelInput,\n type EmbeddingModelOptions,\n type EmbeddingModelOutput,\n embeddingModelInputSchema,\n type ModelInvokeOptions,\n} from \"@aigne/model-base\";\nimport { checkArguments } from \"@aigne/model-base/utils/type-utils\";\nimport type OpenAI from \"openai\";\nimport type { ClientOptions } from \"openai\";\nimport { z } from \"zod\";\nimport { CustomOpenAI } from \"./openai.js\";\n\nconst DEFAULT_MODEL = \"text-embedding-3-small\";\n\nexport interface OpenAIEmbeddingModelInput extends EmbeddingModelInput {}\n\nexport interface OpenAIEmbeddingModelOutput extends EmbeddingModelOutput {}\n\nexport interface OpenAIEmbeddingModelOptions\n extends EmbeddingModelOptions<OpenAIEmbeddingModelInput, OpenAIEmbeddingModelOutput> {\n apiKey?: string;\n baseURL?: string;\n model?: string;\n clientOptions?: Partial<ClientOptions>;\n}\n\nconst openAIEmbeddingModelInputSchema = embeddingModelInputSchema.extend({});\n\nconst openAIEmbeddingModelOptionsSchema = z.object({\n apiKey: z.string().optional(),\n baseURL: z.string().optional(),\n model: z.string().optional(),\n modelOptions: z.object({}).optional(),\n clientOptions: z.object({}).optional(),\n});\n\nexport class OpenAIEmbeddingModel extends EmbeddingModel<\n OpenAIEmbeddingModelInput,\n OpenAIEmbeddingModelOutput\n> {\n constructor(public override options?: OpenAIEmbeddingModelOptions) {\n super({\n ...options,\n inputSchema: openAIEmbeddingModelInputSchema,\n description: options?.description ?? \"Generate embeddings by OpenAI embedding models\",\n });\n if (options) checkArguments(this.name, openAIEmbeddingModelOptionsSchema, options);\n }\n\n protected _client?: OpenAI;\n\n protected apiKeyEnvName = \"OPENAI_API_KEY\";\n\n get client() {\n if (this._client) return this._client;\n\n const { apiKey, url } = this.credential;\n\n if (!apiKey)\n throw new Error(\n `${this.name} requires an API key. Please provide it via \\`options.apiKey\\`, or set the \\`${this.apiKeyEnvName}\\` environment variable`,\n );\n\n this._client ??= new CustomOpenAI({\n baseURL: url,\n apiKey,\n ...this.options?.clientOptions,\n });\n\n return this._client;\n }\n\n override get credential() {\n return {\n url: this.options?.baseURL || process.env.OPENAI_BASE_URL,\n apiKey: this.options?.apiKey || process.env[this.apiKeyEnvName],\n model: this.options?.model || DEFAULT_MODEL,\n };\n }\n\n override async process(\n input: OpenAIEmbeddingModelInput,\n _options: ModelInvokeOptions,\n ): Promise<OpenAIEmbeddingModelOutput> {\n const model = input.modelOptions?.model || this.credential.model;\n\n const body: OpenAI.EmbeddingCreateParams = {\n input: input.input,\n model,\n ...(input.dimensions ? { dimensions: input.dimensions } : {}),\n ...(input.modelOptions?.encoding_format\n ? { encoding_format: input.modelOptions.encoding_format as \"float\" | \"base64\" }\n : {}),\n };\n\n const response = await this.client.embeddings.create(body);\n\n return {\n embeddings: response.data.map((item) => item.embedding),\n usage: {\n inputTokens: response.usage?.prompt_tokens ?? 0,\n outputTokens: 0,\n },\n model: response.model,\n };\n }\n}\n"],"mappings":";;;;;;AAcA,MAAM,gBAAgB;AActB,MAAM,kCAAkC,0BAA0B,OAAO,EAAE,CAAC;AAE5E,MAAM,oCAAoC,EAAE,OAAO;CACjD,QAAQ,EAAE,QAAQ,CAAC,UAAU;CAC7B,SAAS,EAAE,QAAQ,CAAC,UAAU;CAC9B,OAAO,EAAE,QAAQ,CAAC,UAAU;CAC5B,cAAc,EAAE,OAAO,EAAE,CAAC,CAAC,UAAU;CACrC,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC,UAAU;CACvC,CAAC;AAEF,IAAa,uBAAb,cAA0C,eAGxC;CACA,YAAY,AAAgB,SAAuC;AACjE,QAAM;GACJ,GAAG;GACH,aAAa;GACb,aAAa,SAAS,eAAe;GACtC,CAAC;EALwB;AAM1B,MAAI,QAAS,gBAAe,KAAK,MAAM,mCAAmC,QAAQ;;CAGpF,AAAU;CAEV,AAAU,gBAAgB;CAE1B,IAAI,SAAS;AACX,MAAI,KAAK,QAAS,QAAO,KAAK;EAE9B,MAAM,EAAE,QAAQ,QAAQ,KAAK;AAE7B,MAAI,CAAC,OACH,OAAM,IAAI,MACR,GAAG,KAAK,KAAK,+EAA+E,KAAK,cAAc,yBAChH;AAEH,OAAK,YAAY,IAAI,aAAa;GAChC,SAAS;GACT;GACA,GAAG,KAAK,SAAS;GAClB,CAAC;AAEF,SAAO,KAAK;;CAGd,IAAa,aAAa;AACxB,SAAO;GACL,KAAK,KAAK,SAAS,WAAW,QAAQ,IAAI;GAC1C,QAAQ,KAAK,SAAS,UAAU,QAAQ,IAAI,KAAK;GACjD,OAAO,KAAK,SAAS,SAAS;GAC/B;;CAGH,MAAe,QACb,OACA,UACqC;EACrC,MAAM,QAAQ,MAAM,cAAc,SAAS,KAAK,WAAW;EAE3D,MAAM,OAAqC;GACzC,OAAO,MAAM;GACb;GACA,GAAI,MAAM,aAAa,EAAE,YAAY,MAAM,YAAY,GAAG,EAAE;GAC5D,GAAI,MAAM,cAAc,kBACpB,EAAE,iBAAiB,MAAM,aAAa,iBAAuC,GAC7E,EAAE;GACP;EAED,MAAM,WAAW,MAAM,KAAK,OAAO,WAAW,OAAO,KAAK;AAE1D,SAAO;GACL,YAAY,SAAS,KAAK,KAAK,SAAS,KAAK,UAAU;GACvD,OAAO;IACL,aAAa,SAAS,OAAO,iBAAiB;IAC9C,cAAc;IACf;GACD,OAAO,SAAS;GACjB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aigne/openai",
|
|
3
|
-
"version": "1.74.0-beta.
|
|
3
|
+
"version": "1.74.0-beta.9",
|
|
4
4
|
"description": "AIGNE OpenAI SDK for integrating with OpenAI's GPT models and API services",
|
|
5
5
|
"license": "Elastic-2.0",
|
|
6
6
|
"publishConfig": {
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"@aigne/uuid": "^13.0.1",
|
|
37
37
|
"openai": "^6.14.0",
|
|
38
38
|
"zod": "^3.25.67",
|
|
39
|
-
"@aigne/model-base": "^1.74.0-beta.
|
|
39
|
+
"@aigne/model-base": "^1.74.0-beta.9"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
42
|
"@types/bun": "^1.3.6",
|