Update Ngms_api.js

This commit is contained in:
2025-09-04 16:45:47 +08:00
committed by GitHub
parent 6670fd074d
commit 1e152a823c

View File

@@ -256,6 +256,7 @@ export async function fetchNgmsModels() {
try { try {
if (apiSettings.apiMode === 'sillytavern_preset') { if (apiSettings.apiMode === 'sillytavern_preset') {
// SillyTavern预设模式获取当前预设的模型
const context = getContext(); const context = getContext();
if (!context?.extensionSettings?.connectionManager?.profiles) { if (!context?.extensionSettings?.connectionManager?.profiles) {
throw new Error('无法获取SillyTavern配置文件列表'); throw new Error('无法获取SillyTavern配置文件列表');
@@ -301,21 +302,25 @@ export async function fetchNgmsModels() {
} }
const rawData = await response.json(); const rawData = await response.json();
const result = normalizeApiResponse(rawData); const models = Array.isArray(rawData) ? rawData : (rawData.data || rawData.models || []);
const models = result.data || [];
if (result.error || !Array.isArray(models)) { if (!Array.isArray(models)) {
const errorMessage = result.error?.message || 'API未返回有效的模型列表数组'; const errorMessage = result.error?.message || 'API未返回有效的模型列表数组';
throw new Error(errorMessage); throw new Error(errorMessage);
} }
const formattedModels = models const formattedModels = models
.map(m => ({ .map(m => {
id: m.id || m.model || m, // 从name字段中提取模型名称去掉"models/"前缀
name: m.id || m.model || m const modelIdRaw = m.name || m.id || m.model || m;
})) const modelName = String(modelIdRaw).replace(/^models\//, '');
return {
id: modelName,
name: modelName
};
})
.filter(m => m.id) .filter(m => m.id)
.sort((a, b) => a.name.localeCompare(b.name)); .sort((a, b) => String(a.name).localeCompare(String(b.name)));
console.log('[Amily2号-Ngms外交部] 全兼容模式获取到模型:', formattedModels); console.log('[Amily2号-Ngms外交部] 全兼容模式获取到模型:', formattedModels);
return formattedModels; return formattedModels;