pygpt-net 2.7.6__py3-none-any.whl → 2.7.7__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. pygpt_net/CHANGELOG.txt +6 -0
  2. pygpt_net/__init__.py +3 -3
  3. pygpt_net/controller/chat/remote_tools.py +3 -9
  4. pygpt_net/controller/chat/stream.py +2 -2
  5. pygpt_net/controller/chat/{handler/worker.py → stream_worker.py} +13 -35
  6. pygpt_net/core/debug/models.py +2 -2
  7. pygpt_net/data/config/config.json +14 -4
  8. pygpt_net/data/config/models.json +192 -4
  9. pygpt_net/data/config/settings.json +125 -35
  10. pygpt_net/data/locale/locale.de.ini +2 -0
  11. pygpt_net/data/locale/locale.en.ini +32 -8
  12. pygpt_net/data/locale/locale.es.ini +2 -0
  13. pygpt_net/data/locale/locale.fr.ini +2 -0
  14. pygpt_net/data/locale/locale.it.ini +2 -0
  15. pygpt_net/data/locale/locale.pl.ini +3 -1
  16. pygpt_net/data/locale/locale.uk.ini +2 -0
  17. pygpt_net/data/locale/locale.zh.ini +2 -0
  18. pygpt_net/plugin/cmd_mouse_control/worker.py +2 -1
  19. pygpt_net/plugin/cmd_mouse_control/worker_sandbox.py +2 -1
  20. pygpt_net/provider/api/anthropic/__init__.py +8 -3
  21. pygpt_net/provider/api/anthropic/chat.py +259 -11
  22. pygpt_net/provider/api/anthropic/computer.py +844 -0
  23. pygpt_net/provider/api/anthropic/remote_tools.py +172 -0
  24. pygpt_net/{controller/chat/handler/anthropic_stream.py → provider/api/anthropic/stream.py} +24 -10
  25. pygpt_net/provider/api/anthropic/tools.py +32 -77
  26. pygpt_net/provider/api/anthropic/utils.py +30 -0
  27. pygpt_net/provider/api/google/chat.py +3 -7
  28. pygpt_net/{controller/chat/handler/google_stream.py → provider/api/google/stream.py} +1 -1
  29. pygpt_net/provider/api/google/utils.py +185 -0
  30. pygpt_net/{controller/chat/handler → provider/api/langchain}/__init__.py +0 -0
  31. pygpt_net/{controller/chat/handler/langchain_stream.py → provider/api/langchain/stream.py} +1 -1
  32. pygpt_net/provider/api/llama_index/__init__.py +0 -0
  33. pygpt_net/{controller/chat/handler/llamaindex_stream.py → provider/api/llama_index/stream.py} +1 -1
  34. pygpt_net/provider/api/openai/image.py +2 -2
  35. pygpt_net/{controller/chat/handler/openai_stream.py → provider/api/openai/stream.py} +1 -1
  36. pygpt_net/provider/api/openai/utils.py +69 -3
  37. pygpt_net/provider/api/x_ai/__init__.py +109 -10
  38. pygpt_net/provider/api/x_ai/chat.py +0 -0
  39. pygpt_net/provider/api/x_ai/image.py +149 -47
  40. pygpt_net/provider/api/x_ai/{remote.py → remote_tools.py} +165 -70
  41. pygpt_net/provider/api/x_ai/responses.py +507 -0
  42. pygpt_net/{controller/chat/handler/xai_stream.py → provider/api/x_ai/stream.py} +12 -1
  43. pygpt_net/provider/api/x_ai/tools.py +59 -8
  44. pygpt_net/{controller/chat/handler → provider/api/x_ai}/utils.py +1 -2
  45. pygpt_net/provider/api/x_ai/vision.py +1 -4
  46. pygpt_net/provider/core/config/patch.py +22 -1
  47. pygpt_net/provider/core/model/patch.py +26 -1
  48. pygpt_net/tools/image_viewer/ui/dialogs.py +3 -2
  49. pygpt_net/tools/text_editor/ui/dialogs.py +3 -2
  50. pygpt_net/tools/text_editor/ui/widgets.py +0 -0
  51. pygpt_net/ui/widget/dialog/base.py +16 -5
  52. pygpt_net/ui/widget/textarea/editor.py +0 -0
  53. {pygpt_net-2.7.6.dist-info → pygpt_net-2.7.7.dist-info}/METADATA +8 -2
  54. {pygpt_net-2.7.6.dist-info → pygpt_net-2.7.7.dist-info}/RECORD +54 -48
  55. {pygpt_net-2.7.6.dist-info → pygpt_net-2.7.7.dist-info}/LICENSE +0 -0
  56. {pygpt_net-2.7.6.dist-info → pygpt_net-2.7.7.dist-info}/WHEEL +0 -0
  57. {pygpt_net-2.7.6.dist-info → pygpt_net-2.7.7.dist-info}/entry_points.txt +0 -0
@@ -6,7 +6,7 @@
6
6
  # GitHub: https://github.com/szczyglis-dev/py-gpt #
7
7
  # MIT License #
8
8
  # Created By : Marcin Szczygliński #
9
- # Updated Date: 2026.01.02 02:00:00 #
9
+ # Updated Date: 2026.01.05 20:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  import copy
@@ -238,6 +238,27 @@ class Patch:
238
238
  data["remote_store.openai.hide_threads"] = True
239
239
  updated = True
240
240
 
241
+ # < 2.7.7
242
+ if old < parse_version("2.7.7"):
243
+ print("Migrating config from < 2.7.7...")
244
+ to_add = [
245
+ "remote_tools.anthropic.code_execution",
246
+ "remote_tools.anthropic.file_search",
247
+ "remote_tools.anthropic.mcp",
248
+ "remote_tools.anthropic.mcp.tools",
249
+ "remote_tools.anthropic.mcp.mcp_servers",
250
+ "remote_tools.anthropic.web_fetch",
251
+ "remote_tools.xai.code_execution",
252
+ "remote_tools.xai.mcp",
253
+ "remote_tools.xai.mcp.args",
254
+ "remote_tools.xai.web_search",
255
+ "remote_tools.xai.x_search"
256
+ ]
257
+ for key in to_add:
258
+ if key not in data:
259
+ data[key] = cfg_get_base(key)
260
+ updated = True
261
+
241
262
  # update file
242
263
  migrated = False
243
264
  if updated:
@@ -6,7 +6,7 @@
6
6
  # GitHub: https://github.com/szczyglis-dev/py-gpt #
7
7
  # MIT License #
8
8
  # Created By : Marcin Szczygliński #
9
- # Updated Date: 2026.01.03 02:10:00 #
9
+ # Updated Date: 2026.01.04 19:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  from packaging.version import parse as parse_version, Version
@@ -116,6 +116,31 @@ class Patch:
116
116
  data[model] = base_model
117
117
  updated = True
118
118
 
119
+ # < 2.7.7 <--- add missing image input
120
+ if old < parse_version("2.7.7"):
121
+ print("Migrating models from < 2.7.7...")
122
+ models_to_add = [
123
+ "grok-4-1-fast-non-reasoning",
124
+ "grok-4-1-fast-reasoning",
125
+ "grok-4-fast-non-reasoning",
126
+ "grok-4-fast-reasoning"
127
+ ]
128
+ for model in models_to_add:
129
+ if model not in data:
130
+ base_model = from_base(model)
131
+ if base_model:
132
+ data[model] = base_model
133
+
134
+ models_to_update = [
135
+ "grok-4"
136
+ ]
137
+ for model in models_to_update:
138
+ if model in data:
139
+ m = data[model]
140
+ if not m.is_image_input():
141
+ m.input.append("image")
142
+ updated = True
143
+
119
144
  # update file
120
145
  if updated:
121
146
  # fix empty/broken data
@@ -6,7 +6,7 @@
6
6
  # GitHub: https://github.com/szczyglis-dev/py-gpt #
7
7
  # MIT License #
8
8
  # Created By : Marcin Szczygliński #
9
- # Updated Date: 2026.01.03 17:00:00 #
9
+ # Updated Date: 2026.01.05 23:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  from PySide6.QtCore import Qt, QPoint, QSize, QEvent
@@ -37,8 +37,9 @@ class DialogSpawner:
37
37
  :return: BaseDialog instance
38
38
  """
39
39
  dialog = ImageViewerDialog(self.window, self.id)
40
- dialog.disable_geometry_store = True # disable geometry store
40
+ dialog.disable_geometry_store = False
41
41
  dialog.id = id
42
+ dialog.shared_id = self.id
42
43
 
43
44
  source = ImageLabel(dialog, self.path)
44
45
  source.setVisible(False)
@@ -6,7 +6,7 @@
6
6
  # GitHub: https://github.com/szczyglis-dev/py-gpt #
7
7
  # MIT License #
8
8
  # Created By : Marcin Szczygliński #
9
- # Updated Date: 2024.03.26 15:00:00 #
9
+ # Updated Date: 2026.01.05 23:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  from PySide6.QtWidgets import QPushButton, QHBoxLayout, QVBoxLayout
@@ -63,8 +63,9 @@ class DialogSpawner:
63
63
  layout.addLayout(bottom_layout)
64
64
 
65
65
  dialog = EditorFileDialog(self.window)
66
- dialog.disable_geometry_store = True # disable geometry store
66
+ dialog.disable_geometry_store = False
67
67
  dialog.id = id
68
+ dialog.shared_id = "text-edit"
68
69
  dialog.append_layout(layout)
69
70
  dialog.setWindowTitle("Text editor")
70
71
 
File without changes
@@ -6,11 +6,11 @@
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.12.31 14:00:00 #
9
+ # Updated Date: 2026.01.05 23:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  from PySide6.QtWidgets import QApplication
13
- from PySide6.QtCore import QRect, QSize, QPoint, QEvent, Qt
13
+ from PySide6.QtCore import QSize, QPoint, QEvent, Qt
14
14
  from PySide6.QtWidgets import QDialog
15
15
 
16
16
 
@@ -25,11 +25,20 @@ class BaseDialog(QDialog):
25
25
  super(BaseDialog, self).__init__(window)
26
26
  self.window = window
27
27
  self.id = id
28
+ self.shared_id = None
28
29
  self.disable_geometry_store = False
29
30
  self.setWindowFlags(
30
31
  self.windowFlags() | Qt.WindowMaximizeButtonHint
31
32
  )
32
33
 
34
+ def _get_id(self):
35
+ """
36
+ Get dialog id
37
+
38
+ :return: dialog id
39
+ """
40
+ return self.shared_id if self.shared_id is not None else self.id
41
+
33
42
  def showEvent(self, event):
34
43
  """
35
44
  Event called when the dialog is shown
@@ -58,7 +67,7 @@ class BaseDialog(QDialog):
58
67
  if self.disable_geometry_store:
59
68
  return False
60
69
 
61
- if self.window is None or self.id is None:
70
+ if self.window is None or self._get_id() is None:
62
71
  return False
63
72
 
64
73
  config = self.window.core.config
@@ -71,6 +80,7 @@ class BaseDialog(QDialog):
71
80
  def save_geometry(self):
72
81
  """Save dialog geometry"""
73
82
  config = self.window.core.config
83
+ id = self._get_id()
74
84
  item = {
75
85
  "size": [self.size().width(), self.size().height()],
76
86
  "pos": [self.pos().x(), self.pos().y()]
@@ -81,7 +91,7 @@ class BaseDialog(QDialog):
81
91
 
82
92
  if not isinstance(data, dict):
83
93
  data = {}
84
- data[self.id] = item
94
+ data[id] = item
85
95
 
86
96
  if self.store_geometry_enabled():
87
97
  config.set_session("layout.dialog.geometry", data)
@@ -89,6 +99,7 @@ class BaseDialog(QDialog):
89
99
  def restore_geometry(self):
90
100
  """Restore dialog geometry"""
91
101
  # get available screen geometry
102
+ id = self._get_id()
92
103
  screen = QApplication.primaryScreen()
93
104
  available_geometry = screen.availableGeometry()
94
105
  config = self.window.core.config
@@ -97,7 +108,7 @@ class BaseDialog(QDialog):
97
108
  if self.store_geometry_enabled():
98
109
  data = config.get_session("layout.dialog.geometry", {})
99
110
 
100
- item = data.get(self.id, {})
111
+ item = data.get(id, {})
101
112
  if isinstance(item, dict) and "size" in item and "pos" in item:
102
113
  width, height = item["size"]
103
114
  x, y = item["pos"]
File without changes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pygpt-net
3
- Version: 2.7.6
3
+ Version: 2.7.7
4
4
  Summary: Desktop AI Assistant powered by: OpenAI GPT-5, GPT-4, o1, o3, Gemini, Claude, Grok, DeepSeek, and other models supported by Llama Index, and Ollama. Chatbot, agents, completion, image generation, vision analysis, speech-to-text, plugins, MCP, internet access, file handling, command execution and more.
5
5
  License: MIT
6
6
  Keywords: ai,api,api key,app,assistant,bielik,chat,chatbot,chatgpt,claude,dall-e,deepseek,desktop,gemini,gpt,gpt-3.5,gpt-4,gpt-4-vision,gpt-4o,gpt-5,gpt-oss,gpt3.5,gpt4,grok,langchain,llama-index,llama3,mistral,o1,o3,ollama,openai,presets,py-gpt,py_gpt,pygpt,pyside,qt,text completion,tts,ui,vision,whisper
@@ -120,7 +120,7 @@ Description-Content-Type: text/markdown
120
120
 
121
121
  [![pygpt](https://snapcraft.io/pygpt/badge.svg)](https://snapcraft.io/pygpt)
122
122
 
123
- Release: **2.7.6** | build: **2026-01-03** | Python: **>=3.10, <3.14**
123
+ Release: **2.7.7** | build: **2026-01-05** | Python: **>=3.10, <3.14**
124
124
 
125
125
  > Official website: https://pygpt.net | Documentation: https://pygpt.readthedocs.io
126
126
  >
@@ -3796,6 +3796,12 @@ may consume additional tokens that are not displayed in the main window.
3796
3796
 
3797
3797
  ## Recent changes:
3798
3798
 
3799
+ **2.7.7 (2026-01-05)**
3800
+
3801
+ - Added support for Responses API in xAI.
3802
+ - Added xAI remote tools: Remote MCP, Code Execution.
3803
+ - Added Anthropic remote tools: Remote MCP, Web Fetch, Code Execution.
3804
+
3799
3805
  **2.7.6 (2026-01-03)**
3800
3806
 
3801
3807
  - Fixed compatibility with xAI SDK and resolved empty responses from Grok models.
@@ -1,6 +1,6 @@
1
- pygpt_net/CHANGELOG.txt,sha256=tO3NFOignuPDRUTlUO9TIfMSq0a74gVo45w6DL2rzik,112643
1
+ pygpt_net/CHANGELOG.txt,sha256=ERVDm3n6D0ahVII8J5QKaEd2CmzKZMSTVbDvP3BKtRo,112831
2
2
  pygpt_net/LICENSE,sha256=dz9sfFgYahvu2NZbx4C1xCsVn9GVer2wXcMkFRBvqzY,1146
3
- pygpt_net/__init__.py,sha256=rreZPYjuIAqoM1LyOH-uvwibngKLN0cBl7jhVXuG7zY,1372
3
+ pygpt_net/__init__.py,sha256=rd5-KyVOM-XQtqyA_jzdjSai6qgZDJcw5CiuSpVjrvU,1372
4
4
  pygpt_net/app.py,sha256=m_j9ZxNzfp3KKKJxh87uYEPbRAo_L_prOUGyLlL3tJM,26197
5
5
  pygpt_net/app_core.py,sha256=nFKChQ66naIft6jGXr1HCg7povnhIfa44h_VhsadOpo,3926
6
6
  pygpt_net/config.py,sha256=3CA7xXPKQsdRie1CY8_b5-Kk1taWMciUP9CesXRQNNY,18302
@@ -38,22 +38,14 @@ pygpt_net/controller/chat/chat.py,sha256=o9z6ba9IWArvyLpIGicHsiyjfDIWs-CNzKJreo8
38
38
  pygpt_net/controller/chat/command.py,sha256=eKFQzP0tehZ3S_G7RoZVMTebQFSjPIpix3t7vDB7MWc,5291
39
39
  pygpt_net/controller/chat/common.py,sha256=7sbMLm4rDZCi3hCUE4ajrmEiAZYkUy8_WSPcxmiqKh8,19960
40
40
  pygpt_net/controller/chat/files.py,sha256=QZAi1Io57EU7htKt9M5I9OoGAFX51OH2V5-NsJktOto,2838
41
- pygpt_net/controller/chat/handler/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
42
- pygpt_net/controller/chat/handler/anthropic_stream.py,sha256=dfzZVVW0d0Vjy8mKya2pTJKO98ZHe5Oc6WDzFJBaJpI,5903
43
- pygpt_net/controller/chat/handler/google_stream.py,sha256=lKMWNwRMysdBiQSzWGtKZCtte8u3u8SUZx9c7mFocWc,20846
44
- pygpt_net/controller/chat/handler/langchain_stream.py,sha256=bEV9FT9K6vVBAVrB73sMhGcVzlt_OFAdT2HNzwxgR2I,810
45
- pygpt_net/controller/chat/handler/llamaindex_stream.py,sha256=UPx7N4TeY1XZoKJOR7NdiyitD6xW9z-MygRG20AdzVQ,1851
46
- pygpt_net/controller/chat/handler/openai_stream.py,sha256=t8l133VBgdOXUoyO4ZD3qavKQ20XxcSGYq1g__me2nc,13112
47
- pygpt_net/controller/chat/handler/utils.py,sha256=5B5fxQtLHv_WXU9clGHU_UTcKw1wd-94XL5GqeW7wOY,7235
48
- pygpt_net/controller/chat/handler/worker.py,sha256=-F4TFL6q68CoJzJvkCvQK4mQMLNyU08w_zCRnZ8-tTA,19799
49
- pygpt_net/controller/chat/handler/xai_stream.py,sha256=S1AMRd9rmSgV4lQ50srNJ3wbVACS16-I2IvsMei0E24,26081
50
41
  pygpt_net/controller/chat/image.py,sha256=hHUKmakMAov7zpk2_3zgxyHbpIODV8F6Ybw4hiED57A,10123
51
42
  pygpt_net/controller/chat/input.py,sha256=q3mZp9qU-b4NrHsGNbHituVM-5MmZZSp3f28FEtWiuk,7928
52
43
  pygpt_net/controller/chat/output.py,sha256=j0yaQUiRMGAcjRUpxTZlC7EnoBpk84ibUhmRo22E7Xk,8390
53
- pygpt_net/controller/chat/remote_tools.py,sha256=ElnBvXQ9hHKf8pfiSKdiiiSMg5wK7JJOuFiYSAOLwCc,4098
44
+ pygpt_net/controller/chat/remote_tools.py,sha256=feIv03HmzZo8evwSpaiN376svv2ZY9uT_hxUM8NzzJA,3889
54
45
  pygpt_net/controller/chat/render.py,sha256=QaYwfDEEbjhq0KQIVQx5QhY7CGjZGKi6WjK6gspA3y4,21087
55
46
  pygpt_net/controller/chat/response.py,sha256=scXg0l2Qu0IgSwrzAxInaunb9jySp-dgu0leq1FvPcI,11722
56
- pygpt_net/controller/chat/stream.py,sha256=8uIwYXwxPEwks4oMKovDXWsG3jBeq2RugdWpYkp9My4,5519
47
+ pygpt_net/controller/chat/stream.py,sha256=3JpeLGDkiNy8KoqwgfhC3p0hpZX5KoIo866LaoYLXNg,5518
48
+ pygpt_net/controller/chat/stream_worker.py,sha256=Jl1tHnJKX4zZ8FJmwk1tB0YvFkRAfLETAIWystSkzEc,19516
57
49
  pygpt_net/controller/chat/text.py,sha256=xJP9KDPQL_IfPkUGGvIY831VPwonCEg1S2kHqb0svis,8767
58
50
  pygpt_net/controller/chat/vision.py,sha256=ZvbdMPf5SzPmIfjJUH4To2UJi41MuELkGIj5mxACxdc,3361
59
51
  pygpt_net/controller/command/__init__.py,sha256=xHOjVYXKiHT-FEXNSGJZoYcU8SslQ2vr6DMqJcVPDNE,511
@@ -268,7 +260,7 @@ pygpt_net/core/debug/debug.py,sha256=aQTzqxHgf0Uq8b30FO7vA9V7Zz44ld3jAbRo2S1CQG8
268
260
  pygpt_net/core/debug/events.py,sha256=0ZlZtefxBcboGZPgP3djZ95kgpdW90YqgZlEDtIGyFQ,2095
269
261
  pygpt_net/core/debug/indexes.py,sha256=nLMf9jU63Bt-7kVydc-Xc8qqnAbfsFcuQQW2_edUgSc,3414
270
262
  pygpt_net/core/debug/kernel.py,sha256=nsC6ts1XOzESQdrkVL0DqVtGYKaNTYGlKXmxVCx5GTs,1235
271
- pygpt_net/core/debug/models.py,sha256=EZf2xZRKSsZGG4pyTY_aoQHBKgi5fGdcy1FsJTdDryI,2329
263
+ pygpt_net/core/debug/models.py,sha256=XJBYT_80KFNFRLoztDtn12WhvYXNktCwDZzPuYh5_hc,2328
272
264
  pygpt_net/core/debug/plugins.py,sha256=jKw0_uRMqxCilAzWpxtwCN2nhJCh5jjHXv53oZTUeEk,1263
273
265
  pygpt_net/core/debug/presets.py,sha256=EsWB-Vi5X01SDqLXuTSQ6qSvSA07et_dnUKVHw8wxIc,2703
274
266
  pygpt_net/core/debug/tabs.py,sha256=IDA_ORtJN1R2xg-mbe5a7PgzV_reYzrrPx-7gEhmVTg,2343
@@ -435,8 +427,8 @@ pygpt_net/css_rc.py,sha256=PX6g9z5BsD-DXISuR2oq3jHcjiKfcJ4HsgcHez6wGMc,27762
435
427
  pygpt_net/data/audio/click_off.mp3,sha256=aNiRDP1pt-Jy7ija4YKCNFBwvGWbzU460F4pZWZDS90,65201
436
428
  pygpt_net/data/audio/click_on.mp3,sha256=qfdsSnthAEHVXzeyN4LlC0OvXuyW8p7stb7VXtlvZ1k,65201
437
429
  pygpt_net/data/audio/ok.mp3,sha256=LTiV32pEBkpUGBkKkcOdOFB7Eyt_QoP2Nv6c5AaXftk,32256
438
- pygpt_net/data/config/config.json,sha256=gJgQLjTKXP7_zVtWFhR9EACwpA62b2_-fsggulEgxAU,31127
439
- pygpt_net/data/config/models.json,sha256=rHptFpz3h9a-5RkoDDu4rHJh9MEjlXoi3p6lngzWtX8,137934
430
+ pygpt_net/data/config/config.json,sha256=yMD6cGaWR2Rs9EeIJk8-S-9y_ayG5qti_KjFjR0753o,31876
431
+ pygpt_net/data/config/models.json,sha256=QSBoC9PHD91Gt-tcL7RLh5y6LYL85MiEywivhNdB_kc,143466
440
432
  pygpt_net/data/config/modes.json,sha256=IpjLOm428_vs6Ma9U-YQTNKJNtZw-qyM1lwhh73xl1w,2111
441
433
  pygpt_net/data/config/presets/agent_code_act.json,sha256=GYHqhxtKFLUCvRI3IJAJ7Qe1k8yD9wGGNwManldWzlI,754
442
434
  pygpt_net/data/config/presets/agent_openai.json,sha256=bpDJgLRey_effQkzFRoOEGd4aHUrmzeODSDdNzrf62I,730
@@ -471,7 +463,7 @@ pygpt_net/data/config/presets/current.vision.json,sha256=x1ll5B3ROSKYQA6l27PRGXU
471
463
  pygpt_net/data/config/presets/dalle_white_cat.json,sha256=esqUb43cqY8dAo7B5u99tRC0MBV5lmlrVLnJhTSkL8w,552
472
464
  pygpt_net/data/config/presets/joke_agent.json,sha256=R6n9P7KRb0s-vZWZE7kHdlOfXAx1yYrPmUw8uLyw8OE,474
473
465
  pygpt_net/data/config/presets/joke_expert.json,sha256=jjcoIYEOaEp8kLoIbecxQROiq4J3Zess5w8_HmngPOY,671
474
- pygpt_net/data/config/settings.json,sha256=j8UKXE1M6B1sCVvLsoX2JoKYazL5FCmDXeJJvYus6Ic,85499
466
+ pygpt_net/data/config/settings.json,sha256=qS-nU7ByOEwsOewpNGogp8a_jX6G8XW6rK5jeJ7vi60,88504
475
467
  pygpt_net/data/config/settings_section.json,sha256=pcfOFk0_eIRaa4nKRxhSVzDXe531YxWJgVx5rLV0J9U,1150
476
468
  pygpt_net/data/css/fix_windows.css,sha256=Mks14Vg25ncbMqZJfAMStrhvZmgHF6kU75ohTWRZeI8,664
477
469
  pygpt_net/data/css/fix_windows.dark.css,sha256=7hGbT_qI5tphYC_WlFpJRDAcmjBb0AQ2Yc-y-_Zzf2M,161
@@ -1745,14 +1737,14 @@ pygpt_net/data/js/katex/katex.min.js,sha256=KLASOtKS2x8pUxWVzCDmlWJ4jhuLb0vtrgak
1745
1737
  pygpt_net/data/js/markdown-it/markdown-it-katex.min.js,sha256=-wMst2a9i8Borapa9_hxPvpQysfFE-yph8GrBmDoA68,1670
1746
1738
  pygpt_net/data/js/markdown-it/markdown-it.min.js,sha256=OMcKHnypGrQOLZ5uYBKYUacX7Rx9Ssu91Bv5UDeRz2g,123618
1747
1739
  pygpt_net/data/languages.csv,sha256=fvtER6vnTXFHQslCh-e0xCfZDQ-ijgW4GYpOJG4U7LY,8289
1748
- pygpt_net/data/locale/locale.de.ini,sha256=PmKMxRzhmDLnInt4SkNY2f0IFIK-VDH5df-RNirObpg,113257
1749
- pygpt_net/data/locale/locale.en.ini,sha256=Zsp3UG9OdkvdPlPRnCibO28IzC9UT4ZP2QO5E5HwuNY,108073
1750
- pygpt_net/data/locale/locale.es.ini,sha256=iWa7AgQk5Gh4k_LDp7QAv39QlZvWmS1uwNA0auCg7cI,113776
1751
- pygpt_net/data/locale/locale.fr.ini,sha256=SckslQjpV-as099Bh6rszt2x6KuNoRgrdIIsyqx7vOI,116716
1752
- pygpt_net/data/locale/locale.it.ini,sha256=-_5gcCQLMoHfkgQAa8lfYhNWWyH6t7aAfsORJWKd3CU,111458
1753
- pygpt_net/data/locale/locale.pl.ini,sha256=5km7nD_jMrHZ4Y6DgNeeF4UU412gvWXPJcdIfrJ5c3M,111174
1754
- pygpt_net/data/locale/locale.uk.ini,sha256=wdmHrCM8euk8xBcgmiVOlE0-OuWes2ADQtxrRa3pFtU,155019
1755
- pygpt_net/data/locale/locale.zh.ini,sha256=wqv7eSO-surbUqEhavX52zU_-WJs_cG6XApA0T14Gsk,99457
1740
+ pygpt_net/data/locale/locale.de.ini,sha256=OrJJb6uKqwPLVITkmZ52AX1p_NrC4u7qM3W6ieakhxc,113561
1741
+ pygpt_net/data/locale/locale.en.ini,sha256=RMhdWdSN7pyNN8IXHJXPv9ckbDnIQIQhISfx2RVA5QI,109919
1742
+ pygpt_net/data/locale/locale.es.ini,sha256=yKr3ocYlGt5nMed6_3iIOsLFZLhTP2bsux43pzHIWkg,114059
1743
+ pygpt_net/data/locale/locale.fr.ini,sha256=eSZOayaFFZFWf9ryR-g3g-4Qk2WrbHwfMLr4B4zEZCU,116994
1744
+ pygpt_net/data/locale/locale.it.ini,sha256=X2Ec5RA3SLGnNEILy0hB7UXcryWrxQBiQEKfd4jq4WM,111741
1745
+ pygpt_net/data/locale/locale.pl.ini,sha256=w9ZJ0Whl75hbM4ygG5SJt6Ch5icx537VVPywLA_gB3E,111437
1746
+ pygpt_net/data/locale/locale.uk.ini,sha256=UIuXv5JV2Qrmbc9KE2hN684ayzYob7K1ZBInqkoaEXY,155432
1747
+ pygpt_net/data/locale/locale.zh.ini,sha256=s1Kwa8n-g_QshDDcI_W-sETDCsbvFxgqZnXNYMJLGKo,99657
1756
1748
  pygpt_net/data/locale/plugin.agent.de.ini,sha256=BY28KpfFvgfVYJzcw2o5ScWnR4uuErIYGyc3NVHlmTw,1714
1757
1749
  pygpt_net/data/locale/plugin.agent.en.ini,sha256=HwOWCI7e8uzlIgyRWRVyr1x6Xzs8Xjv5pfEc7jfLOo4,1728
1758
1750
  pygpt_net/data/locale/plugin.agent.es.ini,sha256=bqaJQne8HPKFVtZ8Ukzo1TSqVW41yhYbGUqW3j2x1p8,1680
@@ -2028,8 +2020,8 @@ pygpt_net/plugin/cmd_history/worker.py,sha256=MrGSwFHqqjBC-UeJo2gP8nVyGJFJxRkhUq
2028
2020
  pygpt_net/plugin/cmd_mouse_control/__init__.py,sha256=0JTjrVoiNztoH9ReDkmUTMBgPfbSEdnSNrXGHXeM6Hw,510
2029
2021
  pygpt_net/plugin/cmd_mouse_control/config.py,sha256=QFZVH0rwQjVjVTbra2ACb4xieWrho3ycBiM7GdEbBD0,31643
2030
2022
  pygpt_net/plugin/cmd_mouse_control/plugin.py,sha256=foKQDpUFJcfFKrruHyakDqX0oolwepeYUq5f22jD5Gs,25320
2031
- pygpt_net/plugin/cmd_mouse_control/worker.py,sha256=xb71Zm43_nSN0UIDVpMI56ETuGoRaKgIlOFqhk-rn5I,37091
2032
- pygpt_net/plugin/cmd_mouse_control/worker_sandbox.py,sha256=5xmyvoq1KX9Mk6U7EIAzU2mRrocS18V_W7nYTONfh_4,27980
2023
+ pygpt_net/plugin/cmd_mouse_control/worker.py,sha256=5XpWCpNZtWxM5j-ZYK5YUDVoqHGUfORhUD1X197wZGY,37124
2024
+ pygpt_net/plugin/cmd_mouse_control/worker_sandbox.py,sha256=2yBANpRTtaImfMLP4kFJ21Y6R5RZy3ZikA3ayL-Ogsc,28013
2033
2025
  pygpt_net/plugin/cmd_serial/__init__.py,sha256=qIXiIKpGz5-DvKXXKouwLowJkNqfdOgoJUKxweBhUMQ,510
2034
2026
  pygpt_net/plugin/cmd_serial/config.py,sha256=oXtnKRL42yadG7fUoCAwpvdgWAU-lOjeryHKnRyaWE4,3261
2035
2027
  pygpt_net/plugin/cmd_serial/plugin.py,sha256=42qeqL-3FSCXFVeA-qF3fEQIQoKKkVgTM-h3LR6mWRA,2945
@@ -2167,15 +2159,19 @@ pygpt_net/provider/agents/openai/evolve.py,sha256=0wYOc1zNFL5wxzetZ5redMHR_vqY78
2167
2159
  pygpt_net/provider/agents/openai/flow_from_schema.py,sha256=Ih8HMsjGBVLqQ0khLHR_VHkEs56hKfab0cfYc03MYDE,3986
2168
2160
  pygpt_net/provider/agents/openai/supervisor.py,sha256=9l8GAteHho9Jy8V3A-scQ4G9xzAit5EM9uqJ01EBTgg,23414
2169
2161
  pygpt_net/provider/api/__init__.py,sha256=Daaev4XktvnciogLCfXcuokzrBUrbeoeRfU7usY5Svw,933
2170
- pygpt_net/provider/api/anthropic/__init__.py,sha256=uVHEOQcNWO9bBKno2zTjRF3_jXncRR1-O5hu9_nfHwg,7614
2162
+ pygpt_net/provider/api/anthropic/__init__.py,sha256=pFEJwLTObYJOxKKwAUhCy9CsDO8HmtOU8ilQADfN-To,7818
2171
2163
  pygpt_net/provider/api/anthropic/audio.py,sha256=AUfcTW2ysT9YSNyz7aNQGuXbdNnX9H-PHTStiIe46-o,1087
2172
- pygpt_net/provider/api/anthropic/chat.py,sha256=E13TzVCd1F-WqqzFWz8zEMh935VgIcnE290rLfHK0XM,12395
2164
+ pygpt_net/provider/api/anthropic/chat.py,sha256=R_ldw4vxxotJzM_46rCEewZ565pZ6njESzUGb3oawtg,22508
2165
+ pygpt_net/provider/api/anthropic/computer.py,sha256=0GB-PNkYXHVcwt5BquSEccbAsX_D6Ev38GpoyD7H5eg,34339
2173
2166
  pygpt_net/provider/api/anthropic/image.py,sha256=BrWrGsz_f2bAG8f5s25YdwtV6HJKLB6Tk2xhtD85RMc,935
2174
- pygpt_net/provider/api/anthropic/tools.py,sha256=eLnxTsH_tgrcDBsAD4--j8Tbn2e1863VogFMzKqedNY,10098
2167
+ pygpt_net/provider/api/anthropic/remote_tools.py,sha256=raX2xQPmF2kfvs89_aCjBVJwcWLdP9fntbSlNCsMKiU,7802
2168
+ pygpt_net/provider/api/anthropic/stream.py,sha256=pBhzNzkuE6Rupo2FlXvMjxzueaLwSTvY9IcmkQiMGZg,6661
2169
+ pygpt_net/provider/api/anthropic/tools.py,sha256=gVlRcuzUXuekDoGtLuEWfFm1geqrsF2L9iwVFl9ALsg,7993
2170
+ pygpt_net/provider/api/anthropic/utils.py,sha256=GYwbW-2xT997ULJPuuVrQwH9E2cD7rarWMxBDnBRi-Y,868
2175
2171
  pygpt_net/provider/api/anthropic/vision.py,sha256=amP0FNHrJM-iSVO4j0AkVDYo1JFdmg0e5IqTuaEqeCM,4377
2176
2172
  pygpt_net/provider/api/google/__init__.py,sha256=ureMgX863YoMWZjnEgl7xBE7UCH8Yos-UzZUOUix2xw,11596
2177
2173
  pygpt_net/provider/api/google/audio.py,sha256=Ymq_Q3WofC-8TfYOGu5NmNuRW_omvl8UCS3Q0WEBxnA,4149
2178
- pygpt_net/provider/api/google/chat.py,sha256=Q8UBKUAYs7IFPwhUW0ZYCPs5vJN_GZ8l-joZeOeeVWQ,40354
2174
+ pygpt_net/provider/api/google/chat.py,sha256=ZIvaAWeIuJc25EM-RvWZWhiOaD7THN2fS0keEqiwiNM,40228
2179
2175
  pygpt_net/provider/api/google/computer.py,sha256=4MHyoZQv1E_YsUYnQVILOeXlvroO8FOIpExyKEBDi58,7432
2180
2176
  pygpt_net/provider/api/google/image.py,sha256=jyZrRkre33Mcm_tLnq32VLu9ytXzx5Wvsy6mO4hKA3o,36464
2181
2177
  pygpt_net/provider/api/google/music.py,sha256=pxLn-7ATTMvX5loCTX_H6Uq69pcTo4Df8sn69YyzelQ,14394
@@ -2184,11 +2180,17 @@ pygpt_net/provider/api/google/realtime/client.py,sha256=w3aYhj4PSXBX-eIginaofWTR
2184
2180
  pygpt_net/provider/api/google/realtime/realtime.py,sha256=daLxuFVadN7gVtci9JCjS6IDKHf5fumdUKe81RxJzvg,7373
2185
2181
  pygpt_net/provider/api/google/remote_tools.py,sha256=4_yst06f2axETDKbE0RuGIeXslI39KN4obyjgU2FpNQ,3906
2186
2182
  pygpt_net/provider/api/google/store.py,sha256=dJYQTDhbPueQ3DFcpKUc2hRa2cRvyaK-_kPFjQ8SBS0,17858
2183
+ pygpt_net/provider/api/google/stream.py,sha256=I61BFjdAnVy7RGaPKgg7j6g1xgT_UbKHe21Xc28OETU,20846
2187
2184
  pygpt_net/provider/api/google/tools.py,sha256=YtrnkTQb8NrKpB6MfdYEqq_6Vhz-250eJNDKRhtmD_k,8856
2185
+ pygpt_net/provider/api/google/utils.py,sha256=DCw8FIh4sg05piPLpKbD9rxzeY5_f8_gUWtxALMNpYY,6307
2188
2186
  pygpt_net/provider/api/google/video.py,sha256=4hfIifTKg1LWGxWslOXITqh9xnGPVGQGTfUWIEeuY2g,22327
2189
2187
  pygpt_net/provider/api/google/vision.py,sha256=yWeA86v5FPvhm5rYiNZJ3cR9KdzYQp_AdGd1tyldphc,4026
2190
2188
  pygpt_net/provider/api/google/worker/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2191
2189
  pygpt_net/provider/api/google/worker/importer.py,sha256=tqDrhFaW6MiwxtODyyWeWWkv9xj6YCDb9btzy9H7D0w,14861
2190
+ pygpt_net/provider/api/langchain/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2191
+ pygpt_net/provider/api/langchain/stream.py,sha256=DUHM65CYFm209NFjPmU0K0K0hVbKAgn3UFfUj6peWQ0,810
2192
+ pygpt_net/provider/api/llama_index/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2193
+ pygpt_net/provider/api/llama_index/stream.py,sha256=NaVt2IEHloPLt3-6gZFNscPuh794pIvAf3H5-Ns_8r0,1851
2192
2194
  pygpt_net/provider/api/openai/__init__.py,sha256=gcnFy4OAKnaSMtv3jQJpyiLlplaUP0Ap-qd21fP2PTQ,12554
2193
2195
  pygpt_net/provider/api/openai/agents/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2194
2196
  pygpt_net/provider/api/openai/agents/client.py,sha256=opH2DnYPVRuWvc284AMjJBWUhipV8hdWcs3yqWA2g7s,2372
@@ -2203,28 +2205,32 @@ pygpt_net/provider/api/openai/chat.py,sha256=DzsEISEW-XkDz4ey9PRkElMwZ0iOKPSJyO5
2203
2205
  pygpt_net/provider/api/openai/completion.py,sha256=9nWYcwvqwu16Qg1mWhWLAEzMTj-5ff40WN_O94b8T2o,6231
2204
2206
  pygpt_net/provider/api/openai/computer.py,sha256=DVkSBMdmYnxrDqhrh4YJndYBoQ_EDAMNojXtri4rhkU,12307
2205
2207
  pygpt_net/provider/api/openai/container.py,sha256=jWsFkgofa5SKjztQnJZdfhryX-dYAceijv9F3iQkbl0,4922
2206
- pygpt_net/provider/api/openai/image.py,sha256=3TVwVorBnVGT6S83Al0piPw0sywTWAG9MZfnyUaugH0,16716
2208
+ pygpt_net/provider/api/openai/image.py,sha256=Bqaz9aJiSIsV8ZdJJ4nTjjJSCzPLDMhL9cpK4a7-RhU,16751
2207
2209
  pygpt_net/provider/api/openai/realtime/__init__.py,sha256=Ism0i9dihgxYuzQHgA6vzmsswZnBOAvVqQp0j5G2JLQ,519
2208
2210
  pygpt_net/provider/api/openai/realtime/client.py,sha256=4_Evnlb0vobuNbJwNEej1oL9cAhlnfV02tbons7JQSY,76208
2209
2211
  pygpt_net/provider/api/openai/realtime/realtime.py,sha256=tStZJwBHhzyp3yejLsr58LtNwATqpCgyCtvDM5ZqTSA,7424
2210
2212
  pygpt_net/provider/api/openai/remote_tools.py,sha256=B_-o_lnljvGUJyu9jqV2k0mQdW-evNrYa4EOGDYzKbA,5935
2211
2213
  pygpt_net/provider/api/openai/responses.py,sha256=omtMvXmpYqqtnwThkXuAv-TtvWK9ycHRx7gthHQJJd8,29801
2212
2214
  pygpt_net/provider/api/openai/store.py,sha256=TsMMkadSL-f3oQQqu7l-5c25kaImXejo8NsTAgkEbSQ,18697
2215
+ pygpt_net/provider/api/openai/stream.py,sha256=7qcn-EupQuFBuiuoPeRGn3f2wbeIoYS-UIakqN926ZM,13112
2213
2216
  pygpt_net/provider/api/openai/summarizer.py,sha256=vuJz6mj9F9Psiat0d-fn1zNGgXc-WkXJyi0jrvijO6E,2978
2214
2217
  pygpt_net/provider/api/openai/tools.py,sha256=Oh9mnGIXfnwoRTx6f-9ZItD-v3loyr4OtcvhmgroyrY,3146
2215
- pygpt_net/provider/api/openai/utils.py,sha256=O0H0EPb4lXUMfE1bFdWB56yuWLv7M5owVIGWRyDDv-E,855
2218
+ pygpt_net/provider/api/openai/utils.py,sha256=ovubqixt_FX7ysmF86h7c7l7EdGJ8JHE8CbvkXU48MY,2851
2216
2219
  pygpt_net/provider/api/openai/video.py,sha256=695vbzkSJQXD3yPb4telt1IEnNFW02NdYPVMEqVFVmA,25743
2217
2220
  pygpt_net/provider/api/openai/vision.py,sha256=dsG-pAr1MP-A1aQLc3Yn2QzPNwMlPGQEi4LM1ry3YY4,12883
2218
2221
  pygpt_net/provider/api/openai/worker/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2219
2222
  pygpt_net/provider/api/openai/worker/assistants.py,sha256=z1fZzl59FYMVXxv48r9JVIzSCFgLzYOeKXhreZcIzO8,21538
2220
2223
  pygpt_net/provider/api/openai/worker/importer.py,sha256=e019pxV4zH3dzAkLJxDb7bIkTifi-6blK0FQSOfSkQY,16562
2221
- pygpt_net/provider/api/x_ai/__init__.py,sha256=RnF2kIicU0RNhmr-RhSzR6t2zaj2wnO27b4aPSGnmNI,8231
2224
+ pygpt_net/provider/api/x_ai/__init__.py,sha256=vEE_o2L5G_A6_-DUPA5Dk7AtxDe9zoE24-Xx6f7J600,11849
2222
2225
  pygpt_net/provider/api/x_ai/audio.py,sha256=6ePxjNqokUPmiuh0utC8udgFU9Jha5ScBJ6TKcIDZR8,1065
2223
2226
  pygpt_net/provider/api/x_ai/chat.py,sha256=Q-GIA-mfCFhLA0Fcpy88eXJ0i1citA4Q-_NxkDR4-Dc,46786
2224
- pygpt_net/provider/api/x_ai/image.py,sha256=nZiAGvRFQcrqXibZxWFGTVFFO_aI2QxMKkey4vPWW9w,8973
2225
- pygpt_net/provider/api/x_ai/remote.py,sha256=Ols0_XABst0FcIv4bkwe9Wkd1Gihbh4uqb33kWf_B4o,10482
2226
- pygpt_net/provider/api/x_ai/tools.py,sha256=JpmAwHiru_DJ9hETkKmq1aePdDLSLH2B4FH1VqfaAF4,4299
2227
- pygpt_net/provider/api/x_ai/vision.py,sha256=Unqsdb9rIzwSoq4icMNET7XG17QQUC32rTNhA9lLh18,3819
2227
+ pygpt_net/provider/api/x_ai/image.py,sha256=cE6ZH8NCYIIYHp1F8joWdsROSeaqLDxrUfGGQWCUDBk,12797
2228
+ pygpt_net/provider/api/x_ai/remote_tools.py,sha256=g5eifO5XIljYvIbxemprmI3gGI1HUiYLJdD5ycWSYfU,13763
2229
+ pygpt_net/provider/api/x_ai/responses.py,sha256=n_fT_Rgs4q3Ka5jpc17e03DZrfh8r4mRY78A1SYR44o,18986
2230
+ pygpt_net/provider/api/x_ai/stream.py,sha256=xQK9sM51dXx-SGVjf0UfoEt_zXcCDsKzGm-Yxp0oy3Q,26558
2231
+ pygpt_net/provider/api/x_ai/tools.py,sha256=svTvjdon_j1cKKWpaHHNH9wZbdzXGmmoFj9lgsZymtk,6016
2232
+ pygpt_net/provider/api/x_ai/utils.py,sha256=9qayMXp0SUNiQ1yxKoJ9UY4LLm2JFRxFv2GPCjQ-5JQ,7221
2233
+ pygpt_net/provider/api/x_ai/vision.py,sha256=Y7_wkMp9XFev2uQwBX--SqUsw9yqWqf7Ns8Y2pOOhhg,3656
2228
2234
  pygpt_net/provider/audio_input/__init__.py,sha256=lOkgAiuNUqkAl_QrIG3ZsUznIZeJYtokgzEnDB8gRic,488
2229
2235
  pygpt_net/provider/audio_input/base.py,sha256=2PxE9QeEd4fODLYx_sO-1iVdAFOxHVHjtse7-GIqix8,1826
2230
2236
  pygpt_net/provider/audio_input/bing_speech_recognition.py,sha256=Rmpo7yaU8pU7r8KaH57U8Lc-NVE9EpF5wToL_qpMKhw,2825
@@ -2259,7 +2265,7 @@ pygpt_net/provider/core/calendar/db_sqlite/storage.py,sha256=QDclQCQdr4QyRIqjgGX
2259
2265
  pygpt_net/provider/core/config/__init__.py,sha256=jQQgG9u_ZLsZWXustoc1uvC-abUvj4RBKPAM30-f2Kc,488
2260
2266
  pygpt_net/provider/core/config/base.py,sha256=cbvzbMNqL2XgC-36gGubnU37t94AX7LEw0lecb2Nm80,1365
2261
2267
  pygpt_net/provider/core/config/json_file.py,sha256=GCcpCRQnBiSLWwlGbG9T3ZgiHkTfp5Jsg2KYkZcakBw,6789
2262
- pygpt_net/provider/core/config/patch.py,sha256=ZtBLeDltE5uibbAuyoOjfNV_mO4u3jCDTq4eZ_fi9YQ,10262
2268
+ pygpt_net/provider/core/config/patch.py,sha256=CPrguQMWY7-rNuMrLIQtjFWCz4pX1olEhKD0GFKr87M,11183
2263
2269
  pygpt_net/provider/core/config/patches/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2264
2270
  pygpt_net/provider/core/config/patches/patch_before_2_6_42.py,sha256=MzWclHzLoXOthuRup2n3xsuRFkVHFp37v5bfDmJOgnw,126816
2265
2271
  pygpt_net/provider/core/ctx/__init__.py,sha256=jQQgG9u_ZLsZWXustoc1uvC-abUvj4RBKPAM30-f2Kc,488
@@ -2290,7 +2296,7 @@ pygpt_net/provider/core/mode/patch.py,sha256=VS2KCYW05jxLd-lcStNY1k4fHKUUrVVLTdR
2290
2296
  pygpt_net/provider/core/model/__init__.py,sha256=jQQgG9u_ZLsZWXustoc1uvC-abUvj4RBKPAM30-f2Kc,488
2291
2297
  pygpt_net/provider/core/model/base.py,sha256=L1x2rHha8a8hnCUYxZr88utay1EWEx5qBXW_2acpAN0,1319
2292
2298
  pygpt_net/provider/core/model/json_file.py,sha256=l74l_n5PEHNp-FsoHtO9LHflz3RFKwDwKwOKN0stgZw,8418
2293
- pygpt_net/provider/core/model/patch.py,sha256=DhjB3DwGLaPL8LPeKlhtzZ9UkBowQDYq6yiPF55Mzc0,4958
2299
+ pygpt_net/provider/core/model/patch.py,sha256=CnAITr6X4WKhfUcxFJ0yDAto4zNTLyUt63CHzjnAU0M,5933
2294
2300
  pygpt_net/provider/core/model/patches/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2295
2301
  pygpt_net/provider/core/model/patches/patch_before_2_6_42.py,sha256=4z10uc4NnmCCL9AYWrXfzi1Xet5OZFjc7K-Nf0s4T1s,37729
2296
2302
  pygpt_net/provider/core/notepad/__init__.py,sha256=jQQgG9u_ZLsZWXustoc1uvC-abUvj4RBKPAM30-f2Kc,488
@@ -2459,7 +2465,7 @@ pygpt_net/tools/html_canvas/ui/widgets.py,sha256=IdrxVSs-FR4K1dEO8kJDIO0puyMHEF3
2459
2465
  pygpt_net/tools/image_viewer/__init__.py,sha256=BQLr8Kg670xPAyv_qoRA_EjWq5WZclqoc4OpTk5V11k,508
2460
2466
  pygpt_net/tools/image_viewer/tool.py,sha256=yorykUAYTpoU8i1Dcr45YuUcOyhy0clS-6rZ9zYLN98,9664
2461
2467
  pygpt_net/tools/image_viewer/ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2462
- pygpt_net/tools/image_viewer/ui/dialogs.py,sha256=dKWNDYN7fIBc6u8jDDe9unUHW5fvuzp-aJD-ZioiJC8,16517
2468
+ pygpt_net/tools/image_viewer/ui/dialogs.py,sha256=MOE_FjB0e-cExhNzCR8s0sqvLvWzN0T2oL8NMKupL_8,16527
2463
2469
  pygpt_net/tools/indexer/__init__.py,sha256=0rE5HM0os0k0_LpMdGt7sozEQfckN7qm_b3KEwMb1wc,508
2464
2470
  pygpt_net/tools/indexer/tool.py,sha256=VZF1ZB7qbqnd_o5dv9AHmAD4CzsaesLrBEyryOakcGU,17277
2465
2471
  pygpt_net/tools/indexer/ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -2477,7 +2483,7 @@ pygpt_net/tools/media_player/ui/widgets.py,sha256=DFEUwrQpxc_cw2k9Tpj_kz0ESZgjhA
2477
2483
  pygpt_net/tools/text_editor/__init__.py,sha256=BQLr8Kg670xPAyv_qoRA_EjWq5WZclqoc4OpTk5V11k,508
2478
2484
  pygpt_net/tools/text_editor/tool.py,sha256=scxA2GR3IIt6f_l9ryfKVu-lyfgge_OWW6VyaFap-LY,8814
2479
2485
  pygpt_net/tools/text_editor/ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2480
- pygpt_net/tools/text_editor/ui/dialogs.py,sha256=0nJjDsw9lzP7K5JLA1Fp4mzTSj8M7k5TZ0Wn_rIL85M,2918
2486
+ pygpt_net/tools/text_editor/ui/dialogs.py,sha256=6lWAYenPAC9tP3Nu0U2f3UACRHS8pd_VfKAj1sjRAwg,2932
2481
2487
  pygpt_net/tools/text_editor/ui/widgets.py,sha256=YB-0QUyH4O6Zj2OLqK6pFcXvEnW3TlvoQu7lHmZf99I,2930
2482
2488
  pygpt_net/tools/translator/__init__.py,sha256=R4-y_danRZamZRwXctX1b0tI9oz4qM_xcVthXNyYjcU,508
2483
2489
  pygpt_net/tools/translator/tool.py,sha256=hm3dEfQJRo8u45gyRXyIOp92khQuBJ6hnqIxO92meDU,14537
@@ -2588,7 +2594,7 @@ pygpt_net/ui/widget/dialog/__init__.py,sha256=8HT4tQFqQogEEpGYTv2RplKBthlsFKcl5e
2588
2594
  pygpt_net/ui/widget/dialog/alert.py,sha256=6EYiiac1kuuWq3hcnm1DjVPRFdSYWaEe0gJ5LOsiEzg,1429
2589
2595
  pygpt_net/ui/widget/dialog/applog.py,sha256=T9ZHk__9Bm0HGJLZtps4NecNbpapu7R9TIkzxOfTPCs,1502
2590
2596
  pygpt_net/ui/widget/dialog/audio.py,sha256=CgKi1wGw9xVZsHua3HelrXdOgQ_G-CypR_JLznzh6rw,551
2591
- pygpt_net/ui/widget/dialog/base.py,sha256=w-DGYvjXBgIM6eZ8fuzcCQMxmaF_SX2PeQIw1MZLOd0,3661
2597
+ pygpt_net/ui/widget/dialog/base.py,sha256=k7iPhMamSyk6H36bbZ8bJl6njIXRfjxLI9UO7vGn61A,3908
2592
2598
  pygpt_net/ui/widget/dialog/confirm.py,sha256=vnDvlhiipr9w6W-mq6Cro83GvZoMHk3LTfHJTn6wznk,4534
2593
2599
  pygpt_net/ui/widget/dialog/create.py,sha256=BaTn9SVL4QiGk6JCcsArVLQOOsmrdfkdExm_T5rHJe8,2191
2594
2600
  pygpt_net/ui/widget/dialog/db.py,sha256=arTJ27_znjUXnu6EKji1NBjOgq6WUEAT4SnSjDahyV0,1585
@@ -2697,8 +2703,8 @@ pygpt_net/ui/widget/textarea/web.py,sha256=kt1HvnaoiHL0SMnS3rCEolHoJtADAcw5EhUTI
2697
2703
  pygpt_net/ui/widget/vision/__init__.py,sha256=8HT4tQFqQogEEpGYTv2RplKBthlsFKcl5egnv4lzzEw,488
2698
2704
  pygpt_net/ui/widget/vision/camera.py,sha256=DCx7h1nHruuUkU0Tw8Ay4OUVoNJhkuLsW4hIvGF5Skw,6985
2699
2705
  pygpt_net/utils.py,sha256=r-Dum4brfBaZaHJr-ux86FfdMuMHFwyuUL2bEFirdhc,14649
2700
- pygpt_net-2.7.6.dist-info/LICENSE,sha256=rbPqNB_xxANH8hKayJyIcTwD4bj4Y2G-Mcm85r1OImM,1126
2701
- pygpt_net-2.7.6.dist-info/METADATA,sha256=Wq7FUURHfE4MLLJDXdrtpDJE5Em6eRanmcEFjA1WBnY,173278
2702
- pygpt_net-2.7.6.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
2703
- pygpt_net-2.7.6.dist-info/entry_points.txt,sha256=qvpII6UHIt8XfokmQWnCYQrTgty8FeJ9hJvOuUFCN-8,43
2704
- pygpt_net-2.7.6.dist-info/RECORD,,
2706
+ pygpt_net-2.7.7.dist-info/LICENSE,sha256=rbPqNB_xxANH8hKayJyIcTwD4bj4Y2G-Mcm85r1OImM,1126
2707
+ pygpt_net-2.7.7.dist-info/METADATA,sha256=5QYpuCmeXxdzZ1S61CI8RLGzM-n43KlgvrXEEeTAouk,173470
2708
+ pygpt_net-2.7.7.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
2709
+ pygpt_net-2.7.7.dist-info/entry_points.txt,sha256=qvpII6UHIt8XfokmQWnCYQrTgty8FeJ9hJvOuUFCN-8,43
2710
+ pygpt_net-2.7.7.dist-info/RECORD,,