pygpt-net 2.5.8__py3-none-any.whl → 2.5.10__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.
- CHANGELOG.md +13 -0
- README.md +14 -65
- pygpt_net/CHANGELOG.txt +13 -0
- pygpt_net/__init__.py +3 -3
- pygpt_net/controller/notepad/__init__.py +6 -2
- pygpt_net/controller/ui/tabs.py +2 -1
- pygpt_net/core/render/web/helpers.py +12 -7
- pygpt_net/core/render/web/parser.py +7 -5
- pygpt_net/data/config/config.json +3 -3
- pygpt_net/data/config/models.json +54 -3
- pygpt_net/data/config/modes.json +3 -3
- pygpt_net/data/config/presets/current.chat.json +1 -1
- pygpt_net/data/config/presets/current.llama_index.json +1 -1
- pygpt_net/provider/core/model/patch.py +7 -1
- {pygpt_net-2.5.8.dist-info → pygpt_net-2.5.10.dist-info}/METADATA +21 -72
- {pygpt_net-2.5.8.dist-info → pygpt_net-2.5.10.dist-info}/RECORD +19 -19
- {pygpt_net-2.5.8.dist-info → pygpt_net-2.5.10.dist-info}/LICENSE +0 -0
- {pygpt_net-2.5.8.dist-info → pygpt_net-2.5.10.dist-info}/WHEEL +0 -0
- {pygpt_net-2.5.8.dist-info → pygpt_net-2.5.10.dist-info}/entry_points.txt +0 -0
CHANGELOG.md
CHANGED
@@ -1,5 +1,18 @@
|
|
1
1
|
# CHANGELOG
|
2
2
|
|
3
|
+
## 2.5.10 (2025-03-06)
|
4
|
+
|
5
|
+
- Added a new model: Claude 3.7 Sonnet.
|
6
|
+
- Fixed the context switch issue when the column changed and the tab is not a chat tab.
|
7
|
+
- LlamaIndex upgraded to 0.12.22.
|
8
|
+
- LlamaIndex LLMs upgraded to recent versions.
|
9
|
+
|
10
|
+
## 2.5.9 (2025-03-05)
|
11
|
+
|
12
|
+
- Improved formatting of HTML code in the output.
|
13
|
+
- Disabled automatic indentation parsing as code blocks.
|
14
|
+
- Disabled automatic scrolling of the notepad when opening a tab.
|
15
|
+
|
3
16
|
## 2.5.8 (2025-03-02)
|
4
17
|
|
5
18
|
- Added a new mode: Research (Perplexity) powered by: https://perplexity.ai - beta.
|
README.md
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
[](https://snapcraft.io/pygpt)
|
4
4
|
|
5
|
-
Release: **2.5.
|
5
|
+
Release: **2.5.10** | build: **2025.03.06** | Python: **>=3.10, <3.13**
|
6
6
|
|
7
7
|
> Official website: https://pygpt.net | Documentation: https://pygpt.readthedocs.io
|
8
8
|
>
|
@@ -3972,6 +3972,19 @@ may consume additional tokens that are not displayed in the main window.
|
|
3972
3972
|
|
3973
3973
|
## Recent changes:
|
3974
3974
|
|
3975
|
+
**2.5.10 (2025-03-06)**
|
3976
|
+
|
3977
|
+
- Added a new model: Claude 3.7 Sonnet.
|
3978
|
+
- Fixed the context switch issue when the column changed and the tab is not a chat tab.
|
3979
|
+
- LlamaIndex upgraded to 0.12.22.
|
3980
|
+
- LlamaIndex LLMs upgraded to recent versions.
|
3981
|
+
|
3982
|
+
**2.5.9 (2025-03-05)**
|
3983
|
+
|
3984
|
+
- Improved formatting of HTML code in the output.
|
3985
|
+
- Disabled automatic indentation parsing as code blocks.
|
3986
|
+
- Disabled automatic scrolling of the notepad when opening a tab.
|
3987
|
+
|
3975
3988
|
**2.5.8 (2025-03-02)**
|
3976
3989
|
|
3977
3990
|
- Added a new mode: Research (Perplexity) powered by: https://perplexity.ai - beta.
|
@@ -4029,70 +4042,6 @@ may consume additional tokens that are not displayed in the main window.
|
|
4029
4042
|
- Fix: error handling in stream mode.
|
4030
4043
|
- Fix: added check for active plugin tools before tool call.
|
4031
4044
|
|
4032
|
-
**2.4.57 (2025-01-19)**
|
4033
|
-
|
4034
|
-
- Logging fix.
|
4035
|
-
|
4036
|
-
**2.4.56 (2025-01-19)**
|
4037
|
-
|
4038
|
-
- Improved tab switching and focus change.
|
4039
|
-
- Improved global keyboard shortcuts handling.
|
4040
|
-
|
4041
|
-
**2.4.55 (2025-01-18)**
|
4042
|
-
|
4043
|
-
- Added a new option in settings: Audio -> Recording timeout.
|
4044
|
-
- Added a new option in settings: Audio -> Enable timeout in continuous mode.
|
4045
|
-
|
4046
|
-
**2.4.54 (2025-01-18)**
|
4047
|
-
|
4048
|
-
- Audio output switched from PyGame to PyAudio. It may be necessary to manually connect Alsa in Snap version with: "sudo snap connect pygpt:alsa".
|
4049
|
-
- Added audio output volume progress bar.
|
4050
|
-
|
4051
|
-
**2.4.53 (2025-01-17)**
|
4052
|
-
|
4053
|
-
- Fix: issue #89
|
4054
|
-
|
4055
|
-
**2.4.52 (2025-01-17)**
|
4056
|
-
|
4057
|
-
- Improved audio input button visibility toggle.
|
4058
|
-
- Fix: check for required arguments - issue #88.
|
4059
|
-
- UI Fixes.
|
4060
|
-
|
4061
|
-
**2.4.51 (2025-01-17)**
|
4062
|
-
|
4063
|
-
- Added a "Continuous recording" mode under Audio Input in the Notepad tab, allowing for recording long voice notes and real-time auto-transcription. (beta)
|
4064
|
-
- A new option has been added in Settings -> Audio -> Continuous recording auto-transcribe interval.
|
4065
|
-
|
4066
|
-
**2.4.50 (2025-01-16)**
|
4067
|
-
|
4068
|
-
- Refactored audio input core.
|
4069
|
-
- Added audio input volume progress bar.
|
4070
|
-
|
4071
|
-
**2.4.49 (2025-01-16)**
|
4072
|
-
|
4073
|
-
- Fix: stream render in Assistants mode.
|
4074
|
-
- Fix: items remove in context regen/edit.
|
4075
|
-
|
4076
|
-
**2.4.48 (2025-01-16)**
|
4077
|
-
|
4078
|
-
- Fix: parsing lists in data loaders configuration.
|
4079
|
-
- Fix: crash on Windows on PySide6 v6.6.0.
|
4080
|
-
- Added Gemini embeddings to LlamaIndex settings.
|
4081
|
-
- LlamaIndex upgraded to 0.12.11.
|
4082
|
-
- Security updates.
|
4083
|
-
|
4084
|
-
**2.4.47 (2025-01-14)**
|
4085
|
-
|
4086
|
-
- Added support for Python 3.12.
|
4087
|
-
- Added a new model to Chat with Files: gemini-2.0-flash-exp.
|
4088
|
-
- PySide6 upgraded to 6.6.0.
|
4089
|
-
|
4090
|
-
**2.4.46 (2024-12-16)**
|
4091
|
-
|
4092
|
-
- Added a new tab in Settings: "API Keys", where the API keys configuration for Google and Anthropic models has been relocated.
|
4093
|
-
- Introduced a new mode in "Chat with Files": "Retrieve Only", which allows for retrieving raw documents from the index.
|
4094
|
-
- Fixed a bug related to tool calls in the Gemini provider when using Chat with Files mode.
|
4095
|
-
|
4096
4045
|
# Credits and links
|
4097
4046
|
|
4098
4047
|
**Official website:** <https://pygpt.net>
|
pygpt_net/CHANGELOG.txt
CHANGED
@@ -1,3 +1,16 @@
|
|
1
|
+
2.5.10 (2025-03-06)
|
2
|
+
|
3
|
+
- Added a new model: Claude 3.7 Sonnet.
|
4
|
+
- Fixed the context switch issue when the column changed and the tab is not a chat tab.
|
5
|
+
- LlamaIndex upgraded to 0.12.22.
|
6
|
+
- LlamaIndex LLMs upgraded to recent versions.
|
7
|
+
|
8
|
+
2.5.9 (2025-03-05)
|
9
|
+
|
10
|
+
- Improved formatting of HTML code in the output.
|
11
|
+
- Disabled automatic indentation parsing as code blocks.
|
12
|
+
- Disabled automatic scrolling of the notepad when opening a tab.
|
13
|
+
|
1
14
|
2.5.8 (2025-03-02)
|
2
15
|
|
3
16
|
- Added a new mode: Research (Perplexity) powered by: https://perplexity.ai - beta.
|
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.03.02
|
9
|
+
# Updated Date: 2025.03.06 02: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.5.
|
17
|
-
__build__ = "2025-03-
|
16
|
+
__version__ = "2.5.10"
|
17
|
+
__build__ = "2025-03-06"
|
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"
|
@@ -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.
|
9
|
+
# Updated Date: 2025.03.05 23:00:00 #
|
10
10
|
# ================================================== #
|
11
11
|
|
12
12
|
from typing import Optional, Tuple
|
@@ -31,6 +31,7 @@ class Notepad:
|
|
31
31
|
"""
|
32
32
|
self.window = window
|
33
33
|
self.opened_once = False
|
34
|
+
self.opened_idx = []
|
34
35
|
|
35
36
|
def create(
|
36
37
|
self,
|
@@ -283,6 +284,9 @@ class Notepad:
|
|
283
284
|
if tab.type == Tab.TAB_NOTEPAD:
|
284
285
|
idx = tab.data_id
|
285
286
|
if idx in self.window.ui.notepad:
|
286
|
-
self.
|
287
|
+
if idx not in self.opened_idx:
|
288
|
+
self.window.ui.notepad[idx].scroll_to_bottom()
|
287
289
|
if not self.window.ui.notepad[idx].opened:
|
288
290
|
self.window.ui.notepad[idx].opened = True
|
291
|
+
if idx not in self.opened_idx:
|
292
|
+
self.opened_idx.append(idx)
|
pygpt_net/controller/ui/tabs.py
CHANGED
@@ -283,7 +283,8 @@ class Tabs:
|
|
283
283
|
return
|
284
284
|
current_ctx = self.window.core.ctx.get_current()
|
285
285
|
if (current_ctx is not None and current_ctx != tab.data_id) or current_ctx is None:
|
286
|
-
|
286
|
+
if tab.type == Tab.TAB_CHAT:
|
287
|
+
self.window.controller.ctx.select_on_list_only(tab.data_id)
|
287
288
|
self.window.controller.ui.update()
|
288
289
|
self.update_current()
|
289
290
|
|
@@ -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.
|
9
|
+
# Updated Date: 2025.03.05 23:00:00 #
|
10
10
|
# ================================================== #
|
11
11
|
|
12
12
|
import re
|
@@ -33,6 +33,9 @@ class Helpers:
|
|
33
33
|
pattern = r"~###~(.*?)~###~"
|
34
34
|
def repl(match):
|
35
35
|
code = match.group(1)
|
36
|
+
# restore tags first
|
37
|
+
code = code.replace("<", "<")
|
38
|
+
code = code.replace(">", ">")
|
36
39
|
escaped_code = html.escape(code)
|
37
40
|
return f'<p class="cmd">{escaped_code}</p>'
|
38
41
|
return re.sub(pattern, repl, text, flags=re.DOTALL)
|
@@ -48,12 +51,14 @@ class Helpers:
|
|
48
51
|
text = text.replace("#~###~", "~###~") # fix for #~###~ in text (previous versions)
|
49
52
|
text = text.replace("# ~###~", "~###~") # fix for # ~###~ in text (previous versions)
|
50
53
|
|
51
|
-
#
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
54
|
+
# replace HTML tags
|
55
|
+
text = text.replace("<think>", "{{{{think}}}}")
|
56
|
+
text = text.replace("</think>", "{{{{/think}}}}")
|
57
|
+
text = text.replace("<", "<")
|
58
|
+
text = text.replace(">", ">")
|
59
|
+
text = text.replace("{{{{think}}}}", "<think>")
|
60
|
+
text = text.replace("{{{{/think}}}}", "</think>")
|
61
|
+
text = text.replace("<think>\n", "<think>")
|
57
62
|
|
58
63
|
# replace cmd tags
|
59
64
|
text = self.replace_code_tags(text)
|
@@ -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:
|
9
|
+
# Updated Date: 2025.03.05 23:00:00 #
|
10
10
|
# ================================================== #
|
11
11
|
|
12
12
|
import os
|
@@ -32,9 +32,7 @@ class Parser:
|
|
32
32
|
self.block_idx = 1
|
33
33
|
|
34
34
|
def init(self):
|
35
|
-
"""
|
36
|
-
Initialize markdown parser
|
37
|
-
"""
|
35
|
+
"""Initialize markdown parser"""
|
38
36
|
if self.md is None:
|
39
37
|
self.md = markdown.Markdown(extensions=[
|
40
38
|
'fenced_code',
|
@@ -42,6 +40,9 @@ class Parser:
|
|
42
40
|
'sane_lists',
|
43
41
|
MathExtension(enable_dollar_delimiter=True) # math formulas
|
44
42
|
])
|
43
|
+
# disable code blocks parsing (without ` and ```)
|
44
|
+
if 'code' in self.md.parser.blockprocessors:
|
45
|
+
self.md.parser.blockprocessors.deregister('code')
|
45
46
|
|
46
47
|
def reset(self):
|
47
48
|
"""
|
@@ -78,7 +79,8 @@ class Parser:
|
|
78
79
|
self.init()
|
79
80
|
try:
|
80
81
|
text = self.prepare_paths(text.strip())
|
81
|
-
|
82
|
+
html = self.md.convert(text)
|
83
|
+
soup = BeautifulSoup(html, 'html.parser')
|
82
84
|
self.strip_whitespace_lists(soup) # strip whitespace from codeblocks
|
83
85
|
# if self.window.core.config.get("ctx.convert_lists"):
|
84
86
|
# self.convert_lists_to_paragraphs(soup) # convert lists to paragraphs, DISABLED: 2024-11-03
|
@@ -1,8 +1,8 @@
|
|
1
1
|
{
|
2
2
|
"__meta__": {
|
3
|
-
"version": "2.5.
|
4
|
-
"app.version": "2.5.
|
5
|
-
"updated_at": "2025-03-
|
3
|
+
"version": "2.5.10",
|
4
|
+
"app.version": "2.5.10",
|
5
|
+
"updated_at": "2025-03-06T00: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.5.
|
4
|
-
"app.version": "2.5.
|
5
|
-
"updated_at": "2025-03-
|
3
|
+
"version": "2.5.10",
|
4
|
+
"app.version": "2.5.10",
|
5
|
+
"updated_at": "2025-03-06T00:00:00"
|
6
6
|
},
|
7
7
|
"items": {
|
8
8
|
"claude-3-5-sonnet-20240620": {
|
@@ -56,6 +56,57 @@
|
|
56
56
|
"tokens": 4096,
|
57
57
|
"default": false
|
58
58
|
},
|
59
|
+
"claude-3-7-sonnet-latest": {
|
60
|
+
"id": "claude-3-7-sonnet-latest",
|
61
|
+
"name": "claude-3-7-sonnet-latest",
|
62
|
+
"mode": [
|
63
|
+
"llama_index",
|
64
|
+
"agent",
|
65
|
+
"agent_llama",
|
66
|
+
"expert"
|
67
|
+
],
|
68
|
+
"langchain": {
|
69
|
+
"provider": "anthropic",
|
70
|
+
"mode": [
|
71
|
+
"chat"
|
72
|
+
],
|
73
|
+
"args": [
|
74
|
+
{
|
75
|
+
"name": "model",
|
76
|
+
"value": "claude-3-7-sonnet-latest",
|
77
|
+
"type": "str"
|
78
|
+
}
|
79
|
+
],
|
80
|
+
"env": [
|
81
|
+
{
|
82
|
+
"name": "ANTHROPIC_API_KEY",
|
83
|
+
"value": "{api_key_anthropic}"
|
84
|
+
}
|
85
|
+
]
|
86
|
+
},
|
87
|
+
"llama_index": {
|
88
|
+
"provider": "anthropic",
|
89
|
+
"mode": [
|
90
|
+
"chat"
|
91
|
+
],
|
92
|
+
"args": [
|
93
|
+
{
|
94
|
+
"name": "model",
|
95
|
+
"value": "claude-3-7-sonnet-latest",
|
96
|
+
"type": "str"
|
97
|
+
}
|
98
|
+
],
|
99
|
+
"env": [
|
100
|
+
{
|
101
|
+
"name": "ANTHROPIC_API_KEY",
|
102
|
+
"value": "{api_key_anthropic}"
|
103
|
+
}
|
104
|
+
]
|
105
|
+
},
|
106
|
+
"ctx": 200000,
|
107
|
+
"tokens": 4096,
|
108
|
+
"default": false
|
109
|
+
},
|
59
110
|
"claude-3-opus-20240229": {
|
60
111
|
"id": "claude-3-opus-20240229",
|
61
112
|
"name": "claude-3-opus-20240229",
|
pygpt_net/data/config/modes.json
CHANGED
@@ -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.03.
|
9
|
+
# Updated Date: 2025.03.06 03:00:00 #
|
10
10
|
# ================================================== #
|
11
11
|
|
12
12
|
from packaging.version import parse as parse_version, Version
|
@@ -509,6 +509,12 @@ class Patch:
|
|
509
509
|
# add gpt-4.5-preview, sonar, R1
|
510
510
|
updated = True
|
511
511
|
|
512
|
+
# < 2.5.10 <--- add claude-3-7-sonnet-latest
|
513
|
+
if old < parse_version("2.5.10"):
|
514
|
+
print("Migrating models from < 2.5.10...")
|
515
|
+
# add claude-3-7-sonnet-latest
|
516
|
+
updated = True
|
517
|
+
|
512
518
|
# update file
|
513
519
|
if updated:
|
514
520
|
data = dict(sorted(data.items()))
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: pygpt-net
|
3
|
-
Version: 2.5.
|
3
|
+
Version: 2.5.10
|
4
4
|
Summary: Desktop AI Assistant powered by models: OpenAI o1, GPT-4o, GPT-4, GPT-4 Vision, GPT-3.5, DALL-E 3, Llama 3, Mistral, Gemini, Claude, DeepSeek, Bielik, and other models supported by Langchain, Llama Index, and Ollama. Features include chatbot, text completion, image generation, vision analysis, speech-to-text, internet access, file handling, command execution and more.
|
5
5
|
Home-page: https://pygpt.net
|
6
6
|
License: MIT
|
@@ -37,21 +37,21 @@ Requires-Dist: langchain (>=0.2.14,<0.3.0)
|
|
37
37
|
Requires-Dist: langchain-community (>=0.2.12,<0.3.0)
|
38
38
|
Requires-Dist: langchain-experimental (>=0.0.64,<0.0.65)
|
39
39
|
Requires-Dist: langchain-openai (>=0.1.22,<0.2.0)
|
40
|
-
Requires-Dist: llama-index (>=0.12.
|
40
|
+
Requires-Dist: llama-index (>=0.12.22,<0.13.0)
|
41
41
|
Requires-Dist: llama-index-agent-openai (>=0.4.2,<0.5.0)
|
42
|
-
Requires-Dist: llama-index-core (==0.12.
|
42
|
+
Requires-Dist: llama-index-core (==0.12.22)
|
43
43
|
Requires-Dist: llama-index-embeddings-azure-openai (>=0.3.0,<0.4.0)
|
44
44
|
Requires-Dist: llama-index-embeddings-gemini (>=0.3.1,<0.4.0)
|
45
45
|
Requires-Dist: llama-index-embeddings-huggingface-api (>=0.3.0,<0.4.0)
|
46
46
|
Requires-Dist: llama-index-embeddings-ollama (>=0.5.0,<0.6.0)
|
47
47
|
Requires-Dist: llama-index-embeddings-openai (>=0.3.1,<0.4.0)
|
48
|
-
Requires-Dist: llama-index-llms-anthropic (>=0.6.
|
49
|
-
Requires-Dist: llama-index-llms-azure-openai (>=0.3.
|
48
|
+
Requires-Dist: llama-index-llms-anthropic (>=0.6.8,<0.7.0)
|
49
|
+
Requires-Dist: llama-index-llms-azure-openai (>=0.3.1,<0.4.0)
|
50
50
|
Requires-Dist: llama-index-llms-deepseek (>=0.1.0,<0.2.0)
|
51
|
-
Requires-Dist: llama-index-llms-gemini (>=0.4.
|
51
|
+
Requires-Dist: llama-index-llms-gemini (>=0.4.11,<0.5.0)
|
52
52
|
Requires-Dist: llama-index-llms-huggingface-api (>=0.3.1,<0.4.0)
|
53
53
|
Requires-Dist: llama-index-llms-ollama (>=0.5.0,<0.6.0)
|
54
|
-
Requires-Dist: llama-index-llms-openai (>=0.3.
|
54
|
+
Requires-Dist: llama-index-llms-openai (>=0.3.25,<0.4.0)
|
55
55
|
Requires-Dist: llama-index-llms-openai-like (>=0.3.3,<0.4.0)
|
56
56
|
Requires-Dist: llama-index-multi-modal-llms-openai (>=0.4.2,<0.5.0)
|
57
57
|
Requires-Dist: llama-index-readers-chatgpt-plugin (>=0.3.0,<0.4.0)
|
@@ -94,7 +94,7 @@ Description-Content-Type: text/markdown
|
|
94
94
|
|
95
95
|
[](https://snapcraft.io/pygpt)
|
96
96
|
|
97
|
-
Release: **2.5.
|
97
|
+
Release: **2.5.10** | build: **2025.03.06** | Python: **>=3.10, <3.13**
|
98
98
|
|
99
99
|
> Official website: https://pygpt.net | Documentation: https://pygpt.readthedocs.io
|
100
100
|
>
|
@@ -4064,6 +4064,19 @@ may consume additional tokens that are not displayed in the main window.
|
|
4064
4064
|
|
4065
4065
|
## Recent changes:
|
4066
4066
|
|
4067
|
+
**2.5.10 (2025-03-06)**
|
4068
|
+
|
4069
|
+
- Added a new model: Claude 3.7 Sonnet.
|
4070
|
+
- Fixed the context switch issue when the column changed and the tab is not a chat tab.
|
4071
|
+
- LlamaIndex upgraded to 0.12.22.
|
4072
|
+
- LlamaIndex LLMs upgraded to recent versions.
|
4073
|
+
|
4074
|
+
**2.5.9 (2025-03-05)**
|
4075
|
+
|
4076
|
+
- Improved formatting of HTML code in the output.
|
4077
|
+
- Disabled automatic indentation parsing as code blocks.
|
4078
|
+
- Disabled automatic scrolling of the notepad when opening a tab.
|
4079
|
+
|
4067
4080
|
**2.5.8 (2025-03-02)**
|
4068
4081
|
|
4069
4082
|
- Added a new mode: Research (Perplexity) powered by: https://perplexity.ai - beta.
|
@@ -4121,70 +4134,6 @@ may consume additional tokens that are not displayed in the main window.
|
|
4121
4134
|
- Fix: error handling in stream mode.
|
4122
4135
|
- Fix: added check for active plugin tools before tool call.
|
4123
4136
|
|
4124
|
-
**2.4.57 (2025-01-19)**
|
4125
|
-
|
4126
|
-
- Logging fix.
|
4127
|
-
|
4128
|
-
**2.4.56 (2025-01-19)**
|
4129
|
-
|
4130
|
-
- Improved tab switching and focus change.
|
4131
|
-
- Improved global keyboard shortcuts handling.
|
4132
|
-
|
4133
|
-
**2.4.55 (2025-01-18)**
|
4134
|
-
|
4135
|
-
- Added a new option in settings: Audio -> Recording timeout.
|
4136
|
-
- Added a new option in settings: Audio -> Enable timeout in continuous mode.
|
4137
|
-
|
4138
|
-
**2.4.54 (2025-01-18)**
|
4139
|
-
|
4140
|
-
- Audio output switched from PyGame to PyAudio. It may be necessary to manually connect Alsa in Snap version with: "sudo snap connect pygpt:alsa".
|
4141
|
-
- Added audio output volume progress bar.
|
4142
|
-
|
4143
|
-
**2.4.53 (2025-01-17)**
|
4144
|
-
|
4145
|
-
- Fix: issue #89
|
4146
|
-
|
4147
|
-
**2.4.52 (2025-01-17)**
|
4148
|
-
|
4149
|
-
- Improved audio input button visibility toggle.
|
4150
|
-
- Fix: check for required arguments - issue #88.
|
4151
|
-
- UI Fixes.
|
4152
|
-
|
4153
|
-
**2.4.51 (2025-01-17)**
|
4154
|
-
|
4155
|
-
- Added a "Continuous recording" mode under Audio Input in the Notepad tab, allowing for recording long voice notes and real-time auto-transcription. (beta)
|
4156
|
-
- A new option has been added in Settings -> Audio -> Continuous recording auto-transcribe interval.
|
4157
|
-
|
4158
|
-
**2.4.50 (2025-01-16)**
|
4159
|
-
|
4160
|
-
- Refactored audio input core.
|
4161
|
-
- Added audio input volume progress bar.
|
4162
|
-
|
4163
|
-
**2.4.49 (2025-01-16)**
|
4164
|
-
|
4165
|
-
- Fix: stream render in Assistants mode.
|
4166
|
-
- Fix: items remove in context regen/edit.
|
4167
|
-
|
4168
|
-
**2.4.48 (2025-01-16)**
|
4169
|
-
|
4170
|
-
- Fix: parsing lists in data loaders configuration.
|
4171
|
-
- Fix: crash on Windows on PySide6 v6.6.0.
|
4172
|
-
- Added Gemini embeddings to LlamaIndex settings.
|
4173
|
-
- LlamaIndex upgraded to 0.12.11.
|
4174
|
-
- Security updates.
|
4175
|
-
|
4176
|
-
**2.4.47 (2025-01-14)**
|
4177
|
-
|
4178
|
-
- Added support for Python 3.12.
|
4179
|
-
- Added a new model to Chat with Files: gemini-2.0-flash-exp.
|
4180
|
-
- PySide6 upgraded to 6.6.0.
|
4181
|
-
|
4182
|
-
**2.4.46 (2024-12-16)**
|
4183
|
-
|
4184
|
-
- Added a new tab in Settings: "API Keys", where the API keys configuration for Google and Anthropic models has been relocated.
|
4185
|
-
- Introduced a new mode in "Chat with Files": "Retrieve Only", which allows for retrieving raw documents from the index.
|
4186
|
-
- Fixed a bug related to tool calls in the Gemini provider when using Chat with Files mode.
|
4187
|
-
|
4188
4137
|
# Credits and links
|
4189
4138
|
|
4190
4139
|
**Official website:** <https://pygpt.net>
|
@@ -1,9 +1,9 @@
|
|
1
|
-
CHANGELOG.md,sha256=
|
2
|
-
README.md,sha256=
|
1
|
+
CHANGELOG.md,sha256=BQD6TSC5gTdv1SiYsf5A8UxTFuYd-bMnJVkVnR_Io4o,84335
|
2
|
+
README.md,sha256=iVsOOE7xjUAUbuor0lKapEI4cPNTzrdh3041KGASh_M,164044
|
3
3
|
icon.png,sha256=CzcINJaU23a9hNjsDlDNbyuiEvKZ4Wg6DQVYF6SpuRg,13970
|
4
|
-
pygpt_net/CHANGELOG.txt,sha256=
|
4
|
+
pygpt_net/CHANGELOG.txt,sha256=fJvNvI73tUVdzu_cwiOC2EiXefBgs2qzGOa63DU-miE,82791
|
5
5
|
pygpt_net/LICENSE,sha256=dz9sfFgYahvu2NZbx4C1xCsVn9GVer2wXcMkFRBvqzY,1146
|
6
|
-
pygpt_net/__init__.py,sha256=
|
6
|
+
pygpt_net/__init__.py,sha256=0kGiDfJ_lxxTgZgBkRQfNhDvnXQsVYsIWZu3kR2ObRo,1373
|
7
7
|
pygpt_net/app.py,sha256=XXjn9XaKHGRcsHN8mMuqbRHAg8_Da0GLmACUU9ddjBc,16217
|
8
8
|
pygpt_net/config.py,sha256=Qc1FOBtTf3O6A6-6KoqUGtoJ0u8hXQeowvCVbZFwtik,16405
|
9
9
|
pygpt_net/container.py,sha256=BemiVZPpPNIzfB-ZvnZeeBPFu-AcX2c30OqYFylEjJc,4023
|
@@ -80,7 +80,7 @@ pygpt_net/controller/layout/__init__.py,sha256=9R30zrZtvedAf1OxQLzxDWt8o2XirUq0b
|
|
80
80
|
pygpt_net/controller/mode/__init__.py,sha256=TY3y5fD8kpqLCmDyyCoEL_1OTSOXLnHVdIvH2lGUTew,7303
|
81
81
|
pygpt_net/controller/model/__init__.py,sha256=qRXFmBje0zu_obAku3qTkhnr01z5D5yDN4gbX347NMA,5931
|
82
82
|
pygpt_net/controller/model/editor.py,sha256=8UaNi_Ui5ooPdio9_mw4ECihTxE7Iq5n5hDl41D3hu0,12675
|
83
|
-
pygpt_net/controller/notepad/__init__.py,sha256=
|
83
|
+
pygpt_net/controller/notepad/__init__.py,sha256=zLWbPvcOQ1yY7VFT27iarpBZqz9BPkOi4KvkLtUUsK4,9438
|
84
84
|
pygpt_net/controller/painter/__init__.py,sha256=1Ekmr2a3irDkSb2wowiPXhW59rfdZOW1tdbxeubph-k,2747
|
85
85
|
pygpt_net/controller/painter/capture.py,sha256=oLBh5emwjJUTddjT6hWErv2FFjSakC_9WSruxPhkJO8,6664
|
86
86
|
pygpt_net/controller/painter/common.py,sha256=gTRCIcmAsgYhueUWNfEIwIJo-40YBVhoNSksOY1Oj34,6395
|
@@ -102,7 +102,7 @@ pygpt_net/controller/theme/nodes.py,sha256=6SCKMGQ5SZdKgy4t69raiikTLQDPPkjoYTPwl
|
|
102
102
|
pygpt_net/controller/tools/__init__.py,sha256=b_yt413iRUI9fWHzZGdtM4333UjzrJb-zmq_exYTgy4,2723
|
103
103
|
pygpt_net/controller/ui/__init__.py,sha256=LDAvURc007zxboXlgnAI5VPFCT5WSZljD2W3ApKD4zM,6098
|
104
104
|
pygpt_net/controller/ui/mode.py,sha256=8mw_tmRo7sArvgv-k1yfwx5SCfVOkwdc96U8ZiW83Q0,10231
|
105
|
-
pygpt_net/controller/ui/tabs.py,sha256=
|
105
|
+
pygpt_net/controller/ui/tabs.py,sha256=vwVB3w_hU5rudom00doyJPHzGjLm5e2akHWtb01M8-4,20366
|
106
106
|
pygpt_net/controller/ui/vision.py,sha256=KrP8wFuuz-gsO9iwbLDnzvC5iqWVlWjFarQ27HkHdEg,2303
|
107
107
|
pygpt_net/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
108
108
|
pygpt_net/core/access/__init__.py,sha256=rFKp9xMsuJHS_wxiMEMMHVRd5lXdkPj7LuObAIdQFBY,942
|
@@ -224,8 +224,8 @@ pygpt_net/core/render/plain/pid.py,sha256=yngcS0o1lBQ2RlRzWrs5JwqT_ThamvnWftp3cX
|
|
224
224
|
pygpt_net/core/render/plain/renderer.py,sha256=VDJiNrGi35IHLGo_yX9JQ37tz-5w2qm6Z-MhFs_3MyA,15267
|
225
225
|
pygpt_net/core/render/web/__init__.py,sha256=istp5dsn6EkLEP7lOBeDb8RjodUcWZqjcEvTroaTT-w,489
|
226
226
|
pygpt_net/core/render/web/body.py,sha256=dDLQJa1SrPm7n1n_GRpf9Rvuyt1UsfMjzDev4qR3424,29520
|
227
|
-
pygpt_net/core/render/web/helpers.py,sha256=
|
228
|
-
pygpt_net/core/render/web/parser.py,sha256=
|
227
|
+
pygpt_net/core/render/web/helpers.py,sha256=ymJl1vUAYoEh3PyMmtjpRtH4KyhZIhMjRhpwR73NLic,3576
|
228
|
+
pygpt_net/core/render/web/parser.py,sha256=49Vq3jqRrUWWKy0WlBiwR8JcDzp3_MKoLNEXOpbL3qU,10230
|
229
229
|
pygpt_net/core/render/web/pid.py,sha256=ZyYmzB01adMqY9-1Zi0QhGgrzyg-E9xC_VxqjNvTHWk,1331
|
230
230
|
pygpt_net/core/render/web/renderer.py,sha256=vVMiFxffct1iCOtMhkF28N5AOM54g80haAszmoiuDD8,39227
|
231
231
|
pygpt_net/core/render/web/syntax_highlight.py,sha256=QSLGF5cJL_Xeqej7_TYwY_5C2w9enXV_cMEuaJ3C43U,2005
|
@@ -250,9 +250,9 @@ pygpt_net/css_rc.py,sha256=i13kX7irhbYCWZ5yJbcMmnkFp_UfS4PYnvRFSPF7XXo,11349
|
|
250
250
|
pygpt_net/data/audio/click_off.mp3,sha256=aNiRDP1pt-Jy7ija4YKCNFBwvGWbzU460F4pZWZDS90,65201
|
251
251
|
pygpt_net/data/audio/click_on.mp3,sha256=qfdsSnthAEHVXzeyN4LlC0OvXuyW8p7stb7VXtlvZ1k,65201
|
252
252
|
pygpt_net/data/audio/ok.mp3,sha256=LTiV32pEBkpUGBkKkcOdOFB7Eyt_QoP2Nv6c5AaXftk,32256
|
253
|
-
pygpt_net/data/config/config.json,sha256=
|
254
|
-
pygpt_net/data/config/models.json,sha256=
|
255
|
-
pygpt_net/data/config/modes.json,sha256=
|
253
|
+
pygpt_net/data/config/config.json,sha256=Aa2QnkGf0JdlNI6kFwCmPMsBKGATjLgY_PM1LfvQnjk,19973
|
254
|
+
pygpt_net/data/config/models.json,sha256=ebhfH0rDauaVKsYc3M_Fh9yyHkF7h6Dkhu_LPjv1590,103293
|
255
|
+
pygpt_net/data/config/modes.json,sha256=aOoswOizqG_nITWbw59vRokfbh57_D8FrDlCAtVhDJY,2085
|
256
256
|
pygpt_net/data/config/presets/agent_openai.json,sha256=vMTR-soRBiEZrpJJHuFLWyx8a3Ez_BqtqjyXgxCAM_Q,733
|
257
257
|
pygpt_net/data/config/presets/agent_openai_assistant.json,sha256=awJw9lNTGpKML6SJUShVn7lv8AXh0oic7wBeyoN7AYs,798
|
258
258
|
pygpt_net/data/config/presets/agent_planner.json,sha256=a6Rv58Bnm2STNWB0Rw_dGhnsz6Lb3J8_GwsUVZaTIXc,742
|
@@ -262,12 +262,12 @@ pygpt_net/data/config/presets/current.agent.json,sha256=aSkA0Eh1bziRaXFHMkEE1OG2
|
|
262
262
|
pygpt_net/data/config/presets/current.agent_llama.json,sha256=-XdX5tAWXDc34FCDa7GotQjg1tPNigG5RdJbV2CAphU,705
|
263
263
|
pygpt_net/data/config/presets/current.assistant.json,sha256=zORIJwns1wTEFXjwabm1z-Pqd8KKpCumflHiNxzBKZg,419
|
264
264
|
pygpt_net/data/config/presets/current.audio.json,sha256=bf24XyMudkA5uBT63oktncLAbsUHDbovuysYLIdoiVQ,733
|
265
|
-
pygpt_net/data/config/presets/current.chat.json,sha256
|
265
|
+
pygpt_net/data/config/presets/current.chat.json,sha256=izDX6u8CZFysmwhT4N2A805HYPIEtV3XcTHjbzBtG20,480
|
266
266
|
pygpt_net/data/config/presets/current.completion.json,sha256=JU5vjqKc_L3nECPr3HazXYhlo2bzCxZ6cDPfA40A4Zg,436
|
267
267
|
pygpt_net/data/config/presets/current.expert.json,sha256=V0I633FyU2ZLZnTApiSF29tila85zYBqYadojedXWJw,419
|
268
268
|
pygpt_net/data/config/presets/current.img.json,sha256=hr6gj6ZqcQgv0CJdqFSsGMUTFRixcsTa-sDX2_9P7Io,419
|
269
269
|
pygpt_net/data/config/presets/current.langchain.json,sha256=yVOmJ1VpX0saxdBO_8tGaWM5oxa8EGbIcS6Wrk7Nqzo,433
|
270
|
-
pygpt_net/data/config/presets/current.llama_index.json,sha256=
|
270
|
+
pygpt_net/data/config/presets/current.llama_index.json,sha256=1ZcALHvPgf1g-1W2tyfK77gDDHFzlGZVMNg87jT5N_s,480
|
271
271
|
pygpt_net/data/config/presets/current.research.json,sha256=dExl7MoUUKAUyRd1njumD6C9viT8qyZSZwhU4PCCNQg,759
|
272
272
|
pygpt_net/data/config/presets/current.vision.json,sha256=x1ll5B3ROSKYQA6l27PRGXUnfugXNJ5730ZcuRXEO1I,447
|
273
273
|
pygpt_net/data/config/presets/dalle_white_cat.json,sha256=esqUb43cqY8dAo7B5u99tRC0MBV5lmlrVLnJhTSkL8w,552
|
@@ -1851,7 +1851,7 @@ pygpt_net/provider/core/mode/patch.py,sha256=VS2KCYW05jxLd-lcStNY1k4fHKUUrVVLTdR
|
|
1851
1851
|
pygpt_net/provider/core/model/__init__.py,sha256=jQQgG9u_ZLsZWXustoc1uvC-abUvj4RBKPAM30-f2Kc,488
|
1852
1852
|
pygpt_net/provider/core/model/base.py,sha256=L1x2rHha8a8hnCUYxZr88utay1EWEx5qBXW_2acpAN0,1319
|
1853
1853
|
pygpt_net/provider/core/model/json_file.py,sha256=k6M6KhiXJ0xsXdYXUFsHPcaJ-v_dMkzX8311Rk-d57s,6566
|
1854
|
-
pygpt_net/provider/core/model/patch.py,sha256=
|
1854
|
+
pygpt_net/provider/core/model/patch.py,sha256=rBUQXg9BFSOI_-4aVLWceC_NItToAhEOVb01OAl-A3Y,24318
|
1855
1855
|
pygpt_net/provider/core/notepad/__init__.py,sha256=jQQgG9u_ZLsZWXustoc1uvC-abUvj4RBKPAM30-f2Kc,488
|
1856
1856
|
pygpt_net/provider/core/notepad/base.py,sha256=7aPhild8cALTaN3JEbI0YrkIW1DRIycGQWTfsdH6WcQ,1323
|
1857
1857
|
pygpt_net/provider/core/notepad/db_sqlite/__init__.py,sha256=DQnVKJxvLq-6zlRlLk3MXSQZEObFtcQ5p5mEnuRzwYE,3104
|
@@ -2181,8 +2181,8 @@ pygpt_net/ui/widget/textarea/web.py,sha256=2LebPHa_e5lvBqnIVzjwsLcFMoc11BonXgAUs
|
|
2181
2181
|
pygpt_net/ui/widget/vision/__init__.py,sha256=8HT4tQFqQogEEpGYTv2RplKBthlsFKcl5egnv4lzzEw,488
|
2182
2182
|
pygpt_net/ui/widget/vision/camera.py,sha256=T8b5cmK6uhf_WSSxzPt_Qod8JgMnst6q8sQqRvgQiSA,2584
|
2183
2183
|
pygpt_net/utils.py,sha256=WtrdagJ-BlCjxGEEVq2rhsyAZMcU6JqltCXzOs823po,6707
|
2184
|
-
pygpt_net-2.5.
|
2185
|
-
pygpt_net-2.5.
|
2186
|
-
pygpt_net-2.5.
|
2187
|
-
pygpt_net-2.5.
|
2188
|
-
pygpt_net-2.5.
|
2184
|
+
pygpt_net-2.5.10.dist-info/LICENSE,sha256=rbPqNB_xxANH8hKayJyIcTwD4bj4Y2G-Mcm85r1OImM,1126
|
2185
|
+
pygpt_net-2.5.10.dist-info/METADATA,sha256=fER5LPoJ_rxaPjoDaIvJkigt-u5h-lr29DWMGGDrghQ,169001
|
2186
|
+
pygpt_net-2.5.10.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
|
2187
|
+
pygpt_net-2.5.10.dist-info/entry_points.txt,sha256=qvpII6UHIt8XfokmQWnCYQrTgty8FeJ9hJvOuUFCN-8,43
|
2188
|
+
pygpt_net-2.5.10.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|