pygpt-net 2.6.14__py3-none-any.whl → 2.6.15__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pygpt_net/CHANGELOG.txt +6 -0
- pygpt_net/__init__.py +3 -3
- pygpt_net/controller/chat/render.py +10 -1
- pygpt_net/controller/plugins/settings.py +10 -1
- pygpt_net/controller/theme/common.py +2 -2
- pygpt_net/controller/ui/tabs.py +5 -1
- pygpt_net/core/render/base.py +8 -0
- pygpt_net/core/render/markdown/renderer.py +9 -0
- pygpt_net/core/render/plain/renderer.py +9 -0
- pygpt_net/core/render/web/renderer.py +17 -3
- pygpt_net/data/config/config.json +3 -3
- pygpt_net/data/config/models.json +3 -3
- pygpt_net/data/locale/locale.de.ini +1 -0
- pygpt_net/data/locale/locale.en.ini +1 -0
- pygpt_net/data/locale/locale.es.ini +1 -0
- pygpt_net/data/locale/locale.fr.ini +1 -0
- pygpt_net/data/locale/locale.it.ini +1 -0
- pygpt_net/data/locale/locale.pl.ini +2 -1
- pygpt_net/data/locale/locale.uk.ini +1 -0
- pygpt_net/data/locale/locale.zh.ini +1 -0
- {pygpt_net-2.6.14.dist-info → pygpt_net-2.6.15.dist-info}/METADATA +8 -2
- {pygpt_net-2.6.14.dist-info → pygpt_net-2.6.15.dist-info}/RECORD +25 -25
- {pygpt_net-2.6.14.dist-info → pygpt_net-2.6.15.dist-info}/LICENSE +0 -0
- {pygpt_net-2.6.14.dist-info → pygpt_net-2.6.15.dist-info}/WHEEL +0 -0
- {pygpt_net-2.6.14.dist-info → pygpt_net-2.6.15.dist-info}/entry_points.txt +0 -0
pygpt_net/CHANGELOG.txt
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
2.6.15 (2025-08-20)
|
|
2
|
+
|
|
3
|
+
- Added: do not change the context menu font size in text editing.
|
|
4
|
+
- Added: do not reload context items on tab change if already loaded.
|
|
5
|
+
- Fixed: appending of names and avatars in the stream chunk.
|
|
6
|
+
|
|
1
7
|
2.6.14 (2025-08-19)
|
|
2
8
|
|
|
3
9
|
- Fixed: Agent evaluation tool runs even if tools are disabled.
|
pygpt_net/__init__.py
CHANGED
|
@@ -6,15 +6,15 @@
|
|
|
6
6
|
# GitHub: https://github.com/szczyglis-dev/py-gpt #
|
|
7
7
|
# MIT License #
|
|
8
8
|
# Created By : Marcin Szczygliński #
|
|
9
|
-
# Updated Date: 2025.08.
|
|
9
|
+
# Updated Date: 2025.08.20 00:00:00 #
|
|
10
10
|
# ================================================== #
|
|
11
11
|
|
|
12
12
|
__author__ = "Marcin Szczygliński"
|
|
13
13
|
__copyright__ = "Copyright 2025, Marcin Szczygliński"
|
|
14
14
|
__credits__ = ["Marcin Szczygliński"]
|
|
15
15
|
__license__ = "MIT"
|
|
16
|
-
__version__ = "2.6.
|
|
17
|
-
__build__ = "2025-08-
|
|
16
|
+
__version__ = "2.6.15"
|
|
17
|
+
__build__ = "2025-08-20"
|
|
18
18
|
__maintainer__ = "Marcin Szczygliński"
|
|
19
19
|
__github__ = "https://github.com/szczyglis-dev/py-gpt"
|
|
20
20
|
__report__ = "https://github.com/szczyglis-dev/py-gpt/issues"
|
|
@@ -654,4 +654,13 @@ class Render:
|
|
|
654
654
|
|
|
655
655
|
:param text: Text to read # TODO: move to another class
|
|
656
656
|
"""
|
|
657
|
-
self.window.controller.audio.read_text(text)
|
|
657
|
+
self.window.controller.audio.read_text(text)
|
|
658
|
+
|
|
659
|
+
def get_pid_data(self, pid: int) -> Optional[CtxItem]:
|
|
660
|
+
"""
|
|
661
|
+
Get PID data
|
|
662
|
+
|
|
663
|
+
:param pid: PID
|
|
664
|
+
:return: CtxItem or None
|
|
665
|
+
"""
|
|
666
|
+
return self.instance().get_pid_data(pid)
|
|
@@ -11,7 +11,9 @@
|
|
|
11
11
|
|
|
12
12
|
from typing import Any
|
|
13
13
|
|
|
14
|
-
from
|
|
14
|
+
from PySide6.QtWidgets import QApplication
|
|
15
|
+
|
|
16
|
+
from pygpt_net.core.events import Event, KernelEvent
|
|
15
17
|
from pygpt_net.utils import trans
|
|
16
18
|
|
|
17
19
|
|
|
@@ -46,6 +48,10 @@ class Settings:
|
|
|
46
48
|
def open(self):
|
|
47
49
|
"""Open plugin settings dialog"""
|
|
48
50
|
if not self.config_initialized:
|
|
51
|
+
self.window.dispatch(KernelEvent(KernelEvent.STATUS, {
|
|
52
|
+
'status': trans("status.loading")
|
|
53
|
+
}))
|
|
54
|
+
QApplication.processEvents()
|
|
49
55
|
self.setup()
|
|
50
56
|
self.config_initialized = True
|
|
51
57
|
if self.config_dialog:
|
|
@@ -56,6 +62,9 @@ class Settings:
|
|
|
56
62
|
width=self.width,
|
|
57
63
|
height=self.height
|
|
58
64
|
)
|
|
65
|
+
self.window.dispatch(KernelEvent(KernelEvent.STATUS, {
|
|
66
|
+
'status': ""
|
|
67
|
+
}))
|
|
59
68
|
self.config_dialog = True
|
|
60
69
|
|
|
61
70
|
def open_plugin(self, id: str):
|
|
@@ -110,9 +110,9 @@ class Common:
|
|
|
110
110
|
"""
|
|
111
111
|
# get font size
|
|
112
112
|
if element == "font.chat.output":
|
|
113
|
-
return 'font-size: {}px;'.format(self.window.core.config.get('font_size'))
|
|
113
|
+
return 'QTextEdit {{ font-size: {}px; }}'.format(self.window.core.config.get('font_size'))
|
|
114
114
|
elif element == "font.chat.input":
|
|
115
|
-
return 'font-size: {}px;'.format(self.window.core.config.get('font_size.input'))
|
|
115
|
+
return 'QTextEdit {{ font-size: {}px; }}'.format(self.window.core.config.get('font_size.input'))
|
|
116
116
|
elif element == "font.ctx.list":
|
|
117
117
|
return 'font-size: {}px;'.format(self.window.core.config.get('font_size.ctx'))
|
|
118
118
|
elif element == "font.toolbox":
|
pygpt_net/controller/ui/tabs.py
CHANGED
|
@@ -204,7 +204,11 @@ class Tabs:
|
|
|
204
204
|
meta_id = core.ctx.output.prepare_meta(tab)
|
|
205
205
|
meta = core.ctx.get_meta_by_id(meta_id)
|
|
206
206
|
if meta is not None:
|
|
207
|
-
w.controller.
|
|
207
|
+
pid_data = w.controller.chat.render.get_pid_data(tab.pid)
|
|
208
|
+
if not pid_data or not pid_data.loaded:
|
|
209
|
+
w.controller.ctx.load(meta.id)
|
|
210
|
+
else:
|
|
211
|
+
w.controller.ctx.select_on_list_only(meta.id)
|
|
208
212
|
elif tab.type == Tab.TAB_TOOL_PAINTER:
|
|
209
213
|
if core.config.get('vision.capture.enabled'):
|
|
210
214
|
w.controller.camera.enable_capture()
|
pygpt_net/core/render/base.py
CHANGED
|
@@ -78,6 +78,15 @@ class Renderer(BaseRenderer):
|
|
|
78
78
|
if pid is not None:
|
|
79
79
|
self.pids[pid] = PidData(pid, meta)
|
|
80
80
|
|
|
81
|
+
def get_pid_data(self, pid: int):
|
|
82
|
+
"""
|
|
83
|
+
Get PID data for given PID
|
|
84
|
+
|
|
85
|
+
:param pid: PID
|
|
86
|
+
"""
|
|
87
|
+
if pid in self.pids:
|
|
88
|
+
return self.pids[pid]
|
|
89
|
+
|
|
81
90
|
def begin(
|
|
82
91
|
self,
|
|
83
92
|
meta: CtxMeta,
|
|
@@ -81,6 +81,15 @@ class Renderer(BaseRenderer):
|
|
|
81
81
|
if pid is not None:
|
|
82
82
|
self.pids[pid] = PidData(pid, meta)
|
|
83
83
|
|
|
84
|
+
def get_pid_data(self, pid: int):
|
|
85
|
+
"""
|
|
86
|
+
Get PID data for given PID
|
|
87
|
+
|
|
88
|
+
:param pid: PID
|
|
89
|
+
"""
|
|
90
|
+
if pid in self.pids:
|
|
91
|
+
return self.pids[pid]
|
|
92
|
+
|
|
84
93
|
def begin(
|
|
85
94
|
self,
|
|
86
95
|
meta: CtxMeta,
|
|
@@ -151,6 +151,15 @@ class Renderer(BaseRenderer):
|
|
|
151
151
|
if pid is not None:
|
|
152
152
|
self.pids[pid] = PidData(pid, meta)
|
|
153
153
|
|
|
154
|
+
def get_pid_data(self, pid: int):
|
|
155
|
+
"""
|
|
156
|
+
Get PID data for given PID
|
|
157
|
+
|
|
158
|
+
:param pid: PID
|
|
159
|
+
"""
|
|
160
|
+
if pid in self.pids:
|
|
161
|
+
return self.pids[pid]
|
|
162
|
+
|
|
154
163
|
def init(self, pid: Optional[int]):
|
|
155
164
|
"""
|
|
156
165
|
Initialize renderer
|
|
@@ -653,7 +662,7 @@ class Renderer(BaseRenderer):
|
|
|
653
662
|
return
|
|
654
663
|
|
|
655
664
|
if begin: # prepare name and avatar header only at the beginning to avoid unnecessary checks
|
|
656
|
-
pctx.header = self.get_name_header(ctx)
|
|
665
|
+
pctx.header = self.get_name_header(ctx, stream=True)
|
|
657
666
|
self.update_names(meta, ctx)
|
|
658
667
|
|
|
659
668
|
name_header_str = pctx.header
|
|
@@ -1328,11 +1337,12 @@ class Renderer(BaseRenderer):
|
|
|
1328
1337
|
|
|
1329
1338
|
return f"<div class='msg-box msg-bot' id='{msg_id}'>{name_header}<div class='msg'>{html}{spinner}<div class='msg-tool-extra'>{tool_extra}</div><div class='tool-output' style='{output_class}'><span class='toggle-cmd-output' onclick='toggleToolOutput({ctx.id});' title='{trans('action.cmd.expand')}' role='button'><img src='{self._file_prefix}{self._icon_expand}' width='25' height='25' valign='middle'></span><div class='content' style='display:none'>{tool_output}</div></div><div class='msg-extra'>{extra}</div>{footer}{debug}</div></div>"
|
|
1330
1339
|
|
|
1331
|
-
def get_name_header(self, ctx: CtxItem) -> str:
|
|
1340
|
+
def get_name_header(self, ctx: CtxItem, stream: bool = False) -> str:
|
|
1332
1341
|
"""
|
|
1333
1342
|
Get name header for the bot
|
|
1334
1343
|
|
|
1335
1344
|
:param ctx: CtxItem instance
|
|
1345
|
+
:param stream: True if it is a stream
|
|
1336
1346
|
:return: HTML name header
|
|
1337
1347
|
"""
|
|
1338
1348
|
meta = ctx.meta
|
|
@@ -1360,7 +1370,11 @@ class Renderer(BaseRenderer):
|
|
|
1360
1370
|
|
|
1361
1371
|
if not output_name and not avatar_html:
|
|
1362
1372
|
return ""
|
|
1363
|
-
|
|
1373
|
+
|
|
1374
|
+
if stream:
|
|
1375
|
+
return f"{avatar_html}{output_name}"
|
|
1376
|
+
else:
|
|
1377
|
+
return f"<div class=\"name-header name-bot\">{avatar_html}{output_name}</div>"
|
|
1364
1378
|
|
|
1365
1379
|
def flush_output(
|
|
1366
1380
|
self,
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"__meta__": {
|
|
3
|
-
"version": "2.6.
|
|
4
|
-
"app.version": "2.6.
|
|
5
|
-
"updated_at": "2025-08-
|
|
3
|
+
"version": "2.6.15",
|
|
4
|
+
"app.version": "2.6.15",
|
|
5
|
+
"updated_at": "2025-08-20T00:00:00"
|
|
6
6
|
},
|
|
7
7
|
"access.audio.event.speech": false,
|
|
8
8
|
"access.audio.event.speech.disabled": [],
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"__meta__": {
|
|
3
|
-
"version": "2.6.
|
|
4
|
-
"app.version": "2.6.
|
|
5
|
-
"updated_at": "2025-08-
|
|
3
|
+
"version": "2.6.15",
|
|
4
|
+
"app.version": "2.6.15",
|
|
5
|
+
"updated_at": "2025-08-20T23:07:35"
|
|
6
6
|
},
|
|
7
7
|
"items": {
|
|
8
8
|
"SpeakLeash/bielik-11b-v2.3-instruct:Q4_K_M": {
|
|
@@ -1341,6 +1341,7 @@ status.evaluating = Bitte warten... bewerten...
|
|
|
1341
1341
|
status.finished = Abgeschlossen.
|
|
1342
1342
|
status.img.generated = Bild wurde generiert
|
|
1343
1343
|
status.img.saved = Bild gespeichert
|
|
1344
|
+
status.loading = Laden... Bitte warten
|
|
1344
1345
|
status.preset.cleared = Voreinstellung gelöscht
|
|
1345
1346
|
status.preset.deleted = Voreinstellung gelöscht
|
|
1346
1347
|
status.preset.duplicated = Voreinstellung dupliziert
|
|
@@ -1353,6 +1353,7 @@ status.evaluating = Please wait... evaluating...
|
|
|
1353
1353
|
status.finished = Finished.
|
|
1354
1354
|
status.img.generated = Image has been generated.
|
|
1355
1355
|
status.img.saved = Image has been saved.
|
|
1356
|
+
status.loading = Loading... Please wait
|
|
1356
1357
|
status.preset.cleared = Preset has been cleared.
|
|
1357
1358
|
status.preset.deleted = Preset has been deleted.
|
|
1358
1359
|
status.preset.duplicated = Preset has been duplicated.
|
|
@@ -1342,6 +1342,7 @@ status.evaluating = Por favor espera... evaluando...
|
|
|
1342
1342
|
status.finished = Terminado.
|
|
1343
1343
|
status.img.generated = La imagen ha sido generada
|
|
1344
1344
|
status.img.saved = Imagen guardada
|
|
1345
|
+
status.loading = Cargando... Por favor, espera
|
|
1345
1346
|
status.preset.cleared = Ajuste preestablecido limpiado
|
|
1346
1347
|
status.preset.deleted = Ajuste preestablecido eliminado
|
|
1347
1348
|
status.preset.duplicated = Ajuste preestablecido duplicado
|
|
@@ -1341,6 +1341,7 @@ status.evaluating = Veuillez patienter... évaluation en cours...
|
|
|
1341
1341
|
status.finished = Terminé.
|
|
1342
1342
|
status.img.generated = L'image a été générée.
|
|
1343
1343
|
status.img.saved = Image sauvegardée
|
|
1344
|
+
status.loading = Chargement... Veuillez patienter
|
|
1344
1345
|
status.preset.cleared = Préréglage effacé
|
|
1345
1346
|
status.preset.deleted = Préréglage supprimé
|
|
1346
1347
|
status.preset.duplicated = Préréglage dupliqué
|
|
@@ -1341,6 +1341,7 @@ status.evaluating = Attendere prego... valutazione in corso...
|
|
|
1341
1341
|
status.finished = Finito.
|
|
1342
1342
|
status.img.generated = L'immagine è stata generata.
|
|
1343
1343
|
status.img.saved = Immagine salvata.
|
|
1344
|
+
status.loading = Caricamento... Attendere prego
|
|
1344
1345
|
status.preset.cleared = Preset cancellato.
|
|
1345
1346
|
status.preset.deleted = Preset cancellato.
|
|
1346
1347
|
status.preset.duplicated = Preset duplicato.
|
|
@@ -1007,7 +1007,7 @@ settings.agent.func_call.native.desc = Jeśli włączone, aplikacja będzie uży
|
|
|
1007
1007
|
settings.agent.goal.notify = Wyświetl powiadomienie w zasobniku systemowym, gdy cel zostanie osiągnięty.
|
|
1008
1008
|
settings.agent.idx = Indeks
|
|
1009
1009
|
settings.agent.idx.auto_retrieve = Automatyczne pobieranie dodatkowego kontekstu z RAG
|
|
1010
|
-
settings.agent.idx.auto_retrieve.desc = Automatyczne pobieranie dodatkowego kontekstu z RAG na początku, jeśli został podany indeks.
|
|
1010
|
+
settings.agent.idx.auto_retrieve.desc = Automatyczne pobieranie dodatkowego kontekstu z RAG na początku, jeśli został podany indeks.
|
|
1011
1011
|
settings.agent.idx.desc = Tylko jeśli tryb wewnętrzny to llama_index (Czat z plikami), wybierz indeks do użycia w trybach Agenta i Experta
|
|
1012
1012
|
settings.agent.llama.append_eval = Dodaj i porównaj poprzedni prompt oceny w następnej ocenie
|
|
1013
1013
|
settings.agent.llama.append_eval.desc = Jeśli włączone, poprzedni prompt ulepszenia będzie sprawdzany w kolejnej ewaluacji w pętli
|
|
@@ -1344,6 +1344,7 @@ status.evaluating = Proszę czekać... ocena w toku...
|
|
|
1344
1344
|
status.finished = Zakończono.
|
|
1345
1345
|
status.img.generated = Obraz został wygenerowany.
|
|
1346
1346
|
status.img.saved = Obraz został zapisany
|
|
1347
|
+
status.loading = Ładowanie... Proszę czekać
|
|
1347
1348
|
status.preset.cleared = Preset wyczyszczony
|
|
1348
1349
|
status.preset.deleted = Preset usunięty
|
|
1349
1350
|
status.preset.duplicated = Preset skopiowany
|
|
@@ -1341,6 +1341,7 @@ status.evaluating = Будь ласка, зачекайте... оцінюван
|
|
|
1341
1341
|
status.finished = Завершено.
|
|
1342
1342
|
status.img.generated = Зображення було згенеровано.
|
|
1343
1343
|
status.img.saved = Зображення збережено
|
|
1344
|
+
status.loading = Завантаження... Будь ласка, зачекайте
|
|
1344
1345
|
status.preset.cleared = Пресет очищено
|
|
1345
1346
|
status.preset.deleted = Пресет видалено
|
|
1346
1347
|
status.preset.duplicated = Пресет дубльовано
|
|
@@ -1341,6 +1341,7 @@ status.evaluating = 请稍候... 评估中...
|
|
|
1341
1341
|
status.finished = 完成。
|
|
1342
1342
|
status.img.generated = 图像已生成。
|
|
1343
1343
|
status.img.saved = 图像已保存。
|
|
1344
|
+
status.loading = 加载中... 请稍候
|
|
1344
1345
|
status.preset.cleared = 预设已清除。
|
|
1345
1346
|
status.preset.deleted = 预设已删除。
|
|
1346
1347
|
status.preset.duplicated = 预设已复制。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: pygpt-net
|
|
3
|
-
Version: 2.6.
|
|
3
|
+
Version: 2.6.15
|
|
4
4
|
Summary: Desktop AI Assistant powered by: OpenAI GPT-5, o1, o3, GPT-4, Gemini, Claude, Grok, DeepSeek, and other models supported by Llama Index, and Ollama. Chatbot, agents, completion, image generation, vision analysis, speech-to-text, plugins, internet access, file handling, command execution and more.
|
|
5
5
|
License: MIT
|
|
6
6
|
Keywords: py_gpt,py-gpt,pygpt,desktop,app,o1,o3,gpt-5,gpt,gpt4,gpt-4o,gpt-4v,gpt3.5,gpt-4,gpt-4-vision,gpt-3.5,llama3,mistral,gemini,grok,deepseek,bielik,claude,tts,whisper,vision,chatgpt,dall-e,chat,chatbot,assistant,text completion,image generation,ai,api,openai,api key,langchain,llama-index,ollama,presets,ui,qt,pyside
|
|
@@ -108,7 +108,7 @@ Description-Content-Type: text/markdown
|
|
|
108
108
|
|
|
109
109
|
[](https://snapcraft.io/pygpt)
|
|
110
110
|
|
|
111
|
-
Release: **2.6.
|
|
111
|
+
Release: **2.6.15** | build: **2025-08-20** | Python: **>=3.10, <3.14**
|
|
112
112
|
|
|
113
113
|
> Official website: https://pygpt.net | Documentation: https://pygpt.readthedocs.io
|
|
114
114
|
>
|
|
@@ -4566,6 +4566,12 @@ may consume additional tokens that are not displayed in the main window.
|
|
|
4566
4566
|
|
|
4567
4567
|
## Recent changes:
|
|
4568
4568
|
|
|
4569
|
+
**2.6.15 (2025-08-20)**
|
|
4570
|
+
|
|
4571
|
+
- Added: do not change the context menu font size in text editing.
|
|
4572
|
+
- Added: do not reload context items on tab change if already loaded.
|
|
4573
|
+
- Fixed: appending of names and avatars in the stream chunk.
|
|
4574
|
+
|
|
4569
4575
|
**2.6.14 (2025-08-19)**
|
|
4570
4576
|
|
|
4571
4577
|
- Fixed: Agent evaluation tool runs even if tools are disabled.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
pygpt_net/CHANGELOG.txt,sha256=
|
|
1
|
+
pygpt_net/CHANGELOG.txt,sha256=nvzM6_l4V4_ZuaKv2A97l_kUPc9aNBsCYCfdj2EVR0M,100187
|
|
2
2
|
pygpt_net/LICENSE,sha256=dz9sfFgYahvu2NZbx4C1xCsVn9GVer2wXcMkFRBvqzY,1146
|
|
3
|
-
pygpt_net/__init__.py,sha256=
|
|
3
|
+
pygpt_net/__init__.py,sha256=E2MbiOYX3tjLmymqV1LBe1LhQyq2ONNVsxC5a3ZszOk,1373
|
|
4
4
|
pygpt_net/app.py,sha256=2IXjjYJ0tm-iFn3pHu3-JGoFAnN9YvmXGHPmeOhpU3Y,20999
|
|
5
5
|
pygpt_net/config.py,sha256=LCKrqQfePVNrAvH3EY_1oZx1Go754sDoyUneJ0iGWFI,16660
|
|
6
6
|
pygpt_net/container.py,sha256=NsMSHURaEC_eW8vrCNdztwqkxB7jui3yVlzUOMYvCHg,4124
|
|
@@ -41,7 +41,7 @@ pygpt_net/controller/chat/files.py,sha256=QZAi1Io57EU7htKt9M5I9OoGAFX51OH2V5-NsJ
|
|
|
41
41
|
pygpt_net/controller/chat/image.py,sha256=yPX26gsz0fLnyXR88lpVyvvHnKA-yZwfXJ4paUDYkeM,8579
|
|
42
42
|
pygpt_net/controller/chat/input.py,sha256=EPA90r6GqHIlu4JJbr0cuvKIEYSs6LVkimxrWHAyyX0,12390
|
|
43
43
|
pygpt_net/controller/chat/output.py,sha256=aSgZ8E8IaP4Jjd0ab6eXhebM_YIRPW7pRJUesYCgDQg,10864
|
|
44
|
-
pygpt_net/controller/chat/render.py,sha256
|
|
44
|
+
pygpt_net/controller/chat/render.py,sha256=-Z-beOsEvw_tS4I8kBT5Z0n9KhDlgrEQH4x1PLDvxhE,20613
|
|
45
45
|
pygpt_net/controller/chat/response.py,sha256=tacJOG_iG7IjEFiZ4iDggEVVS9mbL0e92JBC--7bnCY,12543
|
|
46
46
|
pygpt_net/controller/chat/stream.py,sha256=zmDGI_Z9Rn8IYv6vEIVBMTOGjjY0zlfmM3qJMddRGRI,21994
|
|
47
47
|
pygpt_net/controller/chat/text.py,sha256=ktluNw9ItG4g9p3OpOSmgALhFf1Gnonhl3J9kLzdTqU,10743
|
|
@@ -110,7 +110,7 @@ pygpt_net/controller/painter/painter.py,sha256=1Ekmr2a3irDkSb2wowiPXhW59rfdZOW1t
|
|
|
110
110
|
pygpt_net/controller/plugins/__init__.py,sha256=iocY37De1H2Nh7HkC7ZYvUus2xzcckslgr5a4PwtQII,511
|
|
111
111
|
pygpt_net/controller/plugins/plugins.py,sha256=jO5KcC0jsIcwF2U6eSZqicGKUr2MzC0F7zLMDiqwtE8,13849
|
|
112
112
|
pygpt_net/controller/plugins/presets.py,sha256=8EsEwpU2MjWMQu1kcY4JTcyqqN8pjBrcxA2uW2tFU_A,11674
|
|
113
|
-
pygpt_net/controller/plugins/settings.py,sha256=
|
|
113
|
+
pygpt_net/controller/plugins/settings.py,sha256=OT1MNRUKx_9E3COJKVBnNIf3ZybkI2fORgQUbRE-z4U,6063
|
|
114
114
|
pygpt_net/controller/presets/__init__.py,sha256=Bb9_aAvGxQcKCW2fvG5CAJ6ZUwNYN3GaCf3BXB9eGfI,511
|
|
115
115
|
pygpt_net/controller/presets/editor.py,sha256=-fFDkIqDwhYwAaSRuK6IayjX8RriqFoc0_LKblSOi-Q,39449
|
|
116
116
|
pygpt_net/controller/presets/experts.py,sha256=dfPKmAPO-7gaUD2ILs3lR005ir32G5vV-Sa5TGEHwOU,5820
|
|
@@ -121,7 +121,7 @@ pygpt_net/controller/settings/profile.py,sha256=Zom4qT2j71lZadB2nbJvn5Ewoek8jdf5
|
|
|
121
121
|
pygpt_net/controller/settings/settings.py,sha256=cFA4ZKjcsu8uoapWMTllUUB9DvJXVBzbxLT6InRS4zU,7768
|
|
122
122
|
pygpt_net/controller/settings/workdir.py,sha256=YEMCMR_IFIPKU4SRvMQ6JZCUQfnPGMWzVjNAARHlpCg,20031
|
|
123
123
|
pygpt_net/controller/theme/__init__.py,sha256=-HMDkTGRa7Q6_AGomkZPVyasIOgNCqeez0Ocw_z9gMc,509
|
|
124
|
-
pygpt_net/controller/theme/common.py,sha256=
|
|
124
|
+
pygpt_net/controller/theme/common.py,sha256=z5mzpMnfkTeFstKm_uodDboAa3xj5vTpMKGCZzvkX9A,7114
|
|
125
125
|
pygpt_net/controller/theme/markdown.py,sha256=iH34dsZWyXCtIZuuRBHiAV__W0P4bY-7OuzEwehizr0,6064
|
|
126
126
|
pygpt_net/controller/theme/menu.py,sha256=3EjDVatt4lYNePHwHaEr0tZGbO2MljqY5uzkYVvtH5E,5962
|
|
127
127
|
pygpt_net/controller/theme/nodes.py,sha256=cnoZKp8gRczmWgsAC5liLB53YgsArAPvOWRLmyeAn1o,5463
|
|
@@ -130,7 +130,7 @@ pygpt_net/controller/tools/__init__.py,sha256=ds63rOuwLEIe-SlY_sQkhWSdXS0lfVwseU
|
|
|
130
130
|
pygpt_net/controller/tools/tools.py,sha256=GfDcAVyAiF1CcZ8ATnSJgfCwXYOaGQ1xoxXztVvU3qc,2905
|
|
131
131
|
pygpt_net/controller/ui/__init__.py,sha256=cxfh2SYeEDATGAZpcYDqCxYfp4KReQ1CYehevSf89EU,507
|
|
132
132
|
pygpt_net/controller/ui/mode.py,sha256=RX2omKQ65efycMPiH2BwMXIz30Ud5pA8MOe7WrX592s,8119
|
|
133
|
-
pygpt_net/controller/ui/tabs.py,sha256=
|
|
133
|
+
pygpt_net/controller/ui/tabs.py,sha256=6i-g9VcigFKIyXK8aYwZvv9PRcl5n5zkz_IYAZ-1BuI,28804
|
|
134
134
|
pygpt_net/controller/ui/ui.py,sha256=FxRwPIb_PjyqIK14cSC4KpQRjdhK6nI6Zi9v0cCp19U,7254
|
|
135
135
|
pygpt_net/controller/ui/vision.py,sha256=X4AxUXbPdoWgxNUUbWTeoQuyJa_AJ3sehSSNF0mQRaM,2415
|
|
136
136
|
pygpt_net/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -290,24 +290,24 @@ pygpt_net/core/prompt/custom.py,sha256=kexQrazSm_pCmHclTkVT2YId3aNiF53kg6UCSCFZ-
|
|
|
290
290
|
pygpt_net/core/prompt/prompt.py,sha256=cEovsa_FUZfiOjC74AWDaXc1RzYdaxXXw3w9xKtVPss,7484
|
|
291
291
|
pygpt_net/core/prompt/template.py,sha256=Uygs2W-Bw53SX6gZXjYKuHlPtbFGZf41VzR8244dfc0,3329
|
|
292
292
|
pygpt_net/core/render/__init__.py,sha256=19xPDIYeoDn3Sf1tpcvXtxLaaKkjs0nDQ7-4GqTfeRk,489
|
|
293
|
-
pygpt_net/core/render/base.py,sha256=
|
|
293
|
+
pygpt_net/core/render/base.py,sha256=Lkj6_E4hnx7WT8sDOecJQcm41tg1jZ9q3VQSxtWHE5w,10197
|
|
294
294
|
pygpt_net/core/render/markdown/__init__.py,sha256=19xPDIYeoDn3Sf1tpcvXtxLaaKkjs0nDQ7-4GqTfeRk,489
|
|
295
295
|
pygpt_net/core/render/markdown/body.py,sha256=OgIshkfCqMnZ-0acCHE6A9ue6irT0cR6laE-v24TS48,7238
|
|
296
296
|
pygpt_net/core/render/markdown/helpers.py,sha256=qH0roW-XBa7fN6JYOqJrbcyXc_9ztIeQph0siVL0Jpo,2688
|
|
297
297
|
pygpt_net/core/render/markdown/parser.py,sha256=4lCC_pCWmi-SUli4nnDH-FZEbBi0SnVl0FoL0ZBuNHo,5450
|
|
298
298
|
pygpt_net/core/render/markdown/pid.py,sha256=bRAOdL8bS-LSfOKReWK3nu-BUZ2qfNchrAsrkxRKlHU,851
|
|
299
|
-
pygpt_net/core/render/markdown/renderer.py,sha256=
|
|
299
|
+
pygpt_net/core/render/markdown/renderer.py,sha256=PER4BxQUU2zjyMq-flM83_cNcjFyJrRHx2VNa7FN5-I,19488
|
|
300
300
|
pygpt_net/core/render/plain/__init__.py,sha256=19xPDIYeoDn3Sf1tpcvXtxLaaKkjs0nDQ7-4GqTfeRk,489
|
|
301
301
|
pygpt_net/core/render/plain/body.py,sha256=i2iQ8VGzh2E3r32XHPTArAQA1Lu-Xlr1tAjJyUwBZd8,4226
|
|
302
302
|
pygpt_net/core/render/plain/helpers.py,sha256=CMF84kSeuQnkgZVHmN_9YWaL5BC958tDE9ZWfZWhAzg,1630
|
|
303
303
|
pygpt_net/core/render/plain/pid.py,sha256=Pz3v1tnLj-XI_9vcaVkCf9SZ2EgVs4LYV4qzelBMoOg,1119
|
|
304
|
-
pygpt_net/core/render/plain/renderer.py,sha256=
|
|
304
|
+
pygpt_net/core/render/plain/renderer.py,sha256=Zzo4O-jo59outV3WuUUd6DNkpq0rkZPbvS-Y3HW7qWo,15781
|
|
305
305
|
pygpt_net/core/render/web/__init__.py,sha256=istp5dsn6EkLEP7lOBeDb8RjodUcWZqjcEvTroaTT-w,489
|
|
306
306
|
pygpt_net/core/render/web/body.py,sha256=rybg76GiLWowR-qEvM0Y64woSsO4KSBnww4f8BU7GgI,54872
|
|
307
307
|
pygpt_net/core/render/web/helpers.py,sha256=ivrXrCqRIUWHDmu3INu-i6XUlB2W9IOO8iYyqpbnSRU,5438
|
|
308
308
|
pygpt_net/core/render/web/parser.py,sha256=pDFc9Tf8P-jvrDilXyT1fukcQHbixHRJ9Dn9hF10Gko,12892
|
|
309
309
|
pygpt_net/core/render/web/pid.py,sha256=pXBdPb8hw_aZS2Rtz3pLBpuybpXrzoqwYAFWBal9bLE,3685
|
|
310
|
-
pygpt_net/core/render/web/renderer.py,sha256=
|
|
310
|
+
pygpt_net/core/render/web/renderer.py,sha256=slIQ4J-XcLoeCSd_EYBbXgxhzERHgwnH0U37SKpQZes,56482
|
|
311
311
|
pygpt_net/core/render/web/syntax_highlight.py,sha256=QSLGF5cJL_Xeqej7_TYwY_5C2w9enXV_cMEuaJ3C43U,2005
|
|
312
312
|
pygpt_net/core/settings/__init__.py,sha256=GQ6_gJ2jf_Chm7ZuZLvkcvEh_sfMDVMBieeoJi2iPI4,512
|
|
313
313
|
pygpt_net/core/settings/settings.py,sha256=onqwNiICm2VhHfmXLvp1MiEJ14m2jzeeI2pjUiaUwtY,7787
|
|
@@ -343,8 +343,8 @@ pygpt_net/css_rc.py,sha256=i13kX7irhbYCWZ5yJbcMmnkFp_UfS4PYnvRFSPF7XXo,11349
|
|
|
343
343
|
pygpt_net/data/audio/click_off.mp3,sha256=aNiRDP1pt-Jy7ija4YKCNFBwvGWbzU460F4pZWZDS90,65201
|
|
344
344
|
pygpt_net/data/audio/click_on.mp3,sha256=qfdsSnthAEHVXzeyN4LlC0OvXuyW8p7stb7VXtlvZ1k,65201
|
|
345
345
|
pygpt_net/data/audio/ok.mp3,sha256=LTiV32pEBkpUGBkKkcOdOFB7Eyt_QoP2Nv6c5AaXftk,32256
|
|
346
|
-
pygpt_net/data/config/config.json,sha256=
|
|
347
|
-
pygpt_net/data/config/models.json,sha256=
|
|
346
|
+
pygpt_net/data/config/config.json,sha256=4tWRTdqanNaSCrFx7ezZPnb-GEm5_78UqYuqguUwqPE,24924
|
|
347
|
+
pygpt_net/data/config/models.json,sha256=frsKP2IHdlXEdkNOV0X-DLMz3lykgFedlmCyG2agEfg,109650
|
|
348
348
|
pygpt_net/data/config/modes.json,sha256=M882iiqX_R2sNQl9cqZ3k-uneEvO9wpARtHRMLx_LHw,2265
|
|
349
349
|
pygpt_net/data/config/presets/agent_code_act.json,sha256=GYHqhxtKFLUCvRI3IJAJ7Qe1k8yD9wGGNwManldWzlI,754
|
|
350
350
|
pygpt_net/data/config/presets/agent_openai.json,sha256=bpDJgLRey_effQkzFRoOEGd4aHUrmzeODSDdNzrf62I,730
|
|
@@ -1603,14 +1603,14 @@ pygpt_net/data/js/katex/fonts/KaTeX_Typewriter-Regular.woff2,sha256=cdUX1ngneHz6
|
|
|
1603
1603
|
pygpt_net/data/js/katex/katex.min.css,sha256=lVaKnUaQNG4pI71WHffQZVALLQF4LMZEk4nOia8U9ow,23532
|
|
1604
1604
|
pygpt_net/data/js/katex/katex.min.js,sha256=KLASOtKS2x8pUxWVzCDmlWJ4jhuLb0vtrgakbD6gDDo,276757
|
|
1605
1605
|
pygpt_net/data/languages.csv,sha256=fvtER6vnTXFHQslCh-e0xCfZDQ-ijgW4GYpOJG4U7LY,8289
|
|
1606
|
-
pygpt_net/data/locale/locale.de.ini,sha256=
|
|
1607
|
-
pygpt_net/data/locale/locale.en.ini,sha256=
|
|
1608
|
-
pygpt_net/data/locale/locale.es.ini,sha256=
|
|
1609
|
-
pygpt_net/data/locale/locale.fr.ini,sha256=
|
|
1610
|
-
pygpt_net/data/locale/locale.it.ini,sha256
|
|
1611
|
-
pygpt_net/data/locale/locale.pl.ini,sha256=
|
|
1612
|
-
pygpt_net/data/locale/locale.uk.ini,sha256=
|
|
1613
|
-
pygpt_net/data/locale/locale.zh.ini,sha256=
|
|
1606
|
+
pygpt_net/data/locale/locale.de.ini,sha256=ERoIXnA8Atyzm5EOh6By1psT62ZqSYjkjVPHDasRPR8,100092
|
|
1607
|
+
pygpt_net/data/locale/locale.en.ini,sha256=0UUdtIC5S4zK9F2FfjX6AasDJ-LmBiHA4DtyBcZBn7Q,90709
|
|
1608
|
+
pygpt_net/data/locale/locale.es.ini,sha256=bImZrxHRY4yTuAlVznzQCn8mK4zB88p0Y0UUNzVOI4Y,100658
|
|
1609
|
+
pygpt_net/data/locale/locale.fr.ini,sha256=Z-1LvfecWp4ZMZf-9HqFddcoBbVxUWMKzSID86wASzk,103400
|
|
1610
|
+
pygpt_net/data/locale/locale.it.ini,sha256=-K3NkIURZ5gK1JPwjk_7GwCCH6TUqI9aUZDKoq8jL1o,98471
|
|
1611
|
+
pygpt_net/data/locale/locale.pl.ini,sha256=ZEoJJZqo0eptaoJI5tDPRq14leoYdO9LdKMDnMSqJ_Y,98152
|
|
1612
|
+
pygpt_net/data/locale/locale.uk.ini,sha256=NqaflpbTBUfOwUUPmI1_TxgTfCh6h9k3UHI4zupMPaI,136948
|
|
1613
|
+
pygpt_net/data/locale/locale.zh.ini,sha256=VuAe2oKEuHYWo0NyO8YCz11OKXunHjVUm6YaVclL3JE,87662
|
|
1614
1614
|
pygpt_net/data/locale/plugin.agent.de.ini,sha256=BY28KpfFvgfVYJzcw2o5ScWnR4uuErIYGyc3NVHlmTw,1714
|
|
1615
1615
|
pygpt_net/data/locale/plugin.agent.en.ini,sha256=HwOWCI7e8uzlIgyRWRVyr1x6Xzs8Xjv5pfEc7jfLOo4,1728
|
|
1616
1616
|
pygpt_net/data/locale/plugin.agent.es.ini,sha256=bqaJQne8HPKFVtZ8Ukzo1TSqVW41yhYbGUqW3j2x1p8,1680
|
|
@@ -2437,8 +2437,8 @@ pygpt_net/ui/widget/textarea/web.py,sha256=3XA7Ue8PtxYkVbZRaOPIGjpC5Iko37RlxfO35
|
|
|
2437
2437
|
pygpt_net/ui/widget/vision/__init__.py,sha256=8HT4tQFqQogEEpGYTv2RplKBthlsFKcl5egnv4lzzEw,488
|
|
2438
2438
|
pygpt_net/ui/widget/vision/camera.py,sha256=T8b5cmK6uhf_WSSxzPt_Qod8JgMnst6q8sQqRvgQiSA,2584
|
|
2439
2439
|
pygpt_net/utils.py,sha256=gGbw-lBTodGg_uBx6zKEwa58GaVNZN1I9zY_ZDyJ9xg,8872
|
|
2440
|
-
pygpt_net-2.6.
|
|
2441
|
-
pygpt_net-2.6.
|
|
2442
|
-
pygpt_net-2.6.
|
|
2443
|
-
pygpt_net-2.6.
|
|
2444
|
-
pygpt_net-2.6.
|
|
2440
|
+
pygpt_net-2.6.15.dist-info/LICENSE,sha256=rbPqNB_xxANH8hKayJyIcTwD4bj4Y2G-Mcm85r1OImM,1126
|
|
2441
|
+
pygpt_net-2.6.15.dist-info/METADATA,sha256=AuKInUFuLHkfobwJiW8hZPv_0N85UWvWFhH9iMI9Lhw,189906
|
|
2442
|
+
pygpt_net-2.6.15.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
|
|
2443
|
+
pygpt_net-2.6.15.dist-info/entry_points.txt,sha256=qvpII6UHIt8XfokmQWnCYQrTgty8FeJ9hJvOuUFCN-8,43
|
|
2444
|
+
pygpt_net-2.6.15.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|