diff --git a/ui/litellm-dashboard/src/components/model_dashboard.tsx b/ui/litellm-dashboard/src/components/model_dashboard.tsx index 0a9c26ac4a4..a0085acba14 100644 --- a/ui/litellm-dashboard/src/components/model_dashboard.tsx +++ b/ui/litellm-dashboard/src/components/model_dashboard.tsx @@ -1040,6 +1040,18 @@ const ModelDashboard: React.FC = ({ userRole={userRole} setEditModalVisible={setEditModalVisible} setSelectedModel={setSelectedModel} + onModelUpdate={(updatedModel) => { + // Update the model in the modelData.data array + const updatedModelData = { + ...modelData, + data: modelData.data.map((model: any) => + model.model_info.id === updatedModel.model_info.id ? updatedModel : model + ) + }; + setModelData(updatedModelData); + // Trigger a refresh to update UI + handleRefreshClick(); + }} /> ) : ( diff --git a/ui/litellm-dashboard/src/components/model_info_view.tsx b/ui/litellm-dashboard/src/components/model_info_view.tsx index bc6a831d628..261b544d92a 100644 --- a/ui/litellm-dashboard/src/components/model_info_view.tsx +++ b/ui/litellm-dashboard/src/components/model_info_view.tsx @@ -32,6 +32,7 @@ interface ModelInfoViewProps { editModel: boolean; setEditModalVisible: (visible: boolean) => void; setSelectedModel: (model: any) => void; + onModelUpdate?: (updatedModel: any) => void; } export default function ModelInfoView({ @@ -43,7 +44,8 @@ export default function ModelInfoView({ userRole, editModel, setEditModalVisible, - setSelectedModel + setSelectedModel, + onModelUpdate }: ModelInfoViewProps) { const [form] = Form.useForm(); const [localModelData, setLocalModelData] = useState(modelData); @@ -78,17 +80,22 @@ export default function ModelInfoView({ model_info: { id: modelId, } - }; await modelUpdateCall(accessToken, updateData); - setLocalModelData({ + const updatedModelData = { ...localModelData, model_name: values.model_name, litellm_model_name: values.litellm_model_name, litellm_params: updateData.litellm_params - }); + }; + + setLocalModelData(updatedModelData); + + if (onModelUpdate) { + onModelUpdate(updatedModelData); + } message.success("Model settings updated successfully"); setIsDirty(false);