@celljs/ai-openai 3.4.4
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/LICENSE +21 -0
- package/README.md +96 -0
- package/lib/common/api/api-protocol.d.ts +47 -0
- package/lib/common/api/api-protocol.d.ts.map +1 -0
- package/lib/common/api/api-protocol.js +6 -0
- package/lib/common/api/api-protocol.js.map +1 -0
- package/lib/common/api/chat-request.d.ts +198 -0
- package/lib/common/api/chat-request.d.ts.map +1 -0
- package/lib/common/api/chat-request.js +145 -0
- package/lib/common/api/chat-request.js.map +1 -0
- package/lib/common/api/chat-response.d.ts +193 -0
- package/lib/common/api/chat-response.d.ts.map +1 -0
- package/lib/common/api/chat-response.js +124 -0
- package/lib/common/api/chat-response.js.map +1 -0
- package/lib/common/api/embeddings-request.d.ts +59 -0
- package/lib/common/api/embeddings-request.d.ts.map +1 -0
- package/lib/common/api/embeddings-request.js +49 -0
- package/lib/common/api/embeddings-request.js.map +1 -0
- package/lib/common/api/embeddings-response.d.ts +27 -0
- package/lib/common/api/embeddings-response.d.ts.map +1 -0
- package/lib/common/api/embeddings-response.js +30 -0
- package/lib/common/api/embeddings-response.js.map +1 -0
- package/lib/common/api/index.d.ts +10 -0
- package/lib/common/api/index.d.ts.map +1 -0
- package/lib/common/api/index.js +13 -0
- package/lib/common/api/index.js.map +1 -0
- package/lib/common/api/message.d.ts +216 -0
- package/lib/common/api/message.d.ts.map +1 -0
- package/lib/common/api/message.js +179 -0
- package/lib/common/api/message.js.map +1 -0
- package/lib/common/api/openai-api.d.ts +18 -0
- package/lib/common/api/openai-api.d.ts.map +1 -0
- package/lib/common/api/openai-api.js +99 -0
- package/lib/common/api/openai-api.js.map +1 -0
- package/lib/common/api/openai-api.spec.d.ts +2 -0
- package/lib/common/api/openai-api.spec.d.ts.map +1 -0
- package/lib/common/api/openai-api.spec.js +162 -0
- package/lib/common/api/openai-api.spec.js.map +1 -0
- package/lib/common/api/openai-model.d.ts +117 -0
- package/lib/common/api/openai-model.d.ts.map +1 -0
- package/lib/common/api/openai-model.js +121 -0
- package/lib/common/api/openai-model.js.map +1 -0
- package/lib/common/api/response-format.d.ts +60 -0
- package/lib/common/api/response-format.d.ts.map +1 -0
- package/lib/common/api/response-format.js +79 -0
- package/lib/common/api/response-format.js.map +1 -0
- package/lib/common/api/usage.d.ts +79 -0
- package/lib/common/api/usage.d.ts.map +1 -0
- package/lib/common/api/usage.js +95 -0
- package/lib/common/api/usage.js.map +1 -0
- package/lib/common/index.d.ts +4 -0
- package/lib/common/index.d.ts.map +1 -0
- package/lib/common/index.js +7 -0
- package/lib/common/index.js.map +1 -0
- package/lib/common/model/index.d.ts +5 -0
- package/lib/common/model/index.d.ts.map +1 -0
- package/lib/common/model/index.js +8 -0
- package/lib/common/model/index.js.map +1 -0
- package/lib/common/model/openai-chat-model.d.ts +37 -0
- package/lib/common/model/openai-chat-model.d.ts.map +1 -0
- package/lib/common/model/openai-chat-model.js +357 -0
- package/lib/common/model/openai-chat-model.js.map +1 -0
- package/lib/common/model/openai-chat-model.spec.d.ts +2 -0
- package/lib/common/model/openai-chat-model.spec.d.ts.map +1 -0
- package/lib/common/model/openai-chat-model.spec.js +82 -0
- package/lib/common/model/openai-chat-model.spec.js.map +1 -0
- package/lib/common/model/openai-chat-options.d.ts +159 -0
- package/lib/common/model/openai-chat-options.d.ts.map +1 -0
- package/lib/common/model/openai-chat-options.js +231 -0
- package/lib/common/model/openai-chat-options.js.map +1 -0
- package/lib/common/model/openai-embedding-model.d.ts +15 -0
- package/lib/common/model/openai-embedding-model.d.ts.map +1 -0
- package/lib/common/model/openai-embedding-model.js +64 -0
- package/lib/common/model/openai-embedding-model.js.map +1 -0
- package/lib/common/model/openai-embedding-model.spec.d.ts +2 -0
- package/lib/common/model/openai-embedding-model.spec.d.ts.map +1 -0
- package/lib/common/model/openai-embedding-model.spec.js +100 -0
- package/lib/common/model/openai-embedding-model.spec.js.map +1 -0
- package/lib/common/model/openai-embedding-options.d.ts +35 -0
- package/lib/common/model/openai-embedding-options.d.ts.map +1 -0
- package/lib/common/model/openai-embedding-options.js +56 -0
- package/lib/common/model/openai-embedding-options.js.map +1 -0
- package/lib/common/module.d.ts +4 -0
- package/lib/common/module.d.ts.map +1 -0
- package/lib/common/module.js +6 -0
- package/lib/common/module.js.map +1 -0
- package/lib/common/support/index.d.ts +3 -0
- package/lib/common/support/index.d.ts.map +1 -0
- package/lib/common/support/index.js +6 -0
- package/lib/common/support/index.js.map +1 -0
- package/lib/common/support/openai-api-response-headers.d.ts +34 -0
- package/lib/common/support/openai-api-response-headers.d.ts.map +1 -0
- package/lib/common/support/openai-api-response-headers.js +45 -0
- package/lib/common/support/openai-api-response-headers.js.map +1 -0
- package/lib/common/support/openai-response-header-extractor.d.ts +12 -0
- package/lib/common/support/openai-response-header-extractor.d.ts.map +1 -0
- package/lib/common/support/openai-response-header-extractor.js +131 -0
- package/lib/common/support/openai-response-header-extractor.js.map +1 -0
- package/lib/common/test/mock-openai-api.d.ts +13 -0
- package/lib/common/test/mock-openai-api.d.ts.map +1 -0
- package/lib/common/test/mock-openai-api.js +57 -0
- package/lib/common/test/mock-openai-api.js.map +1 -0
- package/lib/common/test/test-container.d.ts +3 -0
- package/lib/common/test/test-container.d.ts.map +1 -0
- package/lib/common/test/test-container.js +16 -0
- package/lib/common/test/test-container.js.map +1 -0
- package/lib/package.spec.d.ts +1 -0
- package/lib/package.spec.d.ts.map +1 -0
- package/lib/package.spec.js +4 -0
- package/lib/package.spec.js.map +1 -0
- package/package.json +46 -0
- package/src/common/api/api-protocol.ts +51 -0
- package/src/common/api/chat-request.ts +258 -0
- package/src/common/api/chat-response.ts +218 -0
- package/src/common/api/embeddings-request.ts +92 -0
- package/src/common/api/embeddings-response.ts +44 -0
- package/src/common/api/index.ts +9 -0
- package/src/common/api/message.ts +273 -0
- package/src/common/api/openai-api.spec.ts +175 -0
- package/src/common/api/openai-api.ts +111 -0
- package/src/common/api/openai-model.ts +137 -0
- package/src/common/api/response-format.ts +109 -0
- package/src/common/api/usage.ts +135 -0
- package/src/common/index.ts +3 -0
- package/src/common/model/index.ts +4 -0
- package/src/common/model/openai-chat-model.spec.ts +85 -0
- package/src/common/model/openai-chat-model.ts +399 -0
- package/src/common/model/openai-chat-options.ts +326 -0
- package/src/common/model/openai-embedding-model.spec.ts +112 -0
- package/src/common/model/openai-embedding-model.ts +83 -0
- package/src/common/model/openai-embedding-options.ts +72 -0
- package/src/common/module.ts +4 -0
- package/src/common/support/index.ts +2 -0
- package/src/common/support/openai-api-response-headers.ts +46 -0
- package/src/common/support/openai-response-header-extractor.ts +141 -0
- package/src/common/test/mock-openai-api.ts +70 -0
- package/src/common/test/test-container.ts +13 -0
- package/src/package.spec.ts +4 -0
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const chai_1 = require("chai");
|
|
4
|
+
require("../index");
|
|
5
|
+
const openai_embedding_model_1 = require("./openai-embedding-model");
|
|
6
|
+
const test_container_1 = require("../test/test-container");
|
|
7
|
+
const api_protocol_1 = require("../api/api-protocol");
|
|
8
|
+
const mock_openai_api_1 = require("../test/mock-openai-api");
|
|
9
|
+
const openai_embedding_options_1 = require("./openai-embedding-options");
|
|
10
|
+
const container = (0, test_container_1.createContainer)();
|
|
11
|
+
describe('OpenAIEmbeddingModel', () => {
|
|
12
|
+
let openAIEmbeddingModel;
|
|
13
|
+
let defaultOptions;
|
|
14
|
+
before(() => {
|
|
15
|
+
container.rebind(api_protocol_1.OpenAIAPI).to(mock_openai_api_1.MockOpenAIAPI).inSingletonScope();
|
|
16
|
+
openAIEmbeddingModel = container.get(openai_embedding_model_1.OpenAIEmbeddingModel);
|
|
17
|
+
defaultOptions = container.get(openai_embedding_options_1.OpenAIEmbeddingOptions);
|
|
18
|
+
});
|
|
19
|
+
describe('call', () => {
|
|
20
|
+
it('should return embedding response for given text', async () => {
|
|
21
|
+
const request = {
|
|
22
|
+
instructions: ['Hello world', 'Another text sample'],
|
|
23
|
+
inputs: ['Hello world', 'Another text sample'],
|
|
24
|
+
options: {
|
|
25
|
+
model: 'text-embedding-ada-002'
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
const response = await openAIEmbeddingModel.call(request);
|
|
29
|
+
(0, chai_1.expect)(response).to.have.property('embeddings');
|
|
30
|
+
(0, chai_1.expect)(response.embeddings).to.be.an('array');
|
|
31
|
+
(0, chai_1.expect)(response.embeddings.length).to.equal(1);
|
|
32
|
+
(0, chai_1.expect)(response.embeddings[0].embedding).to.be.an('array');
|
|
33
|
+
(0, chai_1.expect)(response.metadata).to.have.property('model');
|
|
34
|
+
(0, chai_1.expect)(response.metadata).to.have.property('usage');
|
|
35
|
+
});
|
|
36
|
+
it('should throw error when no text is provided', async () => {
|
|
37
|
+
const request = {
|
|
38
|
+
instructions: [],
|
|
39
|
+
inputs: [],
|
|
40
|
+
options: {
|
|
41
|
+
model: 'text-embedding-ada-002'
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
try {
|
|
45
|
+
await openAIEmbeddingModel.call(request);
|
|
46
|
+
chai_1.expect.fail('Should throw error for empty instructions');
|
|
47
|
+
}
|
|
48
|
+
catch (error) {
|
|
49
|
+
(0, chai_1.expect)(error.message).to.include('At least one text is required');
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
it('should throw error when model is not set', async () => {
|
|
53
|
+
const request = {
|
|
54
|
+
instructions: ['Test text'],
|
|
55
|
+
inputs: ['Test text'],
|
|
56
|
+
options: {
|
|
57
|
+
model: ''
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
try {
|
|
61
|
+
await openAIEmbeddingModel.call(request);
|
|
62
|
+
chai_1.expect.fail('Should throw error for missing model');
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
(0, chai_1.expect)(error.message).to.include('Model is not set');
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
it('should use default model when not specified in request', async () => {
|
|
69
|
+
// Temporarily set default model for this test
|
|
70
|
+
const originalModel = defaultOptions.model;
|
|
71
|
+
defaultOptions.model = 'text-embedding-ada-002';
|
|
72
|
+
const request = {
|
|
73
|
+
instructions: ['Test text'],
|
|
74
|
+
inputs: ['Test text'],
|
|
75
|
+
options: {}
|
|
76
|
+
};
|
|
77
|
+
const response = await openAIEmbeddingModel.call(request);
|
|
78
|
+
(0, chai_1.expect)(response.metadata.model).to.equal('text-embedding-ada-002');
|
|
79
|
+
// Restore original default model
|
|
80
|
+
defaultOptions.model = originalModel;
|
|
81
|
+
});
|
|
82
|
+
it('should pass embedding options correctly', async () => {
|
|
83
|
+
const request = {
|
|
84
|
+
instructions: ['Test text'],
|
|
85
|
+
inputs: ['Test text'],
|
|
86
|
+
options: {
|
|
87
|
+
model: 'text-embedding-ada-002',
|
|
88
|
+
dimensions: 512,
|
|
89
|
+
encodingFormat: 'float',
|
|
90
|
+
user: 'test-user'
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
const response = await openAIEmbeddingModel.call(request);
|
|
94
|
+
(0, chai_1.expect)(response).to.have.property('embeddings');
|
|
95
|
+
(0, chai_1.expect)(response.embeddings[0]).to.have.property('embedding');
|
|
96
|
+
(0, chai_1.expect)(response.result).to.equal(response.embeddings[0]);
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
});
|
|
100
|
+
//# sourceMappingURL=openai-embedding-model.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai-embedding-model.spec.js","sourceRoot":"","sources":["../../../src/common/model/openai-embedding-model.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { EmbeddingOptions } from '@celljs/ai-core';
|
|
2
|
+
/**
|
|
3
|
+
* OpenAI Embedding Options.
|
|
4
|
+
*/
|
|
5
|
+
export declare class OpenAIEmbeddingOptions implements EmbeddingOptions {
|
|
6
|
+
/**
|
|
7
|
+
* ID of the model to use.
|
|
8
|
+
*/
|
|
9
|
+
model?: string;
|
|
10
|
+
/**
|
|
11
|
+
* The format to return the embeddings in. Can be either float or base64.
|
|
12
|
+
*/
|
|
13
|
+
encodingFormat?: string;
|
|
14
|
+
/**
|
|
15
|
+
* The number of dimensions the resulting output embeddings should have.
|
|
16
|
+
* Only supported in text-embedding-3 and later models.
|
|
17
|
+
*/
|
|
18
|
+
dimensions?: number;
|
|
19
|
+
/**
|
|
20
|
+
* A unique identifier representing your end-user, which can help OpenAI to monitor and detect abuse.
|
|
21
|
+
*/
|
|
22
|
+
user?: string;
|
|
23
|
+
copy(): OpenAIEmbeddingOptions;
|
|
24
|
+
static options(fromOptions: OpenAIEmbeddingOptions): OpenAIEmbeddingOptions;
|
|
25
|
+
static builder(): OpenAIEmbeddingOptionsBuilder;
|
|
26
|
+
}
|
|
27
|
+
export declare class OpenAIEmbeddingOptionsBuilder {
|
|
28
|
+
private options;
|
|
29
|
+
withModel(model: string): OpenAIEmbeddingOptionsBuilder;
|
|
30
|
+
withEncodingFormat(encodingFormat: string): OpenAIEmbeddingOptionsBuilder;
|
|
31
|
+
withDimensions(dimensions: number): OpenAIEmbeddingOptionsBuilder;
|
|
32
|
+
withUser(user: string): OpenAIEmbeddingOptionsBuilder;
|
|
33
|
+
build(): OpenAIEmbeddingOptions;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=openai-embedding-options.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai-embedding-options.d.ts","sourceRoot":"","sources":["../../../src/common/model/openai-embedding-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAInD;;GAEG;AACH,qBACa,sBAAuB,YAAW,gBAAgB;IAC3D;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IAEH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,IAAI,IAAI,sBAAsB;IAI9B,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,sBAAsB,GAAG,sBAAsB;IAK3E,MAAM,CAAC,OAAO,IAAI,6BAA6B;CAGlD;AAED,qBAAa,6BAA6B;IACtC,OAAO,CAAC,OAAO,CAAgC;IAE/C,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,6BAA6B;IAKvD,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,6BAA6B;IAKzE,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,6BAA6B;IAKjE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,6BAA6B;IAKrD,KAAK,IAAI,sBAAsB;CAGlC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var OpenAIEmbeddingOptions_1;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.OpenAIEmbeddingOptionsBuilder = exports.OpenAIEmbeddingOptions = void 0;
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
6
|
+
const class_transformer_1 = require("class-transformer");
|
|
7
|
+
const core_1 = require("@celljs/core");
|
|
8
|
+
/**
|
|
9
|
+
* OpenAI Embedding Options.
|
|
10
|
+
*/
|
|
11
|
+
let OpenAIEmbeddingOptions = OpenAIEmbeddingOptions_1 = class OpenAIEmbeddingOptions {
|
|
12
|
+
copy() {
|
|
13
|
+
return OpenAIEmbeddingOptions_1.options(this);
|
|
14
|
+
}
|
|
15
|
+
static options(fromOptions) {
|
|
16
|
+
const options = new OpenAIEmbeddingOptions_1();
|
|
17
|
+
return Object.assign(options, fromOptions);
|
|
18
|
+
}
|
|
19
|
+
static builder() {
|
|
20
|
+
return new OpenAIEmbeddingOptionsBuilder();
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
tslib_1.__decorate([
|
|
24
|
+
(0, class_transformer_1.Expose)({ name: 'encoding_format' }),
|
|
25
|
+
tslib_1.__metadata("design:type", String)
|
|
26
|
+
], OpenAIEmbeddingOptions.prototype, "encodingFormat", void 0);
|
|
27
|
+
OpenAIEmbeddingOptions = OpenAIEmbeddingOptions_1 = tslib_1.__decorate([
|
|
28
|
+
(0, core_1.Constant)(OpenAIEmbeddingOptions_1, new OpenAIEmbeddingOptions_1())
|
|
29
|
+
], OpenAIEmbeddingOptions);
|
|
30
|
+
exports.OpenAIEmbeddingOptions = OpenAIEmbeddingOptions;
|
|
31
|
+
class OpenAIEmbeddingOptionsBuilder {
|
|
32
|
+
constructor() {
|
|
33
|
+
this.options = new OpenAIEmbeddingOptions();
|
|
34
|
+
}
|
|
35
|
+
withModel(model) {
|
|
36
|
+
this.options.model = model;
|
|
37
|
+
return this;
|
|
38
|
+
}
|
|
39
|
+
withEncodingFormat(encodingFormat) {
|
|
40
|
+
this.options.encodingFormat = encodingFormat;
|
|
41
|
+
return this;
|
|
42
|
+
}
|
|
43
|
+
withDimensions(dimensions) {
|
|
44
|
+
this.options.dimensions = dimensions;
|
|
45
|
+
return this;
|
|
46
|
+
}
|
|
47
|
+
withUser(user) {
|
|
48
|
+
this.options.user = user;
|
|
49
|
+
return this;
|
|
50
|
+
}
|
|
51
|
+
build() {
|
|
52
|
+
return OpenAIEmbeddingOptions.options(this.options);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
exports.OpenAIEmbeddingOptionsBuilder = OpenAIEmbeddingOptionsBuilder;
|
|
56
|
+
//# sourceMappingURL=openai-embedding-options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai-embedding-options.js","sourceRoot":"","sources":["../../../src/common/model/openai-embedding-options.ts"],"names":[],"mappings":";;;;;AACA,yDAA2C;AAC3C,uCAAwC;AAExC;;GAEG;AAEI,IAAM,sBAAsB,8BAA5B,MAAM,sBAAsB;IAuB/B,IAAI;QACA,OAAO,wBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,WAAmC;QAC9C,MAAM,OAAO,GAAG,IAAI,wBAAsB,EAAE,CAAC;QAC7C,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,CAAC,OAAO;QACV,OAAO,IAAI,6BAA6B,EAAE,CAAC;IAC/C,CAAC;CACJ,CAAA;AA1BG;IAAC,IAAA,0BAAM,EAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;;8DACZ;AAVf,sBAAsB;IADlC,IAAA,eAAQ,EAAC,wBAAsB,EAAE,IAAI,wBAAsB,EAAE,CAAC;GAClD,sBAAsB,CAmClC;AAnCY,wDAAsB;AAqCnC,MAAa,6BAA6B;IAA1C;QACY,YAAO,GAAG,IAAI,sBAAsB,EAAE,CAAC;IAyBnD,CAAC;IAvBG,SAAS,CAAC,KAAa;QACnB,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;QAC3B,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,kBAAkB,CAAC,cAAsB;QACrC,IAAI,CAAC,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;QAC7C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,cAAc,CAAC,UAAkB;QAC7B,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;QACrC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,IAAY;QACjB,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;QACzB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK;QACD,OAAO,sBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxD,CAAC;CACJ;AA1BD,sEA0BC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../src/common/module.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,CAAC;;AAEjB,wBAA0B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/common/module.ts"],"names":[],"mappings":";;AAAA,uCAAwC;AACxC,mBAAiB;AAEjB,kBAAe,IAAA,eAAQ,GAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/common/support/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oCAAoC,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./openai-api-response-headers"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./openai-response-header-extractor"), exports);
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/support/index.ts"],"names":[],"mappings":";;;AAAA,wEAA8C;AAC9C,6EAAmD"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Enumeration of {@literal OpenAI} API response headers.
|
|
3
|
+
*/
|
|
4
|
+
export declare enum OpenAIApiResponseHeaders {
|
|
5
|
+
/**
|
|
6
|
+
* Total number of requests allowed within timeframe.
|
|
7
|
+
*/
|
|
8
|
+
REQUESTS_LIMIT_HEADER = "x-ratelimit-limit-requests",
|
|
9
|
+
/**
|
|
10
|
+
* Remaining number of requests available in timeframe.
|
|
11
|
+
*/
|
|
12
|
+
REQUESTS_REMAINING_HEADER = "x-ratelimit-remaining-requests",
|
|
13
|
+
/**
|
|
14
|
+
* Duration of time until the number of requests reset.
|
|
15
|
+
*/
|
|
16
|
+
REQUESTS_RESET_HEADER = "x-ratelimit-reset-requests",
|
|
17
|
+
/**
|
|
18
|
+
* Total number of tokens allowed within timeframe.
|
|
19
|
+
*/
|
|
20
|
+
TOKENS_RESET_HEADER = "x-ratelimit-reset-tokens",
|
|
21
|
+
/**
|
|
22
|
+
* Remaining number of tokens available in timeframe.
|
|
23
|
+
*/
|
|
24
|
+
TOKENS_LIMIT_HEADER = "x-ratelimit-limit-tokens",
|
|
25
|
+
/**
|
|
26
|
+
* Duration of time until the number of tokens reset.
|
|
27
|
+
*/
|
|
28
|
+
TOKENS_REMAINING_HEADER = "x-ratelimit-remaining-tokens"
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Metadata description for OpenAI API response headers.
|
|
32
|
+
*/
|
|
33
|
+
export declare const OpenAIApiResponseHeadersDescription: Record<OpenAIApiResponseHeaders, string>;
|
|
34
|
+
//# sourceMappingURL=openai-api-response-headers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai-api-response-headers.d.ts","sourceRoot":"","sources":["../../../src/common/support/openai-api-response-headers.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,wBAAwB;IAChC;;OAEG;IACH,qBAAqB,+BAA+B;IAEpD;;OAEG;IACH,yBAAyB,mCAAmC;IAE5D;;OAEG;IACH,qBAAqB,+BAA+B;IAEpD;;OAEG;IACH,mBAAmB,6BAA6B;IAEhD;;OAEG;IACH,mBAAmB,6BAA6B;IAEhD;;OAEG;IACH,uBAAuB,iCAAiC;CAC3D;AAED;;GAEG;AACH,eAAO,MAAM,mCAAmC,EAAE,MAAM,CAAC,wBAAwB,EAAE,MAAM,CAOxF,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OpenAIApiResponseHeadersDescription = exports.OpenAIApiResponseHeaders = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Enumeration of {@literal OpenAI} API response headers.
|
|
6
|
+
*/
|
|
7
|
+
var OpenAIApiResponseHeaders;
|
|
8
|
+
(function (OpenAIApiResponseHeaders) {
|
|
9
|
+
/**
|
|
10
|
+
* Total number of requests allowed within timeframe.
|
|
11
|
+
*/
|
|
12
|
+
OpenAIApiResponseHeaders["REQUESTS_LIMIT_HEADER"] = "x-ratelimit-limit-requests";
|
|
13
|
+
/**
|
|
14
|
+
* Remaining number of requests available in timeframe.
|
|
15
|
+
*/
|
|
16
|
+
OpenAIApiResponseHeaders["REQUESTS_REMAINING_HEADER"] = "x-ratelimit-remaining-requests";
|
|
17
|
+
/**
|
|
18
|
+
* Duration of time until the number of requests reset.
|
|
19
|
+
*/
|
|
20
|
+
OpenAIApiResponseHeaders["REQUESTS_RESET_HEADER"] = "x-ratelimit-reset-requests";
|
|
21
|
+
/**
|
|
22
|
+
* Total number of tokens allowed within timeframe.
|
|
23
|
+
*/
|
|
24
|
+
OpenAIApiResponseHeaders["TOKENS_RESET_HEADER"] = "x-ratelimit-reset-tokens";
|
|
25
|
+
/**
|
|
26
|
+
* Remaining number of tokens available in timeframe.
|
|
27
|
+
*/
|
|
28
|
+
OpenAIApiResponseHeaders["TOKENS_LIMIT_HEADER"] = "x-ratelimit-limit-tokens";
|
|
29
|
+
/**
|
|
30
|
+
* Duration of time until the number of tokens reset.
|
|
31
|
+
*/
|
|
32
|
+
OpenAIApiResponseHeaders["TOKENS_REMAINING_HEADER"] = "x-ratelimit-remaining-tokens";
|
|
33
|
+
})(OpenAIApiResponseHeaders = exports.OpenAIApiResponseHeaders || (exports.OpenAIApiResponseHeaders = {}));
|
|
34
|
+
/**
|
|
35
|
+
* Metadata description for OpenAI API response headers.
|
|
36
|
+
*/
|
|
37
|
+
exports.OpenAIApiResponseHeadersDescription = {
|
|
38
|
+
[OpenAIApiResponseHeaders.REQUESTS_LIMIT_HEADER]: 'Total number of requests allowed within timeframe.',
|
|
39
|
+
[OpenAIApiResponseHeaders.REQUESTS_REMAINING_HEADER]: 'Remaining number of requests available in timeframe.',
|
|
40
|
+
[OpenAIApiResponseHeaders.REQUESTS_RESET_HEADER]: 'Duration of time until the number of requests reset.',
|
|
41
|
+
[OpenAIApiResponseHeaders.TOKENS_RESET_HEADER]: 'Total number of tokens allowed within timeframe.',
|
|
42
|
+
[OpenAIApiResponseHeaders.TOKENS_LIMIT_HEADER]: 'Remaining number of tokens available in timeframe.',
|
|
43
|
+
[OpenAIApiResponseHeaders.TOKENS_REMAINING_HEADER]: 'Duration of time until the number of tokens reset.'
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=openai-api-response-headers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai-api-response-headers.js","sourceRoot":"","sources":["../../../src/common/support/openai-api-response-headers.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,wBA8BX;AA9BD,WAAY,wBAAwB;IAChC;;OAEG;IACH,gFAAoD,CAAA;IAEpD;;OAEG;IACH,wFAA4D,CAAA;IAE5D;;OAEG;IACH,gFAAoD,CAAA;IAEpD;;OAEG;IACH,4EAAgD,CAAA;IAEhD;;OAEG;IACH,4EAAgD,CAAA;IAEhD;;OAEG;IACH,oFAAwD,CAAA;AAC5D,CAAC,EA9BW,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QA8BnC;AAED;;GAEG;AACU,QAAA,mCAAmC,GAA6C;IACzF,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,EAAE,oDAAoD;IACtG,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,EAAE,sDAAsD;IAC5G,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,EAAE,sDAAsD;IACxG,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,EAAE,kDAAkD;IAClG,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,EAAE,oDAAoD;IACpG,CAAC,wBAAwB,CAAC,uBAAuB,CAAC,EAAE,oDAAoD;CAC3G,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ResponseEntity } from '@celljs/http';
|
|
2
|
+
import { RateLimit } from '@celljs/ai-core';
|
|
3
|
+
/**
|
|
4
|
+
* Utility used to extract known HTTP response headers for the {@literal OpenAI} API.
|
|
5
|
+
*/
|
|
6
|
+
export declare abstract class OpenAIResponseHeaderExtractor {
|
|
7
|
+
static extractAIResponseHeaders(response: ResponseEntity<unknown>): RateLimit;
|
|
8
|
+
private static getHeaderAsDuration;
|
|
9
|
+
private static getHeaderAsLong;
|
|
10
|
+
private static parseLong;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=openai-response-header-extractor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai-response-header-extractor.d.ts","sourceRoot":"","sources":["../../../src/common/support/openai-response-header-extractor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C;;GAEG;AACH,8BAAsB,6BAA6B;WAEjC,wBAAwB,CAAC,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,SAAS;IAmBpF,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAWlC,OAAO,CAAC,MAAM,CAAC,eAAe;IAU9B,OAAO,CAAC,MAAM,CAAC,SAAS;CAS3B"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OpenAIResponseHeaderExtractor = void 0;
|
|
4
|
+
const core_1 = require("@celljs/core");
|
|
5
|
+
const openai_api_response_headers_1 = require("./openai-api-response-headers");
|
|
6
|
+
/**
|
|
7
|
+
* Utility used to extract known HTTP response headers for the {@literal OpenAI} API.
|
|
8
|
+
*/
|
|
9
|
+
class OpenAIResponseHeaderExtractor {
|
|
10
|
+
static extractAIResponseHeaders(response) {
|
|
11
|
+
const requestsLimit = this.getHeaderAsLong(response, openai_api_response_headers_1.OpenAIApiResponseHeaders.REQUESTS_LIMIT_HEADER);
|
|
12
|
+
const requestsRemaining = this.getHeaderAsLong(response, openai_api_response_headers_1.OpenAIApiResponseHeaders.REQUESTS_REMAINING_HEADER);
|
|
13
|
+
const tokensLimit = this.getHeaderAsLong(response, openai_api_response_headers_1.OpenAIApiResponseHeaders.TOKENS_LIMIT_HEADER);
|
|
14
|
+
const tokensRemaining = this.getHeaderAsLong(response, openai_api_response_headers_1.OpenAIApiResponseHeaders.TOKENS_REMAINING_HEADER);
|
|
15
|
+
const requestsReset = this.getHeaderAsDuration(response, openai_api_response_headers_1.OpenAIApiResponseHeaders.REQUESTS_RESET_HEADER);
|
|
16
|
+
const tokensReset = this.getHeaderAsDuration(response, openai_api_response_headers_1.OpenAIApiResponseHeaders.TOKENS_RESET_HEADER);
|
|
17
|
+
return {
|
|
18
|
+
requestsLimit,
|
|
19
|
+
requestsRemaining,
|
|
20
|
+
requestsReset,
|
|
21
|
+
tokensLimit,
|
|
22
|
+
tokensRemaining,
|
|
23
|
+
tokensReset
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
static getHeaderAsDuration(response, headerName) {
|
|
27
|
+
const headers = response.headers;
|
|
28
|
+
if (headerName in headers) {
|
|
29
|
+
const values = headers[headerName];
|
|
30
|
+
if (values && values.length > 0) {
|
|
31
|
+
return DurationFormatter.TIME_UNIT.parse(values[0]);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return undefined;
|
|
35
|
+
}
|
|
36
|
+
static getHeaderAsLong(response, headerName) {
|
|
37
|
+
const headers = response.headers;
|
|
38
|
+
if (headerName in headers) {
|
|
39
|
+
const values = headers[headerName];
|
|
40
|
+
if (values && values.length > 0) {
|
|
41
|
+
return this.parseLong(headerName, values[0]);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
static parseLong(headerName, headerValue) {
|
|
46
|
+
if (headerValue) {
|
|
47
|
+
try {
|
|
48
|
+
return parseInt(headerValue.trim(), 10);
|
|
49
|
+
}
|
|
50
|
+
catch (e) {
|
|
51
|
+
core_1.ContainerUtil.get(core_1.Logger).warn(`Value [${headerValue}] for HTTP header [${headerName}] is not valid: ${e.message}`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.OpenAIResponseHeaderExtractor = OpenAIResponseHeaderExtractor;
|
|
57
|
+
/**
|
|
58
|
+
* Duration formatter for parsing time units.
|
|
59
|
+
*/
|
|
60
|
+
class DurationFormatter {
|
|
61
|
+
constructor(pattern) {
|
|
62
|
+
this.pattern = pattern;
|
|
63
|
+
}
|
|
64
|
+
parse(text) {
|
|
65
|
+
core_1.Assert.hasText(text, `Text [${text}] to parse as a Duration must not be null or empty`);
|
|
66
|
+
const matches = text.match(this.pattern);
|
|
67
|
+
let total = 0;
|
|
68
|
+
if (matches) {
|
|
69
|
+
for (const value of matches) {
|
|
70
|
+
total += Unit.toDuration(Unit.parseUnit(value), value);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
return total;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
DurationFormatter.TIME_UNIT = new DurationFormatter(/\d+[a-zA-Z]{1,2}/);
|
|
77
|
+
/**
|
|
78
|
+
* Time unit enum for duration parsing.
|
|
79
|
+
*/
|
|
80
|
+
var Unit;
|
|
81
|
+
(function (Unit) {
|
|
82
|
+
Unit["NANOSECONDS"] = "ns";
|
|
83
|
+
Unit["MICROSECONDS"] = "us";
|
|
84
|
+
Unit["MILLISECONDS"] = "ms";
|
|
85
|
+
Unit["SECONDS"] = "s";
|
|
86
|
+
Unit["MINUTES"] = "m";
|
|
87
|
+
Unit["HOURS"] = "h";
|
|
88
|
+
Unit["DAYS"] = "d";
|
|
89
|
+
})(Unit || (Unit = {}));
|
|
90
|
+
(function (Unit) {
|
|
91
|
+
const unitMap = new Map([
|
|
92
|
+
[Unit.NANOSECONDS, { name: 'nanoseconds', multiplier: 1 }],
|
|
93
|
+
[Unit.MICROSECONDS, { name: 'microseconds', multiplier: 1000 }],
|
|
94
|
+
[Unit.MILLISECONDS, { name: 'milliseconds', multiplier: 1000 * 1000 }],
|
|
95
|
+
[Unit.SECONDS, { name: 'seconds', multiplier: 1000 * 1000 * 1000 }],
|
|
96
|
+
[Unit.MINUTES, { name: 'minutes', multiplier: 1000 * 1000 * 1000 * 60 }],
|
|
97
|
+
[Unit.HOURS, { name: 'hours', multiplier: 1000 * 1000 * 1000 * 60 * 60 }],
|
|
98
|
+
[Unit.DAYS, { name: 'days', multiplier: 1000 * 1000 * 1000 * 60 * 60 * 24 }]
|
|
99
|
+
]);
|
|
100
|
+
function parseUnit(value) {
|
|
101
|
+
const symbol = parseSymbol(value);
|
|
102
|
+
const unit = [...unitMap.keys()].find(u => u === symbol);
|
|
103
|
+
if (!unit) {
|
|
104
|
+
throw new Error(`Value [${value}] does not contain a valid time unit`);
|
|
105
|
+
}
|
|
106
|
+
return unit;
|
|
107
|
+
}
|
|
108
|
+
Unit.parseUnit = parseUnit;
|
|
109
|
+
function parse(value, predicate) {
|
|
110
|
+
core_1.Assert.hasText(value, `Value [${value}] must not be null or empty`);
|
|
111
|
+
return Array.from(value).filter(predicate).join('');
|
|
112
|
+
}
|
|
113
|
+
function parseSymbol(value) {
|
|
114
|
+
return parse(value, char => /[a-zA-Z]/.test(char));
|
|
115
|
+
}
|
|
116
|
+
function parseTime(value) {
|
|
117
|
+
return parseInt(parse(value, char => /\d/.test(char)), 10);
|
|
118
|
+
}
|
|
119
|
+
function getName(unit) {
|
|
120
|
+
var _a, _b;
|
|
121
|
+
return (_b = (_a = unitMap.get(unit)) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : unit;
|
|
122
|
+
}
|
|
123
|
+
Unit.getName = getName;
|
|
124
|
+
function toDuration(unit, value) {
|
|
125
|
+
var _a, _b;
|
|
126
|
+
const multiplier = (_b = (_a = unitMap.get(unit)) === null || _a === void 0 ? void 0 : _a.multiplier) !== null && _b !== void 0 ? _b : 1;
|
|
127
|
+
return parseTime(value) * multiplier;
|
|
128
|
+
}
|
|
129
|
+
Unit.toDuration = toDuration;
|
|
130
|
+
})(Unit || (Unit = {}));
|
|
131
|
+
//# sourceMappingURL=openai-response-header-extractor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai-response-header-extractor.js","sourceRoot":"","sources":["../../../src/common/support/openai-response-header-extractor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { OpenAIAPI } from '../api/api-protocol';
|
|
2
|
+
import { ChatCompletionRequest } from '../api/chat-request';
|
|
3
|
+
import { ChatCompletion, ChatCompletionChunk } from '../api/chat-response';
|
|
4
|
+
import { EmbeddingRequest } from '../api/embeddings-request';
|
|
5
|
+
import { EmbeddingResponse } from '../api/embeddings-response';
|
|
6
|
+
import { Observable } from 'rxjs';
|
|
7
|
+
import { ResponseEntity } from '@celljs/http';
|
|
8
|
+
export declare class MockOpenAIAPI implements OpenAIAPI {
|
|
9
|
+
chat(chatRequest: ChatCompletionRequest, additionalHttpHeader?: Record<string, string>): Promise<ResponseEntity<ChatCompletion>>;
|
|
10
|
+
streamingChat(chatRequest: ChatCompletionRequest, additionalHttpHeader?: Record<string, string>): Promise<Observable<ResponseEntity<ChatCompletionChunk>>>;
|
|
11
|
+
embed<T>(embeddingRequest: EmbeddingRequest<T>): Promise<ResponseEntity<EmbeddingResponse>>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=mock-openai-api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-openai-api.d.ts","sourceRoot":"","sources":["../../../src/common/test/mock-openai-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAiC,MAAM,sBAAsB,CAAC;AAC1G,OAAO,EAAE,gBAAgB,EAAa,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAM,UAAU,EAAE,MAAM,MAAM,CAAC;AAEtC,OAAO,EAAE,cAAc,EAAsB,MAAM,cAAc,CAAC;AAGlE,qBAAa,aAAc,YAAW,SAAS;IACrC,IAAI,CAAC,WAAW,EAAE,qBAAqB,EAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;IAyBhI,aAAa,CAAC,WAAW,EAAE,qBAAqB,EAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAsB1J,KAAK,CAAC,CAAC,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;CAWpG"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MockOpenAIAPI = void 0;
|
|
4
|
+
const chat_response_1 = require("../api/chat-response");
|
|
5
|
+
const embeddings_request_1 = require("../api/embeddings-request");
|
|
6
|
+
const embeddings_response_1 = require("../api/embeddings-response");
|
|
7
|
+
const rxjs_1 = require("rxjs");
|
|
8
|
+
const message_1 = require("../api/message");
|
|
9
|
+
const http_1 = require("@celljs/http");
|
|
10
|
+
const usage_1 = require("../api/usage");
|
|
11
|
+
class MockOpenAIAPI {
|
|
12
|
+
async chat(chatRequest, additionalHttpHeader) {
|
|
13
|
+
// 使用静态创建方法创建消息
|
|
14
|
+
const message = message_1.ChatCompletionMessage.create('Hello, how can I help you?', message_1.Role.ASSISTANT);
|
|
15
|
+
message.toolCalls = []; // 注意这里应该使用 toolCalls 而不是 tool_calls
|
|
16
|
+
const choice = new chat_response_1.Choice();
|
|
17
|
+
choice.index = 0;
|
|
18
|
+
choice.message = message;
|
|
19
|
+
choice.finishReason = message_1.ChatCompletionFinishReason.STOP; // 使用 finishReason 而不是 finish_reason
|
|
20
|
+
choice.logprobs = new chat_response_1.LogProbs();
|
|
21
|
+
const usage = new usage_1.Usage(10, 20, 30);
|
|
22
|
+
const completion = new chat_response_1.ChatCompletion();
|
|
23
|
+
completion.id = 'chatcmpl-mock-id';
|
|
24
|
+
completion.object = 'chat.completion';
|
|
25
|
+
completion.created = Math.floor(Date.now() / 1000);
|
|
26
|
+
completion.model = 'gpt-4';
|
|
27
|
+
completion.choices = [choice];
|
|
28
|
+
completion.usage = usage;
|
|
29
|
+
completion.systemFingerprint = 'fp_mock_123'; // 使用 systemFingerprint 而不是 system_fingerprint
|
|
30
|
+
return http_1.ResponseEntityUtil.ok(completion);
|
|
31
|
+
}
|
|
32
|
+
async streamingChat(chatRequest, additionalHttpHeader) {
|
|
33
|
+
// 使用静态创建方法创建消息
|
|
34
|
+
const delta = message_1.ChatCompletionMessage.create('Hello, how can I help you?', message_1.Role.ASSISTANT);
|
|
35
|
+
delta.toolCalls = []; // 注意这里应该使用 toolCalls 而不是 tool_calls
|
|
36
|
+
const choice = new chat_response_1.ChunkChoice();
|
|
37
|
+
choice.index = 0;
|
|
38
|
+
choice.delta = delta;
|
|
39
|
+
choice.finishReason = message_1.ChatCompletionFinishReason.STOP; // 使用 finishReason 而不是 finish_reason
|
|
40
|
+
choice.logprobs = new chat_response_1.LogProbs();
|
|
41
|
+
const chunk = new chat_response_1.ChatCompletionChunk();
|
|
42
|
+
chunk.id = 'chatcmpl-mock-id';
|
|
43
|
+
chunk.object = 'chat.completion.chunk';
|
|
44
|
+
chunk.created = Math.floor(Date.now() / 1000);
|
|
45
|
+
chunk.model = 'gpt-4';
|
|
46
|
+
chunk.choices = [choice];
|
|
47
|
+
chunk.systemFingerprint = 'fp_mock_123'; // 使用 systemFingerprint 而不是 system_fingerprint
|
|
48
|
+
return (0, rxjs_1.of)(http_1.ResponseEntityUtil.ok(chunk));
|
|
49
|
+
}
|
|
50
|
+
async embed(embeddingRequest) {
|
|
51
|
+
const embedding = new embeddings_request_1.Embedding(0, [0.1, 0.2, 0.3, 0.4, 0.5]);
|
|
52
|
+
const usage = new usage_1.Usage(8, 0, 8);
|
|
53
|
+
return http_1.ResponseEntityUtil.ok(new embeddings_response_1.EmbeddingResponse('list', [embedding], 'text-embedding-ada-002', usage));
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.MockOpenAIAPI = MockOpenAIAPI;
|
|
57
|
+
//# sourceMappingURL=mock-openai-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-openai-api.js","sourceRoot":"","sources":["../../../src/common/test/mock-openai-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-container.d.ts","sourceRoot":"","sources":["../../../src/common/test/test-container.ts"],"names":[],"mappings":"AAIA,OAAO,UAAU,CAAC;AAIlB,eAAO,MAAM,eAAe,0EAI3B,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createContainer = void 0;
|
|
4
|
+
const test_module_1 = require("@celljs/core/lib/common/test/test-module");
|
|
5
|
+
const module_1 = require("@celljs/http/lib/common/module");
|
|
6
|
+
const module_2 = require("@celljs/ai-core/lib/common/module");
|
|
7
|
+
const core_1 = require("@celljs/core");
|
|
8
|
+
require("../index");
|
|
9
|
+
const openAITestModule = (0, core_1.autoBind)();
|
|
10
|
+
const createContainer = () => {
|
|
11
|
+
const container = core_1.ContainerFactory.create(test_module_1.coreTestModule, module_1.default, module_2.default, openAITestModule);
|
|
12
|
+
core_1.ContainerProvider.set(container);
|
|
13
|
+
return container;
|
|
14
|
+
};
|
|
15
|
+
exports.createContainer = createContainer;
|
|
16
|
+
//# sourceMappingURL=test-container.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-container.js","sourceRoot":"","sources":["../../../src/common/test/test-container.ts"],"names":[],"mappings":";;;AAAA,0EAA0E;AAC1E,2DAAwD;AACxD,8DAA6D;AAC7D,uCAA6E;AAC7E,oBAAkB;AAElB,MAAM,gBAAgB,GAAG,IAAA,eAAQ,GAAE,CAAC;AAE7B,MAAM,eAAe,GAAG,GAAG,EAAE;IAChC,MAAM,SAAS,GAAG,uBAAgB,CAAC,MAAM,CAAC,4BAAc,EAAE,gBAAU,EAAE,gBAAY,EAAE,gBAAgB,CAAC,CAAC;IACtG,wBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC;AAJW,QAAA,eAAe,mBAI1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=package.spec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package.spec.d.ts","sourceRoot":"","sources":["../src/package.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package.spec.js","sourceRoot":"","sources":["../src/package.spec.ts"],"names":[],"mappings":"AAAA,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAE/B,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AAC1D,CAAC,CAAC,CAAC"}
|