OllamaInterface/ConfigurationPage/OllamaPage.py

Thu, 29 Aug 2024 13:13:53 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Thu, 29 Aug 2024 13:13:53 +0200
changeset 17
43b1396fe72f
parent 16
cb6af351310b
child 24
f4d5108e90fe
permissions
-rw-r--r--

Fixed some code style and formatting issues.

16
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
3 # Copyright (c) 2024 Detlev Offenbach <detlev@die-offenbachs.de>
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing the 'ollama' interface configuration page.
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
10 from eric7.Preferences.ConfigurationPages.ConfigurationPageBase import (
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
11 ConfigurationPageBase,
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12 )
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14 from .Ui_OllamaPage import Ui_OllamaPage
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17 class OllamaPage(ConfigurationPageBase, Ui_OllamaPage):
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 """
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 Class implementing the 'ollama' interface configuration page.
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20 """
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 def __init__(self, plugin):
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23 """
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 Constructor
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 @param plugin reference to the plugin object
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 @type PluginOllamaInterface
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 """
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29 super().__init__()
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 self.setupUi(self)
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 self.setObjectName("OllamaPage")
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 self.__plugin = plugin
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35 # set initial values
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36 self.serverSchemeComboBox.setCurrentText(
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 self.__plugin.getPreferences("OllamaScheme")
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 )
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 self.serverHostEdit.setText(self.__plugin.getPreferences("OllamaHost"))
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40 self.serverPortSpinBox.setValue(self.__plugin.getPreferences("OllamaPort"))
17
43b1396fe72f Fixed some code style and formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 16
diff changeset
41
16
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42 self.localServerPortSpinBox.setValue(
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 self.__plugin.getPreferences("OllamaLocalPort")
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44 )
17
43b1396fe72f Fixed some code style and formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 16
diff changeset
45
16
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46 self.modelLibraryUrlEdit.setText(
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 self.__plugin.getPreferences("OllamaModelLibraryUrl")
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 )
17
43b1396fe72f Fixed some code style and formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 16
diff changeset
49
16
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50 self.heartbeatSpinBox.setValue(
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
51 self.__plugin.getPreferences("OllamaHeartbeatInterval")
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 )
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53 self.streamingChatCheckBox.setChecked(
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 self.__plugin.getPreferences("StreamingChatResponse")
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
55 )
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57 def save(self):
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 """
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 Public slot to save the 'ollama' interface configuration.
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60 """
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61 self.__plugin.setPreferences(
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
62 "OllamaScheme", self.serverSchemeComboBox.currentText()
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63 )
17
43b1396fe72f Fixed some code style and formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 16
diff changeset
64 self.__plugin.setPreferences("OllamaHost", self.serverHostEdit.text())
43b1396fe72f Fixed some code style and formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 16
diff changeset
65 self.__plugin.setPreferences("OllamaPort", self.serverPortSpinBox.value())
16
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
66
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
67 self.__plugin.setPreferences(
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
68 "OllamaLocalPort", self.localServerPortSpinBox.value()
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
69 )
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
70
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
71 self.__plugin.setPreferences(
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
72 "OllamaModelLibraryUrl", self.modelLibraryUrlEdit.text()
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73 )
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
74
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75 self.__plugin.setPreferences(
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
76 "OllamaHeartbeatInterval", self.heartbeatSpinBox.value()
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
77 )
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
78 self.__plugin.setPreferences(
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
79 "StreamingChatResponse", self.streamingChatCheckBox.isChecked()
cb6af351310b Implemented the 'ollama' interface configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
80 )

eric ide

mercurial