pygpt-net 2.6.28__py3-none-any.whl → 2.6.29__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 CHANGED
@@ -1,3 +1,9 @@
1
+ 2.6.29 (2025-08-28)
2
+
3
+ - Verbose options have been moved to the Developer section in settings.
4
+ - Enhanced logging of embeddings usage.
5
+ - Fixed styles list.
6
+
1
7
  2.6.28 (2025-08-27)
2
8
 
3
9
  - Added new plugins: Tuya (IoT) and Wikipedia.
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.27 00:00:00 #
9
+ # Updated Date: 2025.08.28 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.28"
17
- __build__ = "2025-08-27"
16
+ __version__ = "2.6.29"
17
+ __build__ = "2025-08-28"
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"
@@ -196,6 +196,8 @@ class Common:
196
196
  continue
197
197
  for file in os.listdir(path):
198
198
  if file.startswith("web-") and file.endswith('.css'):
199
+ if file.endswith("darkest.css"):
200
+ continue
199
201
  to_replace = ['web-', '.css', '.light', '.dark']
200
202
  for item in to_replace:
201
203
  file = file.replace(item, '')
@@ -114,6 +114,9 @@ class Theme:
114
114
 
115
115
  :param name: web style name
116
116
  """
117
+ styles_list = self.common.get_styles_list()
118
+ if name not in styles_list:
119
+ name = "chatgpt"
117
120
  QApplication.processEvents()
118
121
  core = self.window.core
119
122
  core.config.set('theme.style', name)
pygpt_net/core/idx/llm.py CHANGED
@@ -10,7 +10,7 @@
10
10
  # ================================================== #
11
11
 
12
12
  import os.path
13
- from typing import Optional, Union
13
+ from typing import Optional, Union, List, Dict
14
14
 
15
15
  from llama_index.core.llms.llm import BaseLLM
16
16
  from llama_index.core.multi_modal_llms import MultiModalLLM
@@ -119,6 +119,8 @@ class Llm:
119
119
  window=self.window,
120
120
  env=env,
121
121
  )
122
+ model_name = self.extract_model_name_from_args(args)
123
+ self.window.core.idx.log(f"Embeddings: using global provider: {provider}, model_name: {model_name}")
122
124
  return self.window.core.llm.llms[provider].get_embeddings_model(
123
125
  window=self.window,
124
126
  config=args,
@@ -162,8 +164,8 @@ class Llm:
162
164
 
163
165
  # try to get custom args from config for the model provider
164
166
  is_custom_provider = False
165
- default = self.window.core.config.get("llama.idx.embeddings.default", [])
166
- for item in default:
167
+ defaults = self.window.core.config.get("llama.idx.embeddings.default", [])
168
+ for item in defaults:
167
169
  provider = item.get("provider", "")
168
170
  if provider and provider == model.provider:
169
171
  is_custom_provider = True
@@ -188,6 +190,7 @@ class Llm:
188
190
  "value": client_args.get("api_key", ""),
189
191
  }
190
192
  )
193
+ self.window.core.idx.log(f"Embeddings: trying to use {m.provider}, model_name: {model_name}")
191
194
  break
192
195
 
193
196
  if is_custom_provider:
@@ -196,5 +199,20 @@ class Llm:
196
199
  config=args,
197
200
  )
198
201
  if not embed_model:
202
+ self.window.core.idx.log(f"Embeddings: not configured for {model.provider}. Fallback: using global provider.")
199
203
  embed_model = self.get_embeddings_provider()
200
204
  return embed_model
205
+
206
+ def extract_model_name_from_args(self, args: List[Dict]) -> str:
207
+ """
208
+ Extract model name from provider args
209
+
210
+ :param args: List of args
211
+ :return: Model name if configured
212
+ """
213
+ model_name = ""
214
+ for item in args:
215
+ if item.get("name") in ["model", "model_name"]:
216
+ model_name = item.get("value")
217
+ break
218
+ return model_name
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "__meta__": {
3
- "version": "2.6.28",
4
- "app.version": "2.6.28",
5
- "updated_at": "2025-08-27T00:00:00"
3
+ "version": "2.6.29",
4
+ "app.version": "2.6.29",
5
+ "updated_at": "2025-08-28T00: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.28",
4
- "app.version": "2.6.28",
5
- "updated_at": "2025-08-27T23:07:35"
3
+ "version": "2.6.29",
4
+ "app.version": "2.6.29",
5
+ "updated_at": "2025-08-28T23:07:35"
6
6
  },
7
7
  "items": {
8
8
  "SpeakLeash/bielik-11b-v2.3-instruct:Q4_K_M": {
@@ -683,20 +683,7 @@
683
683
  "multiplier": null,
684
684
  "step": null,
685
685
  "advanced": false
686
- },
687
- "ctx.attachment.verbose": {
688
- "section": "files",
689
- "type": "bool",
690
- "slider": false,
691
- "label": "settings.ctx.attachment.verbose",
692
- "description": "settings.ctx.attachment.verbose.desc",
693
- "value": false,
694
- "min": null,
695
- "max": null,
696
- "multiplier": null,
697
- "step": null,
698
- "advanced": false
699
- },
686
+ },
700
687
  "ctx.attachment.img": {
701
688
  "section": "files",
702
689
  "type": "bool",
@@ -2047,20 +2034,7 @@
2047
2034
  "step": 1,
2048
2035
  "advanced": false,
2049
2036
  "tab": "llama"
2050
- },
2051
- "agent.llama.verbose": {
2052
- "section": "agent",
2053
- "type": "bool",
2054
- "slider": false,
2055
- "label": "settings.agent.llama.verbose",
2056
- "value": false,
2057
- "min": 0,
2058
- "max": 0,
2059
- "multiplier": 1,
2060
- "step": 1,
2061
- "advanced": false,
2062
- "tab": "general"
2063
- },
2037
+ },
2064
2038
  "agent.idx.auto_retrieve": {
2065
2039
  "section": "agent",
2066
2040
  "type": "bool",
@@ -2318,6 +2292,31 @@
2318
2292
  "step": null,
2319
2293
  "advanced": false
2320
2294
  },
2295
+ "ctx.attachment.verbose": {
2296
+ "section": "developer",
2297
+ "type": "bool",
2298
+ "slider": false,
2299
+ "label": "Log attachments usage to console",
2300
+ "value": false,
2301
+ "min": null,
2302
+ "max": null,
2303
+ "multiplier": null,
2304
+ "step": null,
2305
+ "advanced": false
2306
+ },
2307
+ "agent.llama.verbose": {
2308
+ "section": "developer",
2309
+ "type": "bool",
2310
+ "slider": false,
2311
+ "label": "Log Agents usage to console",
2312
+ "value": false,
2313
+ "min": 0,
2314
+ "max": 0,
2315
+ "multiplier": 1,
2316
+ "step": 1,
2317
+ "advanced": false,
2318
+ "tab": "general"
2319
+ },
2321
2320
  "log.llama": {
2322
2321
  "section": "developer",
2323
2322
  "type": "bool",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pygpt-net
3
- Version: 2.6.28
3
+ Version: 2.6.29
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, 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
@@ -117,7 +117,7 @@ Description-Content-Type: text/markdown
117
117
 
118
118
  [![pygpt](https://snapcraft.io/pygpt/badge.svg)](https://snapcraft.io/pygpt)
119
119
 
120
- Release: **2.6.28** | build: **2025-08-27** | Python: **>=3.10, <3.14**
120
+ Release: **2.6.29** | build: **2025-08-27** | Python: **>=3.10, <3.14**
121
121
 
122
122
  > Official website: https://pygpt.net | Documentation: https://pygpt.readthedocs.io
123
123
  >
@@ -2363,8 +2363,6 @@ Config -> Settings...
2363
2363
 
2364
2364
  - `Directory for file downloads`: Subdirectory for downloaded files, e.g. in Assistants mode, inside "data". Default: "download"
2365
2365
 
2366
- - `Verbose mode`: Enabled verbose mode when using attachment as additional context.
2367
-
2368
2366
  - `Model for querying index`: Model to use for preparing query and querying the index when the RAG option is selected.
2369
2367
 
2370
2368
  - `Model for attachment content summary`: Model to use when generating a summary for the content of a file when the Summary option is selected.
@@ -2569,8 +2567,6 @@ Enable/disable remote tools, like Web Search or Image generation to use in OpenA
2569
2567
 
2570
2568
  **General**
2571
2569
 
2572
- - `Verbose` - enables verbose mode.
2573
-
2574
2570
  - `Auto retrieve additional context from RAG`: Auto retrieve additional context from RAG at the beginning if the index is provided.
2575
2571
 
2576
2572
  - `Display a tray notification when the goal is achieved.`: If enabled, a notification will be displayed after goal achieved / finished run.
@@ -2653,6 +2649,10 @@ Enable/disable remote tools, like Web Search or Image generation to use in OpenA
2653
2649
 
2654
2650
  - `Log DALL-E usage to console`: Enables logging of DALL-E usage to console.
2655
2651
 
2652
+ - `Log attachments usage to console`: Enables logging of attachments usage to console.
2653
+
2654
+ - `Log Agents usage to console`: Enables logging of Agents usage to console.
2655
+
2656
2656
  - `Log LlamaIndex usage to console`: Enables logging of LlamaIndex usage to console.
2657
2657
 
2658
2658
  - `Log Assistants usage to console`: Enables logging of Assistants API usage to console.
@@ -3575,6 +3575,12 @@ may consume additional tokens that are not displayed in the main window.
3575
3575
 
3576
3576
  ## Recent changes:
3577
3577
 
3578
+ **2.6.29 (2025-08-28)**
3579
+
3580
+ - Verbose options have been moved to the Developer section in settings.
3581
+ - Enhanced logging of embeddings usage.
3582
+ - Fixed styles list.
3583
+
3578
3584
  **2.6.28 (2025-08-27)**
3579
3585
 
3580
3586
  - Added new plugins: Tuya (IoT) and Wikipedia.
@@ -1,6 +1,6 @@
1
- pygpt_net/CHANGELOG.txt,sha256=0Mp_OTbKNd6-hEKhY6_RsWmc1k8uRVigYXrejrNBN70,102445
1
+ pygpt_net/CHANGELOG.txt,sha256=KbilpoiRpCbFIXR3KN1BFkYoLBdWNoC4ze6acUQZu74,102600
2
2
  pygpt_net/LICENSE,sha256=dz9sfFgYahvu2NZbx4C1xCsVn9GVer2wXcMkFRBvqzY,1146
3
- pygpt_net/__init__.py,sha256=4rt0-NDjt_aWUsu6I3lsyZgS1bUL4XCfRitS50OL7sY,1373
3
+ pygpt_net/__init__.py,sha256=X7ogY2RvykcbQyg-NsZ3xJos8Xkz51vdjQsd-R0s-IM,1373
4
4
  pygpt_net/app.py,sha256=iF934FseRJAhhGLIxnpqzPKyOFrBtYWU7ePVT-P8I48,21434
5
5
  pygpt_net/config.py,sha256=LCKrqQfePVNrAvH3EY_1oZx1Go754sDoyUneJ0iGWFI,16660
6
6
  pygpt_net/container.py,sha256=NsMSHURaEC_eW8vrCNdztwqkxB7jui3yVlzUOMYvCHg,4124
@@ -122,11 +122,11 @@ pygpt_net/controller/settings/profile.py,sha256=L9tEorMfT36aiWP9faE5jhyoU087R7u2
122
122
  pygpt_net/controller/settings/settings.py,sha256=cFA4ZKjcsu8uoapWMTllUUB9DvJXVBzbxLT6InRS4zU,7768
123
123
  pygpt_net/controller/settings/workdir.py,sha256=h1-S6xU4_naPvfOCOtonOUrSnPlhX3_y7km_oD43D0Y,22163
124
124
  pygpt_net/controller/theme/__init__.py,sha256=-HMDkTGRa7Q6_AGomkZPVyasIOgNCqeez0Ocw_z9gMc,509
125
- pygpt_net/controller/theme/common.py,sha256=z5mzpMnfkTeFstKm_uodDboAa3xj5vTpMKGCZzvkX9A,7114
125
+ pygpt_net/controller/theme/common.py,sha256=J62AwAxycJ3KNF8fHt2EJYzvqW7l8zVfucpDAUykZ4s,7200
126
126
  pygpt_net/controller/theme/markdown.py,sha256=ot4LQEDyavt1sb7-Tw3d9MXIlPMlF5MOHh-sS7e851U,6172
127
127
  pygpt_net/controller/theme/menu.py,sha256=17D8mW5i97D_nENKFM2EZ9KgR7RP0whiaYXLzHO2rb8,7452
128
128
  pygpt_net/controller/theme/nodes.py,sha256=RTaxLR2aXXDrVNIpS9585xbFQlqrGI3gAO7Jng8NUHs,4871
129
- pygpt_net/controller/theme/theme.py,sha256=Qow-s3s8dN_L4AXgCPFCEdaiF9cOipJUJMehdVndmKU,8883
129
+ pygpt_net/controller/theme/theme.py,sha256=FL2YUWkfvABETk2X2E2cMldl2CTf0y9Z0eZWlDyYR-0,9000
130
130
  pygpt_net/controller/tools/__init__.py,sha256=ds63rOuwLEIe-SlY_sQkhWSdXS0lfVwseUiHkg2NTD4,509
131
131
  pygpt_net/controller/tools/tools.py,sha256=bWxdwL3J2-WHBS3MBiKsS3kTW_rQI_nS9z8-8iKifKg,2920
132
132
  pygpt_net/controller/ui/__init__.py,sha256=cxfh2SYeEDATGAZpcYDqCxYfp4KReQ1CYehevSf89EU,507
@@ -251,7 +251,7 @@ pygpt_net/core/idx/chat.py,sha256=be6ojNA6KTx3IVHxaIwXgdO1VbmymzkYAe1iLHo8tBQ,29
251
251
  pygpt_net/core/idx/context.py,sha256=fo62m22xBE-rtOgLMeOS-AR2SRRmaGipN7nY5BFax58,10146
252
252
  pygpt_net/core/idx/idx.py,sha256=QworuvYkSGo0mrGb_3cWGJug9C-CgCeAExWaNCtWSo4,18422
253
253
  pygpt_net/core/idx/indexing.py,sha256=Thgt3cPwWFziPB0agYCEGEcC8NxqDYKC6IUt31_GmeQ,42601
254
- pygpt_net/core/idx/llm.py,sha256=BdHdVK1nq7qqucM9GIZ0BOA291LitdNQM4DCzGl-pPw,7382
254
+ pygpt_net/core/idx/llm.py,sha256=fSwNf9EG4JOVURDhV2_79AwkV7LNPIz84t8O2SqHPNg,8221
255
255
  pygpt_net/core/idx/metadata.py,sha256=69jrZ54S2wYZ3HzVooozADkbjgK2Rg4MuXTgfd6rcsI,5445
256
256
  pygpt_net/core/idx/response.py,sha256=X4K706Ppage3fSAVPSqMK1w1PflMsJ6QA6Tl-Y9P0vs,5008
257
257
  pygpt_net/core/idx/types/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -348,8 +348,8 @@ pygpt_net/css_rc.py,sha256=i13kX7irhbYCWZ5yJbcMmnkFp_UfS4PYnvRFSPF7XXo,11349
348
348
  pygpt_net/data/audio/click_off.mp3,sha256=aNiRDP1pt-Jy7ija4YKCNFBwvGWbzU460F4pZWZDS90,65201
349
349
  pygpt_net/data/audio/click_on.mp3,sha256=qfdsSnthAEHVXzeyN4LlC0OvXuyW8p7stb7VXtlvZ1k,65201
350
350
  pygpt_net/data/audio/ok.mp3,sha256=LTiV32pEBkpUGBkKkcOdOFB7Eyt_QoP2Nv6c5AaXftk,32256
351
- pygpt_net/data/config/config.json,sha256=Wxn9BPx58KmqF2AmhoshyfHUkVDgy1_Ca6eiO-pZevk,26026
352
- pygpt_net/data/config/models.json,sha256=kyVaSjwBv-6OK_D6EJCVPHhoPw4IExYY2N72JQ2D4CY,110162
351
+ pygpt_net/data/config/config.json,sha256=fhpK5Roz8T0LlqI5b7lHcrgtTfGTtz-RiYhulcput1c,26026
352
+ pygpt_net/data/config/models.json,sha256=7eY7WUrOgsFExong90ZcPvrElIIX-OiVexIZ1EjT5vo,110162
353
353
  pygpt_net/data/config/modes.json,sha256=M882iiqX_R2sNQl9cqZ3k-uneEvO9wpARtHRMLx_LHw,2265
354
354
  pygpt_net/data/config/presets/agent_code_act.json,sha256=GYHqhxtKFLUCvRI3IJAJ7Qe1k8yD9wGGNwManldWzlI,754
355
355
  pygpt_net/data/config/presets/agent_openai.json,sha256=bpDJgLRey_effQkzFRoOEGd4aHUrmzeODSDdNzrf62I,730
@@ -384,7 +384,7 @@ pygpt_net/data/config/presets/current.vision.json,sha256=x1ll5B3ROSKYQA6l27PRGXU
384
384
  pygpt_net/data/config/presets/dalle_white_cat.json,sha256=esqUb43cqY8dAo7B5u99tRC0MBV5lmlrVLnJhTSkL8w,552
385
385
  pygpt_net/data/config/presets/joke_agent.json,sha256=R6n9P7KRb0s-vZWZE7kHdlOfXAx1yYrPmUw8uLyw8OE,474
386
386
  pygpt_net/data/config/presets/joke_expert.json,sha256=jjcoIYEOaEp8kLoIbecxQROiq4J3Zess5w8_HmngPOY,671
387
- pygpt_net/data/config/settings.json,sha256=FYQual-ajyQGqUDXJpZFpmOSmpuzoElTTFuUP8hvlhM,69392
387
+ pygpt_net/data/config/settings.json,sha256=83RjcEPsG0g_BQP47gdNN7ZrUh7TDWSq-j_CPPfFi60,69345
388
388
  pygpt_net/data/config/settings_section.json,sha256=OLWgjs3hHFzk50iwzVyUpcFW7dfochOnbZS0vDoMlDU,1158
389
389
  pygpt_net/data/css/fix_windows.css,sha256=Mks14Vg25ncbMqZJfAMStrhvZmgHF6kU75ohTWRZeI8,664
390
390
  pygpt_net/data/css/fix_windows.dark.css,sha256=7hGbT_qI5tphYC_WlFpJRDAcmjBb0AQ2Yc-y-_Zzf2M,161
@@ -2462,8 +2462,8 @@ pygpt_net/ui/widget/textarea/web.py,sha256=cqs5i67bD19_BNgcYL7NXlwYBei4UYSL_IYPZ
2462
2462
  pygpt_net/ui/widget/vision/__init__.py,sha256=8HT4tQFqQogEEpGYTv2RplKBthlsFKcl5egnv4lzzEw,488
2463
2463
  pygpt_net/ui/widget/vision/camera.py,sha256=v1qEncaZr5pXocO5Cpk_lsgfCMvfFigdJmzsYfzvCl0,1877
2464
2464
  pygpt_net/utils.py,sha256=GBAXOpp_Wjfu7Al7TnTV62-R-JPMiP9GuPXLJ0HmeJU,8906
2465
- pygpt_net-2.6.28.dist-info/LICENSE,sha256=rbPqNB_xxANH8hKayJyIcTwD4bj4Y2G-Mcm85r1OImM,1126
2466
- pygpt_net-2.6.28.dist-info/METADATA,sha256=A7b6P74fMUOJ6oDpV4vxD4YhO_tm5d9VFaOISO7R_Ks,161388
2467
- pygpt_net-2.6.28.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
2468
- pygpt_net-2.6.28.dist-info/entry_points.txt,sha256=qvpII6UHIt8XfokmQWnCYQrTgty8FeJ9hJvOuUFCN-8,43
2469
- pygpt_net-2.6.28.dist-info/RECORD,,
2465
+ pygpt_net-2.6.29.dist-info/LICENSE,sha256=rbPqNB_xxANH8hKayJyIcTwD4bj4Y2G-Mcm85r1OImM,1126
2466
+ pygpt_net-2.6.29.dist-info/METADATA,sha256=Z6z-mF_IQEN0hnNSNV1WYQ4R2SE85W-H_MxyFVg_SBw,161591
2467
+ pygpt_net-2.6.29.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
2468
+ pygpt_net-2.6.29.dist-info/entry_points.txt,sha256=qvpII6UHIt8XfokmQWnCYQrTgty8FeJ9hJvOuUFCN-8,43
2469
+ pygpt_net-2.6.29.dist-info/RECORD,,