fix openrouter
This commit is contained in:
@@ -56,7 +56,14 @@ export function getProviderModelRef(config: ProviderConfig): string | undefined
|
|||||||
: `${providerKey}/${config.model}`;
|
: `${providerKey}/${config.model}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
return getProviderDefaultModel(config.type);
|
const defaultModel = getProviderDefaultModel(config.type);
|
||||||
|
if (!defaultModel) {
|
||||||
|
return undefined;
|
||||||
|
}
|
||||||
|
|
||||||
|
return defaultModel.startsWith(`${providerKey}/`)
|
||||||
|
? defaultModel
|
||||||
|
: `${providerKey}/${defaultModel}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function getProviderFallbackModelRefs(config: ProviderConfig): Promise<string[]> {
|
export async function getProviderFallbackModelRefs(config: ProviderConfig): Promise<string[]> {
|
||||||
|
|||||||
@@ -63,7 +63,6 @@ export const PROVIDER_DEFINITIONS: ProviderDefinition[] = [
|
|||||||
model: 'Multi-Model',
|
model: 'Multi-Model',
|
||||||
requiresApiKey: true,
|
requiresApiKey: true,
|
||||||
showModelId: true,
|
showModelId: true,
|
||||||
showModelIdInDevModeOnly: true,
|
|
||||||
modelIdPlaceholder: 'anthropic/claude-opus-4.6',
|
modelIdPlaceholder: 'anthropic/claude-opus-4.6',
|
||||||
defaultModelId: 'anthropic/claude-opus-4.6',
|
defaultModelId: 'anthropic/claude-opus-4.6',
|
||||||
category: 'compatible',
|
category: 'compatible',
|
||||||
|
|||||||
@@ -376,7 +376,10 @@ export async function setOpenClawDefaultModel(
|
|||||||
): Promise<void> {
|
): Promise<void> {
|
||||||
const config = await readOpenClawJson();
|
const config = await readOpenClawJson();
|
||||||
|
|
||||||
const model = modelOverride || getProviderDefaultModel(provider);
|
const rawModel = modelOverride || getProviderDefaultModel(provider);
|
||||||
|
const model = rawModel
|
||||||
|
? (rawModel.startsWith(`${provider}/`) ? rawModel : `${provider}/${rawModel}`)
|
||||||
|
: undefined;
|
||||||
if (!model) {
|
if (!model) {
|
||||||
console.warn(`No default model mapping for provider "${provider}"`);
|
console.warn(`No default model mapping for provider "${provider}"`);
|
||||||
return;
|
return;
|
||||||
@@ -534,7 +537,10 @@ export async function setOpenClawDefaultModelWithOverride(
|
|||||||
): Promise<void> {
|
): Promise<void> {
|
||||||
const config = await readOpenClawJson();
|
const config = await readOpenClawJson();
|
||||||
|
|
||||||
const model = modelOverride || getProviderDefaultModel(provider);
|
const rawModel = modelOverride || getProviderDefaultModel(provider);
|
||||||
|
const model = rawModel
|
||||||
|
? (rawModel.startsWith(`${provider}/`) ? rawModel : `${provider}/${rawModel}`)
|
||||||
|
: undefined;
|
||||||
if (!model) {
|
if (!model) {
|
||||||
console.warn(`No default model mapping for provider "${provider}"`);
|
console.warn(`No default model mapping for provider "${provider}"`);
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -134,7 +134,7 @@ export const PROVIDER_TYPE_INFO: ProviderTypeInfo[] = [
|
|||||||
defaultModelId: 'gemini-3.1-pro-preview',
|
defaultModelId: 'gemini-3.1-pro-preview',
|
||||||
apiKeyUrl: 'https://aistudio.google.com/app/apikey',
|
apiKeyUrl: 'https://aistudio.google.com/app/apikey',
|
||||||
},
|
},
|
||||||
{ id: 'openrouter', name: 'OpenRouter', icon: '🌐', placeholder: 'sk-or-v1-...', model: 'Multi-Model', requiresApiKey: true, showModelId: true, showModelIdInDevModeOnly: true, modelIdPlaceholder: 'anthropic/claude-opus-4.6', defaultModelId: 'anthropic/claude-opus-4.6' },
|
{ id: 'openrouter', name: 'OpenRouter', icon: '🌐', placeholder: 'sk-or-v1-...', model: 'Multi-Model', requiresApiKey: true, showModelId: true, modelIdPlaceholder: 'anthropic/claude-opus-4.6', defaultModelId: 'anthropic/claude-opus-4.6' },
|
||||||
{ id: 'ark', name: 'ByteDance Ark', icon: 'A', placeholder: 'your-ark-api-key', model: 'Doubao', requiresApiKey: true, defaultBaseUrl: 'https://ark.cn-beijing.volces.com/api/v3', showBaseUrl: true, showModelId: true, modelIdPlaceholder: 'ep-20260228000000-xxxxx' },
|
{ id: 'ark', name: 'ByteDance Ark', icon: 'A', placeholder: 'your-ark-api-key', model: 'Doubao', requiresApiKey: true, defaultBaseUrl: 'https://ark.cn-beijing.volces.com/api/v3', showBaseUrl: true, showModelId: true, modelIdPlaceholder: 'ep-20260228000000-xxxxx' },
|
||||||
{ id: 'moonshot', name: 'Moonshot (CN)', icon: '🌙', placeholder: 'sk-...', model: 'Kimi', requiresApiKey: true, defaultBaseUrl: 'https://api.moonshot.cn/v1', defaultModelId: 'kimi-k2.5' },
|
{ id: 'moonshot', name: 'Moonshot (CN)', icon: '🌙', placeholder: 'sk-...', model: 'Kimi', requiresApiKey: true, defaultBaseUrl: 'https://api.moonshot.cn/v1', defaultModelId: 'kimi-k2.5' },
|
||||||
{ id: 'siliconflow', name: 'SiliconFlow (CN)', icon: '🌊', placeholder: 'sk-...', model: 'Multi-Model', requiresApiKey: true, defaultBaseUrl: 'https://api.siliconflow.cn/v1', showModelId: true, showModelIdInDevModeOnly: true, modelIdPlaceholder: 'deepseek-ai/DeepSeek-V3', defaultModelId: 'deepseek-ai/DeepSeek-V3' },
|
{ id: 'siliconflow', name: 'SiliconFlow (CN)', icon: '🌊', placeholder: 'sk-...', model: 'Multi-Model', requiresApiKey: true, defaultBaseUrl: 'https://api.siliconflow.cn/v1', showModelId: true, showModelIdInDevModeOnly: true, modelIdPlaceholder: 'deepseek-ai/DeepSeek-V3', defaultModelId: 'deepseek-ai/DeepSeek-V3' },
|
||||||
|
|||||||
Reference in New Issue
Block a user