From 074b4dc643442c85f11414c3ee305067203fe16f Mon Sep 17 00:00:00 2001 From: jeffser Date: Sun, 26 May 2024 14:10:20 -0600 Subject: [PATCH] Added 'Feature Models' page on welcome dialog --- src/window.py | 17 ++++++++-- src/window.ui | 88 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 103 insertions(+), 2 deletions(-) diff --git a/src/window.py b/src/window.py index b812da8..674eef1 100644 --- a/src/window.py +++ b/src/window.py @@ -194,8 +194,8 @@ class AlpacaWindow(Adw.ApplicationWindow): def welcome_carousel_page_changed(self, carousel, index): if index == 0: self.welcome_previous_button.set_sensitive(False) else: self.welcome_previous_button.set_sensitive(True) - if index == carousel.get_n_pages()-1: self.welcome_next_button.set_label("Connect") - else: self.welcome_next_button.set_label("Next") + if index == carousel.get_n_pages()-1: self.welcome_next_button.set_label(_("Close")) + else: self.welcome_next_button.set_label(_("Next")) @Gtk.Template.Callback() def welcome_previous_button_activate(self, button): @@ -237,6 +237,19 @@ class AlpacaWindow(Adw.ApplicationWindow): entry.set_css_classes(["error"]) self.show_toast("error", 1, self.preferences_dialog) + @Gtk.Template.Callback() + def pull_featured_model(self, button): + action_row = button.get_parent().get_parent().get_parent() + button.get_parent().remove(button) + model = f"{action_row.get_title().lower()}:latest" + action_row.set_subtitle(_("Pulling in the background...")) + spinner = Gtk.Spinner() + spinner.set_spinning(True) + action_row.add_suffix(spinner) + action_row.set_sensitive(False) + self.pull_model(model) + + def show_toast(self, message_type:str, message_id:int, overlay): if message_type not in self.toast_messages or message_id > len(self.toast_messages[message_type] or message_id < 0): message_type = "error" diff --git a/src/window.ui b/src/window.ui index 904e34a..2bb941a 100644 --- a/src/window.ui +++ b/src/window.ui @@ -441,6 +441,94 @@ Alpaca and its developers are not liable for any damages to devices or software resulting from the execution of code generated by an AI model. Please exercise caution and review the code carefully before running it. + + + true + true + 12 + 12 + 12 + 12 + Featured Models + Alpaca works locally on your device, to start chatting you'll need an AI model, you can either pull models from this list or the 'Manage Models' menu later. + + + none + + + + Llama3 + Built by Meta + + + + false + folder-download-symbolic + 3 + + + + + + + + Gemma + Built by Google DeepMind + + + + false + folder-download-symbolic + 3 + + + + + + + + Phi3 + Built by Microsoft + + + + false + folder-download-symbolic + 3 + + + + + + + + Llava + Multimodal AI with image recognition + + + + false + folder-download-symbolic + 3 + + + + + + + + +