func modelDidChange()

in SwiftChat/ContentView.swift [39:62]


    func modelDidChange() {
        guard status != .loading else { return }
        
        status = .loading
        Task.init {
            do {
                languageModel = try await ModelLoader.load(url: modelURL)
                if let config = languageModel?.defaultGenerationConfig {
                    let maxNewTokens = self.config.maxNewTokens
                    self.config = config
                    Task.init {
                        // Refresh after slider limits have been updated
                        self.config.maxNewTokens = min(maxNewTokens, languageModel?.maxContextLength ?? 20)
                    }
                }
                status = .ready(nil)
                isSettingsPresented = false
            } catch {
                print("No model could be loaded: \(error)")
                status = .noModel
            }

        }
    }