diff --git a/src/modules/llms/models-modal/ModelsList.tsx b/src/modules/llms/models-modal/ModelsList.tsx
index 2d037d95d..2ce3593d9 100644
--- a/src/modules/llms/models-modal/ModelsList.tsx
+++ b/src/modules/llms/models-modal/ModelsList.tsx
@@ -39,8 +39,12 @@ function ModelItem(props: {
const handleLLMConfigure = React.useCallback((event: React.MouseEvent) => {
event.stopPropagation();
+ if (event.shiftKey) {
+ console.log('llm', llm);
+ return;
+ }
onModelClicked(llm.id);
- }, [llm.id, onModelClicked]);
+ }, [llm, onModelClicked]);
const handleLLMHide = React.useCallback((event: React.MouseEvent) => {
event.stopPropagation();
@@ -150,7 +154,6 @@ export function ModelsList(props: {
}) {
// external state
- const { updateLLM } = llmsStoreActions();
const { chatLLMId, fastLLMId, funcLLMId } = useDefaultLLMIDs();
const llms = useFilteredLLMs(props.filterServiceId === null ? false : props.filterServiceId);
@@ -158,7 +161,7 @@ export function ModelsList(props: {
const handleModelClicked = React.useCallback((llmId: DLLMId) => onOpenLLMOptions(llmId), [onOpenLLMOptions]);
- const handleModelSetHidden = React.useCallback((llmId: DLLMId, hidden: boolean) => updateLLM(llmId, { hidden }), [updateLLM]);
+ const handleModelSetHidden = React.useCallback((llmId: DLLMId, hidden: boolean) => llmsStoreActions().updateLLM(llmId, { hidden }), []);
// are we showing multiple services
diff --git a/src/modules/llms/models-modal/ModelsModal.tsx b/src/modules/llms/models-modal/ModelsModal.tsx
index 9fd6d033d..6d3d6060c 100644
--- a/src/modules/llms/models-modal/ModelsModal.tsx
+++ b/src/modules/llms/models-modal/ModelsModal.tsx
@@ -67,7 +67,8 @@ export function ModelsModal(props: { suspendAutoModelsSetup?: boolean }) {
title={<>Configure AI Models>}
startButton={
multiService ? setShowAllServices(all => !all)}
/> : undefined
}
diff --git a/src/modules/llms/vendors/useServiceSetup.ts b/src/modules/llms/vendors/useServiceSetup.ts
index 9ae86080c..822c6d668 100644
--- a/src/modules/llms/vendors/useServiceSetup.ts
+++ b/src/modules/llms/vendors/useServiceSetup.ts
@@ -28,14 +28,14 @@ export function useServiceSetup {
+ const { updateServiceSettings, ...rest } = useModelsStore(useShallow(({ llms, sources, updateServiceSettings }) => {
// find the service | null
- const service: DModelsService | null = state.sources.find(s => s.id === serviceId) ?? null;
+ const service: DModelsService | null = sources.find(s => s.id === serviceId) ?? null;
// (safe) service-derived properties
const serviceSetupValid = (service?.setup && vendor?.validateSetup) ? vendor.validateSetup(service.setup as TServiceSettings) : false;
- const serviceLLms = service ? state.llms.filter(llm => llm.sId === serviceId) : stableNoLlms;
+ const serviceLLms = service ? llms.filter(llm => llm.sId === serviceId) : stableNoLlms;
const serviceAccess = vendor.getTransportAccess(service?.setup);
return {
@@ -48,7 +48,7 @@ export function useServiceSetup