Added the capability to change the model of a chat. release-10.1.0

Mon, 16 Sep 2024 19:05:50 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Mon, 16 Sep 2024 19:05:50 +0200
changeset 44
ef9a85b8768a
parent 43
cd85a7eed7f7
child 45
e394155637f3

Added the capability to change the model of a chat.

OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaHistoryEditDialog.html file | annotate | diff | comparison | revisions
OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaHistoryWidget.html file | annotate | diff | comparison | revisions
OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaWidget.html file | annotate | diff | comparison | revisions
OllamaInterface/Documentation/Source/index-Plugin_AI_Ollama.OllamaInterface.html file | annotate | diff | comparison | revisions
OllamaInterface/OllamaChatMessageBox.py file | annotate | diff | comparison | revisions
OllamaInterface/OllamaChatWidget.py file | annotate | diff | comparison | revisions
OllamaInterface/OllamaHistoryEditDialog.py file | annotate | diff | comparison | revisions
OllamaInterface/OllamaHistoryEditDialog.ui file | annotate | diff | comparison | revisions
OllamaInterface/OllamaHistoryWidget.py file | annotate | diff | comparison | revisions
OllamaInterface/OllamaWidget.py file | annotate | diff | comparison | revisions
OllamaInterface/Ui_OllamaHistoryEditDialog.py file | annotate | diff | comparison | revisions
OllamaInterface/i18n/ollama_de.qm file | annotate | diff | comparison | revisions
OllamaInterface/i18n/ollama_de.ts file | annotate | diff | comparison | revisions
OllamaInterface/i18n/ollama_empty.ts file | annotate | diff | comparison | revisions
OllamaInterface/i18n/ollama_en.ts file | annotate | diff | comparison | revisions
OllamaInterface/i18n/ollama_es.ts file | annotate | diff | comparison | revisions
OllamaInterface/i18n/ollama_ru.ts file | annotate | diff | comparison | revisions
PKGLIST file | annotate | diff | comparison | revisions
PluginAiOllama.epj file | annotate | diff | comparison | revisions
PluginAiOllama.py file | annotate | diff | comparison | revisions
PluginAiOllama.zip file | annotate | diff | comparison | revisions
changelog.md file | annotate | diff | comparison | revisions
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaHistoryEditDialog.html	Mon Sep 16 19:05:50 2024 +0200
@@ -0,0 +1,135 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_AI_Ollama.OllamaInterface.OllamaHistoryEditDialog</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>Plugin_AI_Ollama.OllamaInterface.OllamaHistoryEditDialog</h1>
+<p>
+Module implementing a dialog to edit parameters of a chat history.
+</p>
+
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#OllamaHistoryEditDialog">OllamaHistoryEditDialog</a></td>
+<td>Class implementing a dialog to edit parameters of a chat history.</td>
+</tr>
+</table>
+
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<hr />
+<hr />
+<a NAME="OllamaHistoryEditDialog" ID="OllamaHistoryEditDialog"></a>
+<h2>OllamaHistoryEditDialog</h2>
+<p>
+    Class implementing a dialog to edit parameters of a chat history.
+</p>
+
+<h3>Derived from</h3>
+QDialog, Ui_OllamaHistoryEditDialog
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#OllamaHistoryEditDialog.__init__">OllamaHistoryEditDialog</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#OllamaHistoryEditDialog.getData">getData</a></td>
+<td>Public method to retrieve the entered chat parameters.</td>
+</tr>
+<tr>
+<td><a href="#OllamaHistoryEditDialog.on_chatTitleEdit_textChanged">on_chatTitleEdit_textChanged</a></td>
+<td>Private slot to handle a change of the chat title.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="OllamaHistoryEditDialog.__init__" ID="OllamaHistoryEditDialog.__init__"></a>
+<h4>OllamaHistoryEditDialog (Constructor)</h4>
+<b>OllamaHistoryEditDialog</b>(<i>title, model, selectableModels, parent=None</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>title</i> (str)</dt>
+<dd>
+title of the chat
+</dd>
+<dt><i>model</i> (str)</dt>
+<dd>
+current model used by the chat
+</dd>
+<dt><i>selectableModels</i> (list of str)</dt>
+<dd>
+list of available models
+</dd>
+<dt><i>parent</i> (QWidget (optional))</dt>
+<dd>
+reference to the parent widget (defaults to None)
+</dd>
+</dl>
+<a NAME="OllamaHistoryEditDialog.getData" ID="OllamaHistoryEditDialog.getData"></a>
+<h4>OllamaHistoryEditDialog.getData</h4>
+<b>getData</b>(<i></i>)
+<p>
+        Public method to retrieve the entered chat parameters.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+tuple containing the entered chat title and the selected model name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (str, str)
+</dd>
+</dl>
+<a NAME="OllamaHistoryEditDialog.on_chatTitleEdit_textChanged" ID="OllamaHistoryEditDialog.on_chatTitleEdit_textChanged"></a>
+<h4>OllamaHistoryEditDialog.on_chatTitleEdit_textChanged</h4>
+<b>on_chatTitleEdit_textChanged</b>(<i>title</i>)
+<p>
+        Private slot to handle a change of the chat title.
+</p>
+
+<dl>
+
+<dt><i>title</i> (str)</dt>
+<dd>
+entered title text
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
--- a/OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaHistoryWidget.html	Thu Sep 12 15:41:58 2024 +0200
+++ b/OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaHistoryWidget.html	Mon Sep 16 19:05:50 2024 +0200
@@ -136,7 +136,7 @@
 
 <a NAME="OllamaHistoryWidget.__init__" ID="OllamaHistoryWidget.__init__"></a>
 <h4>OllamaHistoryWidget (Constructor)</h4>
-<b>OllamaHistoryWidget</b>(<i>title, model, jsonStr=None, parent=None</i>)
+<b>OllamaHistoryWidget</b>(<i>title, model, mainWidget, jsonStr=None, parent=None</i>)
 <p>
         Constructor
 </p>
@@ -151,9 +151,13 @@
 <dd>
 name of the model used for the chat
 </dd>
+<dt><i>mainWidget</i> (OllamaWidget)</dt>
+<dd>
+reference to the Ollama main widget
+</dd>
 <dt><i>jsonStr</i> (str (optional))</dt>
 <dd>
-string containing JSON serialize chat history data
+string containing JSON serialized chat history data
             (defaults to None)
 </dd>
 <dt><i>parent</i> (QWidget (optional))</dt>
--- a/OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaWidget.html	Thu Sep 12 15:41:58 2024 +0200
+++ b/OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaWidget.html	Mon Sep 16 19:05:50 2024 +0200
@@ -248,6 +248,10 @@
 <td>Public method to clear the history entries and close all chats.</td>
 </tr>
 <tr>
+<td><a href="#OllamaWidget.getSelectableModels">getSelectableModels</a></td>
+<td>Public method to get a list of models to select from.</td>
+</tr>
+<tr>
 <td><a href="#OllamaWidget.on_messageEdit_textChanged">on_messageEdit_textChanged</a></td>
 <td>Private slot to handle a change of the entered message.</td>
 </tr>
@@ -900,6 +904,25 @@
         Public method to clear the history entries and close all chats.
 </p>
 
+<a NAME="OllamaWidget.getSelectableModels" ID="OllamaWidget.getSelectableModels"></a>
+<h4>OllamaWidget.getSelectableModels</h4>
+<b>getSelectableModels</b>(<i></i>)
+<p>
+        Public method to get a list of models to select from.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+list of models to select from
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
+</dd>
+</dl>
 <a NAME="OllamaWidget.on_messageEdit_textChanged" ID="OllamaWidget.on_messageEdit_textChanged"></a>
 <h4>OllamaWidget.on_messageEdit_textChanged</h4>
 <b>on_messageEdit_textChanged</b>(<i></i>)
--- a/OllamaInterface/Documentation/Source/index-Plugin_AI_Ollama.OllamaInterface.html	Thu Sep 12 15:41:58 2024 +0200
+++ b/OllamaInterface/Documentation/Source/index-Plugin_AI_Ollama.OllamaInterface.html	Mon Sep 16 19:05:50 2024 +0200
@@ -44,6 +44,10 @@
 <td>Module implementing a dialog to show details of the available models.</td>
 </tr>
 <tr>
+<td><a href="Plugin_AI_Ollama.OllamaInterface.OllamaHistoryEditDialog.html">OllamaHistoryEditDialog</a></td>
+<td>Module implementing a dialog to edit parameters of a chat history.</td>
+</tr>
+<tr>
 <td><a href="Plugin_AI_Ollama.OllamaInterface.OllamaHistoryWidget.html">OllamaHistoryWidget</a></td>
 <td>Module implementing a widget showing a chat title and store a chat contents.</td>
 </tr>
--- a/OllamaInterface/OllamaChatMessageBox.py	Thu Sep 12 15:41:58 2024 +0200
+++ b/OllamaInterface/OllamaChatMessageBox.py	Mon Sep 16 19:05:50 2024 +0200
@@ -15,7 +15,13 @@
 from eric7.EricGui import EricPixmapCache
 from eric7.EricWidgets.EricApplication import ericApp
 
-from .AutoResizeTextBrowser import AutoResizeTextBrowser
+try:
+    from eric7.EricWidgets.EricAutoResizeTextBrowser import EricAutoResizeTextBrowser
+except ImportError:
+    # backward compatibility for eric-ide < 24.10
+    from .AutoResizeTextBrowser import (
+        AutoResizeTextBrowser as EricAutoResizeTextBrowser,
+    )
 
 
 class OllamaChatMessageBox(QWidget):
@@ -52,7 +58,7 @@
             Qt.AlignmentFlag.AlignHCenter | Qt.AlignmentFlag.AlignTop
         )
 
-        self.__messageBrowser = AutoResizeTextBrowser(self)
+        self.__messageBrowser = EricAutoResizeTextBrowser(self)
 
         self.__layout = QHBoxLayout(self)
         self.__layout.setAlignment(Qt.AlignmentFlag.AlignTop)
--- a/OllamaInterface/OllamaChatWidget.py	Thu Sep 12 15:41:58 2024 +0200
+++ b/OllamaInterface/OllamaChatWidget.py	Mon Sep 16 19:05:50 2024 +0200
@@ -37,9 +37,7 @@
 
         self.__hid = hid
 
-        self.headerLabel.setText(
-            self.tr("<b>{0} - {1}</b>", "title, model name").format(title, model)
-        )
+        self.__setHeader(title, model)
 
         self.__messagesLayout = QVBoxLayout()
         if parent is None:
@@ -49,6 +47,19 @@
         self.__messagesLayout.setAlignment(Qt.AlignmentFlag.AlignTop)
         self.chatMessagesWidget.setLayout(self.__messagesLayout)
 
+    def __setHeader(self, title, model):
+        """
+        Private method to set the header label.
+
+        @param title chat title
+        @type str
+        @param model model of the chat
+        @type str
+        """
+        self.headerLabel.setText(
+            self.tr("<b>{0} - {1}</b>", "title, model name").format(title, model)
+        )
+
     def addMessage(self, role, message, scrollToBottom=True):
         """
         Public method to add a new message.
@@ -93,8 +104,8 @@
         """
         Public method to get the history ID of this chat.
 
-        @return DESCRIPTION
-        @rtype TYPE
+        @return history ID of the chat
+        @rtype str
         """
         return self.__hid
 
@@ -121,6 +132,20 @@
         scrollbar = self.chatMessagesScrollArea.verticalScrollBar()
         scrollbar.setValue(0)
 
+    @pyqtSlot(str, str, str)
+    def chatParametersChanged(self, _hid, title, model):
+        """
+        Public slot to handle a change of the chat parameters.
+
+        @param _hid history ID (unused)
+        @type str
+        @param title new chat title
+        @type str
+        @param model new chat model
+        @type str
+        """
+        self.__setHeader(title, model)
+
 
 class OllamaChatDialog(QDialog):
     """
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/OllamaInterface/OllamaHistoryEditDialog.py	Mon Sep 16 19:05:50 2024 +0200
@@ -0,0 +1,67 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (c) 2024 Detlev Offenbach <detlev@die-offenbachs.de>
+#
+
+"""
+Module implementing a dialog to edit parameters of a chat history.
+"""
+
+from PyQt6.QtCore import pyqtSlot
+from PyQt6.QtWidgets import QDialog, QDialogButtonBox
+
+from .Ui_OllamaHistoryEditDialog import Ui_OllamaHistoryEditDialog
+
+
+class OllamaHistoryEditDialog(QDialog, Ui_OllamaHistoryEditDialog):
+    """
+    Class implementing a dialog to edit parameters of a chat history.
+    """
+
+    def __init__(self, title, model, selectableModels, parent=None):
+        """
+        Constructor
+
+        @param title title of the chat
+        @type str
+        @param model current model used by the chat
+        @type str
+        @param selectableModels list of available models
+        @type list of str
+        @param parent reference to the parent widget (defaults to None)
+        @type QWidget (optional)
+        """
+        super().__init__(parent)
+        self.setupUi(self)
+
+        self.modelComboBox.addItems(selectableModels)
+
+        self.chatTitleEdit.setText(title)
+        self.modelComboBox.setCurrentText(model)
+
+        msh = self.minimumSizeHint()
+        self.resize(max(self.width(), msh.width()), msh.height())
+
+    @pyqtSlot(str)
+    def on_chatTitleEdit_textChanged(self, title):
+        """
+        Private slot to handle a change of the chat title.
+
+        @param title entered title text
+        @type str
+        """
+        self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled(
+            bool(title)
+        )
+
+    def getData(self):
+        """
+        Public method to retrieve the entered chat parameters.
+
+        @return tuple containing the entered chat title and the selected model name
+        @rtype tuple of (str, str)
+        """
+        return (
+            self.chatTitleEdit.text(),
+            self.modelComboBox.currentText(),
+        )
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/OllamaInterface/OllamaHistoryEditDialog.ui	Mon Sep 16 19:05:50 2024 +0200
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>OllamaHistoryEditDialog</class>
+ <widget class="QDialog" name="OllamaHistoryEditDialog">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>400</width>
+    <height>105</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Edit Chat Parameters</string>
+  </property>
+  <property name="sizeGripEnabled">
+   <bool>true</bool>
+  </property>
+  <layout class="QGridLayout" name="gridLayout">
+   <item row="0" column="0">
+    <widget class="QLabel" name="label">
+     <property name="text">
+      <string>Chat Title:</string>
+     </property>
+    </widget>
+   </item>
+   <item row="0" column="1">
+    <widget class="QLineEdit" name="chatTitleEdit">
+     <property name="toolTip">
+      <string>Enter the title of the chat.</string>
+     </property>
+     <property name="clearButtonEnabled">
+      <bool>true</bool>
+     </property>
+    </widget>
+   </item>
+   <item row="1" column="0">
+    <widget class="QLabel" name="label_2">
+     <property name="text">
+      <string>Model:</string>
+     </property>
+    </widget>
+   </item>
+   <item row="1" column="1">
+    <widget class="QComboBox" name="modelComboBox">
+     <property name="sizePolicy">
+      <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+     <property name="toolTip">
+      <string>Select the model to be used by the chat.</string>
+     </property>
+    </widget>
+   </item>
+   <item row="2" column="0" colspan="2">
+    <widget class="QDialogButtonBox" name="buttonBox">
+     <property name="orientation">
+      <enum>Qt::Horizontal</enum>
+     </property>
+     <property name="standardButtons">
+      <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
+     </property>
+    </widget>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>buttonBox</sender>
+   <signal>accepted()</signal>
+   <receiver>OllamaHistoryEditDialog</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>248</x>
+     <y>254</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>157</x>
+     <y>274</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>buttonBox</sender>
+   <signal>rejected()</signal>
+   <receiver>OllamaHistoryEditDialog</receiver>
+   <slot>reject()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>316</x>
+     <y>260</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>286</x>
+     <y>274</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
--- a/OllamaInterface/OllamaHistoryWidget.py	Thu Sep 12 15:41:58 2024 +0200
+++ b/OllamaInterface/OllamaHistoryWidget.py	Mon Sep 16 19:05:50 2024 +0200
@@ -12,7 +12,7 @@
 import uuid
 
 from PyQt6.QtCore import pyqtSignal, pyqtSlot
-from PyQt6.QtWidgets import QInputDialog, QLineEdit, QWidget
+from PyQt6.QtWidgets import QDialog, QWidget
 
 from eric7.EricGui import EricPixmapCache
 from eric7.EricWidgets.EricApplication import ericApp
@@ -31,14 +31,17 @@
     @signal viewChatHistory(id:str) emitted to indicate, that this chat history
         should be shown in a separate window
     @signal dataChanged(id:str) emitted to indicate a change of the chat history data
+    @signal parametersChanged(id:str, title:str, model:str) emitted to indicate a
+        change of editable chat parameters
     """
 
     deleteChatHistory = pyqtSignal(str)
     newChatWithHistory = pyqtSignal(str)
     viewChatHistory = pyqtSignal(str)
     dataChanged = pyqtSignal(str)
+    parametersChanged = pyqtSignal(str, str, str)
 
-    def __init__(self, title, model, jsonStr=None, parent=None):
+    def __init__(self, title, model, mainWidget, jsonStr=None, parent=None):
         """
         Constructor
 
@@ -46,7 +49,9 @@
         @type str
         @param model name of the model used for the chat
         @type str
-        @param jsonStr string containing JSON serialize chat history data
+        @param mainWidget reference to the Ollama main widget
+        @type OllamaWidget
+        @param jsonStr string containing JSON serialized chat history data
             (defaults to None)
         @type str (optional)
         @param parent reference to the parent widget (defaults to None)
@@ -66,6 +71,8 @@
         )
         self.deleteButton.setIcon(EricPixmapCache.getIcon("trash"))
 
+        self.__ollamaWidget = mainWidget
+
         if jsonStr is None:
             self.__title = title
             self.__model = model
@@ -133,17 +140,19 @@
         """
         Private slot to edit the chat title.
         """
-        title, ok = QInputDialog.getText(
-            self,
-            self.tr("Edit Chat Title"),
-            self.tr("Enter the new title:"),
-            QLineEdit.EchoMode.Normal,
-            self.__title,
+        from .OllamaHistoryEditDialog import OllamaHistoryEditDialog
+
+        dlg = OllamaHistoryEditDialog(
+            title=self.__title,
+            model=self.__model,
+            selectableModels=self.__ollamaWidget.getSelectableModels(),
         )
-        if ok and bool(title):
-            self.__title = title
-            self.titleEdit.setText(title)
+        if dlg.exec() == QDialog.DialogCode.Accepted:
+            self.__title, self.__model = dlg.getData()
+            self.titleEdit.setText(self.__title)
+            self.modelEdit.setText(self.__model)
             self.dataChanged.emit(self.__id)
+            self.parametersChanged.emit(self.__id, self.__title, self.__model)
 
     @pyqtSlot()
     def on_viewButton_clicked(self):
--- a/OllamaInterface/OllamaWidget.py	Thu Sep 12 15:41:58 2024 +0200
+++ b/OllamaInterface/OllamaWidget.py	Mon Sep 16 19:05:50 2024 +0200
@@ -230,6 +230,19 @@
         for index in range(self.__chatHistoryLayout.count() - 1):
             self.__chatHistoryLayout.itemAt(index).widget().checkModelAvailable(names)
 
+    def getSelectableModels(self):
+        """
+        Public method to get a list of models to select from.
+
+        @return list of models to select from
+        @rtype list of str
+        """
+        return [
+            self.modelComboBox.itemText(ind)
+            for ind in range(self.modelComboBox.count())
+            if self.modelComboBox.itemText(ind)
+        ]
+
     ############################################################################
     ## Methods handling signals from the chat history widgets.
     ############################################################################
@@ -249,7 +262,9 @@
         @return reference to the created history widget
         @rtype OllamaHistoryWidget
         """
-        history = OllamaHistoryWidget(title=title, model=model, jsonStr=jsonStr)
+        history = OllamaHistoryWidget(
+            title=title, model=model, mainWidget=self, jsonStr=jsonStr
+        )
         self.__chatHistoryLayout.insertWidget(
             self.__chatHistoryLayout.count() - 1, history
         )
@@ -490,6 +505,7 @@
             chatWidget = OllamaChatWidget(hid=hid, title=title, model=model)
             index = self.chatStackWidget.addWidget(chatWidget)
             self.chatStackWidget.setCurrentIndex(index)
+            historyWidget.parametersChanged.connect(chatWidget.chatParametersChanged)
 
             self.__updateMessageEditState()
             self.messageEdit.setFocus(Qt.FocusReason.OtherFocusReason)
@@ -515,6 +531,7 @@
             )
             index = self.chatStackWidget.addWidget(chatWidget)
             self.chatStackWidget.setCurrentIndex(index)
+            historyWidget.parametersChanged.connect(chatWidget.chatParametersChanged)
             for message in historyWidget.getMessages():
                 chatWidget.addMessage(role=message["role"], message=message["content"])
         else:
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/OllamaInterface/Ui_OllamaHistoryEditDialog.py	Mon Sep 16 19:05:50 2024 +0200
@@ -0,0 +1,54 @@
+# Form implementation generated from reading ui file 'OllamaInterface/OllamaHistoryEditDialog.ui'
+#
+# Created by: PyQt6 UI code generator 6.7.1
+#
+# WARNING: Any manual changes made to this file will be lost when pyuic6 is
+# run again.  Do not edit this file unless you know what you are doing.
+
+
+from PyQt6 import QtCore, QtGui, QtWidgets
+
+
+class Ui_OllamaHistoryEditDialog(object):
+    def setupUi(self, OllamaHistoryEditDialog):
+        OllamaHistoryEditDialog.setObjectName("OllamaHistoryEditDialog")
+        OllamaHistoryEditDialog.resize(400, 105)
+        OllamaHistoryEditDialog.setSizeGripEnabled(True)
+        self.gridLayout = QtWidgets.QGridLayout(OllamaHistoryEditDialog)
+        self.gridLayout.setObjectName("gridLayout")
+        self.label = QtWidgets.QLabel(parent=OllamaHistoryEditDialog)
+        self.label.setObjectName("label")
+        self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
+        self.chatTitleEdit = QtWidgets.QLineEdit(parent=OllamaHistoryEditDialog)
+        self.chatTitleEdit.setClearButtonEnabled(True)
+        self.chatTitleEdit.setObjectName("chatTitleEdit")
+        self.gridLayout.addWidget(self.chatTitleEdit, 0, 1, 1, 1)
+        self.label_2 = QtWidgets.QLabel(parent=OllamaHistoryEditDialog)
+        self.label_2.setObjectName("label_2")
+        self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
+        self.modelComboBox = QtWidgets.QComboBox(parent=OllamaHistoryEditDialog)
+        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Fixed)
+        sizePolicy.setHorizontalStretch(0)
+        sizePolicy.setVerticalStretch(0)
+        sizePolicy.setHeightForWidth(self.modelComboBox.sizePolicy().hasHeightForWidth())
+        self.modelComboBox.setSizePolicy(sizePolicy)
+        self.modelComboBox.setObjectName("modelComboBox")
+        self.gridLayout.addWidget(self.modelComboBox, 1, 1, 1, 1)
+        self.buttonBox = QtWidgets.QDialogButtonBox(parent=OllamaHistoryEditDialog)
+        self.buttonBox.setOrientation(QtCore.Qt.Orientation.Horizontal)
+        self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.StandardButton.Cancel|QtWidgets.QDialogButtonBox.StandardButton.Ok)
+        self.buttonBox.setObjectName("buttonBox")
+        self.gridLayout.addWidget(self.buttonBox, 2, 0, 1, 2)
+
+        self.retranslateUi(OllamaHistoryEditDialog)
+        self.buttonBox.accepted.connect(OllamaHistoryEditDialog.accept) # type: ignore
+        self.buttonBox.rejected.connect(OllamaHistoryEditDialog.reject) # type: ignore
+        QtCore.QMetaObject.connectSlotsByName(OllamaHistoryEditDialog)
+
+    def retranslateUi(self, OllamaHistoryEditDialog):
+        _translate = QtCore.QCoreApplication.translate
+        OllamaHistoryEditDialog.setWindowTitle(_translate("OllamaHistoryEditDialog", "Edit Chat Parameters"))
+        self.label.setText(_translate("OllamaHistoryEditDialog", "Chat Title:"))
+        self.chatTitleEdit.setToolTip(_translate("OllamaHistoryEditDialog", "Enter the title of the chat."))
+        self.label_2.setText(_translate("OllamaHistoryEditDialog", "Model:"))
+        self.modelComboBox.setToolTip(_translate("OllamaHistoryEditDialog", "Select the model to be used by the chat."))
Binary file OllamaInterface/i18n/ollama_de.qm has changed
--- a/OllamaInterface/i18n/ollama_de.ts	Thu Sep 12 15:41:58 2024 +0200
+++ b/OllamaInterface/i18n/ollama_de.ts	Mon Sep 16 19:05:50 2024 +0200
@@ -33,17 +33,17 @@
       <translation>{0}% / {1}% CPU / GPU</translation>
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="458" />
+      <location filename="../OllamaClient.py" line="465" />
       <source>&lt;p&gt;A network error occurred.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
       <translation>&lt;p&gt;Es gab einen Netzwerkfehler.&lt;/p&gt;&lt;p&gt;Fehler: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="587" />
+      <location filename="../OllamaClient.py" line="594" />
       <source>&lt;p&gt;Error: The local server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Fehler: Der lokale Server auf &lt;b&gt;{0}&lt;/b&gt; antwortet nicht.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="589" />
+      <location filename="../OllamaClient.py" line="596" />
       <source>&lt;p&gt;Error: The configured server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Fehler: Der konfigurierte Server auf &lt;b&gt;{0}&lt;/b&gt; antwortet nicht.&lt;/p&gt;</translation>
     </message>
@@ -77,6 +77,34 @@
     </message>
   </context>
   <context>
+    <name>OllamaHistoryEditDialog</name>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Edit Chat Parameters</source>
+      <translation>Unterhaltungsparameter bearbeiten</translation>
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Chat Title:</source>
+      <translation>Unterhaltungstitel:</translation>
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Enter the title of the chat.</source>
+      <translation>Gib den Titel der Unterhaltung ein.</translation>
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Model:</source>
+      <translation>Modell:</translation>
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Select the model to be used by the chat.</source>
+      <translation>Wähle das für die Unterhaltung zu verwendende Modell.</translation>
+    </message>
+  </context>
+  <context>
     <name>OllamaHistoryWidget</name>
     <message>
       <location filename="../OllamaHistoryWidget.ui" line="0" />
@@ -98,16 +126,6 @@
       <source>Press to delete this chat history.</source>
       <translation>Drücken, um die Chronik dieser Unterhaltung zu löschen.</translation>
     </message>
-    <message>
-      <location filename="../OllamaHistoryWidget.py" line="138" />
-      <source>Edit Chat Title</source>
-      <translation>Titel der Unterhaltung bearbeiten</translation>
-    </message>
-    <message>
-      <location filename="../OllamaHistoryWidget.py" line="139" />
-      <source>Enter the new title:</source>
-      <translation>Gib den neuen Titel ein:</translation>
-    </message>
   </context>
   <context>
     <name>OllamaPage</name>
@@ -283,237 +301,237 @@
   <context>
     <name>OllamaWidget</name>
     <message>
-      <location filename="../OllamaWidget.py" line="193" />
+      <location filename="../OllamaWidget.py" line="199" />
       <source>&lt;b&gt;ollama Server Version {0}&lt;/b&gt;</source>
       <translation>&lt;b&gt;ollama Server Version {0}&lt;/b&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="342" />
+      <location filename="../OllamaWidget.py" line="363" />
       <source>Save Chat History</source>
       <translation>Chat Verlauf speichern</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="343" />
+      <location filename="../OllamaWidget.py" line="364" />
       <source>&lt;p&gt;The chat history could not be saved to &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation>&lt;p&gt;Der Chat Verlauf konnte nicht nach &lt;b&gt;{0}&lt;/b&gt; gespeichert werden.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
+      <location filename="../OllamaWidget.py" line="420" />
       <location filename="../OllamaWidget.py" line="399" />
-      <location filename="../OllamaWidget.py" line="378" />
       <source>Load Chat History</source>
       <translation>Chat Verlauf laden</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="379" />
+      <location filename="../OllamaWidget.py" line="400" />
       <source>&lt;p&gt;The chat history could not be loaded from &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation>&lt;p&gt;Der Chat Verlauf konnte nicht aus &lt;b&gt;{0}&lt;/b&gt; geladen werden.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="400" />
+      <location filename="../OllamaWidget.py" line="421" />
       <source>&lt;p&gt;These chats were not loaded because they already existed.&lt;/p&gt;{0}</source>
       <translation>&lt;p&gt;Diese Chats wurden nicht geladen, da sie bereits existieren.&lt;/p&gt;{0}</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="477" />
-      <location filename="../OllamaWidget.py" line="470" />
+      <location filename="../OllamaWidget.py" line="498" />
+      <location filename="../OllamaWidget.py" line="491" />
       <source>New Chat</source>
       <translation>Neuer Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="471" />
+      <location filename="../OllamaWidget.py" line="492" />
       <source>A model has to be selected first. Aborting...</source>
       <translation>Es muss zuerst ein Modell ausgewählt werden. Abbruch...</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="478" />
+      <location filename="../OllamaWidget.py" line="499" />
       <source>Enter a title for the new chat:</source>
       <translation>Gib einen Titel für den neuen Chat ein:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="675" />
+      <location filename="../OllamaWidget.py" line="696" />
       <source>Chat History</source>
       <translation>Chat Verlauf</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="676" />
+      <location filename="../OllamaWidget.py" line="697" />
       <source>Load</source>
       <translation>Laden</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="679" />
+      <location filename="../OllamaWidget.py" line="700" />
       <source>Clear All</source>
       <translation>Alle löschen</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="682" />
+      <location filename="../OllamaWidget.py" line="703" />
       <source>Import</source>
       <translation>Importieren</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="683" />
+      <location filename="../OllamaWidget.py" line="704" />
       <source>Export</source>
       <translation>Exportieren</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="689" />
+      <location filename="../OllamaWidget.py" line="710" />
       <source>Model Management</source>
       <translation>Modellverwaltung</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="979" />
-      <location filename="../OllamaWidget.py" line="690" />
+      <location filename="../OllamaWidget.py" line="1001" />
+      <location filename="../OllamaWidget.py" line="711" />
       <source>List Models</source>
       <translation>Modelle auflisten</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="997" />
-      <location filename="../OllamaWidget.py" line="692" />
+      <location filename="../OllamaWidget.py" line="1019" />
+      <location filename="../OllamaWidget.py" line="713" />
       <source>List Running Models</source>
       <translation>Laufende Modelle auflisten</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="696" />
+      <location filename="../OllamaWidget.py" line="717" />
       <source>Show Model Library</source>
       <translation>Modell Bibliothek anzeigen</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1014" />
-      <location filename="../OllamaWidget.py" line="701" />
+      <location filename="../OllamaWidget.py" line="1036" />
+      <location filename="../OllamaWidget.py" line="722" />
       <source>Install Model</source>
       <translation>Modell installieren</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1087" />
-      <location filename="../OllamaWidget.py" line="1078" />
-      <location filename="../OllamaWidget.py" line="1067" />
-      <location filename="../OllamaWidget.py" line="704" />
+      <location filename="../OllamaWidget.py" line="1109" />
+      <location filename="../OllamaWidget.py" line="1100" />
+      <location filename="../OllamaWidget.py" line="1089" />
+      <location filename="../OllamaWidget.py" line="725" />
       <source>Remove Model</source>
       <translation>Modell löschen</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="711" />
+      <location filename="../OllamaWidget.py" line="732" />
       <source>Local Server</source>
       <translation>Lokaler Server</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="713" />
+      <location filename="../OllamaWidget.py" line="734" />
       <source>Start with Monitoring</source>
       <translation>Mit Monitoring starten</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="717" />
+      <location filename="../OllamaWidget.py" line="738" />
       <source>Start</source>
       <translation>Starten</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="720" />
+      <location filename="../OllamaWidget.py" line="741" />
       <source>Stop</source>
       <translation>Stoppen</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="727" />
+      <location filename="../OllamaWidget.py" line="748" />
       <source>ollama URLs</source>
       <translation>ollama URLs</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="729" />
+      <location filename="../OllamaWidget.py" line="750" />
       <source>Model Library</source>
       <translation>Modellbibliothek</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="733" />
+      <location filename="../OllamaWidget.py" line="754" />
       <source>Download</source>
       <translation>Download</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="737" />
+      <location filename="../OllamaWidget.py" line="758" />
       <source>Blog</source>
       <translation>Blog</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="754" />
+      <location filename="../OllamaWidget.py" line="775" />
       <source>Configure...</source>
       <translation>Einstellungen...</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="794" />
+      <location filename="../OllamaWidget.py" line="816" />
       <source>Clear All Chat Histories</source>
       <translation>Alle Chat Verläufe löschen</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="795" />
+      <location filename="../OllamaWidget.py" line="817" />
       <source>&lt;p&gt;Do you really want to delete all chat histories? This is &lt;b&gt;irreversible&lt;/b&gt;.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Sollen wirklich alle Chat Verläufe gelöscht werden? Dies ist &lt;b&gt;unumkehrbar&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="810" />
+      <location filename="../OllamaWidget.py" line="832" />
       <source>Import Chat History</source>
       <translation>Chat Verlauf importieren</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="812" />
+      <location filename="../OllamaWidget.py" line="834" />
       <source>Chat History Files (*.json);;All Files (*)</source>
       <translation>Chat Verlauf Dateien (*.json);;Alle Dateien (*)</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="845" />
-      <location filename="../OllamaWidget.py" line="813" />
+      <location filename="../OllamaWidget.py" line="867" />
+      <location filename="../OllamaWidget.py" line="835" />
       <source>Chat History Files (*.json)</source>
       <translation>Chat Verlauf Dateien (*.json)</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="843" />
-      <location filename="../OllamaWidget.py" line="833" />
+      <location filename="../OllamaWidget.py" line="865" />
+      <location filename="../OllamaWidget.py" line="855" />
       <source>Export Chat History</source>
       <translation>Chat Verlauf exportieren</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="834" />
+      <location filename="../OllamaWidget.py" line="856" />
       <source>Select the chats to be exported:</source>
       <translation>Wähle die zu exportierenden Chats:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="932" />
+      <location filename="../OllamaWidget.py" line="954" />
       <source>Run Local 'ollama' Server</source>
       <translation>Lokalen 'ollama' Server ausführen</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="933" />
+      <location filename="../OllamaWidget.py" line="955" />
       <source>The loacl 'ollama' server process could not be started.</source>
       <translation>Der lokale 'ollama' Serverprozess konnte nicht gestartet werden.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="980" />
+      <location filename="../OllamaWidget.py" line="1002" />
       <source>There are no models available.</source>
       <translation>Es sind keine Modelle verfügbar.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="998" />
+      <location filename="../OllamaWidget.py" line="1020" />
       <source>There are no models running.</source>
       <translation>Es werden keine Modelle ausgeführt.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1015" />
+      <location filename="../OllamaWidget.py" line="1037" />
       <source>Enter the name of the model to be installed:</source>
       <translation>Gib den Namen des zu installierenden Modells ein:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1068" />
+      <location filename="../OllamaWidget.py" line="1090" />
       <source>Select the model to be removed by the 'ollama' server:</source>
       <translation>Wähle das vom 'ollama' Server zu entfernende Modell aus:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1079" />
+      <location filename="../OllamaWidget.py" line="1101" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; was deleted successfully.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Das Modell &lt;b&gt;{0}&lt;/b&gt; wurde erfolgreich entfernt.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1088" />
+      <location filename="../OllamaWidget.py" line="1110" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; could not be removed from the 'ollama' server.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Das Modell &lt;b&gt;{0}&lt;/b&gt; konnte nicht vom 'ollama' Server entfernt werden.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1115" />
+      <location filename="../OllamaWidget.py" line="1137" />
       <source>Network Error</source>
       <translation>Netzwerkfehler</translation>
     </message>
--- a/OllamaInterface/i18n/ollama_empty.ts	Thu Sep 12 15:41:58 2024 +0200
+++ b/OllamaInterface/i18n/ollama_empty.ts	Mon Sep 16 19:05:50 2024 +0200
@@ -33,17 +33,17 @@
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="458" />
+      <location filename="../OllamaClient.py" line="465" />
       <source>&lt;p&gt;A network error occurred.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="587" />
+      <location filename="../OllamaClient.py" line="594" />
       <source>&lt;p&gt;Error: The local server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="589" />
+      <location filename="../OllamaClient.py" line="596" />
       <source>&lt;p&gt;Error: The configured server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
@@ -77,6 +77,34 @@
     </message>
   </context>
   <context>
+    <name>OllamaHistoryEditDialog</name>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Edit Chat Parameters</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Chat Title:</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Enter the title of the chat.</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Model:</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Select the model to be used by the chat.</source>
+      <translation type="unfinished" />
+    </message>
+  </context>
+  <context>
     <name>OllamaHistoryWidget</name>
     <message>
       <location filename="../OllamaHistoryWidget.ui" line="0" />
@@ -98,16 +126,6 @@
       <source>Press to delete this chat history.</source>
       <translation type="unfinished" />
     </message>
-    <message>
-      <location filename="../OllamaHistoryWidget.py" line="138" />
-      <source>Edit Chat Title</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../OllamaHistoryWidget.py" line="139" />
-      <source>Enter the new title:</source>
-      <translation type="unfinished" />
-    </message>
   </context>
   <context>
     <name>OllamaPage</name>
@@ -283,237 +301,237 @@
   <context>
     <name>OllamaWidget</name>
     <message>
-      <location filename="../OllamaWidget.py" line="193" />
+      <location filename="../OllamaWidget.py" line="199" />
       <source>&lt;b&gt;ollama Server Version {0}&lt;/b&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="342" />
+      <location filename="../OllamaWidget.py" line="363" />
       <source>Save Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="343" />
+      <location filename="../OllamaWidget.py" line="364" />
       <source>&lt;p&gt;The chat history could not be saved to &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
+      <location filename="../OllamaWidget.py" line="420" />
       <location filename="../OllamaWidget.py" line="399" />
-      <location filename="../OllamaWidget.py" line="378" />
       <source>Load Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="379" />
+      <location filename="../OllamaWidget.py" line="400" />
       <source>&lt;p&gt;The chat history could not be loaded from &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="400" />
+      <location filename="../OllamaWidget.py" line="421" />
       <source>&lt;p&gt;These chats were not loaded because they already existed.&lt;/p&gt;{0}</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="477" />
-      <location filename="../OllamaWidget.py" line="470" />
+      <location filename="../OllamaWidget.py" line="498" />
+      <location filename="../OllamaWidget.py" line="491" />
       <source>New Chat</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="471" />
+      <location filename="../OllamaWidget.py" line="492" />
       <source>A model has to be selected first. Aborting...</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="478" />
+      <location filename="../OllamaWidget.py" line="499" />
       <source>Enter a title for the new chat:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="675" />
+      <location filename="../OllamaWidget.py" line="696" />
       <source>Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="676" />
+      <location filename="../OllamaWidget.py" line="697" />
       <source>Load</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="679" />
+      <location filename="../OllamaWidget.py" line="700" />
       <source>Clear All</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="682" />
+      <location filename="../OllamaWidget.py" line="703" />
       <source>Import</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="683" />
+      <location filename="../OllamaWidget.py" line="704" />
       <source>Export</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="689" />
+      <location filename="../OllamaWidget.py" line="710" />
       <source>Model Management</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="979" />
-      <location filename="../OllamaWidget.py" line="690" />
+      <location filename="../OllamaWidget.py" line="1001" />
+      <location filename="../OllamaWidget.py" line="711" />
       <source>List Models</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="997" />
-      <location filename="../OllamaWidget.py" line="692" />
+      <location filename="../OllamaWidget.py" line="1019" />
+      <location filename="../OllamaWidget.py" line="713" />
       <source>List Running Models</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="696" />
+      <location filename="../OllamaWidget.py" line="717" />
       <source>Show Model Library</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1014" />
-      <location filename="../OllamaWidget.py" line="701" />
+      <location filename="../OllamaWidget.py" line="1036" />
+      <location filename="../OllamaWidget.py" line="722" />
       <source>Install Model</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1087" />
-      <location filename="../OllamaWidget.py" line="1078" />
-      <location filename="../OllamaWidget.py" line="1067" />
-      <location filename="../OllamaWidget.py" line="704" />
+      <location filename="../OllamaWidget.py" line="1109" />
+      <location filename="../OllamaWidget.py" line="1100" />
+      <location filename="../OllamaWidget.py" line="1089" />
+      <location filename="../OllamaWidget.py" line="725" />
       <source>Remove Model</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="711" />
+      <location filename="../OllamaWidget.py" line="732" />
       <source>Local Server</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="713" />
+      <location filename="../OllamaWidget.py" line="734" />
       <source>Start with Monitoring</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="717" />
+      <location filename="../OllamaWidget.py" line="738" />
       <source>Start</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="720" />
+      <location filename="../OllamaWidget.py" line="741" />
       <source>Stop</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="727" />
+      <location filename="../OllamaWidget.py" line="748" />
       <source>ollama URLs</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="729" />
+      <location filename="../OllamaWidget.py" line="750" />
       <source>Model Library</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="733" />
+      <location filename="../OllamaWidget.py" line="754" />
       <source>Download</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="737" />
+      <location filename="../OllamaWidget.py" line="758" />
       <source>Blog</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="754" />
+      <location filename="../OllamaWidget.py" line="775" />
       <source>Configure...</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="794" />
+      <location filename="../OllamaWidget.py" line="816" />
       <source>Clear All Chat Histories</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="795" />
+      <location filename="../OllamaWidget.py" line="817" />
       <source>&lt;p&gt;Do you really want to delete all chat histories? This is &lt;b&gt;irreversible&lt;/b&gt;.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="810" />
+      <location filename="../OllamaWidget.py" line="832" />
       <source>Import Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="812" />
+      <location filename="../OllamaWidget.py" line="834" />
       <source>Chat History Files (*.json);;All Files (*)</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="845" />
-      <location filename="../OllamaWidget.py" line="813" />
+      <location filename="../OllamaWidget.py" line="867" />
+      <location filename="../OllamaWidget.py" line="835" />
       <source>Chat History Files (*.json)</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="843" />
-      <location filename="../OllamaWidget.py" line="833" />
+      <location filename="../OllamaWidget.py" line="865" />
+      <location filename="../OllamaWidget.py" line="855" />
       <source>Export Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="834" />
+      <location filename="../OllamaWidget.py" line="856" />
       <source>Select the chats to be exported:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="932" />
+      <location filename="../OllamaWidget.py" line="954" />
       <source>Run Local 'ollama' Server</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="933" />
+      <location filename="../OllamaWidget.py" line="955" />
       <source>The loacl 'ollama' server process could not be started.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="980" />
+      <location filename="../OllamaWidget.py" line="1002" />
       <source>There are no models available.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="998" />
+      <location filename="../OllamaWidget.py" line="1020" />
       <source>There are no models running.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1015" />
+      <location filename="../OllamaWidget.py" line="1037" />
       <source>Enter the name of the model to be installed:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1068" />
+      <location filename="../OllamaWidget.py" line="1090" />
       <source>Select the model to be removed by the 'ollama' server:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1079" />
+      <location filename="../OllamaWidget.py" line="1101" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; was deleted successfully.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1088" />
+      <location filename="../OllamaWidget.py" line="1110" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; could not be removed from the 'ollama' server.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1115" />
+      <location filename="../OllamaWidget.py" line="1137" />
       <source>Network Error</source>
       <translation type="unfinished" />
     </message>
--- a/OllamaInterface/i18n/ollama_en.ts	Thu Sep 12 15:41:58 2024 +0200
+++ b/OllamaInterface/i18n/ollama_en.ts	Mon Sep 16 19:05:50 2024 +0200
@@ -1,620 +1,638 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!DOCTYPE TS>
 <TS version="2.1" language="en_US">
-<context>
+  <context>
     <name>OllamaChatWidget</name>
     <message>
-        <location filename="../OllamaChatWidget.py" line="41"/>
-        <source>&lt;b&gt;{0} - {1}&lt;/b&gt;</source>
-        <comment>title, model name</comment>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaChatWidget.py" line="41" />
+      <source>&lt;b&gt;{0} - {1}&lt;/b&gt;</source>
+      <comment>title, model name</comment>
+      <translation type="unfinished" />
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>OllamaClient</name>
     <message>
-        <location filename="../OllamaClient.py" line="301"/>
-        <source>100% CPU</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaClient.py" line="301" />
+      <source>100% CPU</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaClient.py" line="303"/>
-        <source>100% GPU</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaClient.py" line="303" />
+      <source>100% GPU</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaClient.py" line="305"/>
-        <source>unknown</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaClient.py" line="305" />
+      <source>unknown</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaClient.py" line="309"/>
-        <source>{0}% / {1}% CPU / GPU</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaClient.py" line="309" />
+      <source>{0}% / {1}% CPU / GPU</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaClient.py" line="458"/>
-        <source>&lt;p&gt;A network error occurred.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaClient.py" line="465" />
+      <source>&lt;p&gt;A network error occurred.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaClient.py" line="587"/>
-        <source>&lt;p&gt;Error: The local server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaClient.py" line="594" />
+      <source>&lt;p&gt;Error: The local server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaClient.py" line="589"/>
-        <source>&lt;p&gt;Error: The configured server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaClient.py" line="596" />
+      <source>&lt;p&gt;Error: The configured server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>OllamaDetailedModelsDialog</name>
     <message>
-        <location filename="../OllamaDetailedModelsDialog.ui" line="0"/>
-        <source>Available Models</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaDetailedModelsDialog.ui" line="0" />
+      <source>Available Models</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaDetailedModelsDialog.ui" line="0"/>
-        <source>Name</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaDetailedModelsDialog.ui" line="0" />
+      <source>Name</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaDetailedModelsDialog.ui" line="0"/>
-        <source>ID</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaDetailedModelsDialog.ui" line="0" />
+      <source>ID</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaDetailedModelsDialog.ui" line="0"/>
-        <source>Size</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaDetailedModelsDialog.ui" line="0" />
+      <source>Size</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaDetailedModelsDialog.ui" line="0"/>
-        <source>Modified At</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaDetailedModelsDialog.ui" line="0" />
+      <source>Modified At</source>
+      <translation type="unfinished" />
     </message>
-</context>
-<context>
-    <name>OllamaHistoryWidget</name>
+  </context>
+  <context>
+    <name>OllamaHistoryEditDialog</name>
     <message>
-        <location filename="../OllamaHistoryWidget.ui" line="0"/>
-        <source>Press to start a new chat based on the current history or switch to an already opened chat.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Edit Chat Parameters</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Chat Title:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaHistoryWidget.ui" line="0"/>
-        <source>Press to edit the chat title.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Enter the title of the chat.</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Model:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaHistoryWidget.ui" line="0"/>
-        <source>Press to view the current chat history in a separate window.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Select the model to be used by the chat.</source>
+      <translation type="unfinished" />
     </message>
+  </context>
+  <context>
+    <name>OllamaHistoryWidget</name>
     <message>
-        <location filename="../OllamaHistoryWidget.ui" line="0"/>
-        <source>Press to delete this chat history.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../OllamaHistoryWidget.py" line="138"/>
-        <source>Edit Chat Title</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaHistoryWidget.ui" line="0" />
+      <source>Press to start a new chat based on the current history or switch to an already opened chat.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaHistoryWidget.py" line="139"/>
-        <source>Enter the new title:</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>OllamaPage</name>
-    <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>&lt;b&gt;Configure &apos;ollama&apos; Interface&lt;/b&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaHistoryWidget.ui" line="0" />
+      <source>Press to edit the chat title.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Server URL</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Scheme:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaHistoryWidget.ui" line="0" />
+      <source>Press to view the current chat history in a separate window.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Select the scheme of the &apos;ollama&apos; server URL.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaHistoryWidget.ui" line="0" />
+      <source>Press to delete this chat history.</source>
+      <translation type="unfinished" />
     </message>
+  </context>
+  <context>
+    <name>OllamaPage</name>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Host:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>&lt;b&gt;Configure 'ollama' Interface&lt;/b&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Enter the host name of the &apos;ollama&apos; server.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Server URL</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Port:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Scheme:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Enter the port of the &apos;ollama&apos; server URL.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Select the scheme of the 'ollama' server URL.</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Host:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Local Server</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Enter the host name of the 'ollama' server.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Enter the port of the local &apos;ollama&apos; server.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Port:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>URLs</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Enter the port of the 'ollama' server URL.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Model Library:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Local Server</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Enter the port of the local 'ollama' server.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Enter the URL of the &apos;ollama&apos; model library. Leave empty to use the default URL.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>URLs</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Download:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Model Library:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Enter the URL of the &apos;ollama&apos; download page. Leave empty to use the default URL.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Enter the URL of the 'ollama' model library. Leave empty to use the default URL.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Blog:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Download:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Enter the URL of the &apos;ollama&apos; blog. Leave empty to use the default URL.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Enter the URL of the 'ollama' download page. Leave empty to use the default URL.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Heartbeat Timer:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Blog:</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Enter the URL of the 'ollama' blog. Leave empty to use the default URL.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Enter the heartbeat timeout value (0 = disable).</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Heartbeat Timer:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Disabled</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Enter the heartbeat timeout value (0 = disable).</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source> s</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Disabled</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/>
-        <source>Use streaming chat response</source>
-        <translation type="unfinished"></translation>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source> s</source>
+      <translation type="unfinished" />
     </message>
-</context>
-<context>
+    <message>
+      <location filename="../ConfigurationPage/OllamaPage.ui" line="0" />
+      <source>Use streaming chat response</source>
+      <translation type="unfinished" />
+    </message>
+  </context>
+  <context>
     <name>OllamaPullProgressDialog</name>
     <message>
-        <location filename="../OllamaPullProgressDialog.ui" line="0"/>
-        <source>Install Model</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaPullProgressDialog.ui" line="0" />
+      <source>Install Model</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaPullProgressDialog.py" line="138"/>
-        <source>&lt;p&gt;Installing model &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaPullProgressDialog.py" line="138" />
+      <source>&lt;p&gt;Installing model &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaPullProgressDialog.py" line="182"/>
-        <source>{0} / {1}</source>
-        <comment>completed / total</comment>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaPullProgressDialog.py" line="182" />
+      <source>{0} / {1}</source>
+      <comment>completed / total</comment>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaPullProgressDialog.py" line="201"/>
-        <source>Error: {0}</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaPullProgressDialog.py" line="201" />
+      <source>Error: {0}</source>
+      <translation type="unfinished" />
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>OllamaRunningModelsDialog</name>
     <message>
-        <location filename="../OllamaRunningModelsDialog.ui" line="0"/>
-        <source>Running Models</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaRunningModelsDialog.ui" line="0" />
+      <source>Running Models</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaRunningModelsDialog.ui" line="0"/>
-        <source>Name</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../OllamaRunningModelsDialog.ui" line="0"/>
-        <source>ID</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaRunningModelsDialog.ui" line="0" />
+      <source>Name</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaRunningModelsDialog.ui" line="0"/>
-        <source>Size</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaRunningModelsDialog.ui" line="0" />
+      <source>ID</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaRunningModelsDialog.ui" line="0" />
+      <source>Size</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaRunningModelsDialog.ui" line="0"/>
-        <source>Processor</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaRunningModelsDialog.ui" line="0" />
+      <source>Processor</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaRunningModelsDialog.ui" line="0"/>
-        <source>Expires</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaRunningModelsDialog.ui" line="0" />
+      <source>Expires</source>
+      <translation type="unfinished" />
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>OllamaWidget</name>
     <message>
-        <location filename="../OllamaWidget.py" line="193"/>
-        <source>&lt;b&gt;ollama Server Version {0}&lt;/b&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../OllamaWidget.py" line="342"/>
-        <source>Save Chat History</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="199" />
+      <source>&lt;b&gt;ollama Server Version {0}&lt;/b&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="343"/>
-        <source>&lt;p&gt;The chat history could not be saved to &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="363" />
+      <source>Save Chat History</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="399"/>
-        <location filename="../OllamaWidget.py" line="378"/>
-        <source>Load Chat History</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../OllamaWidget.py" line="379"/>
-        <source>&lt;p&gt;The chat history could not be loaded from &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="364" />
+      <source>&lt;p&gt;The chat history could not be saved to &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="400"/>
-        <source>&lt;p&gt;These chats were not loaded because they already existed.&lt;/p&gt;{0}</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="420" />
+      <location filename="../OllamaWidget.py" line="399" />
+      <source>Load Chat History</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="477"/>
-        <location filename="../OllamaWidget.py" line="470"/>
-        <source>New Chat</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../OllamaWidget.py" line="471"/>
-        <source>A model has to be selected first. Aborting...</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="400" />
+      <source>&lt;p&gt;The chat history could not be loaded from &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="478"/>
-        <source>Enter a title for the new chat:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="421" />
+      <source>&lt;p&gt;These chats were not loaded because they already existed.&lt;/p&gt;{0}</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="675"/>
-        <source>Chat History</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="498" />
+      <location filename="../OllamaWidget.py" line="491" />
+      <source>New Chat</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="676"/>
-        <source>Load</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="492" />
+      <source>A model has to be selected first. Aborting...</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="679"/>
-        <source>Clear All</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="499" />
+      <source>Enter a title for the new chat:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="682"/>
-        <source>Import</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="696" />
+      <source>Chat History</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="683"/>
-        <source>Export</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="697" />
+      <source>Load</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="689"/>
-        <source>Model Management</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="700" />
+      <source>Clear All</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaWidget.py" line="703" />
+      <source>Import</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="979"/>
-        <location filename="../OllamaWidget.py" line="690"/>
-        <source>List Models</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="704" />
+      <source>Export</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaWidget.py" line="710" />
+      <source>Model Management</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="997"/>
-        <location filename="../OllamaWidget.py" line="692"/>
-        <source>List Running Models</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="1001" />
+      <location filename="../OllamaWidget.py" line="711" />
+      <source>List Models</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="696"/>
-        <source>Show Model Library</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../OllamaWidget.py" line="1014"/>
-        <location filename="../OllamaWidget.py" line="701"/>
-        <source>Install Model</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="1019" />
+      <location filename="../OllamaWidget.py" line="713" />
+      <source>List Running Models</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="1087"/>
-        <location filename="../OllamaWidget.py" line="1078"/>
-        <location filename="../OllamaWidget.py" line="1067"/>
-        <location filename="../OllamaWidget.py" line="704"/>
-        <source>Remove Model</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="717" />
+      <source>Show Model Library</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="711"/>
-        <source>Local Server</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="1036" />
+      <location filename="../OllamaWidget.py" line="722" />
+      <source>Install Model</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="713"/>
-        <source>Start with Monitoring</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="1109" />
+      <location filename="../OllamaWidget.py" line="1100" />
+      <location filename="../OllamaWidget.py" line="1089" />
+      <location filename="../OllamaWidget.py" line="725" />
+      <source>Remove Model</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="717"/>
-        <source>Start</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="732" />
+      <source>Local Server</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="720"/>
-        <source>Stop</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="734" />
+      <source>Start with Monitoring</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="727"/>
-        <source>ollama URLs</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="738" />
+      <source>Start</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="729"/>
-        <source>Model Library</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="741" />
+      <source>Stop</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="733"/>
-        <source>Download</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="748" />
+      <source>ollama URLs</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="737"/>
-        <source>Blog</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="750" />
+      <source>Model Library</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="754"/>
-        <source>Configure...</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="754" />
+      <source>Download</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="794"/>
-        <source>Clear All Chat Histories</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="758" />
+      <source>Blog</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="795"/>
-        <source>&lt;p&gt;Do you really want to delete all chat histories? This is &lt;b&gt;irreversible&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="775" />
+      <source>Configure...</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="810"/>
-        <source>Import Chat History</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="816" />
+      <source>Clear All Chat Histories</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="812"/>
-        <source>Chat History Files (*.json);;All Files (*)</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="817" />
+      <source>&lt;p&gt;Do you really want to delete all chat histories? This is &lt;b&gt;irreversible&lt;/b&gt;.&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="845"/>
-        <location filename="../OllamaWidget.py" line="813"/>
-        <source>Chat History Files (*.json)</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="832" />
+      <source>Import Chat History</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaWidget.py" line="834" />
+      <source>Chat History Files (*.json);;All Files (*)</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="843"/>
-        <location filename="../OllamaWidget.py" line="833"/>
-        <source>Export Chat History</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="867" />
+      <location filename="../OllamaWidget.py" line="835" />
+      <source>Chat History Files (*.json)</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="834"/>
-        <source>Select the chats to be exported:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="865" />
+      <location filename="../OllamaWidget.py" line="855" />
+      <source>Export Chat History</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="932"/>
-        <source>Run Local &apos;ollama&apos; Server</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="856" />
+      <source>Select the chats to be exported:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="933"/>
-        <source>The loacl &apos;ollama&apos; server process could not be started.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="954" />
+      <source>Run Local 'ollama' Server</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="980"/>
-        <source>There are no models available.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="955" />
+      <source>The loacl 'ollama' server process could not be started.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="998"/>
-        <source>There are no models running.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="1002" />
+      <source>There are no models available.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="1015"/>
-        <source>Enter the name of the model to be installed:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="1020" />
+      <source>There are no models running.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="1068"/>
-        <source>Select the model to be removed by the &apos;ollama&apos; server:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="1037" />
+      <source>Enter the name of the model to be installed:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="1079"/>
-        <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; was deleted successfully.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="1090" />
+      <source>Select the model to be removed by the 'ollama' server:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="1088"/>
-        <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; could not be removed from the &apos;ollama&apos; server.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="1101" />
+      <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; was deleted successfully.&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.py" line="1115"/>
-        <source>Network Error</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="1110" />
+      <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; could not be removed from the 'ollama' server.&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.ui" line="0"/>
-        <source>Press to reload the models list and update the &apos;ollama&apos; version information.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.py" line="1137" />
+      <source>Network Error</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.ui" line="0"/>
-        <source>Select the model for the chat.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.ui" line="0" />
+      <source>Press to reload the models list and update the 'ollama' version information.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.ui" line="0"/>
-        <source>Press to start a new chat.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.ui" line="0" />
+      <source>Select the model for the chat.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.ui" line="0"/>
-        <source>Enter the message to be sent to the &apos;ollama&apos; server.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.ui" line="0" />
+      <source>Press to start a new chat.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.ui" line="0"/>
-        <source>Enter Message</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.ui" line="0" />
+      <source>Enter the message to be sent to the 'ollama' server.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../OllamaWidget.ui" line="0"/>
-        <source>Press to send the message of the current chat to the &apos;ollama&apos; server.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../OllamaWidget.ui" line="0" />
+      <source>Enter Message</source>
+      <translation type="unfinished" />
     </message>
-</context>
-<context>
+    <message>
+      <location filename="../OllamaWidget.ui" line="0" />
+      <source>Press to send the message of the current chat to the 'ollama' server.</source>
+      <translation type="unfinished" />
+    </message>
+  </context>
+  <context>
     <name>PluginOllamaInterface</name>
     <message>
-        <location filename="../../PluginAiOllama.py" line="184"/>
-        <location filename="../../PluginAiOllama.py" line="183"/>
-        <location filename="../../PluginAiOllama.py" line="179"/>
-        <location filename="../../PluginAiOllama.py" line="83"/>
-        <source>ollama AI Interface</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginAiOllama.py" line="184" />
+      <location filename="../../PluginAiOllama.py" line="183" />
+      <location filename="../../PluginAiOllama.py" line="179" />
+      <location filename="../../PluginAiOllama.py" line="83" />
+      <source>ollama AI Interface</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginAiOllama.py" line="185"/>
-        <source>Ctrl+Alt+Shift+O</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginAiOllama.py" line="185" />
+      <source>Ctrl+Alt+Shift+O</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginAiOllama.py" line="191"/>
-        <source>Switch the input focus to the ollama AI window.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginAiOllama.py" line="191" />
+      <source>Switch the input focus to the ollama AI window.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginAiOllama.py" line="194"/>
-        <source>&lt;b&gt;Activate ollama AI Interface&lt;/b&gt;&lt;p&gt;This switches the input focus to the ollama AI window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginAiOllama.py" line="194" />
+      <source>&lt;b&gt;Activate ollama AI Interface&lt;/b&gt;&lt;p&gt;This switches the input focus to the ollama AI window.&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>RunOllamaServerDialog</name>
     <message>
-        <location filename="../RunOllamaServerDialog.ui" line="0"/>
-        <source>ollama Server</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RunOllamaServerDialog.ui" line="0" />
+      <source>ollama Server</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RunOllamaServerDialog.ui" line="0"/>
-        <source>Output</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RunOllamaServerDialog.ui" line="0" />
+      <source>Output</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RunOllamaServerDialog.ui" line="0"/>
-        <source>Press to restart the local ollama server.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RunOllamaServerDialog.ui" line="0" />
+      <source>Press to restart the local ollama server.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RunOllamaServerDialog.ui" line="0"/>
-        <source>Re-Start Server</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RunOllamaServerDialog.ui" line="0" />
+      <source>Re-Start Server</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RunOllamaServerDialog.ui" line="0"/>
-        <source>Press to stop the running ollama server.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RunOllamaServerDialog.ui" line="0" />
+      <source>Press to stop the running ollama server.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RunOllamaServerDialog.ui" line="0"/>
-        <source>Stop Server</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RunOllamaServerDialog.ui" line="0" />
+      <source>Stop Server</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RunOllamaServerDialog.py" line="79"/>
-        <source>Run Local &apos;ollama&apos; Server</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RunOllamaServerDialog.py" line="79" />
+      <source>Run Local 'ollama' Server</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RunOllamaServerDialog.py" line="80"/>
-        <source>The local &apos;ollama&apos; server process could not be started.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RunOllamaServerDialog.py" line="80" />
+      <source>The local 'ollama' server process could not be started.</source>
+      <translation type="unfinished" />
     </message>
-</context>
+  </context>
 </TS>
--- a/OllamaInterface/i18n/ollama_es.ts	Thu Sep 12 15:41:58 2024 +0200
+++ b/OllamaInterface/i18n/ollama_es.ts	Mon Sep 16 19:05:50 2024 +0200
@@ -33,17 +33,17 @@
       <translation>{0}% / {1}% CPU / GPU</translation>
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="458" />
+      <location filename="../OllamaClient.py" line="465" />
       <source>&lt;p&gt;A network error occurred.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
       <translation>&lt;p&gt;Ha ocurrido un error de red.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="587" />
+      <location filename="../OllamaClient.py" line="594" />
       <source>&lt;p&gt;Error: The local server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Error: El servidor local en &lt;b&gt;{0}&lt;/b&gt; no responde.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="589" />
+      <location filename="../OllamaClient.py" line="596" />
       <source>&lt;p&gt;Error: The configured server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Error: El servidor configurado en &lt;b&gt;{0}&lt;/b&gt; no responde.&lt;/p&gt;</translation>
     </message>
@@ -77,6 +77,34 @@
     </message>
   </context>
   <context>
+    <name>OllamaHistoryEditDialog</name>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Edit Chat Parameters</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Chat Title:</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Enter the title of the chat.</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Model:</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Select the model to be used by the chat.</source>
+      <translation type="unfinished" />
+    </message>
+  </context>
+  <context>
     <name>OllamaHistoryWidget</name>
     <message>
       <location filename="../OllamaHistoryWidget.ui" line="0" />
@@ -99,14 +127,12 @@
       <translation>Pulsar para borrar la historia de este chat.</translation>
     </message>
     <message>
-      <location filename="../OllamaHistoryWidget.py" line="138" />
       <source>Edit Chat Title</source>
-      <translation>Editar Título del Chat</translation>
+      <translation type="vanished">Editar Título del Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaHistoryWidget.py" line="139" />
       <source>Enter the new title:</source>
-      <translation>Introducir el nuevo título:</translation>
+      <translation type="vanished">Introducir el nuevo título:</translation>
     </message>
   </context>
   <context>
@@ -283,237 +309,237 @@
   <context>
     <name>OllamaWidget</name>
     <message>
-      <location filename="../OllamaWidget.py" line="193" />
+      <location filename="../OllamaWidget.py" line="199" />
       <source>&lt;b&gt;ollama Server Version {0}&lt;/b&gt;</source>
       <translation>&lt;b&gt;Versión del servidor ollama {0}&lt;/b&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="342" />
+      <location filename="../OllamaWidget.py" line="363" />
       <source>Save Chat History</source>
       <translation>Guardar Historia del Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="343" />
+      <location filename="../OllamaWidget.py" line="364" />
       <source>&lt;p&gt;The chat history could not be saved to &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation>&lt;p&gt;La historia del chat no se ha podido salvar en &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
+      <location filename="../OllamaWidget.py" line="420" />
       <location filename="../OllamaWidget.py" line="399" />
-      <location filename="../OllamaWidget.py" line="378" />
       <source>Load Chat History</source>
       <translation>Cargar Historia de Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="379" />
+      <location filename="../OllamaWidget.py" line="400" />
       <source>&lt;p&gt;The chat history could not be loaded from &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation>&lt;p&gt;La historia de chat no se ha podido cargar desde &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="400" />
+      <location filename="../OllamaWidget.py" line="421" />
       <source>&lt;p&gt;These chats were not loaded because they already existed.&lt;/p&gt;{0}</source>
       <translation>&lt;p&gt;Estos chats no se han cargado porque ya existen.&lt;/p&gt;{0}</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="477" />
-      <location filename="../OllamaWidget.py" line="470" />
+      <location filename="../OllamaWidget.py" line="498" />
+      <location filename="../OllamaWidget.py" line="491" />
       <source>New Chat</source>
       <translation>Nuevo Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="471" />
+      <location filename="../OllamaWidget.py" line="492" />
       <source>A model has to be selected first. Aborting...</source>
       <translation>Se ha de seleccionar un modelo antes. Abortando...</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="478" />
+      <location filename="../OllamaWidget.py" line="499" />
       <source>Enter a title for the new chat:</source>
       <translation>Introducir título para el nuevo chat:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="675" />
+      <location filename="../OllamaWidget.py" line="696" />
       <source>Chat History</source>
       <translation>Historia de Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="676" />
+      <location filename="../OllamaWidget.py" line="697" />
       <source>Load</source>
       <translation>Cargar</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="679" />
+      <location filename="../OllamaWidget.py" line="700" />
       <source>Clear All</source>
       <translation>Limpiar Todo</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="682" />
+      <location filename="../OllamaWidget.py" line="703" />
       <source>Import</source>
       <translation>Importar</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="683" />
+      <location filename="../OllamaWidget.py" line="704" />
       <source>Export</source>
       <translation>Exportar</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="689" />
+      <location filename="../OllamaWidget.py" line="710" />
       <source>Model Management</source>
       <translation>Gestión de Modelos</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="979" />
-      <location filename="../OllamaWidget.py" line="690" />
+      <location filename="../OllamaWidget.py" line="1001" />
+      <location filename="../OllamaWidget.py" line="711" />
       <source>List Models</source>
       <translation>Listar Modelos</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="997" />
-      <location filename="../OllamaWidget.py" line="692" />
+      <location filename="../OllamaWidget.py" line="1019" />
+      <location filename="../OllamaWidget.py" line="713" />
       <source>List Running Models</source>
       <translation>Listar Modelos en Ejecución</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="696" />
+      <location filename="../OllamaWidget.py" line="717" />
       <source>Show Model Library</source>
       <translation>Mostrar Biblioteca de Modelos</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1014" />
-      <location filename="../OllamaWidget.py" line="701" />
+      <location filename="../OllamaWidget.py" line="1036" />
+      <location filename="../OllamaWidget.py" line="722" />
       <source>Install Model</source>
       <translation>Instalar Modelo</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1087" />
-      <location filename="../OllamaWidget.py" line="1078" />
-      <location filename="../OllamaWidget.py" line="1067" />
-      <location filename="../OllamaWidget.py" line="704" />
+      <location filename="../OllamaWidget.py" line="1109" />
+      <location filename="../OllamaWidget.py" line="1100" />
+      <location filename="../OllamaWidget.py" line="1089" />
+      <location filename="../OllamaWidget.py" line="725" />
       <source>Remove Model</source>
       <translation>Eliminar Modelo</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="711" />
+      <location filename="../OllamaWidget.py" line="732" />
       <source>Local Server</source>
       <translation>Servidor Local</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="713" />
+      <location filename="../OllamaWidget.py" line="734" />
       <source>Start with Monitoring</source>
       <translation>Iniciar con Monitorización</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="717" />
+      <location filename="../OllamaWidget.py" line="738" />
       <source>Start</source>
       <translation>Iniciar</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="720" />
+      <location filename="../OllamaWidget.py" line="741" />
       <source>Stop</source>
       <translation>Detener</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="727" />
+      <location filename="../OllamaWidget.py" line="748" />
       <source>ollama URLs</source>
       <translation>URLs ollama</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="729" />
+      <location filename="../OllamaWidget.py" line="750" />
       <source>Model Library</source>
       <translation>Biblioteca de Modelos</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="733" />
+      <location filename="../OllamaWidget.py" line="754" />
       <source>Download</source>
       <translation>Descarga</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="737" />
+      <location filename="../OllamaWidget.py" line="758" />
       <source>Blog</source>
       <translation>Blog</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="754" />
+      <location filename="../OllamaWidget.py" line="775" />
       <source>Configure...</source>
       <translation>Configurar...</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="794" />
+      <location filename="../OllamaWidget.py" line="816" />
       <source>Clear All Chat Histories</source>
       <translation>Limpiar Todas las Historias de Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="795" />
+      <location filename="../OllamaWidget.py" line="817" />
       <source>&lt;p&gt;Do you really want to delete all chat histories? This is &lt;b&gt;irreversible&lt;/b&gt;.&lt;/p&gt;</source>
       <translation>&lt;p&gt;¿Desea realmente borrar todas las historias de chat? Esto es &lt;b&gt;irreversible&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="810" />
+      <location filename="../OllamaWidget.py" line="832" />
       <source>Import Chat History</source>
       <translation>Importar Historia de Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="812" />
+      <location filename="../OllamaWidget.py" line="834" />
       <source>Chat History Files (*.json);;All Files (*)</source>
       <translation>Archivos de Historia de Chat (*.json);;Todos los Archivos (*)</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="845" />
-      <location filename="../OllamaWidget.py" line="813" />
+      <location filename="../OllamaWidget.py" line="867" />
+      <location filename="../OllamaWidget.py" line="835" />
       <source>Chat History Files (*.json)</source>
       <translation>Archivos de Historia de Chat (*.json)</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="843" />
-      <location filename="../OllamaWidget.py" line="833" />
+      <location filename="../OllamaWidget.py" line="865" />
+      <location filename="../OllamaWidget.py" line="855" />
       <source>Export Chat History</source>
       <translation>Exportar Historia de Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="834" />
+      <location filename="../OllamaWidget.py" line="856" />
       <source>Select the chats to be exported:</source>
       <translation>Seleccionar chats a exportar:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="932" />
+      <location filename="../OllamaWidget.py" line="954" />
       <source>Run Local 'ollama' Server</source>
       <translation>Ejecutar Servidor 'ollama' Local</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="933" />
+      <location filename="../OllamaWidget.py" line="955" />
       <source>The loacl 'ollama' server process could not be started.</source>
       <translation>El proceso del servidor local 'ollama' no se ha podido iniciar.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="980" />
+      <location filename="../OllamaWidget.py" line="1002" />
       <source>There are no models available.</source>
       <translation>No hay modelos disponibles.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="998" />
+      <location filename="../OllamaWidget.py" line="1020" />
       <source>There are no models running.</source>
       <translation>No hay modelos en ejecución.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1015" />
+      <location filename="../OllamaWidget.py" line="1037" />
       <source>Enter the name of the model to be installed:</source>
       <translation>Introducir el nombre del modelo a instalar:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1068" />
+      <location filename="../OllamaWidget.py" line="1090" />
       <source>Select the model to be removed by the 'ollama' server:</source>
       <translation>Seleccionar el modelo a eliminar por el servidor 'ollama':</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1079" />
+      <location filename="../OllamaWidget.py" line="1101" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; was deleted successfully.&lt;/p&gt;</source>
       <translation>&lt;p&gt;El modelo &lt;b&gt;{0}&lt;/b&gt; se ha borrado con éxito.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1088" />
+      <location filename="../OllamaWidget.py" line="1110" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; could not be removed from the 'ollama' server.&lt;/p&gt;</source>
       <translation>&lt;p&gt;El modelo &lt;b&gt;{0}&lt;/b&gt; no se ha podido eliminar del servidor 'ollama'.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1115" />
+      <location filename="../OllamaWidget.py" line="1137" />
       <source>Network Error</source>
       <translation>Error de Red</translation>
     </message>
--- a/OllamaInterface/i18n/ollama_ru.ts	Thu Sep 12 15:41:58 2024 +0200
+++ b/OllamaInterface/i18n/ollama_ru.ts	Mon Sep 16 19:05:50 2024 +0200
@@ -33,17 +33,17 @@
       <translation>{0}% / {1}% CPU / GPU</translation>
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="458" />
+      <location filename="../OllamaClient.py" line="465" />
       <source>&lt;p&gt;A network error occurred.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
       <translation>&lt;p&gt;Произошла сетевая ошибка.&lt;/p&gt;&lt;p&gt;Ошибка: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="587" />
+      <location filename="../OllamaClient.py" line="594" />
       <source>&lt;p&gt;Error: The local server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Ошибка: Локальный сервер по адресу &lt;b&gt;{0}&lt;/b&gt; не отвечает.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="589" />
+      <location filename="../OllamaClient.py" line="596" />
       <source>&lt;p&gt;Error: The configured server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Ошибка: Настроенный сервер по адресу &lt;b&gt;{0}&lt;/b&gt; не отвечает.&lt;/p&gt;</translation>
     </message>
@@ -77,6 +77,34 @@
     </message>
   </context>
   <context>
+    <name>OllamaHistoryEditDialog</name>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Edit Chat Parameters</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Chat Title:</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Enter the title of the chat.</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Model:</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaHistoryEditDialog.ui" line="0" />
+      <source>Select the model to be used by the chat.</source>
+      <translation type="unfinished" />
+    </message>
+  </context>
+  <context>
     <name>OllamaHistoryWidget</name>
     <message>
       <location filename="../OllamaHistoryWidget.ui" line="0" />
@@ -99,14 +127,12 @@
       <translation>Удалить историю этого чата.</translation>
     </message>
     <message>
-      <location filename="../OllamaHistoryWidget.py" line="138" />
       <source>Edit Chat Title</source>
-      <translation>Редактировать заголовок чата</translation>
+      <translation type="vanished">Редактировать заголовок чата</translation>
     </message>
     <message>
-      <location filename="../OllamaHistoryWidget.py" line="139" />
       <source>Enter the new title:</source>
-      <translation>Введите новый заголовок:</translation>
+      <translation type="vanished">Введите новый заголовок:</translation>
     </message>
   </context>
   <context>
@@ -283,237 +309,237 @@
   <context>
     <name>OllamaWidget</name>
     <message>
-      <location filename="../OllamaWidget.py" line="193" />
+      <location filename="../OllamaWidget.py" line="199" />
       <source>&lt;b&gt;ollama Server Version {0}&lt;/b&gt;</source>
       <translation>&lt;b&gt;Версия сервера ollama {0}&lt;/b&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="342" />
+      <location filename="../OllamaWidget.py" line="363" />
       <source>Save Chat History</source>
       <translation>Сохранить историю чата</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="343" />
+      <location filename="../OllamaWidget.py" line="364" />
       <source>&lt;p&gt;The chat history could not be saved to &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation>&lt;p&gt;Не удалось сохранить историю чата в &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
+      <location filename="../OllamaWidget.py" line="420" />
       <location filename="../OllamaWidget.py" line="399" />
-      <location filename="../OllamaWidget.py" line="378" />
       <source>Load Chat History</source>
       <translation>Загрузить историю чата</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="379" />
+      <location filename="../OllamaWidget.py" line="400" />
       <source>&lt;p&gt;The chat history could not be loaded from &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation>&lt;p&gt;Не удалось загрузить историю чата из &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="400" />
+      <location filename="../OllamaWidget.py" line="421" />
       <source>&lt;p&gt;These chats were not loaded because they already existed.&lt;/p&gt;{0}</source>
       <translation>Эти чаты не были загружены, потому что они уже существуют.&lt;/p&gt;{0}</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="477" />
-      <location filename="../OllamaWidget.py" line="470" />
+      <location filename="../OllamaWidget.py" line="498" />
+      <location filename="../OllamaWidget.py" line="491" />
       <source>New Chat</source>
       <translation>Нрвый чат</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="471" />
+      <location filename="../OllamaWidget.py" line="492" />
       <source>A model has to be selected first. Aborting...</source>
       <translation>Сначала необходимо выбрать модель. Прерывание...</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="478" />
+      <location filename="../OllamaWidget.py" line="499" />
       <source>Enter a title for the new chat:</source>
       <translation>Введите заголовок нового чата:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="675" />
+      <location filename="../OllamaWidget.py" line="696" />
       <source>Chat History</source>
       <translation>История чата</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="676" />
+      <location filename="../OllamaWidget.py" line="697" />
       <source>Load</source>
       <translation>Загрузить</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="679" />
+      <location filename="../OllamaWidget.py" line="700" />
       <source>Clear All</source>
       <translation>Очистить все</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="682" />
+      <location filename="../OllamaWidget.py" line="703" />
       <source>Import</source>
       <translation>Импорт</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="683" />
+      <location filename="../OllamaWidget.py" line="704" />
       <source>Export</source>
       <translation>Экспорт</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="689" />
+      <location filename="../OllamaWidget.py" line="710" />
       <source>Model Management</source>
       <translation>Управление моделью</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="979" />
-      <location filename="../OllamaWidget.py" line="690" />
+      <location filename="../OllamaWidget.py" line="1001" />
+      <location filename="../OllamaWidget.py" line="711" />
       <source>List Models</source>
       <translation>Список моделей</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="997" />
-      <location filename="../OllamaWidget.py" line="692" />
+      <location filename="../OllamaWidget.py" line="1019" />
+      <location filename="../OllamaWidget.py" line="713" />
       <source>List Running Models</source>
       <translation>Список работающих моделей</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="696" />
+      <location filename="../OllamaWidget.py" line="717" />
       <source>Show Model Library</source>
       <translation>Показать библиотеку моделей</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1014" />
-      <location filename="../OllamaWidget.py" line="701" />
+      <location filename="../OllamaWidget.py" line="1036" />
+      <location filename="../OllamaWidget.py" line="722" />
       <source>Install Model</source>
       <translation>Установить модель</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1087" />
-      <location filename="../OllamaWidget.py" line="1078" />
-      <location filename="../OllamaWidget.py" line="1067" />
-      <location filename="../OllamaWidget.py" line="704" />
+      <location filename="../OllamaWidget.py" line="1109" />
+      <location filename="../OllamaWidget.py" line="1100" />
+      <location filename="../OllamaWidget.py" line="1089" />
+      <location filename="../OllamaWidget.py" line="725" />
       <source>Remove Model</source>
       <translation>Удалить модель</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="711" />
+      <location filename="../OllamaWidget.py" line="732" />
       <source>Local Server</source>
       <translation>Локальный сервер</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="713" />
+      <location filename="../OllamaWidget.py" line="734" />
       <source>Start with Monitoring</source>
       <translation>Старт с мониторингом</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="717" />
+      <location filename="../OllamaWidget.py" line="738" />
       <source>Start</source>
       <translation>Старт</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="720" />
+      <location filename="../OllamaWidget.py" line="741" />
       <source>Stop</source>
       <translation>Стоп</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="727" />
+      <location filename="../OllamaWidget.py" line="748" />
       <source>ollama URLs</source>
       <translation>URL'ы ollama</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="729" />
+      <location filename="../OllamaWidget.py" line="750" />
       <source>Model Library</source>
       <translation>Библиотека моделей</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="733" />
+      <location filename="../OllamaWidget.py" line="754" />
       <source>Download</source>
       <translation>Загрузка</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="737" />
+      <location filename="../OllamaWidget.py" line="758" />
       <source>Blog</source>
       <translation>Блог</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="754" />
+      <location filename="../OllamaWidget.py" line="775" />
       <source>Configure...</source>
       <translation>Настройка...</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="794" />
+      <location filename="../OllamaWidget.py" line="816" />
       <source>Clear All Chat Histories</source>
       <translation>Очистить все истории чата</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="795" />
+      <location filename="../OllamaWidget.py" line="817" />
       <source>&lt;p&gt;Do you really want to delete all chat histories? This is &lt;b&gt;irreversible&lt;/b&gt;.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Вы действительно хотите удалить все истории чата? Это действие &lt;b&gt;необратимо&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="810" />
+      <location filename="../OllamaWidget.py" line="832" />
       <source>Import Chat History</source>
       <translation>Импорт истории чата</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="812" />
+      <location filename="../OllamaWidget.py" line="834" />
       <source>Chat History Files (*.json);;All Files (*)</source>
       <translation>Файлы истории чата (*.json);;Все файлы (*)</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="845" />
-      <location filename="../OllamaWidget.py" line="813" />
+      <location filename="../OllamaWidget.py" line="867" />
+      <location filename="../OllamaWidget.py" line="835" />
       <source>Chat History Files (*.json)</source>
       <translation>Файлы истории чата (*.json)</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="843" />
-      <location filename="../OllamaWidget.py" line="833" />
+      <location filename="../OllamaWidget.py" line="865" />
+      <location filename="../OllamaWidget.py" line="855" />
       <source>Export Chat History</source>
       <translation>Экспорт истории чата</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="834" />
+      <location filename="../OllamaWidget.py" line="856" />
       <source>Select the chats to be exported:</source>
       <translation>Выберите чаты для экспорта:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="932" />
+      <location filename="../OllamaWidget.py" line="954" />
       <source>Run Local 'ollama' Server</source>
       <translation>Запустить локальный сервер 'ollama'</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="933" />
+      <location filename="../OllamaWidget.py" line="955" />
       <source>The loacl 'ollama' server process could not be started.</source>
       <translation>Не удалось запустить локальный процесс сервера 'ollama'.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="980" />
+      <location filename="../OllamaWidget.py" line="1002" />
       <source>There are no models available.</source>
       <translation>Нет доступных моделей.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="998" />
+      <location filename="../OllamaWidget.py" line="1020" />
       <source>There are no models running.</source>
       <translation>Нет запущенных моделей.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1015" />
+      <location filename="../OllamaWidget.py" line="1037" />
       <source>Enter the name of the model to be installed:</source>
       <translation>Введите имя модели, которую нужно установить:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1068" />
+      <location filename="../OllamaWidget.py" line="1090" />
       <source>Select the model to be removed by the 'ollama' server:</source>
       <translation>Выберите модель, которая будет удалена сервером 'ollama':</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1079" />
+      <location filename="../OllamaWidget.py" line="1101" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; was deleted successfully.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Модель &lt;b&gt;{0}&lt;/b&gt; была успешно удалена.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1088" />
+      <location filename="../OllamaWidget.py" line="1110" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; could not be removed from the 'ollama' server.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Модель &lt;b&gt;{0}&lt;/b&gt; не удалось удалить с сервера 'ollama'.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1115" />
+      <location filename="../OllamaWidget.py" line="1137" />
       <source>Network Error</source>
       <translation>Ошибка сети</translation>
     </message>
--- a/PKGLIST	Thu Sep 12 15:41:58 2024 +0200
+++ b/PKGLIST	Mon Sep 16 19:05:50 2024 +0200
@@ -10,6 +10,8 @@
 OllamaInterface/OllamaClient.py
 OllamaInterface/OllamaDetailedModelsDialog.py
 OllamaInterface/OllamaDetailedModelsDialog.ui
+OllamaInterface/OllamaHistoryEditDialog.py
+OllamaInterface/OllamaHistoryEditDialog.ui
 OllamaInterface/OllamaHistoryWidget.py
 OllamaInterface/OllamaHistoryWidget.ui
 OllamaInterface/OllamaPullProgressDialog.py
@@ -22,6 +24,7 @@
 OllamaInterface/RunOllamaServerDialog.ui
 OllamaInterface/Ui_OllamaChatWidget.py
 OllamaInterface/Ui_OllamaDetailedModelsDialog.py
+OllamaInterface/Ui_OllamaHistoryEditDialog.py
 OllamaInterface/Ui_OllamaHistoryWidget.py
 OllamaInterface/Ui_OllamaPullProgressDialog.py
 OllamaInterface/Ui_OllamaRunningModelsDialog.py
--- a/PluginAiOllama.epj	Thu Sep 12 15:41:58 2024 +0200
+++ b/PluginAiOllama.epj	Mon Sep 16 19:05:50 2024 +0200
@@ -201,6 +201,7 @@
       "OllamaInterface/ConfigurationPage/OllamaPage.ui",
       "OllamaInterface/OllamaChatWidget.ui",
       "OllamaInterface/OllamaDetailedModelsDialog.ui",
+      "OllamaInterface/OllamaHistoryEditDialog.ui",
       "OllamaInterface/OllamaHistoryWidget.ui",
       "OllamaInterface/OllamaPullProgressDialog.ui",
       "OllamaInterface/OllamaRunningModelsDialog.ui",
@@ -308,6 +309,7 @@
       "OllamaInterface/OllamaChatWidget.py",
       "OllamaInterface/OllamaClient.py",
       "OllamaInterface/OllamaDetailedModelsDialog.py",
+      "OllamaInterface/OllamaHistoryEditDialog.py",
       "OllamaInterface/OllamaHistoryWidget.py",
       "OllamaInterface/OllamaPullProgressDialog.py",
       "OllamaInterface/OllamaRunningModelsDialog.py",
@@ -315,6 +317,7 @@
       "OllamaInterface/RunOllamaServerDialog.py",
       "OllamaInterface/Ui_OllamaChatWidget.py",
       "OllamaInterface/Ui_OllamaDetailedModelsDialog.py",
+      "OllamaInterface/Ui_OllamaHistoryEditDialog.py",
       "OllamaInterface/Ui_OllamaHistoryWidget.py",
       "OllamaInterface/Ui_OllamaPullProgressDialog.py",
       "OllamaInterface/Ui_OllamaRunningModelsDialog.py",
--- a/PluginAiOllama.py	Thu Sep 12 15:41:58 2024 +0200
+++ b/PluginAiOllama.py	Mon Sep 16 19:05:50 2024 +0200
@@ -33,7 +33,7 @@
     "author": "Detlev Offenbach <detlev@die-offenbachs.de>",
     "autoactivate": True,
     "deactivateable": True,
-    "version": "10.0.5",
+    "version": "10.1.0",
     "className": "PluginOllamaInterface",
     "packageName": "OllamaInterface",
     "shortDescription": "Graphical 'ollama' client for eric-ide.",
Binary file PluginAiOllama.zip has changed
--- a/changelog.md	Thu Sep 12 15:41:58 2024 +0200
+++ b/changelog.md	Mon Sep 16 19:05:50 2024 +0200
@@ -1,6 +1,10 @@
 ChangeLog
 ---------
 
+__Version 10.1.0__
+
+- Added the capability to change the model of a chat.
+
 __Version 10.0.5__
 
 - Added the missing icons for the chat history view buttons.

eric ide

mercurial