diff --git a/frontend/src/components/workspace/settings/model-settings-page.tsx b/frontend/src/components/workspace/settings/model-settings-page.tsx
index 871d3612ad..c5aa73e9fa 100644
--- a/frontend/src/components/workspace/settings/model-settings-page.tsx
+++ b/frontend/src/components/workspace/settings/model-settings-page.tsx
@@ -212,7 +212,6 @@ function ModelEditor({
const [draft, setDraft] = useState(() => modelDraft(model));
const [key, setKey] = useState("");
const [clearKey, setClearKey] = useState(false);
- const [connectionChanged, setConnectionChanged] = useState(false);
const [pending, setPending] = useState(false);
const [result, setResult] = useState("");
const active = useRef(true);
@@ -229,7 +228,7 @@ function ModelEditor({
model?.provider === draft.provider &&
(draft.provider !== "openai-compatible" ||
model?.base_url === draft.base_url);
- const canKeepKey = sameConnection && !connectionChanged && model?.has_api_key;
+ const canKeepKey = sameConnection && model?.has_api_key;
const requiresKey =
provider?.requires_api_key ?? draft.provider !== "openai-compatible";
const missingKey = requiresKey && ((!key.trim() && !canKeepKey) || clearKey);
@@ -246,7 +245,6 @@ function ModelEditor({
...(value === "openai-compatible" ? { base_url: "" } : {}),
});
setKey("");
- setConnectionChanged(true);
setClearKey(false);
setResult("");
abort.current?.abort();
@@ -255,11 +253,7 @@ function ModelEditor({
return {
config: {
...draft,
- ...(clearKey || (connectionChanged && !key)
- ? { api_key: "" }
- : key
- ? { api_key: key }
- : {}),
+ ...(clearKey ? { api_key: "" } : key ? { api_key: key } : {}),
},
expected_revision: model?.revision ?? null,
};
@@ -345,14 +339,13 @@ function ModelEditor({
onChange={(e) => {
setDraft({ ...draft, base_url: e.target.value });
setKey("");
- setConnectionChanged(true);
setClearKey(false);
setResult("");
}}
/>
)}
- {model && (connectionChanged || !sameConnection) && (
+ {model && !sameConnection && (
{text.providerChanged}
)}