Skip to content

Commit c1dcbc2

Browse files
committed
feat: integrate VS Code LLM models into API configuration normalization
1 parent 102ff61 commit c1dcbc2

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

webview-ui/src/components/settings/ApiOptions.tsx

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ import {
3838
xaiDefaultModelId,
3939
xaiModels,
4040
ApiProvider,
41+
vscodeLlmModels,
42+
vscodeLlmDefaultModelId,
4143
} from "@roo/shared/api"
4244
import { ExtensionMessage } from "@roo/shared/ExtensionMessage"
4345

@@ -1738,7 +1740,6 @@ const ApiOptions = ({
17381740
export function normalizeApiConfiguration(apiConfiguration?: ApiConfiguration) {
17391741
const provider = apiConfiguration?.apiProvider || "anthropic"
17401742
const modelId = apiConfiguration?.apiModelId
1741-
17421743
const getProviderData = (models: Record<string, ModelInfo>, defaultId: string) => {
17431744
let selectedModelId: string
17441745
let selectedModelInfo: ModelInfo
@@ -1827,15 +1828,18 @@ export function normalizeApiConfiguration(apiConfiguration?: ApiConfiguration) {
18271828
selectedModelInfo: openAiModelInfoSaneDefaults,
18281829
}
18291830
case "vscode-lm":
1831+
const modelFamily = apiConfiguration?.vsCodeLmModelSelector?.family ?? vscodeLlmDefaultModelId
1832+
const modelInfo = {
1833+
...openAiModelInfoSaneDefaults,
1834+
...vscodeLlmModels[modelFamily as keyof typeof vscodeLlmModels],
1835+
supportsImages: false, // VSCode LM API currently doesn't support images.
1836+
}
18301837
return {
18311838
selectedProvider: provider,
18321839
selectedModelId: apiConfiguration?.vsCodeLmModelSelector
18331840
? `${apiConfiguration.vsCodeLmModelSelector.vendor}/${apiConfiguration.vsCodeLmModelSelector.family}`
18341841
: "",
1835-
selectedModelInfo: {
1836-
...openAiModelInfoSaneDefaults,
1837-
supportsImages: false, // VSCode LM API currently doesn't support images.
1838-
},
1842+
selectedModelInfo: modelInfo,
18391843
}
18401844
default:
18411845
return getProviderData(anthropicModels, anthropicDefaultModelId)

0 commit comments

Comments
 (0)