pygpt-net 2.5.13__py3-none-any.whl → 2.5.15__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. pygpt_net/CHANGELOG.txt +12 -1
  2. pygpt_net/__init__.py +3 -3
  3. pygpt_net/controller/chat/input.py +9 -2
  4. pygpt_net/controller/lang/mapping.py +4 -2
  5. pygpt_net/controller/model/__init__.py +3 -1
  6. pygpt_net/controller/model/importer.py +337 -0
  7. pygpt_net/controller/settings/editor.py +3 -0
  8. pygpt_net/core/camera/__init__.py +1 -1
  9. pygpt_net/core/models/__init__.py +6 -3
  10. pygpt_net/core/models/ollama.py +7 -2
  11. pygpt_net/data/config/config.json +9 -4
  12. pygpt_net/data/config/models.json +22 -22
  13. pygpt_net/data/config/modes.json +3 -3
  14. pygpt_net/data/locale/locale.de.ini +18 -0
  15. pygpt_net/data/locale/locale.en.ini +19 -2
  16. pygpt_net/data/locale/locale.es.ini +18 -0
  17. pygpt_net/data/locale/locale.fr.ini +18 -0
  18. pygpt_net/data/locale/locale.it.ini +18 -0
  19. pygpt_net/data/locale/locale.pl.ini +19 -1
  20. pygpt_net/data/locale/locale.uk.ini +18 -0
  21. pygpt_net/data/locale/locale.zh.ini +17 -0
  22. pygpt_net/item/__init__.py +0 -0
  23. pygpt_net/item/assistant.py +1 -1
  24. pygpt_net/item/attachment.py +2 -2
  25. pygpt_net/item/calendar_note.py +1 -1
  26. pygpt_net/item/ctx.py +1 -1
  27. pygpt_net/item/index.py +0 -0
  28. pygpt_net/item/mode.py +0 -0
  29. pygpt_net/item/model.py +5 -1
  30. pygpt_net/item/notepad.py +2 -2
  31. pygpt_net/item/preset.py +0 -0
  32. pygpt_net/item/prompt.py +2 -2
  33. pygpt_net/provider/core/ctx/db_sqlite/patch.py +2 -1
  34. pygpt_net/provider/core/model/json_file.py +3 -0
  35. pygpt_net/provider/core/model/patch.py +24 -1
  36. pygpt_net/provider/core/notepad/db_sqlite/patch.py +1 -0
  37. pygpt_net/provider/llms/ollama.py +7 -2
  38. pygpt_net/provider/llms/ollama_custom.py +693 -0
  39. pygpt_net/ui/dialog/models_importer.py +82 -0
  40. pygpt_net/ui/dialogs.py +3 -1
  41. pygpt_net/ui/main.py +4 -1
  42. pygpt_net/ui/menu/config.py +18 -7
  43. pygpt_net/ui/widget/dialog/model_importer.py +55 -0
  44. pygpt_net/ui/widget/lists/model_importer.py +151 -0
  45. {pygpt_net-2.5.13.dist-info → pygpt_net-2.5.15.dist-info}/METADATA +74 -9
  46. {pygpt_net-2.5.13.dist-info → pygpt_net-2.5.15.dist-info}/RECORD +45 -40
  47. {pygpt_net-2.5.13.dist-info → pygpt_net-2.5.15.dist-info}/LICENSE +0 -0
  48. {pygpt_net-2.5.13.dist-info → pygpt_net-2.5.15.dist-info}/WHEEL +0 -0
  49. {pygpt_net-2.5.13.dist-info → pygpt_net-2.5.15.dist-info}/entry_points.txt +0 -0
@@ -293,6 +293,10 @@ dialog.license.label = Durch die Verwendung dieser Software akzeptieren Sie die
293
293
  dialog.license.title = Lizenz
294
294
  dialog.logger.btn.clear = Löschen
295
295
  dialog.logger.title = Protokollierung
296
+ dialog.models.importer = Modelle von Ollama importieren
297
+ dialog.models.importer.btn.cancel = Abbrechen
298
+ dialog.models.importer.btn.refresh = Aktualisieren
299
+ dialog.models.importer.btn.save = Speichern
296
300
  dialog.ollama.model_not_found = Das angeforderte Modell ({model}) ist in deinem Ollama nicht verfügbar.\nBitte lade das Modell herunter, indem du den Befehl ausführst:\nollama pull {model}
297
301
  dialog.ollama.not_installed = Ollama ist nicht installiert oder läuft nicht.\nBitte installiere zuerst Ollama, indem du die folgende Seite besuchst:\nhttps://ollama.com/download
298
302
  dialog.plugin_settings = Plugin-Einstellungen
@@ -567,6 +571,9 @@ menu.config.edit.config = config.json bearbeiten...
567
571
  menu.config.edit.css = CSS-Stylesheets bearbeiten...
568
572
  menu.config.edit.css.restore = Standard-CSS wiederherstellen...
569
573
  menu.config.edit.models = models.json bearbeiten...
574
+ menu.config.models = Modelle...
575
+ menu.config.models.edit = Modelle bearbeiten
576
+ menu.config.models.import.ollama = Von Ollama importieren
570
577
  menu.config.open_dir = Arbeitsverzeichnis öffnen...
571
578
  menu.config.profile = Profil
572
579
  menu.config.profile.edit = Profile bearbeiten...
@@ -653,6 +660,17 @@ mode.langchain = Langchain
653
660
  mode.langchain.tooltip = Chat mit Modellen von Langchain
654
661
  mode.llama_index = Chat mit Dateien
655
662
  mode.llama_index.tooltip = Chat mit zusätzlichem Kontext von LlamaIndex
663
+ models.importer.all = Alle anzeigen
664
+ models.importer.available.label = Ollama-Modelle
665
+ models.importer.current.label = PyGPT-Modelle
666
+ models.importer.error.add.no_model = Kein Modell zum Hinzufügen ausgewählt
667
+ models.importer.error.add.not_exists = Modell existiert bereits in der aktuellen Liste
668
+ models.importer.error.no_connection = Ollama läuft nicht oder ist nicht verfügbar! Bitte starten Sie den Ollama-Server und klicken Sie auf die AKTUALISIEREN-Schaltfläche.
669
+ models.importer.error.no_models = Keine Ollama-Modelle verfügbar! Bitte installieren Sie Modelle mit dem Ollama CLI und klicken Sie auf die AKTUALISIEREN-Schaltfläche.
670
+ models.importer.error.remove.no_model = Kein Modell zum Entfernen ausgewählt
671
+ models.importer.error.remove.not_exists = Modell existiert bereits in der aktuellen Liste
672
+ models.importer.loaded = Ollama-Modelle erfolgreich geladen.
673
+ models.importer.status.imported = Modelle erfolgreich importiert.
656
674
  mode.vision = Vision
657
675
  mode.vision.tooltip = Bildanalyse mit GPT-4 Vision
658
676
  msg.agent.plan = Plan
@@ -325,6 +325,10 @@ dialog.models.editor.defaults.app.result = Restored to models factory settings.
325
325
  dialog.models.editor.defaults.user.confirm = Undo current changes?
326
326
  dialog.models.editor.defaults.user.result = Restored models user config
327
327
  dialog.models.editor.delete.confirm = Are you sure you want to delete the model?
328
+ dialog.models.importer = Import models from Ollama
329
+ dialog.models.importer.btn.cancel = Cancel
330
+ dialog.models.importer.btn.refresh = Refresh
331
+ dialog.models.importer.btn.save = Save
328
332
  dialog.ollama.model_not_found = The requested model ({model}) is not available in your Ollama.\nPlease download the model first by executing the command:\nollama pull {model}
329
333
  dialog.ollama.not_installed = Ollama is not installed or not running.\nPlease install Ollama first by visiting:\nhttps://ollama.com/download
330
334
  dialog.plugin_settings = Plugin settings
@@ -697,6 +701,8 @@ menu.config.edit.css.restore = Restore default CSS...
697
701
  menu.config.edit.json = Edit JSON configs...
698
702
  menu.config.edit.models = Edit models.json...
699
703
  menu.config.models = Models...
704
+ menu.config.models.edit = Edit models
705
+ menu.config.models.import.ollama = Import from Ollama
700
706
  menu.config.open_dir = Open working directory...
701
707
  menu.config.profile = Profile
702
708
  menu.config.profile.edit = Edit profiles...
@@ -812,12 +818,23 @@ model.llama_index.provider.desc = LLM provider to use in "Chat with Files" mode
812
818
  model.mode = Mode(s)
813
819
  model.mode.desc = Available modes: chat, completion, img, audio, vision, assistant, langchain, llama_index, agent, agent_llama, research
814
820
  model.name = Name
821
+ models.importer.all = Show all
822
+ models.importer.available.label = Ollama models
823
+ models.importer.current.label = PyGPT models
824
+ models.importer.error.add.no_model = No model selected to add
825
+ models.importer.error.add.not_exists = Model already exists in current list
826
+ models.importer.error.no_connection = Ollama is not running or not available! Please start Ollama server and click REFRESH button.
827
+ models.importer.error.no_models = No Ollama models available! Please install models using Ollama CLI and click REFRESH button.
828
+ models.importer.error.remove.no_model = No model selected to remove
829
+ models.importer.error.remove.not_exists = Model already exists in current list
830
+ models.importer.loaded = Ollama models loaded successfully.
831
+ models.importer.status.imported = Models imported successfully.
815
832
  model.tokens = Output tokens
816
833
  model.tokens.desc = Max model output tokens
817
- mode.vision = Vision
818
- mode.vision.tooltip = Image analysis with GPT-4 Vision
819
834
  mode.research = Research (Perplexity)
820
835
  mode.research.tooltip = Web research with Perplexity
836
+ mode.vision = Vision
837
+ mode.vision.tooltip = Image analysis with GPT-4 Vision
821
838
  msg.agent.plan = Plan
822
839
  msg.agent.plan.current = Current plan
823
840
  msg.agent.plan.deps = Dependencies
@@ -293,6 +293,10 @@ dialog.license.label = Al utilizar este software, usted está aceptando los sigu
293
293
  dialog.license.title = Licencia
294
294
  dialog.logger.btn.clear = Limpiar
295
295
  dialog.logger.title = Logger
296
+ dialog.models.importer = Importar modelos de Ollama
297
+ dialog.models.importer.btn.cancel = Cancelar
298
+ dialog.models.importer.btn.refresh = Actualizar
299
+ dialog.models.importer.btn.save = Guardar
296
300
  dialog.ollama.model_not_found = El modelo solicitado ({model}) no está disponible en tu Ollama.\nPor favor, descarga el modelo ejecutando el comando:\nollama pull {model}
297
301
  dialog.ollama.not_installed = Ollama no está instalado o no está en funcionamiento.\nPor favor, instala Ollama primero visitando:\nhttps://ollama.com/download
298
302
  dialog.plugin_settings = Configuración de plugins
@@ -566,6 +570,9 @@ menu.config.edit.config = Editar config.json...
566
570
  menu.config.edit.css = Editar hojas de estilo CSS...
567
571
  menu.config.edit.css.restore = Restaurar CSS por defecto...
568
572
  menu.config.edit.models = Editar models.json...
573
+ menu.config.models = Modelos...
574
+ menu.config.models.edit = Editar modelos
575
+ menu.config.models.import.ollama = Importar desde Ollama
569
576
  menu.config.open_dir = Abrir directorio de trabajo...
570
577
  menu.config.profile = Perfil
571
578
  menu.config.profile.edit = Editar perfiles...
@@ -652,6 +659,17 @@ mode.langchain = Langchain
652
659
  mode.langchain.tooltip = Chatear con modelos proporcionados por Langchain
653
660
  mode.llama_index = Chat con archivos
654
661
  mode.llama_index.tooltip = Chatear con contexto adicional proporcionado por LlamaIndex
662
+ models.importer.all = Mostrar todo
663
+ models.importer.available.label = Modelos de Ollama
664
+ models.importer.current.label = Modelos de PyGPT
665
+ models.importer.error.add.no_model = No se seleccionó ningún modelo para agregar
666
+ models.importer.error.add.not_exists = El modelo ya existe en la lista actual
667
+ models.importer.error.no_connection = ¡Ollama no está en funcionamiento o no está disponible! Por favor, inicie el servidor Ollama y haga clic en el botón ACTUALIZAR.
668
+ models.importer.error.no_models = ¡No hay modelos de Ollama disponibles! Instale modelos usando Ollama CLI y haga clic en el botón ACTUALIZAR.
669
+ models.importer.error.remove.no_model = No se seleccionó ningún modelo para eliminar
670
+ models.importer.error.remove.not_exists = El modelo ya existe en la lista actual
671
+ models.importer.loaded = Modelos de Ollama cargados con éxito.
672
+ models.importer.status.imported = Modelos importados con éxito.
655
673
  mode.vision = Visión
656
674
  mode.vision.tooltip = Análisis de imagen con GPT-4 Vision
657
675
  msg.agent.plan = Plan
@@ -293,6 +293,10 @@ dialog.license.label = En utilisant ce logiciel, vous acceptez les termes suivan
293
293
  dialog.license.title = Licence
294
294
  dialog.logger.btn.clear = Effacer
295
295
  dialog.logger.title = Journal
296
+ dialog.models.importer = Importer des modèles depuis Ollama
297
+ dialog.models.importer.btn.cancel = Annuler
298
+ dialog.models.importer.btn.refresh = Actualiser
299
+ dialog.models.importer.btn.save = Enregistrer
296
300
  dialog.ollama.model_not_found = Le modèle demandé ({model}) n'est pas disponible dans votre Ollama.\nVeuillez télécharger le modèle en exécutant la commande :\nollama pull {model}
297
301
  dialog.ollama.not_installed = Ollama n'est pas installé ou n'est pas en cours d'exécution.\nVeuillez d'abord installer Ollama en visitant :\nhttps://ollama.com/download
298
302
  dialog.plugin_settings = Paramètres des plugins
@@ -567,6 +571,9 @@ menu.config.edit.config = Modifier config.json...
567
571
  menu.config.edit.css = Modifier les feuilles de style CSS...
568
572
  menu.config.edit.css.restore = Restaurer le CSS par défaut...
569
573
  menu.config.edit.models = Modifier models.json...
574
+ menu.config.models = Modèles...
575
+ menu.config.models.edit = Modifier les modèles
576
+ menu.config.models.import.ollama = Importer depuis Ollama
570
577
  menu.config.open_dir = Ouvrir le répertoire de travail...
571
578
  menu.config.profile = Profil
572
579
  menu.config.profile.edit = Modifier les profils...
@@ -653,6 +660,17 @@ mode.langchain = Langchain
653
660
  mode.langchain.tooltip = Discussion avec les modèles fournis par Langchain
654
661
  mode.llama_index = Chat avec fichiers
655
662
  mode.llama_index.tooltip = Discussion avec un contexte supplémentaire fourni par LlamaIndex
663
+ models.importer.all = Tout afficher
664
+ models.importer.available.label = Modèles Ollama
665
+ models.importer.current.label = Modèles PyGPT
666
+ models.importer.error.add.no_model = Aucun modèle sélectionné à ajouter
667
+ models.importer.error.add.not_exists = Le modèle existe déjà dans la liste actuelle
668
+ models.importer.error.no_connection = Ollama ne fonctionne pas ou n'est pas disponible ! Veuillez démarrer le serveur Ollama et cliquer sur le bouton ACTUALISER.
669
+ models.importer.error.no_models = Aucun modèle Ollama disponible ! Veuillez installer des modèles en utilisant Ollama CLI et cliquer sur le bouton ACTUALISER.
670
+ models.importer.error.remove.no_model = Aucun modèle sélectionné à supprimer
671
+ models.importer.error.remove.not_exists = Le modèle existe déjà dans la liste actuelle
672
+ models.importer.loaded = Modèles Ollama chargés avec succès.
673
+ models.importer.status.imported = Modèles importés avec succès.
656
674
  mode.vision = Vision
657
675
  mode.vision.tooltip = Analyse d'image avec GPT-4 Vision
658
676
  msg.agent.plan = Plan
@@ -293,6 +293,10 @@ dialog.license.label = Utilizzando questo software si accettano i seguenti termi
293
293
  dialog.license.title = Licenza
294
294
  dialog.logger.btn.clear = Pulisci
295
295
  dialog.logger.title = Logger
296
+ dialog.models.importer = Importa modelli da Ollama
297
+ dialog.models.importer.btn.cancel = Annulla
298
+ dialog.models.importer.btn.refresh = Aggiorna
299
+ dialog.models.importer.btn.save = Salva
296
300
  dialog.ollama.model_not_found = Il modello richiesto ({model}) non è disponibile nel tuo Ollama.\nPer favore, scarica il modello eseguendo il comando:\nollama pull {model}
297
301
  dialog.ollama.not_installed = Ollama non è installato o non è in esecuzione.\nSi prega di installare prima Ollama visitando:\nhttps://ollama.com/download
298
302
  dialog.plugin_settings = Impostazioni plugin
@@ -567,6 +571,9 @@ menu.config.edit.config = Modifica config.json...
567
571
  menu.config.edit.css = Modifica fogli di stile CSS...
568
572
  menu.config.edit.css.restore = Ripristina CSS predefinito...
569
573
  menu.config.edit.models = Modifica models.json...
574
+ menu.config.models = Modelli...
575
+ menu.config.models.edit = Modifica modelli
576
+ menu.config.models.import.ollama = Importa da Ollama
570
577
  menu.config.open_dir = Apri directory di lavoro...
571
578
  menu.config.profile = Profilo
572
579
  menu.config.profile.edit = Modifica profili...
@@ -653,6 +660,17 @@ mode.langchain = Langchain
653
660
  mode.langchain.tooltip = Chattare con modelli forniti da Langchain
654
661
  mode.llama_index = Chat con file
655
662
  mode.llama_index.tooltip = Chattare con contesto aggiuntivo fornito da LlamaIndex
663
+ models.importer.all = Mostra tutto
664
+ models.importer.available.label = Modelli Ollama
665
+ models.importer.current.label = Modelli PyGPT
666
+ models.importer.error.add.no_model = Nessun modello selezionato da aggiungere
667
+ models.importer.error.add.not_exists = Il modello esiste già nella lista corrente
668
+ models.importer.error.no_connection = Ollama non è in esecuzione o non è disponibile! Avvia il server Ollama e fai clic sul pulsante AGGIORNA.
669
+ models.importer.error.no_models = Nessun modello Ollama disponibile! Installa i modelli utilizzando Ollama CLI e fai clic sul pulsante AGGIORNA.
670
+ models.importer.error.remove.no_model = Nessun modello selezionato da rimuovere
671
+ models.importer.error.remove.not_exists = Il modello esiste già nella lista corrente
672
+ models.importer.loaded = Modelli Ollama caricati con successo.
673
+ models.importer.status.imported = Modelli importati con successo.
656
674
  mode.vision = Vision
657
675
  mode.vision.tooltip = Analisi immagine con GPT-4 Vision
658
676
  msg.agent.plan = Piano
@@ -293,7 +293,11 @@ dialog.license.label = Korzystając z tego oprogramowania, akceptujesz następuj
293
293
  dialog.license.title = Licencja
294
294
  dialog.logger.btn.clear = Wyczyść
295
295
  dialog.logger.title = Logger
296
- dialog.ollama.model_not_found = Żądany model ({model}) nie jest dostępny w twojej Ollama.\nProszę pobrać model, wykonując polecenie:\nollama pull {model}
296
+ dialog.models.importer = Importuj modele z Ollama
297
+ dialog.models.importer.btn.cancel = Anuluj
298
+ dialog.models.importer.btn.refresh = Odśwież
299
+ dialog.models.importer.btn.save = Zapisz
300
+ dialog.ollama.model_not_found = Żądany model ({model}) nie jest dostępny w twojej Ollama.\nProszę pobrać model, wykonując polecenie:\nollama pull {model}
297
301
  dialog.ollama.not_installed = Ollama nie jest zainstalowana lub nie działa.\nProszę najpierw zainstalować Ollama, odwiedzając stronę:\nhttps://ollama.com/download
298
302
  dialog.plugin_settings = Ustawienia pluginów
299
303
  dialog.plugin.settings.btn.defaults.app = Wczytaj domyślne
@@ -567,6 +571,9 @@ menu.config.edit.config = Edytuj config.json...
567
571
  menu.config.edit.css = Edytuj style CSS...
568
572
  menu.config.edit.css.restore = Przywróć domyślny CSS...
569
573
  menu.config.edit.models = Edytuj models.json...
574
+ menu.config.models = Modele...
575
+ menu.config.models.edit = Edytuj modele
576
+ menu.config.models.import.ollama = Importuj z Ollama
570
577
  menu.config.open_dir = Otwórz katalog roboczy...
571
578
  menu.config.profile = Profil
572
579
  menu.config.profile.edit = Edytuj profile...
@@ -653,6 +660,17 @@ mode.langchain = Langchain
653
660
  mode.langchain.tooltip = Czat z modelami dostarczonymi przez Langchain
654
661
  mode.llama_index = Czat z plikami
655
662
  mode.llama_index.tooltip = Czat z dodatkowym kontekstem dostarczonym przez LlamaIndex
663
+ models.importer.all = Pokaż wszystkie
664
+ models.importer.available.label = Modele Ollama
665
+ models.importer.current.label = Modele PyGPT
666
+ models.importer.error.add.no_model = Nie wybrano modelu do dodania
667
+ models.importer.error.add.not_exists = Model już istnieje na liście
668
+ models.importer.error.no_connection = Ollama nie działa lub jest niedostępna! Uruchom serwer Ollama i kliknij przycisk ODŚWIEŻ.
669
+ models.importer.error.no_models = Brak dostępnych modeli Ollama! Zainstaluj modele za pomocą Ollama CLI i kliknij przycisk ODŚWIEŻ.
670
+ models.importer.error.remove.no_model = Nie wybrano modelu do usunięcia
671
+ models.importer.error.remove.not_exists = Model już istnieje na liście
672
+ models.importer.loaded = Modele Ollama załadowane pomyślnie.
673
+ models.importer.status.imported = Modele zaimportowane pomyślnie.
656
674
  mode.vision = Wizja
657
675
  mode.vision.tooltip = Analiza obrazu z GPT-4 Vision
658
676
  msg.agent.plan = Plan
@@ -293,6 +293,10 @@ dialog.license.label = Використовуючи це програмне за
293
293
  dialog.license.title = Ліцензія
294
294
  dialog.logger.btn.clear = Очистити
295
295
  dialog.logger.title = Логер
296
+ dialog.models.importer = Імпорт моделей з Ollama
297
+ dialog.models.importer.btn.cancel = Скасувати
298
+ dialog.models.importer.btn.refresh = Оновити
299
+ dialog.models.importer.btn.save = Зберегти
296
300
  dialog.ollama.model_not_found = Потрібна модель ({model}) не є доступною у вашій Ollama.\nБудь ласка, завантажте модель, виконавши команду:\nollama pull {model}
297
301
  dialog.ollama.not_installed = Ollama не встановлено або не запущено.\nБудь ласка, спочатку встановіть Ollama, відвідавши:\nhttps://ollama.com/download
298
302
  dialog.plugin_settings = Налаштування плагінів
@@ -566,6 +570,9 @@ menu.config.edit.config = Редагувати config.json...
566
570
  menu.config.edit.css = Редагувати CSS-стилі...
567
571
  menu.config.edit.css.restore = Відновити CSS за замовчуванням...
568
572
  menu.config.edit.models = Редагувати models.json...
573
+ menu.config.models = Моделі...
574
+ menu.config.models.edit = Редагувати моделі
575
+ menu.config.models.import.ollama = Імпорт з Ollama
569
576
  menu.config.open_dir = Відкрити робочий каталог...
570
577
  menu.config.profile = Профіль
571
578
  menu.config.profile.edit = Редагувати профілі...
@@ -652,6 +659,17 @@ mode.langchain = Langchain
652
659
  mode.langchain.tooltip = Чат з моделями, наданими Langchain
653
660
  mode.llama_index = Чат з файлами
654
661
  mode.llama_index.tooltip = Чат з додатковим контекстом, наданим LlamaIndex
662
+ models.importer.all = Показати всі
663
+ models.importer.available.label = Моделі Ollama
664
+ models.importer.current.label = Моделі PyGPT
665
+ models.importer.error.add.no_model = Не вибрано модель для додавання
666
+ models.importer.error.add.not_exists = Модель вже існує в поточному списку
667
+ models.importer.error.no_connection = Ollama не працює або недоступна! Будь ласка, запустіть сервер Ollama і натисніть кнопку ОНОВИТИ.
668
+ models.importer.error.no_models = Немає доступних моделей Ollama! Встановіть моделі за допомогою Ollama CLI і натисніть кнопку ОНОВИТИ.
669
+ models.importer.error.remove.no_model = Не вибрано модель для видалення
670
+ models.importer.error.remove.not_exists = Модель вже існує в поточному списку
671
+ models.importer.loaded = Моделі Ollama успішно завантажені.
672
+ models.importer.status.imported = Моделі успішно імпортовані.
655
673
  mode.vision = Оптика
656
674
  mode.vision.tooltip = Аналіз зображень за допомогою GPT-4 Vision
657
675
  msg.agent.plan = План
@@ -303,6 +303,10 @@ dialog.models.editor.defaults.app.result = 恢復到模型工廠設置。
303
303
  dialog.models.editor.defaults.user.confirm = 撤銷當前更改?
304
304
  dialog.models.editor.defaults.user.result = 恢復模型用戶配置
305
305
  dialog.models.editor.delete.confirm = 您確定要刪除模型嗎?
306
+ dialog.models.importer = 从 Ollama 导入模型
307
+ dialog.models.importer.btn.cancel = 取消
308
+ dialog.models.importer.btn.refresh = 刷新
309
+ dialog.models.importer.btn.save = 保存
306
310
  dialog.ollama.model_not_found = 您的Ollama中没有请求的模型({model})。\n请先通过执行以下命令下载模型:\nollama pull {model}
307
311
  dialog.ollama.not_installed = 未安装或未运行Ollama。\n请先通过访问以下网址安装Ollama:\nhttps://ollama.com/download
308
312
  dialog.plugin_settings = 插件設置
@@ -642,6 +646,8 @@ menu.config.edit.css.restore = 恢复默认CSS...
642
646
  menu.config.edit.json = 編輯JSON配置...
643
647
  menu.config.edit.models = 編輯models.json...
644
648
  menu.config.models = 模型...
649
+ menu.config.models.edit = 编辑模型
650
+ menu.config.models.import.ollama = 从 Ollama 导入
645
651
  menu.config.open_dir = 打开工作目录...
646
652
  menu.config.profile = 个人资料
647
653
  menu.config.profile.edit = 编辑个人资料...
@@ -751,6 +757,17 @@ model.llama_index.provider.desc = 在"文件聊天"模式中使用的LLM提供
751
757
  model.mode = 模式
752
758
  model.mode.desc = 可用模式:聊天、完成、圖像、視覺、助手、langchain、llama_index、代理
753
759
  model.name = 名稱
760
+ models.importer.all = 显示全部
761
+ models.importer.available.label = Ollama 模型
762
+ models.importer.current.label = PyGPT 模型
763
+ models.importer.error.add.no_model = 未选择要添加的模型
764
+ models.importer.error.add.not_exists = 模型已存在于当前列表中
765
+ models.importer.error.no_connection = Ollama 未运行或不可用!请启动 Ollama 服务器并点击刷新按钮。
766
+ models.importer.error.no_models = 没有可用的 Ollama 模型!请使用 Ollama CLI 安装模型并点击刷新按钮。
767
+ models.importer.error.remove.no_model = 未选择要删除的模型
768
+ models.importer.error.remove.not_exists = 模型已存在于当前列表中
769
+ models.importer.loaded = Ollama 模型加载成功。
770
+ models.importer.status.imported = 模型导入成功。
754
771
  model.tokens = 輸出令牌
755
772
  model.tokens.desc = 模型輸出令牌的最大值
756
773
  mode.vision = 視覺模式
File without changes
@@ -6,7 +6,7 @@
6
6
  # GitHub: https://github.com/szczyglis-dev/py-gpt #
7
7
  # MIT License #
8
8
  # Created By : Marcin Szczygliński #
9
- # Updated Date: 2024.04.26 23:00:00 #
9
+ # Updated Date: 2025.06.23 19:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  import json
@@ -6,7 +6,7 @@
6
6
  # GitHub: https://github.com/szczyglis-dev/py-gpt #
7
7
  # MIT License #
8
8
  # Created By : Marcin Szczygliński #
9
- # Updated Date: 2024.12.16 01:00:00 #
9
+ # Updated Date: 2025.06.23 19:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  import json
@@ -43,7 +43,7 @@ class AttachmentItem:
43
43
  """
44
44
  return {
45
45
  'id': self.id,
46
- 'uuid': self.uuid,
46
+ 'uuid': str(self.uuid),
47
47
  'name': self.name,
48
48
  'path': self.path,
49
49
  'size': self.size,
@@ -43,7 +43,7 @@ class CalendarNoteItem:
43
43
  def to_dict(self):
44
44
  return {
45
45
  'id': self.id,
46
- 'uuid': self.uuid,
46
+ 'uuid': str(self.uuid),
47
47
  'idx': self.idx,
48
48
  'year': self.year,
49
49
  'month': self.month,
pygpt_net/item/ctx.py CHANGED
@@ -6,7 +6,7 @@
6
6
  # GitHub: https://github.com/szczyglis-dev/py-gpt #
7
7
  # MIT License #
8
8
  # Created By : Marcin Szczygliński #
9
- # Updated Date: 2024.12.16 01:00:00 #
9
+ # Updated Date: 2025.06.23 19:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  import copy
pygpt_net/item/index.py CHANGED
File without changes
pygpt_net/item/mode.py CHANGED
File without changes
pygpt_net/item/model.py CHANGED
@@ -6,7 +6,7 @@
6
6
  # GitHub: https://github.com/szczyglis-dev/py-gpt #
7
7
  # MIT License #
8
8
  # Created By : Marcin Szczygliński #
9
- # Updated Date: 2025.02.02 02:00:00 #
9
+ # Updated Date: 2025.06.24 16:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  import json
@@ -28,6 +28,7 @@ class ModelItem:
28
28
  self.ctx = 0
29
29
  self.tokens = 0
30
30
  self.default = False
31
+ self.imported = False
31
32
  self.extra = {}
32
33
 
33
34
  def from_dict(self, data: dict):
@@ -51,6 +52,8 @@ class ModelItem:
51
52
  self.default = data['default']
52
53
  if 'extra' in data:
53
54
  self.extra = data['extra']
55
+ if 'imported' in data:
56
+ self.imported = data['imported']
54
57
 
55
58
  # multimodal
56
59
  if 'multimodal' in data:
@@ -101,6 +104,7 @@ class ModelItem:
101
104
  data['default'] = self.default
102
105
  data['multimodal'] = ','.join(self.multimodal)
103
106
  data['extra'] = self.extra
107
+ data['imported'] = self.imported
104
108
 
105
109
  data['langchain.provider'] = None
106
110
  data['langchain.mode'] = ""
pygpt_net/item/notepad.py CHANGED
@@ -6,7 +6,7 @@
6
6
  # GitHub: https://github.com/szczyglis-dev/py-gpt #
7
7
  # MIT License #
8
8
  # Created By : Marcin Szczygliński #
9
- # Updated Date: 2024.01.27 15:00:00 #
9
+ # Updated Date: 2025.06.23 19:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  import json
@@ -29,7 +29,7 @@ class NotepadItem:
29
29
  def to_dict(self):
30
30
  return {
31
31
  'id': self.id,
32
- 'uuid': self.uuid,
32
+ 'uuid': str(self.uuid),
33
33
  'idx': self.idx,
34
34
  'title': self.title,
35
35
  'content': self.content,
pygpt_net/item/preset.py CHANGED
File without changes
pygpt_net/item/prompt.py CHANGED
@@ -6,7 +6,7 @@
6
6
  # GitHub: https://github.com/szczyglis-dev/py-gpt #
7
7
  # MIT License #
8
8
  # Created By : Marcin Szczygliński #
9
- # Updated Date: 2024.08.29 04:00:00 #
9
+ # Updated Date: 2025.06.23 19:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  import json
@@ -28,7 +28,7 @@ class PromptItem:
28
28
  :return: serialized item
29
29
  """
30
30
  return {
31
- 'id': self.id,
31
+ 'id': str(self.id),
32
32
  'name': self.name,
33
33
  'content': self.content,
34
34
  }
@@ -6,7 +6,7 @@
6
6
  # GitHub: https://github.com/szczyglis-dev/py-gpt #
7
7
  # MIT License #
8
8
  # Created By : Marcin Szczygliński #
9
- # Updated Date: 2024.01.12 04:00:00 #
9
+ # Updated Date: 2025.06.23 19:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  import datetime
@@ -47,6 +47,7 @@ class Patch:
47
47
 
48
48
  :return: True if imported
49
49
  """
50
+ return True
50
51
  # use json provider to load old contexts
51
52
  provider = self.window.core.ctx.providers['json_file']
52
53
  provider.attach(self.window)
@@ -165,6 +165,7 @@ class JsonFileProvider(BaseProvider):
165
165
  'default': item.default,
166
166
  'multimodal': item.multimodal,
167
167
  'extra': item.extra,
168
+ 'imported': item.imported,
168
169
  }
169
170
 
170
171
  @staticmethod
@@ -195,6 +196,8 @@ class JsonFileProvider(BaseProvider):
195
196
  item.multimodal = data['multimodal']
196
197
  if 'extra' in data:
197
198
  item.extra = data['extra']
199
+ if 'imported' in data:
200
+ item.imported = data['imported']
198
201
 
199
202
  def dump(self, item: ModelItem) -> str:
200
203
  """
@@ -6,7 +6,7 @@
6
6
  # GitHub: https://github.com/szczyglis-dev/py-gpt #
7
7
  # MIT License #
8
8
  # Created By : Marcin Szczygliński #
9
- # Updated Date: 2025.06.22 03:00:00 #
9
+ # Updated Date: 2025.06.24 16:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  from packaging.version import parse as parse_version, Version
@@ -527,6 +527,29 @@ class Patch:
527
527
  # add gpt-4.1-mini, qwen2.5-coder
528
528
  updated = True
529
529
 
530
+ # < 2.5.15 <--- update deepseek IDs
531
+ if old < parse_version("2.5.15"):
532
+ print("Migrating models from < 2.5.15...")
533
+ replace = [
534
+ ["deepseek_ollama_r1_1.5b", "deepseek-r1:1.5b"],
535
+ ["deepseek_ollama_r1_7b", "deepseek-r1:7b"],
536
+ ["deepseek_ollama_r1_14b", "deepseek-r1:14b"],
537
+ ["deepseek_ollama_r1_32b", "deepseek-r1:32b"],
538
+ ["deepseek_ollama_r1_70b", "deepseek-r1:70b"],
539
+ ["deepseek_ollama_r1_671b", "deepseek-r1:671b"],
540
+ ["deepseek_ollama_v3", "deepseek-v3:671b"]
541
+ ]
542
+ for m in replace:
543
+ name_to_replace = m[0]
544
+ new_name = m[1]
545
+ if name_to_replace in data:
546
+ model = data[name_to_replace]
547
+ model.id = new_name
548
+ model.name = new_name
549
+ data[new_name] = model
550
+ del data[name_to_replace]
551
+ updated = True
552
+
530
553
  # update file
531
554
  if updated:
532
555
  data = dict(sorted(data.items()))
@@ -47,6 +47,7 @@ class Patch:
47
47
  :return: True if imported
48
48
  :rtype: bool
49
49
  """
50
+ return True
50
51
  # use json provider to load old notepads
51
52
  provider = self.window.core.notepad.providers['json_file']
52
53
  provider.attach(self.window)
@@ -6,7 +6,7 @@
6
6
  # GitHub: https://github.com/szczyglis-dev/py-gpt #
7
7
  # MIT License #
8
8
  # Created By : Marcin Szczygliński #
9
- # Updated Date: 2025.01.31 19:00:00 #
9
+ # Updated Date: 2025.06.24 16:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  import os
@@ -14,7 +14,8 @@ from typing import Optional, List, Dict
14
14
 
15
15
  from langchain_community.chat_models import ChatOllama
16
16
 
17
- from llama_index.llms.ollama import Ollama
17
+ from .ollama_custom import Ollama
18
+
18
19
  from llama_index.core.llms.llm import BaseLLM as LlamaBaseLLM
19
20
  from llama_index.core.base.embeddings.base import BaseEmbedding
20
21
  from llama_index.embeddings.ollama import OllamaEmbedding
@@ -85,6 +86,8 @@ class OllamaLLM(BaseLLM):
85
86
  args = self.parse_args(model.llama_index)
86
87
  if "request_timeout" not in args:
87
88
  args["request_timeout"] = 120
89
+ if 'OLLAMA_API_BASE' in os.environ:
90
+ args["base_url"] = os.environ['OLLAMA_API_BASE']
88
91
  return Ollama(**args)
89
92
 
90
93
  def get_embeddings_model(
@@ -104,6 +107,8 @@ class OllamaLLM(BaseLLM):
104
107
  args = self.parse_args({
105
108
  "args": config,
106
109
  })
110
+ if 'OLLAMA_API_BASE' in os.environ:
111
+ args["base_url"] = os.environ['OLLAMA_API_BASE']
107
112
  return OllamaEmbedding(**args)
108
113
 
109
114
  def init_embeddings(