Mon, 16 Sep 2024 19:05:50 +0200
Added the capability to change the model of a chat.
--- /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."))
--- 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><p>A network error occurred.</p><p>Error: {0}</p></source> <translation><p>Es gab einen Netzwerkfehler.</p><p>Fehler: {0}</p></translation> </message> <message> - <location filename="../OllamaClient.py" line="587" /> + <location filename="../OllamaClient.py" line="594" /> <source><p>Error: The local server at <b>{0}</b> is not responding.</p></source> <translation><p>Fehler: Der lokale Server auf <b>{0}</b> antwortet nicht.</p></translation> </message> <message> - <location filename="../OllamaClient.py" line="589" /> + <location filename="../OllamaClient.py" line="596" /> <source><p>Error: The configured server at <b>{0}</b> is not responding.</p></source> <translation><p>Fehler: Der konfigurierte Server auf <b>{0}</b> antwortet nicht.</p></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><b>ollama Server Version {0}</b></source> <translation><b>ollama Server Version {0}</b></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><p>The chat history could not be saved to <b>{0}</b>.</p><p>Reason: {1}</p></source> <translation><p>Der Chat Verlauf konnte nicht nach <b>{0}</b> gespeichert werden.</p><p>Ursache: {1}</p></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><p>The chat history could not be loaded from <b>{0}</b>.</p><p>Reason: {1}</p></source> <translation><p>Der Chat Verlauf konnte nicht aus <b>{0}</b> geladen werden.</p><p>Ursache: {1}</p></translation> </message> <message> - <location filename="../OllamaWidget.py" line="400" /> + <location filename="../OllamaWidget.py" line="421" /> <source><p>These chats were not loaded because they already existed.</p>{0}</source> <translation><p>Diese Chats wurden nicht geladen, da sie bereits existieren.</p>{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><p>Do you really want to delete all chat histories? This is <b>irreversible</b>.</p></source> <translation><p>Sollen wirklich alle Chat Verläufe gelöscht werden? Dies ist <b>unumkehrbar</b>.</p></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><p>The model <b>{0}</b> was deleted successfully.</p></source> <translation><p>Das Modell <b>{0}</b> wurde erfolgreich entfernt.</p></translation> </message> <message> - <location filename="../OllamaWidget.py" line="1088" /> + <location filename="../OllamaWidget.py" line="1110" /> <source><p>The model <b>{0}</b> could not be removed from the 'ollama' server.</p></source> <translation><p>Das Modell <b>{0}</b> konnte nicht vom 'ollama' Server entfernt werden.</p></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><p>A network error occurred.</p><p>Error: {0}</p></source> <translation type="unfinished" /> </message> <message> - <location filename="../OllamaClient.py" line="587" /> + <location filename="../OllamaClient.py" line="594" /> <source><p>Error: The local server at <b>{0}</b> is not responding.</p></source> <translation type="unfinished" /> </message> <message> - <location filename="../OllamaClient.py" line="589" /> + <location filename="../OllamaClient.py" line="596" /> <source><p>Error: The configured server at <b>{0}</b> is not responding.</p></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><b>ollama Server Version {0}</b></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><p>The chat history could not be saved to <b>{0}</b>.</p><p>Reason: {1}</p></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><p>The chat history could not be loaded from <b>{0}</b>.</p><p>Reason: {1}</p></source> <translation type="unfinished" /> </message> <message> - <location filename="../OllamaWidget.py" line="400" /> + <location filename="../OllamaWidget.py" line="421" /> <source><p>These chats were not loaded because they already existed.</p>{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><p>Do you really want to delete all chat histories? This is <b>irreversible</b>.</p></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><p>The model <b>{0}</b> was deleted successfully.</p></source> <translation type="unfinished" /> </message> <message> - <location filename="../OllamaWidget.py" line="1088" /> + <location filename="../OllamaWidget.py" line="1110" /> <source><p>The model <b>{0}</b> could not be removed from the 'ollama' server.</p></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><b>{0} - {1}</b></source> - <comment>title, model name</comment> - <translation type="unfinished"></translation> + <location filename="../OllamaChatWidget.py" line="41" /> + <source><b>{0} - {1}</b></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><p>A network error occurred.</p><p>Error: {0}</p></source> - <translation type="unfinished"></translation> + <location filename="../OllamaClient.py" line="465" /> + <source><p>A network error occurred.</p><p>Error: {0}</p></source> + <translation type="unfinished" /> </message> <message> - <location filename="../OllamaClient.py" line="587"/> - <source><p>Error: The local server at <b>{0}</b> is not responding.</p></source> - <translation type="unfinished"></translation> + <location filename="../OllamaClient.py" line="594" /> + <source><p>Error: The local server at <b>{0}</b> is not responding.</p></source> + <translation type="unfinished" /> </message> <message> - <location filename="../OllamaClient.py" line="589"/> - <source><p>Error: The configured server at <b>{0}</b> is not responding.</p></source> - <translation type="unfinished"></translation> + <location filename="../OllamaClient.py" line="596" /> + <source><p>Error: The configured server at <b>{0}</b> is not responding.</p></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><b>Configure 'ollama' Interface</b></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 'ollama' 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><b>Configure 'ollama' Interface</b></source> + <translation type="unfinished" /> </message> <message> - <location filename="../ConfigurationPage/OllamaPage.ui" line="0"/> - <source>Enter the host name of the 'ollama' 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 'ollama' 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 'ollama' 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 'ollama' 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 'ollama' 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 'ollama' 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><p>Installing model <b>{0}</b>.</p></source> - <translation type="unfinished"></translation> + <location filename="../OllamaPullProgressDialog.py" line="138" /> + <source><p>Installing model <b>{0}</b>.</p></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><b>ollama Server Version {0}</b></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><b>ollama Server Version {0}</b></source> + <translation type="unfinished" /> </message> <message> - <location filename="../OllamaWidget.py" line="343"/> - <source><p>The chat history could not be saved to <b>{0}</b>.</p><p>Reason: {1}</p></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><p>The chat history could not be loaded from <b>{0}</b>.</p><p>Reason: {1}</p></source> - <translation type="unfinished"></translation> + <location filename="../OllamaWidget.py" line="364" /> + <source><p>The chat history could not be saved to <b>{0}</b>.</p><p>Reason: {1}</p></source> + <translation type="unfinished" /> </message> <message> - <location filename="../OllamaWidget.py" line="400"/> - <source><p>These chats were not loaded because they already existed.</p>{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><p>The chat history could not be loaded from <b>{0}</b>.</p><p>Reason: {1}</p></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><p>These chats were not loaded because they already existed.</p>{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><p>Do you really want to delete all chat histories? This is <b>irreversible</b>.</p></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><p>Do you really want to delete all chat histories? This is <b>irreversible</b>.</p></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 'ollama' 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 'ollama' 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 'ollama' 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><p>The model <b>{0}</b> was deleted successfully.</p></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><p>The model <b>{0}</b> could not be removed from the 'ollama' server.</p></source> - <translation type="unfinished"></translation> + <location filename="../OllamaWidget.py" line="1101" /> + <source><p>The model <b>{0}</b> was deleted successfully.</p></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><p>The model <b>{0}</b> could not be removed from the 'ollama' server.</p></source> + <translation type="unfinished" /> </message> <message> - <location filename="../OllamaWidget.ui" line="0"/> - <source>Press to reload the models list and update the 'ollama' 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 'ollama' 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 'ollama' 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><b>Activate ollama AI Interface</b><p>This switches the input focus to the ollama AI window.</p></source> - <translation type="unfinished"></translation> + <location filename="../../PluginAiOllama.py" line="194" /> + <source><b>Activate ollama AI Interface</b><p>This switches the input focus to the ollama AI window.</p></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 'ollama' 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 'ollama' 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><p>A network error occurred.</p><p>Error: {0}</p></source> <translation><p>Ha ocurrido un error de red.</p><p>Error: {0}</p></translation> </message> <message> - <location filename="../OllamaClient.py" line="587" /> + <location filename="../OllamaClient.py" line="594" /> <source><p>Error: The local server at <b>{0}</b> is not responding.</p></source> <translation><p>Error: El servidor local en <b>{0}</b> no responde.</p></translation> </message> <message> - <location filename="../OllamaClient.py" line="589" /> + <location filename="../OllamaClient.py" line="596" /> <source><p>Error: The configured server at <b>{0}</b> is not responding.</p></source> <translation><p>Error: El servidor configurado en <b>{0}</b> no responde.</p></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><b>ollama Server Version {0}</b></source> <translation><b>Versión del servidor ollama {0}</b></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><p>The chat history could not be saved to <b>{0}</b>.</p><p>Reason: {1}</p></source> <translation><p>La historia del chat no se ha podido salvar en <b>{0}</b>.</p><p>Razón: {1}</p></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><p>The chat history could not be loaded from <b>{0}</b>.</p><p>Reason: {1}</p></source> <translation><p>La historia de chat no se ha podido cargar desde <b>{0}</b>.</p><p>Razón: {1}</p></translation> </message> <message> - <location filename="../OllamaWidget.py" line="400" /> + <location filename="../OllamaWidget.py" line="421" /> <source><p>These chats were not loaded because they already existed.</p>{0}</source> <translation><p>Estos chats no se han cargado porque ya existen.</p>{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><p>Do you really want to delete all chat histories? This is <b>irreversible</b>.</p></source> <translation><p>¿Desea realmente borrar todas las historias de chat? Esto es <b>irreversible</b>.</p></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><p>The model <b>{0}</b> was deleted successfully.</p></source> <translation><p>El modelo <b>{0}</b> se ha borrado con éxito.</p></translation> </message> <message> - <location filename="../OllamaWidget.py" line="1088" /> + <location filename="../OllamaWidget.py" line="1110" /> <source><p>The model <b>{0}</b> could not be removed from the 'ollama' server.</p></source> <translation><p>El modelo <b>{0}</b> no se ha podido eliminar del servidor 'ollama'.</p></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><p>A network error occurred.</p><p>Error: {0}</p></source> <translation><p>Произошла сетевая ошибка.</p><p>Ошибка: {0}</p></translation> </message> <message> - <location filename="../OllamaClient.py" line="587" /> + <location filename="../OllamaClient.py" line="594" /> <source><p>Error: The local server at <b>{0}</b> is not responding.</p></source> <translation><p>Ошибка: Локальный сервер по адресу <b>{0}</b> не отвечает.</p></translation> </message> <message> - <location filename="../OllamaClient.py" line="589" /> + <location filename="../OllamaClient.py" line="596" /> <source><p>Error: The configured server at <b>{0}</b> is not responding.</p></source> <translation><p>Ошибка: Настроенный сервер по адресу <b>{0}</b> не отвечает.</p></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><b>ollama Server Version {0}</b></source> <translation><b>Версия сервера ollama {0}</b></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><p>The chat history could not be saved to <b>{0}</b>.</p><p>Reason: {1}</p></source> <translation><p>Не удалось сохранить историю чата в <b>{0}</b>.</p><p>Причина: {1}</p></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><p>The chat history could not be loaded from <b>{0}</b>.</p><p>Reason: {1}</p></source> <translation><p>Не удалось загрузить историю чата из <b>{0}</b>.</p><p>Причина: {1}</p></translation> </message> <message> - <location filename="../OllamaWidget.py" line="400" /> + <location filename="../OllamaWidget.py" line="421" /> <source><p>These chats were not loaded because they already existed.</p>{0}</source> <translation>Эти чаты не были загружены, потому что они уже существуют.</p>{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><p>Do you really want to delete all chat histories? This is <b>irreversible</b>.</p></source> <translation><p>Вы действительно хотите удалить все истории чата? Это действие <b>необратимо</b>.</p></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><p>The model <b>{0}</b> was deleted successfully.</p></source> <translation><p>Модель <b>{0}</b> была успешно удалена.</p></translation> </message> <message> - <location filename="../OllamaWidget.py" line="1088" /> + <location filename="../OllamaWidget.py" line="1110" /> <source><p>The model <b>{0}</b> could not be removed from the 'ollama' server.</p></source> <translation><p>Модель <b>{0}</b> не удалось удалить с сервера 'ollama'.</p></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.",