| 142 | }; |
| 143 | |
| 144 | const fetchModels = async () => { |
| 145 | setLoading(true); |
| 146 | try { |
| 147 | const response = await fetchAllModels(); |
| 148 | if (response.error) throw new Error(response.error); |
| 149 | setModels(response.models); |
| 150 | Logger.info('MODELS', `Loaded ${response.models.length} models`); |
| 151 | } catch (err) { |
| 152 | Logger.error('MODELS', `Failed to fetch models: ${err instanceof Error ? err.message : String(err)}`); |
| 153 | } finally { |
| 154 | setLoading(false); |
| 155 | setRefreshing(false); |
| 156 | } |
| 157 | }; |
| 158 | |
| 159 | const detectOllamaServers = async () => { |
| 160 | const { getInferenceAddresses } = await import('@utils/inferenceServer'); |