@midscene/shared 0.28.2 → 0.28.3
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/es/env/{model-config.mjs → decide-model-config.mjs} +52 -50
- package/dist/es/env/global-config-manager.mjs +91 -0
- package/dist/es/env/index.mjs +3 -2
- package/dist/es/env/model-config-manager.mjs +95 -0
- package/dist/es/env/parse.mjs +8 -23
- package/dist/es/env/types.mjs +16 -1
- package/dist/es/env/utils.mjs +7 -52
- package/dist/lib/env/{model-config.js → decide-model-config.js} +57 -52
- package/dist/lib/env/global-config-manager.js +125 -0
- package/dist/lib/env/index.js +17 -8
- package/dist/lib/env/model-config-manager.js +129 -0
- package/dist/lib/env/parse.js +9 -27
- package/dist/lib/env/types.js +23 -2
- package/dist/lib/env/utils.js +12 -69
- package/dist/types/env/decide-model-config.d.ts +14 -0
- package/dist/types/env/global-config-manager.d.ts +32 -0
- package/dist/types/env/helper.d.ts +1 -1
- package/dist/types/env/index.d.ts +2 -1
- package/dist/types/env/model-config-manager.d.ts +23 -0
- package/dist/types/env/parse.d.ts +2 -13
- package/dist/types/env/types.d.ts +52 -2
- package/dist/types/env/utils.d.ts +4 -8
- package/package.json +1 -1
- package/src/env/{model-config.ts → decide-model-config.ts} +91 -139
- package/src/env/global-config-manager.ts +174 -0
- package/src/env/helper.ts +1 -1
- package/src/env/index.ts +2 -1
- package/src/env/model-config-manager.ts +135 -0
- package/src/env/parse.ts +5 -24
- package/src/env/types.ts +61 -3
- package/src/env/utils.ts +7 -98
- package/dist/es/env/global-config.mjs +0 -192
- package/dist/lib/env/global-config.js +0 -229
- package/dist/types/env/global-config.d.ts +0 -52
- package/dist/types/env/model-config.d.ts +0 -70
- package/src/env/global-config.ts +0 -329
|
@@ -24,8 +24,9 @@ var __webpack_require__ = {};
|
|
|
24
24
|
var __webpack_exports__ = {};
|
|
25
25
|
__webpack_require__.r(__webpack_exports__);
|
|
26
26
|
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
decideModelConfigFromEnv: ()=>decideModelConfigFromEnv,
|
|
28
|
+
decideModelConfigFromIntentConfig: ()=>decideModelConfigFromIntentConfig,
|
|
29
|
+
decideOpenaiSdkConfig: ()=>decideOpenaiSdkConfig
|
|
29
30
|
});
|
|
30
31
|
const external_constants_js_namespaceObject = require("./constants.js");
|
|
31
32
|
const external_logger_js_namespaceObject = require("../logger.js");
|
|
@@ -41,7 +42,7 @@ const KEYS_MAP = {
|
|
|
41
42
|
};
|
|
42
43
|
const decideOpenaiSdkConfig = ({ keys, provider, valueAssert })=>{
|
|
43
44
|
(0, external_init_debug_js_namespaceObject.initDebugConfig)();
|
|
44
|
-
const debugLog = (0, external_logger_js_namespaceObject.getDebug)('ai:
|
|
45
|
+
const debugLog = (0, external_logger_js_namespaceObject.getDebug)('ai:config');
|
|
45
46
|
const socksProxy = provider[keys.socksProxy];
|
|
46
47
|
const httpProxy = provider[keys.httpProxy];
|
|
47
48
|
const vlMode = provider[keys.vlMode];
|
|
@@ -118,61 +119,62 @@ const getModelDescription = (vlMode, uiTarsVersion)=>{
|
|
|
118
119
|
else return `${vlMode} mode`;
|
|
119
120
|
return '';
|
|
120
121
|
};
|
|
121
|
-
const
|
|
122
|
+
const decideModelConfigFromIntentConfig = (intent, intentConfig)=>{
|
|
123
|
+
const debugLog = (0, external_logger_js_namespaceObject.getDebug)('ai:config');
|
|
124
|
+
debugLog('decideModelConfig base on agent.modelConfig()');
|
|
125
|
+
const keysForFn = KEYS_MAP[intent];
|
|
126
|
+
const candidateModelNameFromConfig = intentConfig[keysForFn.modelName];
|
|
127
|
+
debugLog('Got modelName from modelConfigFn', candidateModelNameFromConfig);
|
|
128
|
+
const chosenKeys = (()=>{
|
|
129
|
+
if (candidateModelNameFromConfig) {
|
|
130
|
+
debugLog('query modelConfig from fn by intent got corresponding modelName, will get other corresponding keys');
|
|
131
|
+
return keysForFn;
|
|
132
|
+
}
|
|
133
|
+
debugLog('query modelConfig from fn by intent got no corresponding modelName, will get other keys by default');
|
|
134
|
+
(0, external_utils_js_namespaceObject.assert)(intentConfig[external_constants_js_namespaceObject.DEFAULT_MODEL_CONFIG_KEYS.modelName], `The return value of agent.modelConfig do not have a valid value with key ${external_constants_js_namespaceObject.DEFAULT_MODEL_CONFIG_KEYS.modelName}.`);
|
|
135
|
+
return external_constants_js_namespaceObject.DEFAULT_MODEL_CONFIG_KEYS;
|
|
136
|
+
})();
|
|
137
|
+
const result = decideOpenaiSdkConfig({
|
|
138
|
+
keys: chosenKeys,
|
|
139
|
+
provider: intentConfig,
|
|
140
|
+
valueAssert: (0, external_helper_js_namespaceObject.createAssert)(chosenKeys.modelName, 'modelConfig', candidateModelNameFromConfig)
|
|
141
|
+
});
|
|
142
|
+
const { vlMode, uiTarsVersion } = (0, external_parse_js_namespaceObject.parseVlModeAndUiTarsModelVersionFromRawValue)(result.vlModeRaw);
|
|
143
|
+
const modelDescription = getModelDescription(vlMode, uiTarsVersion);
|
|
144
|
+
const finalResult = {
|
|
145
|
+
...result,
|
|
146
|
+
modelName: intentConfig[chosenKeys.modelName],
|
|
147
|
+
vlMode,
|
|
148
|
+
uiTarsModelVersion: uiTarsVersion,
|
|
149
|
+
modelDescription,
|
|
150
|
+
from: 'modelConfig',
|
|
151
|
+
intent
|
|
152
|
+
};
|
|
153
|
+
debugLog(`decideModelConfig result by agent.modelConfig() with intent ${intent}:`, (0, external_helper_js_namespaceObject.maskConfig)(finalResult));
|
|
154
|
+
return finalResult;
|
|
155
|
+
};
|
|
156
|
+
const decideModelConfigFromEnv = (intent, allEnvConfig)=>{
|
|
122
157
|
(0, external_init_debug_js_namespaceObject.initDebugConfig)();
|
|
123
|
-
const debugLog = (0, external_logger_js_namespaceObject.getDebug)('ai:
|
|
124
|
-
if (modelConfigFromFn) {
|
|
125
|
-
debugLog('decideModelConfig base on agent.modelConfig()');
|
|
126
|
-
const keysForFn = KEYS_MAP[intent];
|
|
127
|
-
const candidateModelNameFromConfig = modelConfigFromFn[keysForFn.modelName];
|
|
128
|
-
debugLog('Got modelName from modelConfigFn', candidateModelNameFromConfig);
|
|
129
|
-
const chosenKeys = (()=>{
|
|
130
|
-
if (candidateModelNameFromConfig) {
|
|
131
|
-
debugLog('query modelConfig from fn by intent got corresponding modelName, will get other corresponding keys');
|
|
132
|
-
return keysForFn;
|
|
133
|
-
}
|
|
134
|
-
debugLog('query modelConfig from fn by intent got no corresponding modelName, will get other keys by default');
|
|
135
|
-
(0, external_utils_js_namespaceObject.assert)(modelConfigFromFn[external_constants_js_namespaceObject.DEFAULT_MODEL_CONFIG_KEYS.modelName], `The return value of agent.modelConfig do not have a valid value with key ${external_constants_js_namespaceObject.DEFAULT_MODEL_CONFIG_KEYS.modelName}.`);
|
|
136
|
-
return external_constants_js_namespaceObject.DEFAULT_MODEL_CONFIG_KEYS;
|
|
137
|
-
})();
|
|
138
|
-
const result = decideOpenaiSdkConfig({
|
|
139
|
-
keys: chosenKeys,
|
|
140
|
-
provider: modelConfigFromFn,
|
|
141
|
-
valueAssert: (0, external_helper_js_namespaceObject.createAssert)(chosenKeys.modelName, 'modelConfig', candidateModelNameFromConfig)
|
|
142
|
-
});
|
|
143
|
-
const { vlMode, uiTarsVersion } = (0, external_parse_js_namespaceObject.parseVlModeAndUiTarsFromRaw)(result.vlModeRaw);
|
|
144
|
-
const modelDescription = getModelDescription(vlMode, uiTarsVersion);
|
|
145
|
-
const finalResult = {
|
|
146
|
-
...result,
|
|
147
|
-
modelName: modelConfigFromFn[chosenKeys.modelName],
|
|
148
|
-
vlMode,
|
|
149
|
-
uiTarsVersion,
|
|
150
|
-
modelDescription,
|
|
151
|
-
from: 'modelConfig'
|
|
152
|
-
};
|
|
153
|
-
debugLog(`decideModelConfig result by agent.modelConfig() with intent ${intent}:`, (0, external_helper_js_namespaceObject.maskConfig)(finalResult));
|
|
154
|
-
return finalResult;
|
|
155
|
-
}
|
|
158
|
+
const debugLog = (0, external_logger_js_namespaceObject.getDebug)('ai:config');
|
|
156
159
|
const keysForEnv = 'default' === intent ? external_constants_js_namespaceObject.DEFAULT_MODEL_CONFIG_KEYS_LEGACY : KEYS_MAP[intent];
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
if ('default' !== intent && allConfig[keysForEnv.modelName]) {
|
|
160
|
-
const modelName = allConfig[keysForEnv.modelName];
|
|
160
|
+
if ('default' !== intent && allEnvConfig[keysForEnv.modelName]) {
|
|
161
|
+
const modelName = allEnvConfig[keysForEnv.modelName];
|
|
161
162
|
debugLog(`Got intent ${intent} corresponding modelName ${modelName} by key ${keysForEnv.modelName} from globalConfig, will get other config by intent.`);
|
|
162
163
|
const result = decideOpenaiSdkConfig({
|
|
163
164
|
keys: keysForEnv,
|
|
164
|
-
provider:
|
|
165
|
+
provider: allEnvConfig,
|
|
165
166
|
valueAssert: (0, external_helper_js_namespaceObject.createAssert)(keysForEnv.modelName, 'process.env', modelName)
|
|
166
167
|
});
|
|
167
|
-
const { vlMode, uiTarsVersion } = (0, external_parse_js_namespaceObject.
|
|
168
|
+
const { vlMode, uiTarsVersion } = (0, external_parse_js_namespaceObject.parseVlModeAndUiTarsModelVersionFromRawValue)(result.vlModeRaw);
|
|
168
169
|
const modelDescription = getModelDescription(vlMode, uiTarsVersion);
|
|
169
170
|
const finalResult = {
|
|
170
171
|
...result,
|
|
171
172
|
modelName,
|
|
172
173
|
vlMode,
|
|
173
|
-
uiTarsVersion,
|
|
174
|
+
uiTarsModelVersion: uiTarsVersion,
|
|
174
175
|
modelDescription,
|
|
175
|
-
from: 'env'
|
|
176
|
+
from: 'env',
|
|
177
|
+
intent
|
|
176
178
|
};
|
|
177
179
|
debugLog(`decideModelConfig result by process.env with intent ${intent}:`, (0, external_helper_js_namespaceObject.maskConfig)(finalResult));
|
|
178
180
|
return finalResult;
|
|
@@ -180,26 +182,29 @@ const decideModelConfig = ({ intent, modelConfigFromFn, allConfig })=>{
|
|
|
180
182
|
debugLog(`decideModelConfig as legacy logic with intent ${intent}.`);
|
|
181
183
|
const result = decideOpenaiSdkConfig({
|
|
182
184
|
keys: external_constants_js_namespaceObject.DEFAULT_MODEL_CONFIG_KEYS_LEGACY,
|
|
183
|
-
provider:
|
|
185
|
+
provider: allEnvConfig,
|
|
184
186
|
valueAssert: (0, external_helper_js_namespaceObject.createAssert)(external_constants_js_namespaceObject.DEFAULT_MODEL_CONFIG_KEYS_LEGACY.modelName, 'process.env')
|
|
185
187
|
});
|
|
186
|
-
const { vlMode, uiTarsVersion } = (0, external_parse_js_namespaceObject.parseVlModeAndUiTarsFromGlobalConfig)(
|
|
188
|
+
const { vlMode, uiTarsVersion } = (0, external_parse_js_namespaceObject.parseVlModeAndUiTarsFromGlobalConfig)(allEnvConfig);
|
|
187
189
|
const modelDescription = getModelDescription(vlMode, uiTarsVersion);
|
|
188
190
|
const finalResult = {
|
|
189
191
|
...result,
|
|
190
|
-
modelName:
|
|
192
|
+
modelName: allEnvConfig[external_constants_js_namespaceObject.DEFAULT_MODEL_CONFIG_KEYS_LEGACY.modelName] || 'gpt-4o',
|
|
191
193
|
vlMode,
|
|
192
|
-
uiTarsVersion,
|
|
194
|
+
uiTarsModelVersion: uiTarsVersion,
|
|
193
195
|
modelDescription,
|
|
194
|
-
from: 'legacy-env'
|
|
196
|
+
from: 'legacy-env',
|
|
197
|
+
intent
|
|
195
198
|
};
|
|
196
199
|
debugLog(`decideModelConfig result by legacy logic with intent ${intent}:`, (0, external_helper_js_namespaceObject.maskConfig)(finalResult));
|
|
197
200
|
return finalResult;
|
|
198
201
|
};
|
|
199
|
-
exports.
|
|
202
|
+
exports.decideModelConfigFromEnv = __webpack_exports__.decideModelConfigFromEnv;
|
|
203
|
+
exports.decideModelConfigFromIntentConfig = __webpack_exports__.decideModelConfigFromIntentConfig;
|
|
200
204
|
exports.decideOpenaiSdkConfig = __webpack_exports__.decideOpenaiSdkConfig;
|
|
201
205
|
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
202
|
-
"
|
|
206
|
+
"decideModelConfigFromEnv",
|
|
207
|
+
"decideModelConfigFromIntentConfig",
|
|
203
208
|
"decideOpenaiSdkConfig"
|
|
204
209
|
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
205
210
|
Object.defineProperty(exports, '__esModule', {
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = (exports1, definition)=>{
|
|
5
|
+
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: definition[key]
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
})();
|
|
11
|
+
(()=>{
|
|
12
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
13
|
+
})();
|
|
14
|
+
(()=>{
|
|
15
|
+
__webpack_require__.r = (exports1)=>{
|
|
16
|
+
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
17
|
+
value: 'Module'
|
|
18
|
+
});
|
|
19
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
20
|
+
value: true
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
})();
|
|
24
|
+
var __webpack_exports__ = {};
|
|
25
|
+
__webpack_require__.r(__webpack_exports__);
|
|
26
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
+
GlobalConfigManager: ()=>GlobalConfigManager
|
|
28
|
+
});
|
|
29
|
+
const external_init_debug_js_namespaceObject = require("./init-debug.js");
|
|
30
|
+
const external_types_js_namespaceObject = require("./types.js");
|
|
31
|
+
function _define_property(obj, key, value) {
|
|
32
|
+
if (key in obj) Object.defineProperty(obj, key, {
|
|
33
|
+
value: value,
|
|
34
|
+
enumerable: true,
|
|
35
|
+
configurable: true,
|
|
36
|
+
writable: true
|
|
37
|
+
});
|
|
38
|
+
else obj[key] = value;
|
|
39
|
+
return obj;
|
|
40
|
+
}
|
|
41
|
+
class GlobalConfigManager {
|
|
42
|
+
getAllEnvConfig() {
|
|
43
|
+
const envConfig = external_types_js_namespaceObject.ALL_ENV_KEYS.reduce((p, name)=>{
|
|
44
|
+
p[name] = process.env[name];
|
|
45
|
+
return p;
|
|
46
|
+
}, Object.create(null));
|
|
47
|
+
if (!this.override) return envConfig;
|
|
48
|
+
{
|
|
49
|
+
const { newConfig, extendMode } = this.override;
|
|
50
|
+
if (extendMode) return {
|
|
51
|
+
...envConfig,
|
|
52
|
+
...newConfig
|
|
53
|
+
};
|
|
54
|
+
return {
|
|
55
|
+
...newConfig
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
getEnvConfigValue(key) {
|
|
60
|
+
const allConfig = this.getAllEnvConfig();
|
|
61
|
+
if (!external_types_js_namespaceObject.STRING_ENV_KEYS.includes(key)) throw new Error(`getEnvConfigValue with key ${key} is not supported.`);
|
|
62
|
+
if (key === external_types_js_namespaceObject.MATCH_BY_POSITION) throw new Error('MATCH_BY_POSITION is deprecated, use MIDSCENE_USE_VL_MODEL instead');
|
|
63
|
+
const value = allConfig[key];
|
|
64
|
+
this.keysHaveBeenRead[key] = true;
|
|
65
|
+
if ('string' == typeof value) return value.trim();
|
|
66
|
+
return value;
|
|
67
|
+
}
|
|
68
|
+
getEnvConfigInNumber(key) {
|
|
69
|
+
const allConfig = this.getAllEnvConfig();
|
|
70
|
+
if (!external_types_js_namespaceObject.NUMBER_ENV_KEYS.includes(key)) throw new Error(`getEnvConfigInNumber with key ${key} is not supported`);
|
|
71
|
+
const value = allConfig[key];
|
|
72
|
+
this.keysHaveBeenRead[key] = true;
|
|
73
|
+
return Number(value || '');
|
|
74
|
+
}
|
|
75
|
+
getEnvConfigInBoolean(key) {
|
|
76
|
+
const allConfig = this.getAllEnvConfig();
|
|
77
|
+
if (!external_types_js_namespaceObject.BOOLEAN_ENV_KEYS.includes(key)) throw new Error(`getEnvConfigInBoolean with key ${key} is not supported`);
|
|
78
|
+
const value = allConfig[key];
|
|
79
|
+
this.keysHaveBeenRead[key] = true;
|
|
80
|
+
if (!value) return false;
|
|
81
|
+
if (/^(true|1)$/i.test(value)) return true;
|
|
82
|
+
if (/^(false|0)$/i.test(value)) return false;
|
|
83
|
+
return !!value.trim();
|
|
84
|
+
}
|
|
85
|
+
registerModelConfigManager(globalModelConfigManager) {
|
|
86
|
+
this.globalModelConfigManager = globalModelConfigManager;
|
|
87
|
+
}
|
|
88
|
+
overrideAIConfig(newConfig, extendMode = false) {
|
|
89
|
+
var _this_override;
|
|
90
|
+
for(const key in newConfig){
|
|
91
|
+
if (![
|
|
92
|
+
...external_types_js_namespaceObject.GLOBAL_ENV_KEYS,
|
|
93
|
+
...external_types_js_namespaceObject.MODEL_ENV_KEYS
|
|
94
|
+
].includes(key)) throw new Error(`Failed to override AI config, invalid key: ${key}`);
|
|
95
|
+
const value = newConfig[key];
|
|
96
|
+
if ('string' != typeof value) throw new Error(`Failed to override AI config, value for key ${key} must be a string, but got with type ${typeof value}`);
|
|
97
|
+
if (this.keysHaveBeenRead[key]) console.warn(`Warning: try to override AI config with key ${key} ,but it has been read.`);
|
|
98
|
+
}
|
|
99
|
+
const savedNewConfig = extendMode ? {
|
|
100
|
+
...null == (_this_override = this.override) ? void 0 : _this_override.newConfig,
|
|
101
|
+
...newConfig
|
|
102
|
+
} : newConfig;
|
|
103
|
+
this.override = {
|
|
104
|
+
newConfig: {
|
|
105
|
+
...savedNewConfig
|
|
106
|
+
},
|
|
107
|
+
extendMode
|
|
108
|
+
};
|
|
109
|
+
if (!this.globalModelConfigManager) throw new Error('globalModelConfigManager is not registered, which should not happen');
|
|
110
|
+
this.globalModelConfigManager.clearModelConfigMap();
|
|
111
|
+
}
|
|
112
|
+
constructor(){
|
|
113
|
+
_define_property(this, "override", void 0);
|
|
114
|
+
_define_property(this, "keysHaveBeenRead", {});
|
|
115
|
+
_define_property(this, "globalModelConfigManager", void 0);
|
|
116
|
+
(0, external_init_debug_js_namespaceObject.initDebugConfig)();
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
exports.GlobalConfigManager = __webpack_exports__.GlobalConfigManager;
|
|
120
|
+
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
121
|
+
"GlobalConfigManager"
|
|
122
|
+
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
123
|
+
Object.defineProperty(exports, '__esModule', {
|
|
124
|
+
value: true
|
|
125
|
+
});
|
package/dist/lib/env/index.js
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __webpack_modules__ = {
|
|
3
|
-
"./
|
|
4
|
-
module.exports = require("./
|
|
3
|
+
"./global-config-manager": function(module) {
|
|
4
|
+
module.exports = require("./global-config-manager.js");
|
|
5
|
+
},
|
|
6
|
+
"./model-config-manager": function(module) {
|
|
7
|
+
module.exports = require("./model-config-manager.js");
|
|
5
8
|
},
|
|
6
9
|
"./types": function(module) {
|
|
7
10
|
module.exports = require("./types.js");
|
|
@@ -54,13 +57,15 @@ var __webpack_exports__ = {};
|
|
|
54
57
|
(()=>{
|
|
55
58
|
__webpack_require__.r(__webpack_exports__);
|
|
56
59
|
__webpack_require__.d(__webpack_exports__, {
|
|
57
|
-
|
|
60
|
+
GlobalConfigManager: ()=>_global_config_manager__WEBPACK_IMPORTED_MODULE_3__.GlobalConfigManager,
|
|
61
|
+
ModelConfigManager: ()=>_model_config_manager__WEBPACK_IMPORTED_MODULE_2__.ModelConfigManager
|
|
58
62
|
});
|
|
59
63
|
var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("./utils");
|
|
60
64
|
var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
61
65
|
for(var __WEBPACK_IMPORT_KEY__ in _utils__WEBPACK_IMPORTED_MODULE_0__)if ([
|
|
62
66
|
"default",
|
|
63
|
-
"
|
|
67
|
+
"GlobalConfigManager",
|
|
68
|
+
"ModelConfigManager"
|
|
64
69
|
].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
|
|
65
70
|
return _utils__WEBPACK_IMPORTED_MODULE_0__[key];
|
|
66
71
|
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
@@ -69,16 +74,20 @@ var __webpack_exports__ = {};
|
|
|
69
74
|
var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
70
75
|
for(var __WEBPACK_IMPORT_KEY__ in _types__WEBPACK_IMPORTED_MODULE_1__)if ([
|
|
71
76
|
"default",
|
|
72
|
-
"
|
|
77
|
+
"GlobalConfigManager",
|
|
78
|
+
"ModelConfigManager"
|
|
73
79
|
].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
|
|
74
80
|
return _types__WEBPACK_IMPORTED_MODULE_1__[key];
|
|
75
81
|
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
76
82
|
__webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
|
|
77
|
-
var
|
|
83
|
+
var _model_config_manager__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("./model-config-manager");
|
|
84
|
+
var _global_config_manager__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("./global-config-manager");
|
|
78
85
|
})();
|
|
79
|
-
exports.
|
|
86
|
+
exports.GlobalConfigManager = __webpack_exports__.GlobalConfigManager;
|
|
87
|
+
exports.ModelConfigManager = __webpack_exports__.ModelConfigManager;
|
|
80
88
|
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
81
|
-
"
|
|
89
|
+
"GlobalConfigManager",
|
|
90
|
+
"ModelConfigManager"
|
|
82
91
|
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
83
92
|
Object.defineProperty(exports, '__esModule', {
|
|
84
93
|
value: true
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = (exports1, definition)=>{
|
|
5
|
+
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: definition[key]
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
})();
|
|
11
|
+
(()=>{
|
|
12
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
13
|
+
})();
|
|
14
|
+
(()=>{
|
|
15
|
+
__webpack_require__.r = (exports1)=>{
|
|
16
|
+
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
17
|
+
value: 'Module'
|
|
18
|
+
});
|
|
19
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
20
|
+
value: true
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
})();
|
|
24
|
+
var __webpack_exports__ = {};
|
|
25
|
+
__webpack_require__.r(__webpack_exports__);
|
|
26
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
+
ModelConfigManager: ()=>ModelConfigManager
|
|
28
|
+
});
|
|
29
|
+
const external_decide_model_config_js_namespaceObject = require("./decide-model-config.js");
|
|
30
|
+
function _define_property(obj, key, value) {
|
|
31
|
+
if (key in obj) Object.defineProperty(obj, key, {
|
|
32
|
+
value: value,
|
|
33
|
+
enumerable: true,
|
|
34
|
+
configurable: true,
|
|
35
|
+
writable: true
|
|
36
|
+
});
|
|
37
|
+
else obj[key] = value;
|
|
38
|
+
return obj;
|
|
39
|
+
}
|
|
40
|
+
const ALL_INTENTS = [
|
|
41
|
+
'VQA',
|
|
42
|
+
'default',
|
|
43
|
+
'grounding',
|
|
44
|
+
'planning'
|
|
45
|
+
];
|
|
46
|
+
class ModelConfigManager {
|
|
47
|
+
calcIntentConfigMap(modelConfigFn) {
|
|
48
|
+
const intentConfigMap = {
|
|
49
|
+
VQA: void 0,
|
|
50
|
+
default: void 0,
|
|
51
|
+
grounding: void 0,
|
|
52
|
+
planning: void 0
|
|
53
|
+
};
|
|
54
|
+
for (const i of ALL_INTENTS){
|
|
55
|
+
const result = modelConfigFn({
|
|
56
|
+
intent: i
|
|
57
|
+
});
|
|
58
|
+
if (!result) throw new Error(`The agent has an option named modelConfig is a function, but it return ${result} when call with intent ${i}, which should be a object.`);
|
|
59
|
+
intentConfigMap[i] = result;
|
|
60
|
+
}
|
|
61
|
+
return intentConfigMap;
|
|
62
|
+
}
|
|
63
|
+
calcModelConfigMapBaseOnIntent(intentConfigMap) {
|
|
64
|
+
const modelConfigMap = {
|
|
65
|
+
VQA: void 0,
|
|
66
|
+
default: void 0,
|
|
67
|
+
grounding: void 0,
|
|
68
|
+
planning: void 0
|
|
69
|
+
};
|
|
70
|
+
for (const i of ALL_INTENTS){
|
|
71
|
+
const result = (0, external_decide_model_config_js_namespaceObject.decideModelConfigFromIntentConfig)(i, intentConfigMap[i]);
|
|
72
|
+
modelConfigMap[i] = result;
|
|
73
|
+
}
|
|
74
|
+
return modelConfigMap;
|
|
75
|
+
}
|
|
76
|
+
calcModelConfigMapBaseOnEnv(allEnvConfig) {
|
|
77
|
+
const modelConfigMap = {
|
|
78
|
+
VQA: void 0,
|
|
79
|
+
default: void 0,
|
|
80
|
+
grounding: void 0,
|
|
81
|
+
planning: void 0
|
|
82
|
+
};
|
|
83
|
+
for (const i of ALL_INTENTS){
|
|
84
|
+
const result = (0, external_decide_model_config_js_namespaceObject.decideModelConfigFromEnv)(i, allEnvConfig);
|
|
85
|
+
modelConfigMap[i] = result;
|
|
86
|
+
}
|
|
87
|
+
return modelConfigMap;
|
|
88
|
+
}
|
|
89
|
+
clearModelConfigMap() {
|
|
90
|
+
if (this.isolatedMode) throw new Error('ModelConfigManager work in isolated mode, so clearModelConfigMap should not be called');
|
|
91
|
+
this.modelConfigMap = void 0;
|
|
92
|
+
}
|
|
93
|
+
getModelConfig(intent) {
|
|
94
|
+
if (this.isolatedMode) {
|
|
95
|
+
if (!this.modelConfigMap) throw new Error('modelConfigMap is not initialized in isolated mode, which should not happen');
|
|
96
|
+
return this.modelConfigMap[intent];
|
|
97
|
+
}
|
|
98
|
+
if (!this.modelConfigMap) {
|
|
99
|
+
if (!this.globalConfigManager) throw new Error('globalConfigManager is not registered, which should not happen');
|
|
100
|
+
this.modelConfigMap = this.calcModelConfigMapBaseOnEnv(this.globalConfigManager.getAllEnvConfig());
|
|
101
|
+
}
|
|
102
|
+
return this.modelConfigMap[intent];
|
|
103
|
+
}
|
|
104
|
+
getUploadTestServerUrl() {
|
|
105
|
+
const { openaiExtraConfig } = this.getModelConfig('default');
|
|
106
|
+
const serverUrl = null == openaiExtraConfig ? void 0 : openaiExtraConfig.REPORT_SERVER_URL;
|
|
107
|
+
return serverUrl;
|
|
108
|
+
}
|
|
109
|
+
registerGlobalConfigManager(globalConfigManager) {
|
|
110
|
+
this.globalConfigManager = globalConfigManager;
|
|
111
|
+
}
|
|
112
|
+
constructor(modelConfigFn){
|
|
113
|
+
_define_property(this, "modelConfigMap", void 0);
|
|
114
|
+
_define_property(this, "isolatedMode", false);
|
|
115
|
+
_define_property(this, "globalConfigManager", void 0);
|
|
116
|
+
if (modelConfigFn) {
|
|
117
|
+
this.isolatedMode = true;
|
|
118
|
+
const intentConfigMap = this.calcIntentConfigMap(modelConfigFn);
|
|
119
|
+
this.modelConfigMap = this.calcModelConfigMapBaseOnIntent(intentConfigMap);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
exports.ModelConfigManager = __webpack_exports__.ModelConfigManager;
|
|
124
|
+
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
125
|
+
"ModelConfigManager"
|
|
126
|
+
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
127
|
+
Object.defineProperty(exports, '__esModule', {
|
|
128
|
+
value: true
|
|
129
|
+
});
|
package/dist/lib/env/parse.js
CHANGED
|
@@ -24,40 +24,24 @@ var __webpack_require__ = {};
|
|
|
24
24
|
var __webpack_exports__ = {};
|
|
25
25
|
__webpack_require__.r(__webpack_exports__);
|
|
26
26
|
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
-
parseVlModeAndUiTarsFromRaw: ()=>parseVlModeAndUiTarsFromRaw,
|
|
28
27
|
parseVlModeAndUiTarsFromGlobalConfig: ()=>parseVlModeAndUiTarsFromGlobalConfig,
|
|
29
|
-
|
|
28
|
+
parseVlModeAndUiTarsModelVersionFromRawValue: ()=>parseVlModeAndUiTarsModelVersionFromRawValue
|
|
30
29
|
});
|
|
31
30
|
const external_types_js_namespaceObject = require("./types.js");
|
|
32
|
-
|
|
33
|
-
UITarsModelVersion["V1_0"] = "1.0";
|
|
34
|
-
UITarsModelVersion["V1_5"] = "1.5";
|
|
35
|
-
UITarsModelVersion["DOUBAO_1_5_15B"] = "doubao-1.5-15B";
|
|
36
|
-
UITarsModelVersion["DOUBAO_1_5_20B"] = "doubao-1.5-20B";
|
|
37
|
-
return UITarsModelVersion;
|
|
38
|
-
}({});
|
|
39
|
-
const vlModeRawValidValues = [
|
|
40
|
-
'doubao-vision',
|
|
41
|
-
'gemini',
|
|
42
|
-
'qwen-vl',
|
|
43
|
-
'vlm-ui-tars',
|
|
44
|
-
'vlm-ui-tars-doubao',
|
|
45
|
-
'vlm-ui-tars-doubao-1.5'
|
|
46
|
-
];
|
|
47
|
-
const parseVlModeAndUiTarsFromRaw = (vlModeRaw)=>{
|
|
31
|
+
const parseVlModeAndUiTarsModelVersionFromRawValue = (vlModeRaw)=>{
|
|
48
32
|
if (!vlModeRaw) return {
|
|
49
33
|
vlMode: void 0,
|
|
50
34
|
uiTarsVersion: void 0
|
|
51
35
|
};
|
|
52
|
-
if (!
|
|
36
|
+
if (!external_types_js_namespaceObject.VL_MODE_RAW_VALID_VALUES.includes(vlModeRaw)) throw new Error(`the value ${vlModeRaw} is not a valid VL_MODE value, must be one of ${external_types_js_namespaceObject.VL_MODE_RAW_VALID_VALUES}`);
|
|
53
37
|
const raw = vlModeRaw;
|
|
54
38
|
if ('vlm-ui-tars' === raw) return {
|
|
55
39
|
vlMode: 'vlm-ui-tars',
|
|
56
|
-
uiTarsVersion:
|
|
40
|
+
uiTarsVersion: external_types_js_namespaceObject.UITarsModelVersion.V1_0
|
|
57
41
|
};
|
|
58
42
|
if ('vlm-ui-tars-doubao' === raw || 'vlm-ui-tars-doubao-1.5' === raw) return {
|
|
59
43
|
vlMode: 'vlm-ui-tars',
|
|
60
|
-
uiTarsVersion:
|
|
44
|
+
uiTarsVersion: external_types_js_namespaceObject.UITarsModelVersion.DOUBAO_1_5_20B
|
|
61
45
|
};
|
|
62
46
|
return {
|
|
63
47
|
vlMode: raw,
|
|
@@ -90,11 +74,11 @@ const parseVlModeAndUiTarsFromGlobalConfig = (provider)=>{
|
|
|
90
74
|
};
|
|
91
75
|
if (isUiTars) if ('1' === isUiTars) return {
|
|
92
76
|
vlMode: 'vlm-ui-tars',
|
|
93
|
-
uiTarsVersion:
|
|
77
|
+
uiTarsVersion: external_types_js_namespaceObject.UITarsModelVersion.V1_0
|
|
94
78
|
};
|
|
95
79
|
else if ('DOUBAO' === isUiTars || 'DOUBAO-1.5' === isUiTars) return {
|
|
96
80
|
vlMode: 'vlm-ui-tars',
|
|
97
|
-
uiTarsVersion:
|
|
81
|
+
uiTarsVersion: external_types_js_namespaceObject.UITarsModelVersion.DOUBAO_1_5_20B
|
|
98
82
|
};
|
|
99
83
|
else return {
|
|
100
84
|
vlMode: 'vlm-ui-tars',
|
|
@@ -105,13 +89,11 @@ const parseVlModeAndUiTarsFromGlobalConfig = (provider)=>{
|
|
|
105
89
|
uiTarsVersion: void 0
|
|
106
90
|
};
|
|
107
91
|
};
|
|
108
|
-
exports.UITarsModelVersion = __webpack_exports__.UITarsModelVersion;
|
|
109
92
|
exports.parseVlModeAndUiTarsFromGlobalConfig = __webpack_exports__.parseVlModeAndUiTarsFromGlobalConfig;
|
|
110
|
-
exports.
|
|
93
|
+
exports.parseVlModeAndUiTarsModelVersionFromRawValue = __webpack_exports__.parseVlModeAndUiTarsModelVersionFromRawValue;
|
|
111
94
|
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
112
|
-
"UITarsModelVersion",
|
|
113
95
|
"parseVlModeAndUiTarsFromGlobalConfig",
|
|
114
|
-
"
|
|
96
|
+
"parseVlModeAndUiTarsModelVersionFromRawValue"
|
|
115
97
|
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
116
98
|
Object.defineProperty(exports, '__esModule', {
|
|
117
99
|
value: true
|
package/dist/lib/env/types.js
CHANGED
|
@@ -135,7 +135,9 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
135
135
|
OPENAI_MAX_TOKENS: ()=>OPENAI_MAX_TOKENS,
|
|
136
136
|
OPENAI_USE_AZURE: ()=>OPENAI_USE_AZURE,
|
|
137
137
|
STRING_ENV_KEYS: ()=>STRING_ENV_KEYS,
|
|
138
|
-
|
|
138
|
+
UITarsModelVersion: ()=>UITarsModelVersion,
|
|
139
|
+
UNUSED_ENV_KEYS: ()=>UNUSED_ENV_KEYS,
|
|
140
|
+
VL_MODE_RAW_VALID_VALUES: ()=>VL_MODE_RAW_VALID_VALUES
|
|
139
141
|
});
|
|
140
142
|
const MIDSCENE_OPENAI_INIT_CONFIG_JSON = 'MIDSCENE_OPENAI_INIT_CONFIG_JSON';
|
|
141
143
|
const MIDSCENE_MODEL_NAME = 'MIDSCENE_MODEL_NAME';
|
|
@@ -367,6 +369,21 @@ const ALL_ENV_KEYS = [
|
|
|
367
369
|
...GLOBAL_ENV_KEYS,
|
|
368
370
|
...MODEL_ENV_KEYS
|
|
369
371
|
];
|
|
372
|
+
var UITarsModelVersion = /*#__PURE__*/ function(UITarsModelVersion) {
|
|
373
|
+
UITarsModelVersion["V1_0"] = "1.0";
|
|
374
|
+
UITarsModelVersion["V1_5"] = "1.5";
|
|
375
|
+
UITarsModelVersion["DOUBAO_1_5_15B"] = "doubao-1.5-15B";
|
|
376
|
+
UITarsModelVersion["DOUBAO_1_5_20B"] = "doubao-1.5-20B";
|
|
377
|
+
return UITarsModelVersion;
|
|
378
|
+
}({});
|
|
379
|
+
const VL_MODE_RAW_VALID_VALUES = [
|
|
380
|
+
'doubao-vision',
|
|
381
|
+
'gemini',
|
|
382
|
+
'qwen-vl',
|
|
383
|
+
'vlm-ui-tars',
|
|
384
|
+
'vlm-ui-tars-doubao',
|
|
385
|
+
'vlm-ui-tars-doubao-1.5'
|
|
386
|
+
];
|
|
370
387
|
exports.ALL_ENV_KEYS = __webpack_exports__.ALL_ENV_KEYS;
|
|
371
388
|
exports.ANTHROPIC_API_KEY = __webpack_exports__.ANTHROPIC_API_KEY;
|
|
372
389
|
exports.AZURE_OPENAI_API_VERSION = __webpack_exports__.AZURE_OPENAI_API_VERSION;
|
|
@@ -478,7 +495,9 @@ exports.OPENAI_BASE_URL = __webpack_exports__.OPENAI_BASE_URL;
|
|
|
478
495
|
exports.OPENAI_MAX_TOKENS = __webpack_exports__.OPENAI_MAX_TOKENS;
|
|
479
496
|
exports.OPENAI_USE_AZURE = __webpack_exports__.OPENAI_USE_AZURE;
|
|
480
497
|
exports.STRING_ENV_KEYS = __webpack_exports__.STRING_ENV_KEYS;
|
|
498
|
+
exports.UITarsModelVersion = __webpack_exports__.UITarsModelVersion;
|
|
481
499
|
exports.UNUSED_ENV_KEYS = __webpack_exports__.UNUSED_ENV_KEYS;
|
|
500
|
+
exports.VL_MODE_RAW_VALID_VALUES = __webpack_exports__.VL_MODE_RAW_VALID_VALUES;
|
|
482
501
|
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
483
502
|
"ALL_ENV_KEYS",
|
|
484
503
|
"ANTHROPIC_API_KEY",
|
|
@@ -591,7 +610,9 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
|
591
610
|
"OPENAI_MAX_TOKENS",
|
|
592
611
|
"OPENAI_USE_AZURE",
|
|
593
612
|
"STRING_ENV_KEYS",
|
|
594
|
-
"
|
|
613
|
+
"UITarsModelVersion",
|
|
614
|
+
"UNUSED_ENV_KEYS",
|
|
615
|
+
"VL_MODE_RAW_VALID_VALUES"
|
|
595
616
|
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
596
617
|
Object.defineProperty(exports, '__esModule', {
|
|
597
618
|
value: true
|