pygpt-net 2.7.1__py3-none-any.whl → 2.7.3__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 (35) hide show
  1. pygpt_net/CHANGELOG.txt +10 -0
  2. pygpt_net/__init__.py +3 -3
  3. pygpt_net/controller/chat/image.py +26 -3
  4. pygpt_net/controller/media/media.py +70 -1
  5. pygpt_net/core/platforms/platforms.py +14 -1
  6. pygpt_net/core/updater/updater.py +24 -12
  7. pygpt_net/data/config/config.json +5 -3
  8. pygpt_net/data/config/models.json +3 -3
  9. pygpt_net/data/css/style.dark.css +1 -1
  10. pygpt_net/data/css/style.light.css +1 -1
  11. pygpt_net/data/locale/locale.de.ini +4 -0
  12. pygpt_net/data/locale/locale.en.ini +4 -0
  13. pygpt_net/data/locale/locale.es.ini +4 -0
  14. pygpt_net/data/locale/locale.fr.ini +4 -0
  15. pygpt_net/data/locale/locale.it.ini +4 -0
  16. pygpt_net/data/locale/locale.pl.ini +5 -1
  17. pygpt_net/data/locale/locale.uk.ini +4 -0
  18. pygpt_net/data/locale/locale.zh.ini +4 -0
  19. pygpt_net/provider/api/google/image.py +246 -7
  20. pygpt_net/provider/api/google/video.py +152 -1
  21. pygpt_net/provider/api/openai/image.py +163 -78
  22. pygpt_net/provider/api/openai/video.py +73 -23
  23. pygpt_net/provider/core/config/patch.py +18 -1
  24. pygpt_net/ui/layout/chat/painter.py +0 -0
  25. pygpt_net/ui/layout/toolbox/image.py +20 -10
  26. pygpt_net/ui/layout/toolbox/raw.py +2 -2
  27. pygpt_net/ui/layout/toolbox/video.py +21 -9
  28. pygpt_net/ui/main.py +1 -0
  29. pygpt_net/ui/widget/dialog/update.py +18 -7
  30. pygpt_net/ui/widget/option/combo.py +2 -0
  31. {pygpt_net-2.7.1.dist-info → pygpt_net-2.7.3.dist-info}/METADATA +46 -15
  32. {pygpt_net-2.7.1.dist-info → pygpt_net-2.7.3.dist-info}/RECORD +34 -34
  33. {pygpt_net-2.7.1.dist-info → pygpt_net-2.7.3.dist-info}/LICENSE +0 -0
  34. {pygpt_net-2.7.1.dist-info → pygpt_net-2.7.3.dist-info}/WHEEL +0 -0
  35. {pygpt_net-2.7.1.dist-info → pygpt_net-2.7.3.dist-info}/entry_points.txt +0 -0
pygpt_net/ui/main.py CHANGED
@@ -46,6 +46,7 @@ class MainWindow(QMainWindow, QtStyleTools):
46
46
  :param args: launcher arguments
47
47
  """
48
48
  super().__init__()
49
+ self.setWindowFlags(self.windowFlags() | Qt.WindowMinMaxButtonsHint | Qt.WindowMaximizeButtonHint)
49
50
  self.app = app
50
51
  self.args = args
51
52
  self.timer = None
@@ -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: 2025.08.03 14:00:00 #
9
+ # Updated Date: 2025.12.29 21:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  import os
@@ -32,8 +32,11 @@ class UpdateDialog(BaseDialog):
32
32
  self.window = window
33
33
  self.setParent(window)
34
34
  self.setWindowTitle(trans('update.title'))
35
+
36
+ version = self.window.meta['version']
35
37
  self.cmd_pip = "pip install --upgrade pygpt-net"
36
38
  self.cmd_snap = "sudo snap refresh pygpt"
39
+ self.cmd_appimage = f"appimageupdatetool ./PyGPT-{version}-x86_64.AppImage"
37
40
 
38
41
  # www
39
42
  self.www = QPushButton(trans('update.download'))
@@ -133,8 +136,9 @@ class UpdateDialog(BaseDialog):
133
136
  version: str,
134
137
  build: str,
135
138
  changelog: str,
136
- download_windows: str,
137
- download_linux: str
139
+ download_windows: str = "",
140
+ download_linux: str = "",
141
+ download_appimage: str = ""
138
142
  ):
139
143
  """
140
144
  Set update data
@@ -145,6 +149,7 @@ class UpdateDialog(BaseDialog):
145
149
  :param changelog: changelog
146
150
  :param download_windows: download link for windows
147
151
  :param download_linux: download link for linux
152
+ :param download_appimage: download link for appimage
148
153
  """
149
154
  # prepare data
150
155
  info = trans("update.info")
@@ -179,8 +184,8 @@ class UpdateDialog(BaseDialog):
179
184
  if self.window.core.platforms.is_snap(): # snap
180
185
  self.cmd.setText(self.cmd_snap)
181
186
  self.cmd.setVisible(True)
182
- elif self.window.core.config.is_compiled(): # compiled
183
- if self.window.core.platforms.is_windows():
187
+ elif self.window.core.config.is_compiled(): # compiled versions
188
+ if self.window.core.platforms.is_windows(): # Windows
184
189
  self.download_link = download_windows
185
190
  self.download_file.setText("{} .msi ({})".format(trans("action.download"), version))
186
191
  if is_store:
@@ -191,11 +196,17 @@ class UpdateDialog(BaseDialog):
191
196
  self.download_file.setVisible(True)
192
197
  self.info_upgrade.setVisible(True)
193
198
  self.www.setVisible(False)
194
- elif self.window.core.platforms.is_linux():
199
+ elif self.window.core.platforms.is_linux(): # Linux
195
200
  self.download_link = download_linux
196
201
  self.download_file.setText("{} .tar.gz ({})".format(trans("action.download"), version))
197
202
  self.download_file.setVisible(True)
198
- else: # pip
203
+ elif self.window.core.platforms.is_appimage(): # AppImage
204
+ self.cmd.setText(self.cmd_appimage)
205
+ self.cmd.setVisible(True)
206
+ self.download_link = download_appimage
207
+ self.download_file.setText("{} .AppImage ({})".format(trans("action.download"), version))
208
+ self.download_file.setVisible(True)
209
+ else: # PyPi package
199
210
  self.cmd.setText(self.cmd_pip)
200
211
  self.cmd.setVisible(True)
201
212
 
@@ -379,7 +379,9 @@ class SearchableCombo(SeparatorComboBox):
379
379
  """
380
380
  def __init__(self, parent=None):
381
381
  super().__init__(parent)
382
+ self.setObjectName("SearchableCombo")
382
383
  self.search: bool = True
384
+
383
385
  self._popup_open: bool = False
384
386
  self._search_line: QLineEdit | None = None
385
387
  self._search_action = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pygpt-net
3
- Version: 2.7.1
3
+ Version: 2.7.3
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
@@ -119,7 +119,7 @@ Description-Content-Type: text/markdown
119
119
 
120
120
  [![pygpt](https://snapcraft.io/pygpt/badge.svg)](https://snapcraft.io/pygpt)
121
121
 
122
- Release: **2.7.1** | build: **2025-12-28** | Python: **>=3.10, <3.14**
122
+ Release: **2.7.3** | build: **2025-12-30** | Python: **>=3.10, <3.14**
123
123
 
124
124
  > Official website: https://pygpt.net | Documentation: https://pygpt.readthedocs.io
125
125
  >
@@ -216,7 +216,33 @@ You can download compiled binary versions for `Linux` and `Windows` (10/11).
216
216
 
217
217
  Linux version requires `GLIBC` >= `2.35`.
218
218
 
219
- ## Snap Store
219
+ ## Microsoft Store (Windows)
220
+
221
+ For Windows 10/11, you can install **PyGPT** directly from Microsoft Store:
222
+
223
+ [![Get it from Microsoft Store](https://get.microsoft.com/images/en-us%20dark.svg)](https://apps.microsoft.com/detail/XP99R4MX3X65VQ)
224
+
225
+ Link to MS Store: https://apps.microsoft.com/detail/XP99R4MX3X65VQ
226
+
227
+ ## AppImage (Linux)
228
+
229
+ You can download the latest **PyGPT** `AppImage` for Linux from the release page:
230
+
231
+ **Releases:** https://github.com/szczyglis-dev/py-gpt/releases
232
+
233
+ **Tip:** Remember to give execution permissions to the downloaded file:
234
+
235
+ ```chmod +x ./PyGPT-X.X.X-x86_64.AppImage```
236
+
237
+ To manage future updates you can use `AppImageUpdate` tool:
238
+
239
+ You can download it from: https://github.com/AppImage/AppImageUpdate/releases
240
+
241
+ After downloading, run the following command in terminal:
242
+
243
+ ```appimageupdatetool ./PyGPT-X.X.X-x86_64.AppImage```
244
+
245
+ ## Snap Store (Linux)
220
246
 
221
247
  You can install **PyGPT** directly from Snap Store:
222
248
 
@@ -224,7 +250,7 @@ You can install **PyGPT** directly from Snap Store:
224
250
  sudo snap install pygpt
225
251
  ```
226
252
 
227
- To manage future updates just use:
253
+ To manage future updates use:
228
254
 
229
255
  ```commandline
230
256
  sudo snap refresh pygpt
@@ -696,10 +722,8 @@ From version `2.0.107` the `davinci` models are deprecated and has been replaced
696
722
 
697
723
  ## Image and video generation
698
724
 
699
- ### OpenAI DALL-E 3 / Google Imagen 3 and 4
700
-
701
- **PyGPT** enables quick and easy image creation with image models like `DALL-E 3`, `gpt-image-1` or `Google Imagen`.
702
- Generating images is akin to a chat conversation - a user's prompt triggers the generation, followed by downloading, saving to the computer, and displaying the image onscreen. You can send raw prompt to the model in `Image generation` mode or ask the model for the best prompt.
725
+ **PyGPT** enables quick and easy image creation with models like `DALL-E 3`, `gpt-image-1`, `Imagen 3/4`, and `Nano Banana`, as well as video generation using `Veo3` and `Sora2`.
726
+ Generating images and videos is akin to a chat conversation - a user's prompt triggers the generation, followed by downloading, saving to the computer, and displaying the image onscreen. You can send raw prompt to the model in `Image generation` mode or ask the model for the best prompt.
703
727
 
704
728
  ![v3_img](https://github.com/szczyglis-dev/py-gpt/raw/master/docs/source/images/v3_img.png)
705
729
 
@@ -710,16 +734,13 @@ Plugin allows you to generate images in Chat mode:
710
734
 
711
735
  ![v3_img_chat](https://github.com/szczyglis-dev/py-gpt/raw/master/docs/source/images/v3_img_chat.png)
712
736
 
713
- **Video generation**:
737
+ For OpenAI models, you can also enable remote image generation in `Config -> Settings -> Remote Tools`. If enabled, image generation will be available natively within the conversation, without plugins, in Chat mode.
714
738
 
715
- From version `2.6.32`, video generation (using `Google Veo 3`) is also available.
716
- From version `2.6.66`, video generation (using `OpenAI Sora 2`) is also available.
739
+ To use `Imagen` models you must enable `VertexAI` in `Config -> Settings -> API Keys -> Google -> Advanced options`.
717
740
 
718
- ### Multiple variants
741
+ ### Remix, Edit, or Extend
719
742
 
720
- You can generate up to **4 different variants** (DALL-E 2) for a given prompt in one session. DALL-E 3 allows one image.
721
- To select the desired number of variants to create, use the slider located in the right-hand corner at
722
- the bottom of the screen. This replaces the conversation temperature slider when you switch to image generation mode.
743
+ To remix or extend from a previous image or video instead of creating a new one from scratch, enable the `Remix/Extend` option checkbox in the toolbox. The last generated image or video in the current context will be used as a reference for your prompt, allowing you to request changes to the generated content. If the `Remix/Extend` option is enabled, uploading an image attachment as a reference will not take effect.
723
744
 
724
745
  ### Raw mode
725
746
 
@@ -3753,6 +3774,16 @@ may consume additional tokens that are not displayed in the main window.
3753
3774
 
3754
3775
  ## Recent changes:
3755
3776
 
3777
+ **2.7.3 (2025-12-30)**
3778
+
3779
+ - Added the `Remix/Extend` option in Image and Video generation mode. This allows the use of a previously generated image or video as a reference. It can be used for adding or changing elements in a previously generated image or video instead of creating a new one from scratch. See the docs: `Modes -> Image and Video generation -> Remix, Edit, or Extend`.
3780
+
3781
+ **2.7.2 (2025-12-29)**
3782
+
3783
+ - Fixed: non-searchable combobox width.
3784
+ - Improved updater.
3785
+ - Added .AppImage build.
3786
+
3756
3787
  **2.7.1 (2025-12-28)**
3757
3788
 
3758
3789
  - Improved UI elements.
@@ -1,6 +1,6 @@
1
- pygpt_net/CHANGELOG.txt,sha256=7IWjxZ4U7vrkz7Rm11SYVlx86JVVvPuB9KlnlE5g9CE,111266
1
+ pygpt_net/CHANGELOG.txt,sha256=YMzsgXqwTpffpUXNaGC-4E7MH9AhfB6Pj4dg9yX8T4E,111751
2
2
  pygpt_net/LICENSE,sha256=dz9sfFgYahvu2NZbx4C1xCsVn9GVer2wXcMkFRBvqzY,1146
3
- pygpt_net/__init__.py,sha256=HE-0lPnwAxTlfnrMK-HgSrmc0jBRQPs0VqekO_IUv2o,1372
3
+ pygpt_net/__init__.py,sha256=_fBd0bmP7ekKKfdbXIm0ifYVjwQof9mfDCF5kTlSZ1Q,1372
4
4
  pygpt_net/app.py,sha256=W-2rCYLndMgVV7cZZqeloqzifCggjISrFdMhHg0dMvM,23419
5
5
  pygpt_net/app_core.py,sha256=PwBOV9wZLtr-O6SxBiazABhYXMHH8kZ6OgbvSv2OiZA,3827
6
6
  pygpt_net/config.py,sha256=3CA7xXPKQsdRie1CY8_b5-Kk1taWMciUP9CesXRQNNY,18302
@@ -48,7 +48,7 @@ pygpt_net/controller/chat/handler/openai_stream.py,sha256=t8l133VBgdOXUoyO4ZD3qa
48
48
  pygpt_net/controller/chat/handler/utils.py,sha256=5B5fxQtLHv_WXU9clGHU_UTcKw1wd-94XL5GqeW7wOY,7235
49
49
  pygpt_net/controller/chat/handler/worker.py,sha256=qlCd6oCFs3iBMRvOKaD_Yhh9Ii-jhEsMbdMRt72UPTw,20317
50
50
  pygpt_net/controller/chat/handler/xai_stream.py,sha256=OVgQA-Za1y73C_BhHbUggth7HdLehSIl5jnG-_7GmKI,4303
51
- pygpt_net/controller/chat/image.py,sha256=hH7-PHBpOZbi6Gl7quVAN-0K66f-BgmP6bwOzWCqxkk,8238
51
+ pygpt_net/controller/chat/image.py,sha256=oEljj-HKZxzWsR52-3okH6GuM_f0IHCvwGu82YPm2SA,9379
52
52
  pygpt_net/controller/chat/input.py,sha256=q3mZp9qU-b4NrHsGNbHituVM-5MmZZSp3f28FEtWiuk,7928
53
53
  pygpt_net/controller/chat/output.py,sha256=j0yaQUiRMGAcjRUpxTZlC7EnoBpk84ibUhmRo22E7Xk,8390
54
54
  pygpt_net/controller/chat/remote_tools.py,sha256=ElnBvXQ9hHKf8pfiSKdiiiSMg5wK7JJOuFiYSAOLwCc,4098
@@ -108,7 +108,7 @@ pygpt_net/controller/launcher/launcher.py,sha256=lFPfzWF-z88FhDZ92XrEwAG_W8rVomv
108
108
  pygpt_net/controller/layout/__init__.py,sha256=0pxxzjAUa1hS27d80Q0SgDV1Uzs7A9mZrUxb1cs-oHs,510
109
109
  pygpt_net/controller/layout/layout.py,sha256=HlbfGK-_HXQrifSh5tWpPtu5JzWN2fktVmh8ofBDMfQ,13058
110
110
  pygpt_net/controller/media/__init__.py,sha256=N1UnDuteomgsBxRmVUd1Hm6UeGbHESYY9SowOhJj-YI,513
111
- pygpt_net/controller/media/media.py,sha256=m-eFE-Rf3wt2Zpme4964ShDrIuSjny1oLmuWj7EKhFw,5954
111
+ pygpt_net/controller/media/media.py,sha256=T49R7yF0QmrlMsBs38Pzv9DO26PhR4WHAX-CNO73aZc,8345
112
112
  pygpt_net/controller/mode/__init__.py,sha256=1Kcz0xHc2IW_if9S9eQozBUvIu69eLAe7T-Re2lJxhk,508
113
113
  pygpt_net/controller/mode/mode.py,sha256=N3TDMMJuB6qoc8KlHrkbZDt0eXH0KyNH7zFRFGfJkcg,8030
114
114
  pygpt_net/controller/model/__init__.py,sha256=mQXq9u269D8TD3u_44J6DFFyHKkaZplk-tRFCssBGbE,509
@@ -336,7 +336,7 @@ pygpt_net/core/node_editor/utils.py,sha256=FLnHXHQ6W2ZPYz39e5WqVY7SkBLoqVtPFGVNb
336
336
  pygpt_net/core/notepad/__init__.py,sha256=Uro9_4CfihHzn92I2Ar0q0t-MAGkikUMrY5kGAuLlSw,511
337
337
  pygpt_net/core/notepad/notepad.py,sha256=zYE7BRERDOxROMMfjTwS6M5Vk08DXxXqHdKi1aX33i0,4243
338
338
  pygpt_net/core/platforms/__init__.py,sha256=NRmTzf4xFxcYseYs1mgCPZA0YUH2v0Aufq4CG1_mKDE,513
339
- pygpt_net/core/platforms/platforms.py,sha256=4zCAfzZQnxwsJ8lMwKTDvHj7EOMgVS7H4-lTGEErbQA,5203
339
+ pygpt_net/core/platforms/platforms.py,sha256=1cxu8blqHz3f1dYggxKifh5AOjBMJ21afieUkukqwdw,5605
340
340
  pygpt_net/core/plugins/__init__.py,sha256=NOKL-CNsF4rrKTBpsN-ue92H4pTUGKlgDCwr1iA0geY,511
341
341
  pygpt_net/core/plugins/plugins.py,sha256=BGGo-q6VLdk-fcsb4vQjORuh9LHGjHVPMO9-roTNZ5A,17131
342
342
  pygpt_net/core/presets/__init__.py,sha256=NZjBxjGv4fgEX6Hp8FznsWK5QqD1Tl7zyp2Ir3ufXv4,511
@@ -404,7 +404,7 @@ pygpt_net/core/types/multimodal.py,sha256=yeKLZ5MrCHU5LhWwFE-yGApt-FB59kTmElo3G7
404
404
  pygpt_net/core/types/openai.py,sha256=LQyJ506IbG2EJxLVHgKBDAjMLi_qbIC7ow_kM2zHwkw,1516
405
405
  pygpt_net/core/types/tools.py,sha256=BdonNwytk5SxYtYdlDkMg5lMvFoXz3CQJHZ__oVlm_8,1223
406
406
  pygpt_net/core/updater/__init__.py,sha256=fC4g0Xn9S8lLxGbop1q2o2qi9IZegoVayNVWemgBwds,511
407
- pygpt_net/core/updater/updater.py,sha256=RArlEaYWNw5PIKcG2hMWqZI3DLbi8vq7Ip_rc8TBBNI,17045
407
+ pygpt_net/core/updater/updater.py,sha256=YHv8zbndCe5RapaunirTAIZq-eRjpdceX-Fi2cZcxUw,17656
408
408
  pygpt_net/core/video/__init__.py,sha256=PBAsunvkPSJJvcx2XivIul96XsbcW8mPAda_CX3dK1U,513
409
409
  pygpt_net/core/video/video.py,sha256=-EUt5halPea0I77oktZqoVCw0mmpDMbUX20gUb7FYfI,10078
410
410
  pygpt_net/core/vision/__init__.py,sha256=dFEilXM2Z128SmgBlLn1DvyLCksdcyqFI7rln_VPsf8,510
@@ -420,8 +420,8 @@ pygpt_net/css_rc.py,sha256=PX6g9z5BsD-DXISuR2oq3jHcjiKfcJ4HsgcHez6wGMc,27762
420
420
  pygpt_net/data/audio/click_off.mp3,sha256=aNiRDP1pt-Jy7ija4YKCNFBwvGWbzU460F4pZWZDS90,65201
421
421
  pygpt_net/data/audio/click_on.mp3,sha256=qfdsSnthAEHVXzeyN4LlC0OvXuyW8p7stb7VXtlvZ1k,65201
422
422
  pygpt_net/data/audio/ok.mp3,sha256=LTiV32pEBkpUGBkKkcOdOFB7Eyt_QoP2Nv6c5AaXftk,32256
423
- pygpt_net/data/config/config.json,sha256=rv9pIgW5IdvTirnfEPGnYOFYCsgkEeFvqxbKIM6SHRY,30935
424
- pygpt_net/data/config/models.json,sha256=zrESWVgJiPu5njHiaaxEaZH05BF54i9pIgN81DRJM_0,135705
423
+ pygpt_net/data/config/config.json,sha256=shd0TW9pvtZXmW79aEz85WAIalInIcE04ffABeF4jv4,30981
424
+ pygpt_net/data/config/models.json,sha256=s5auoA280ceNR8_9WC5clqdFW_SUhjZgedsa1UWzgV4,135705
425
425
  pygpt_net/data/config/modes.json,sha256=IpjLOm428_vs6Ma9U-YQTNKJNtZw-qyM1lwhh73xl1w,2111
426
426
  pygpt_net/data/config/presets/agent_code_act.json,sha256=GYHqhxtKFLUCvRI3IJAJ7Qe1k8yD9wGGNwManldWzlI,754
427
427
  pygpt_net/data/config/presets/agent_openai.json,sha256=bpDJgLRey_effQkzFRoOEGd4aHUrmzeODSDdNzrf62I,730
@@ -465,8 +465,8 @@ pygpt_net/data/css/markdown.css,sha256=yaoJPogZZ_ghbqP8vTXTycwVyD61Ik5_033NpzuUz
465
465
  pygpt_net/data/css/markdown.dark.css,sha256=ixAwuT69QLesZttKhO4RAy-QukplZwwfXCZsWLN9TP4,730
466
466
  pygpt_net/data/css/markdown.light.css,sha256=UZdv0jtuFgJ_4bYWsDaDQ4X4AP9tVNLUHBAckC_oD8k,833
467
467
  pygpt_net/data/css/style.css,sha256=dgVlVqEL38zF-4Ok-y1rwfALC8zETJAIuIbkwat_hTk,337
468
- pygpt_net/data/css/style.dark.css,sha256=_N9UYcU7XHcXBaRsknie0NibiS6CfvbKYgogtHkYH5I,4132
469
- pygpt_net/data/css/style.light.css,sha256=Zf8AV0uE1vg2Dum7fRHkfGhJf_WBLM5DnHx8zYYfxYg,6470
468
+ pygpt_net/data/css/style.dark.css,sha256=CJGXyfC3EgCb32me8baFCvi2fTg3pklVj7dZ2oBkY1k,4156
469
+ pygpt_net/data/css/style.light.css,sha256=qsooKdqMSJzV1QYWeyzQnZmn839fpmkPf88O7KK8xxA,6494
470
470
  pygpt_net/data/css/web-blocks.css,sha256=i8BwIwauKvKiWq3bte45R6_bI6bjFyjKyshkTb2JWgs,7598
471
471
  pygpt_net/data/css/web-blocks.dark.css,sha256=mck2u9KiO-pvnms0N0XJkoM_RBuf8QdC_3iSWAg8r40,1855
472
472
  pygpt_net/data/css/web-blocks.darkest.css,sha256=p3929omAaS1yxNtcOk9yR6cdVGkTVLCIyVsmltxLVf4,1807
@@ -1730,14 +1730,14 @@ pygpt_net/data/js/katex/katex.min.js,sha256=KLASOtKS2x8pUxWVzCDmlWJ4jhuLb0vtrgak
1730
1730
  pygpt_net/data/js/markdown-it/markdown-it-katex.min.js,sha256=-wMst2a9i8Borapa9_hxPvpQysfFE-yph8GrBmDoA68,1670
1731
1731
  pygpt_net/data/js/markdown-it/markdown-it.min.js,sha256=OMcKHnypGrQOLZ5uYBKYUacX7Rx9Ssu91Bv5UDeRz2g,123618
1732
1732
  pygpt_net/data/languages.csv,sha256=fvtER6vnTXFHQslCh-e0xCfZDQ-ijgW4GYpOJG4U7LY,8289
1733
- pygpt_net/data/locale/locale.de.ini,sha256=rLvE1O4mB9_3CAKZpzgZ9w0C5bjQ0XODgBheVlr2tq0,112664
1734
- pygpt_net/data/locale/locale.en.ini,sha256=katEw0ZBZyU9LhYKFViMunA4mUmP3k-NwaTGmb-fZjg,106756
1735
- pygpt_net/data/locale/locale.es.ini,sha256=4IyNjd3AesvVlHlIWyWNoAP04Rd1pdQFDZzDRIqqHjk,113211
1736
- pygpt_net/data/locale/locale.fr.ini,sha256=XMCFZc4fpv-H4BdZgIiv6Gr9HUxaMrHWPl6fV_2L_Jc,116077
1737
- pygpt_net/data/locale/locale.it.ini,sha256=u5QVLrtZ9A3-2oDijuWOS7Yp8aNmQ7rBmzH_XF8qXDY,110897
1738
- pygpt_net/data/locale/locale.pl.ini,sha256=aqeNHvTGRp0d8Bm3wJBxbLE-ahpHkgfJ9Tip54QwzW8,110578
1739
- pygpt_net/data/locale/locale.uk.ini,sha256=XF6CL_W_fIyQ6o7kTq1j9bAQCXl8jMDCa-UsIgGrrGc,154096
1740
- pygpt_net/data/locale/locale.zh.ini,sha256=KAdfNXxlAOfaIafBGt9yb-mq12ioSMmOSOR4i7iv3zQ,98935
1733
+ pygpt_net/data/locale/locale.de.ini,sha256=V64y34OUUzo2FZIIvWtscNkcZbztMWBSiCPUtn0hoVg,113132
1734
+ pygpt_net/data/locale/locale.en.ini,sha256=7NLVKTBLcWbx3uP1Gk-rY6lXc863oyup7x750m7YOuE,107186
1735
+ pygpt_net/data/locale/locale.es.ini,sha256=VvtAb89pwa6NnB5EDSMedoZwKZ_noA0uVy-zV1VtRlM,113665
1736
+ pygpt_net/data/locale/locale.fr.ini,sha256=Ssc2LJ41jTiKH3OC7q-N-k0CO9kCjJYzhEhb9Fd575A,116597
1737
+ pygpt_net/data/locale/locale.it.ini,sha256=EWjWgAQ53CDY8EtP0zjPuGc-s6ykuwWnQp-96pucXSA,111347
1738
+ pygpt_net/data/locale/locale.pl.ini,sha256=EpJv5H9xqv5vTol2MQFruBqgexlR60HkkvPR2XIA8Rg,111045
1739
+ pygpt_net/data/locale/locale.uk.ini,sha256=BSUE1yupgbay7hnDwhoObAK5QLcotMr3K-ZkHIarGks,154866
1740
+ pygpt_net/data/locale/locale.zh.ini,sha256=84DpuSenj6BAxT570_PrJR4TqVoQ07XTL38d8h6m6vE,99349
1741
1741
  pygpt_net/data/locale/plugin.agent.de.ini,sha256=BY28KpfFvgfVYJzcw2o5ScWnR4uuErIYGyc3NVHlmTw,1714
1742
1742
  pygpt_net/data/locale/plugin.agent.en.ini,sha256=HwOWCI7e8uzlIgyRWRVyr1x6Xzs8Xjv5pfEc7jfLOo4,1728
1743
1743
  pygpt_net/data/locale/plugin.agent.es.ini,sha256=bqaJQne8HPKFVtZ8Ukzo1TSqVW41yhYbGUqW3j2x1p8,1680
@@ -2157,13 +2157,13 @@ pygpt_net/provider/api/anthropic/vision.py,sha256=amP0FNHrJM-iSVO4j0AkVDYo1JFdmg
2157
2157
  pygpt_net/provider/api/google/__init__.py,sha256=E4O_dtrYhkYr2j09dkqHYVNdU_k-zZvF8-YmKPX5Q-M,13458
2158
2158
  pygpt_net/provider/api/google/audio.py,sha256=Ymq_Q3WofC-8TfYOGu5NmNuRW_omvl8UCS3Q0WEBxnA,4149
2159
2159
  pygpt_net/provider/api/google/chat.py,sha256=zD3vcYRS6uJWJ__3qrUo2shyFpf6kQD2utxJe9MjRHY,23082
2160
- pygpt_net/provider/api/google/image.py,sha256=6_THmv9J1u_bZ7ufrAHelSiY-5vjyN1ImlR8avr5v9Y,22491
2160
+ pygpt_net/provider/api/google/image.py,sha256=nrg-DZrhBsv3gSwRasyIdTt9QDIZiDgYFGxpCXzlyp4,33210
2161
2161
  pygpt_net/provider/api/google/music.py,sha256=pxLn-7ATTMvX5loCTX_H6Uq69pcTo4Df8sn69YyzelQ,14394
2162
2162
  pygpt_net/provider/api/google/realtime/__init__.py,sha256=Ism0i9dihgxYuzQHgA6vzmsswZnBOAvVqQp0j5G2JLQ,519
2163
2163
  pygpt_net/provider/api/google/realtime/client.py,sha256=w3aYhj4PSXBX-eIginaofWTRWe2m4NydM9iKOk-6Y58,80131
2164
2164
  pygpt_net/provider/api/google/realtime/realtime.py,sha256=2I3rjeswcIk2SZbTtHqKVZlPpe-KJ1fPwyWfE4MPsMY,7360
2165
2165
  pygpt_net/provider/api/google/tools.py,sha256=YtrnkTQb8NrKpB6MfdYEqq_6Vhz-250eJNDKRhtmD_k,8856
2166
- pygpt_net/provider/api/google/video.py,sha256=-0lXGuHxvIut08L22uo4PkJKI5UaKjT7ZHv46Z87LC4,15721
2166
+ pygpt_net/provider/api/google/video.py,sha256=oqyTR6h79kRU4HYeTEPVRhXEn0jNKklxHg3FBfWljZg,22040
2167
2167
  pygpt_net/provider/api/google/vision.py,sha256=yWeA86v5FPvhm5rYiNZJ3cR9KdzYQp_AdGd1tyldphc,4026
2168
2168
  pygpt_net/provider/api/openai/__init__.py,sha256=JY-wZu2R11wmVEWZG00nFyRoFbunMbz13RHfF1Jj3vI,12325
2169
2169
  pygpt_net/provider/api/openai/agents/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -2179,7 +2179,7 @@ pygpt_net/provider/api/openai/chat.py,sha256=DzsEISEW-XkDz4ey9PRkElMwZ0iOKPSJyO5
2179
2179
  pygpt_net/provider/api/openai/completion.py,sha256=9nWYcwvqwu16Qg1mWhWLAEzMTj-5ff40WN_O94b8T2o,6231
2180
2180
  pygpt_net/provider/api/openai/computer.py,sha256=fNTSjIYBoOrW7hLnc-KQuvffKniSai8O7oM8DTv6Tds,11814
2181
2181
  pygpt_net/provider/api/openai/container.py,sha256=jWsFkgofa5SKjztQnJZdfhryX-dYAceijv9F3iQkbl0,4922
2182
- pygpt_net/provider/api/openai/image.py,sha256=Cst3qQ_Nfze7nK2Yj_Jkh9hjRjUlisg60R9_FYc6Ajs,11555
2182
+ pygpt_net/provider/api/openai/image.py,sha256=oJjb7WveOoUzWCvQ_22odJLdbe5MzXsZFoRLLT0dJzY,15817
2183
2183
  pygpt_net/provider/api/openai/realtime/__init__.py,sha256=Ism0i9dihgxYuzQHgA6vzmsswZnBOAvVqQp0j5G2JLQ,519
2184
2184
  pygpt_net/provider/api/openai/realtime/client.py,sha256=4_Evnlb0vobuNbJwNEej1oL9cAhlnfV02tbons7JQSY,76208
2185
2185
  pygpt_net/provider/api/openai/realtime/realtime.py,sha256=tStZJwBHhzyp3yejLsr58LtNwATqpCgyCtvDM5ZqTSA,7424
@@ -2189,7 +2189,7 @@ pygpt_net/provider/api/openai/store.py,sha256=8H2SQH9wU9Yoeai6gqajbJ1N33CSv26IA5
2189
2189
  pygpt_net/provider/api/openai/summarizer.py,sha256=vuJz6mj9F9Psiat0d-fn1zNGgXc-WkXJyi0jrvijO6E,2978
2190
2190
  pygpt_net/provider/api/openai/tools.py,sha256=Oh9mnGIXfnwoRTx6f-9ZItD-v3loyr4OtcvhmgroyrY,3146
2191
2191
  pygpt_net/provider/api/openai/utils.py,sha256=O0H0EPb4lXUMfE1bFdWB56yuWLv7M5owVIGWRyDDv-E,855
2192
- pygpt_net/provider/api/openai/video.py,sha256=XZeSipNuqrxTU6Kb7dmzDTxtLzRZAgJNh-AI0fzVLKg,22504
2192
+ pygpt_net/provider/api/openai/video.py,sha256=810AhUKrYl0z_fUUAxn38xSPC5uStAT4wyqR-qmPZyQ,24591
2193
2193
  pygpt_net/provider/api/openai/vision.py,sha256=dsG-pAr1MP-A1aQLc3Yn2QzPNwMlPGQEi4LM1ry3YY4,12883
2194
2194
  pygpt_net/provider/api/openai/worker/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2195
2195
  pygpt_net/provider/api/openai/worker/assistants.py,sha256=z1fZzl59FYMVXxv48r9JVIzSCFgLzYOeKXhreZcIzO8,21538
@@ -2250,7 +2250,7 @@ pygpt_net/provider/core/calendar/db_sqlite/storage.py,sha256=QDclQCQdr4QyRIqjgGX
2250
2250
  pygpt_net/provider/core/config/__init__.py,sha256=jQQgG9u_ZLsZWXustoc1uvC-abUvj4RBKPAM30-f2Kc,488
2251
2251
  pygpt_net/provider/core/config/base.py,sha256=cbvzbMNqL2XgC-36gGubnU37t94AX7LEw0lecb2Nm80,1365
2252
2252
  pygpt_net/provider/core/config/json_file.py,sha256=GCcpCRQnBiSLWwlGbG9T3ZgiHkTfp5Jsg2KYkZcakBw,6789
2253
- pygpt_net/provider/core/config/patch.py,sha256=r73m4AOulhoS-8sXAaQpjiWy7TfTaj7WV7CHV9BzA2g,8535
2253
+ pygpt_net/provider/core/config/patch.py,sha256=NxlK1AoJCSWU3ekw66FjdjjNR1nwiw4tzJRsOSVlQ0U,9179
2254
2254
  pygpt_net/provider/core/config/patches/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2255
2255
  pygpt_net/provider/core/config/patches/patch_before_2_6_42.py,sha256=_IcpB3DdiD01P2_jpt2ZvUs8WJRIeO6t5oQeNxY6_eE,126808
2256
2256
  pygpt_net/provider/core/ctx/__init__.py,sha256=jQQgG9u_ZLsZWXustoc1uvC-abUvj4RBKPAM30-f2Kc,488
@@ -2524,18 +2524,18 @@ pygpt_net/ui/layout/toolbox/assistants.py,sha256=pZ_jOo4-Khqbm04rJuvENVZ5AUhXDUK
2524
2524
  pygpt_net/ui/layout/toolbox/audio.py,sha256=8k2qYzVmSv6g0KXhQBY9_diuGBPODSe7VHiEBpsCzUU,2030
2525
2525
  pygpt_net/ui/layout/toolbox/computer_env.py,sha256=QP_Qv4X28ineVX4vFfykmV-RDjgJpQp_oBHne3R4zY4,2210
2526
2526
  pygpt_net/ui/layout/toolbox/footer.py,sha256=LbLDXbcarPfH-tpBKgXlQqkAvm1HcNZpR7fPjbD76KA,4278
2527
- pygpt_net/ui/layout/toolbox/image.py,sha256=NjAcyUaLmQp8M18vc2Z4Aq0nGQp-BRMgZEaC4qXHzSE,1974
2527
+ pygpt_net/ui/layout/toolbox/image.py,sha256=D1eXdBP7UMuK1PZOe0bQs4qTBqinlR4f02QKyPzHve0,2561
2528
2528
  pygpt_net/ui/layout/toolbox/indexes.py,sha256=GfiQ-DA-mE-fr_1P5r-8jeMJ_LeQR9PvpH5oo4oBEwc,6882
2529
2529
  pygpt_net/ui/layout/toolbox/mode.py,sha256=MfVunjZZ3Wi0o4sbWBqg74c2-W6BNDHr3ylZevLZb8c,2085
2530
2530
  pygpt_net/ui/layout/toolbox/model.py,sha256=OxcxSyFCQ3z6XAwj991X4KiSb78Upfn4v4m3991yvsw,1707
2531
2531
  pygpt_net/ui/layout/toolbox/presets.py,sha256=dOpZBcbE6ygIOjLrj-O5O0Cj6IIoH7Y5SerOYmBTpI4,8150
2532
2532
  pygpt_net/ui/layout/toolbox/prompt.py,sha256=subUUZJgkCmvSRekZcgVYs6wzl-MYPBLXKTs0wcJFgw,2663
2533
- pygpt_net/ui/layout/toolbox/raw.py,sha256=Uvkk0QnrOIZ9sHJ3EnDzTRaWDLNC6cdgYyICPI8lJCk,1803
2533
+ pygpt_net/ui/layout/toolbox/raw.py,sha256=ifZXr3dE_HQODsALXO-h2yaZ-zfDQnnx9dtFWsBp5Pg,1821
2534
2534
  pygpt_net/ui/layout/toolbox/split.py,sha256=Hs9hZPciLXCRV_izoayrBlJSCuTGumdNki6z1giWUUo,1696
2535
2535
  pygpt_net/ui/layout/toolbox/toolbox.py,sha256=VHzyzm7LjcAN30h111SEP6fdXwi84DYyf8CE1X3pdt8,2799
2536
- pygpt_net/ui/layout/toolbox/video.py,sha256=2XmLlFns53H65xd_9RaIkCrOdh-ZKQ96MssHgvVaaM0,2197
2536
+ pygpt_net/ui/layout/toolbox/video.py,sha256=ikHc88SjcEONFsYvrX3FER5Mdu67JAkuwNpEnQ-l81I,2817
2537
2537
  pygpt_net/ui/layout/toolbox/vision.py,sha256=E6-lLfU3vrWdlprayr6gxFs7F7AGkn4OIrFXrQ9p5XA,2035
2538
- pygpt_net/ui/main.py,sha256=PYPVQf_5l3CVdsTB7S4lmO3Qs3aEVYhtwuXeOQeGFsM,14311
2538
+ pygpt_net/ui/main.py,sha256=IIxb9UmVBl-hI64rjTTRhnxycQGfHjVzkx9WY5A4Ynk,14418
2539
2539
  pygpt_net/ui/menu/__init__.py,sha256=wAIKG9wLWfYv6tpXCTXptWb_XKoCc-4lYWLDvV1bVYk,508
2540
2540
  pygpt_net/ui/menu/about.py,sha256=BtelbYhpXJGgsoEwsPuw61wVuGkzogpY3FVvWtd09HE,4619
2541
2541
  pygpt_net/ui/menu/audio.py,sha256=3vQhMq8vk_h7yb_Gk2dZMRviFR2PExgR_ynpgOkyl-g,4226
@@ -2584,7 +2584,7 @@ pygpt_net/ui/widget/dialog/rename.py,sha256=HcImKH_gUHcyB1k5llwStmrlXvcSpxgR2V6I
2584
2584
  pygpt_net/ui/widget/dialog/settings.py,sha256=fKzbme2tdxzTSiQMNnCEgyD3lwCzFjLi85ikWulisGw,1614
2585
2585
  pygpt_net/ui/widget/dialog/settings_plugin.py,sha256=Kf1ZK_RY9CAnfeuzPoQ4wgsFb2yQl7X-VKzsYETA55o,1696
2586
2586
  pygpt_net/ui/widget/dialog/snap.py,sha256=4JojKDrDECFbNBnsE0505z336xLVskFz9TK3XF02Mtk,4074
2587
- pygpt_net/ui/widget/dialog/update.py,sha256=YGUouxuEqvO8rkjI52F7wG4R8OgqcpJKB1FVqksOsC4,7453
2587
+ pygpt_net/ui/widget/dialog/update.py,sha256=eaZc160dk_fb7cq5k-dIL635IfoirLptA4XXVdz-ywk,8110
2588
2588
  pygpt_net/ui/widget/dialog/url.py,sha256=7I17Pp9P2c3G1pODEY5dum_AF0nFnu2BMfbWTgEES-M,8765
2589
2589
  pygpt_net/ui/widget/dialog/workdir.py,sha256=D-C3YIt-wCoI-Eh7z--Z4R6P1UvtpkxeiaVcI-ycFck,1523
2590
2590
  pygpt_net/ui/widget/draw/__init__.py,sha256=oSYKtNEGNL0vDjn3wCgdnBAbxUqNGIEIf-75I2DIn7Q,488
@@ -2638,7 +2638,7 @@ pygpt_net/ui/widget/option/__init__.py,sha256=8HT4tQFqQogEEpGYTv2RplKBthlsFKcl5e
2638
2638
  pygpt_net/ui/widget/option/checkbox.py,sha256=duzgGPOVbHFnWILVEu5gDUa6sHeDOvQaaj9IsY-HbU8,3954
2639
2639
  pygpt_net/ui/widget/option/checkbox_list.py,sha256=SgnkLTlVZCcU3ehqAfi_w28x693w_AeNsK-_0k-uOwA,6198
2640
2640
  pygpt_net/ui/widget/option/cmd.py,sha256=Ii_i9hR4oRmG4-TPZ-FHuTv3I1vL96YLcDP2QSKmAbI,5800
2641
- pygpt_net/ui/widget/option/combo.py,sha256=gU6kNDEg7RgKxxhPkhjjuUVGHY_BJkVqL4l-UeqD_Jk,53852
2641
+ pygpt_net/ui/widget/option/combo.py,sha256=d1NIki7rH_Q4BnQ9iBY3lYRKhJYdOIGcuedz_646bxM,53899
2642
2642
  pygpt_net/ui/widget/option/dictionary.py,sha256=ZeaBk-wEZ0SBU_iBBL6eHUEIGOrahh-z2xTa7LBvsdM,14736
2643
2643
  pygpt_net/ui/widget/option/input.py,sha256=-pLXzkOO2OvOoUKTuocbOt8JcPWQO3W3cmrSh0WhJcc,9718
2644
2644
  pygpt_net/ui/widget/option/prompt.py,sha256=SgRd0acp13_c19tWjYYChcGgAwik9tsZKKsX1Ciqgp4,2818
@@ -2669,8 +2669,8 @@ pygpt_net/ui/widget/textarea/web.py,sha256=sVRSmudPwPfjK2h7q-e6Ae4b-677BHLe20t-x
2669
2669
  pygpt_net/ui/widget/vision/__init__.py,sha256=8HT4tQFqQogEEpGYTv2RplKBthlsFKcl5egnv4lzzEw,488
2670
2670
  pygpt_net/ui/widget/vision/camera.py,sha256=DCx7h1nHruuUkU0Tw8Ay4OUVoNJhkuLsW4hIvGF5Skw,6985
2671
2671
  pygpt_net/utils.py,sha256=r-Dum4brfBaZaHJr-ux86FfdMuMHFwyuUL2bEFirdhc,14649
2672
- pygpt_net-2.7.1.dist-info/LICENSE,sha256=rbPqNB_xxANH8hKayJyIcTwD4bj4Y2G-Mcm85r1OImM,1126
2673
- pygpt_net-2.7.1.dist-info/METADATA,sha256=0kgOzOlnrDmM8eCA-BKS7HtYyKGVUKbaa7n7owqRR-8,169942
2674
- pygpt_net-2.7.1.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
2675
- pygpt_net-2.7.1.dist-info/entry_points.txt,sha256=qvpII6UHIt8XfokmQWnCYQrTgty8FeJ9hJvOuUFCN-8,43
2676
- pygpt_net-2.7.1.dist-info/RECORD,,
2672
+ pygpt_net-2.7.3.dist-info/LICENSE,sha256=rbPqNB_xxANH8hKayJyIcTwD4bj4Y2G-Mcm85r1OImM,1126
2673
+ pygpt_net-2.7.3.dist-info/METADATA,sha256=-i5F7JgIOpYjbca_DMI8Eo_9zbUUsG2vDtCUOISJ2Vg,171544
2674
+ pygpt_net-2.7.3.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
2675
+ pygpt_net-2.7.3.dist-info/entry_points.txt,sha256=qvpII6UHIt8XfokmQWnCYQrTgty8FeJ9hJvOuUFCN-8,43
2676
+ pygpt_net-2.7.3.dist-info/RECORD,,