pygpt-net 2.5.7__py3-none-any.whl → 2.5.9__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 (42) hide show
  1. CHANGELOG.md +13 -1
  2. README.md +24 -68
  3. pygpt_net/CHANGELOG.txt +13 -1
  4. pygpt_net/__init__.py +3 -3
  5. pygpt_net/controller/chat/stream.py +6 -1
  6. pygpt_net/controller/chat/vision.py +2 -0
  7. pygpt_net/controller/lang/custom.py +3 -1
  8. pygpt_net/controller/notepad/__init__.py +6 -2
  9. pygpt_net/controller/presets/editor.py +8 -1
  10. pygpt_net/core/agents/legacy.py +2 -0
  11. pygpt_net/core/bridge/__init__.py +10 -2
  12. pygpt_net/core/ctx/__init__.py +4 -1
  13. pygpt_net/core/debug/presets.py +3 -1
  14. pygpt_net/core/events/control.py +2 -1
  15. pygpt_net/core/experts/__init__.py +3 -1
  16. pygpt_net/core/models/__init__.py +6 -1
  17. pygpt_net/core/modes/__init__.py +3 -1
  18. pygpt_net/core/presets/__init__.py +5 -1
  19. pygpt_net/core/render/web/helpers.py +12 -7
  20. pygpt_net/core/render/web/parser.py +7 -5
  21. pygpt_net/core/tokens/__init__.py +4 -2
  22. pygpt_net/core/types/mode.py +3 -2
  23. pygpt_net/data/config/config.json +5 -3
  24. pygpt_net/data/config/models.json +424 -3
  25. pygpt_net/data/config/modes.json +9 -3
  26. pygpt_net/data/config/presets/current.research.json +35 -0
  27. pygpt_net/data/config/settings.json +19 -0
  28. pygpt_net/data/locale/locale.en.ini +6 -0
  29. pygpt_net/item/preset.py +5 -1
  30. pygpt_net/plugin/openai_dalle/__init__.py +3 -1
  31. pygpt_net/plugin/openai_vision/__init__.py +3 -1
  32. pygpt_net/provider/core/config/patch.py +10 -1
  33. pygpt_net/provider/core/model/patch.py +7 -1
  34. pygpt_net/provider/core/preset/json_file.py +4 -0
  35. pygpt_net/provider/gpt/__init__.py +30 -6
  36. pygpt_net/provider/gpt/chat.py +3 -6
  37. pygpt_net/ui/dialog/preset.py +3 -1
  38. {pygpt_net-2.5.7.dist-info → pygpt_net-2.5.9.dist-info}/METADATA +25 -69
  39. {pygpt_net-2.5.7.dist-info → pygpt_net-2.5.9.dist-info}/RECORD +42 -41
  40. {pygpt_net-2.5.7.dist-info → pygpt_net-2.5.9.dist-info}/LICENSE +0 -0
  41. {pygpt_net-2.5.7.dist-info → pygpt_net-2.5.9.dist-info}/WHEEL +0 -0
  42. {pygpt_net-2.5.7.dist-info → pygpt_net-2.5.9.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: 2025.02.26 23:00:00 #
9
+ # Updated Date: 2025.03.02 19:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  from typing import Tuple, List
@@ -22,6 +22,7 @@ from pygpt_net.core.types import (
22
22
  MODE_ASSISTANT,
23
23
  MODE_AUDIO,
24
24
  MODE_CHAT,
25
+ MODE_RESEARCH,
25
26
  MODE_COMPLETION,
26
27
  MODE_EXPERT,
27
28
  MODE_LANGCHAIN,
@@ -40,6 +41,7 @@ CHAT_MODES = [
40
41
  MODE_AGENT_LLAMA,
41
42
  MODE_EXPERT,
42
43
  MODE_AUDIO,
44
+ MODE_RESEARCH,
43
45
  ]
44
46
 
45
47
  class Tokens:
@@ -414,7 +416,7 @@ class Tokens:
414
416
  model_id = self.window.core.models.get_id(model)
415
417
  mode = self.window.core.config.get('mode')
416
418
  tokens = 0
417
- if mode in [MODE_CHAT, MODE_VISION, MODE_AUDIO]:
419
+ if mode in [MODE_CHAT, MODE_VISION, MODE_AUDIO, MODE_RESEARCH]:
418
420
  tokens += self.from_prompt(system_prompt, "", model_id) # system prompt
419
421
  tokens += self.from_text("system", model_id)
420
422
  tokens += self.from_prompt(input_prompt, "", model_id) # input prompt
@@ -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.11.26 19:00:00 #
9
+ # Updated Date: 2025.03.02 19:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  MODE_AUDIO = "audio"
@@ -19,4 +19,5 @@ MODE_LANGCHAIN = "langchain"
19
19
  MODE_LLAMA_INDEX = "llama_index"
20
20
  MODE_AGENT = "agent"
21
21
  MODE_AGENT_LLAMA = "agent_llama"
22
- MODE_EXPERT = "expert"
22
+ MODE_EXPERT = "expert"
23
+ MODE_RESEARCH = "research"
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "__meta__": {
3
- "version": "2.5.7",
4
- "app.version": "2.5.7",
5
- "updated_at": "2025-02-26T00:00:00"
3
+ "version": "2.5.9",
4
+ "app.version": "2.5.9",
5
+ "updated_at": "2025-03-05T00:00:00"
6
6
  },
7
7
  "access.audio.event.speech": false,
8
8
  "access.audio.event.speech.disabled": [],
@@ -61,11 +61,13 @@
61
61
  "api_azure_version": "2023-07-01-preview",
62
62
  "api_azure_endpoint": "https://<your-resource-name>.openai.azure.com/",
63
63
  "api_endpoint": "https://api.openai.com/v1",
64
+ "api_endpoint_perplexity": "https://api.perplexity.ai",
64
65
  "api_key": "",
65
66
  "api_key_google": "",
66
67
  "api_key_anthropic": "",
67
68
  "api_key_hugging_face": "",
68
69
  "api_key_deepseek": "",
70
+ "api_key_perplexity": "",
69
71
  "api_proxy": "",
70
72
  "app.env": [],
71
73
  "assistant": "",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "__meta__": {
3
- "version": "2.5.7",
4
- "app.version": "2.5.7",
5
- "updated_at": "2025-02-26T00:00:00"
3
+ "version": "2.5.9",
4
+ "app.version": "2.5.9",
5
+ "updated_at": "2025-03-05T00:00:00"
6
6
  },
7
7
  "items": {
8
8
  "claude-3-5-sonnet-20240620": {
@@ -1861,6 +1861,85 @@
1861
1861
  "default": false,
1862
1862
  "multimodal": []
1863
1863
  },
1864
+ "gpt-4.5-preview": {
1865
+ "id": "gpt-4.5-preview",
1866
+ "name": "gpt-4.5-preview",
1867
+ "mode": [
1868
+ "chat",
1869
+ "assistant",
1870
+ "langchain",
1871
+ "llama_index",
1872
+ "vision",
1873
+ "agent",
1874
+ "agent_llama",
1875
+ "expert"
1876
+ ],
1877
+ "langchain": {
1878
+ "provider": "openai",
1879
+ "mode": [
1880
+ "chat"
1881
+ ],
1882
+ "args": [
1883
+ {
1884
+ "name": "model_name",
1885
+ "value": "gpt-4.5-preview",
1886
+ "type": "str"
1887
+ }
1888
+ ],
1889
+ "env": [
1890
+ {
1891
+ "name": "OPENAI_API_KEY",
1892
+ "value": "{api_key}"
1893
+ },
1894
+ {
1895
+ "name": "OPENAI_API_BASE",
1896
+ "value": "{api_endpoint}"
1897
+ },
1898
+ {
1899
+ "name": "AZURE_OPENAI_ENDPOINT",
1900
+ "value": "{api_azure_endpoint}"
1901
+ },
1902
+ {
1903
+ "name": "OPENAI_API_VERSION",
1904
+ "value": "{api_azure_version}"
1905
+ }
1906
+ ]
1907
+ },
1908
+ "llama_index": {
1909
+ "provider": "openai",
1910
+ "mode": [
1911
+ "chat"
1912
+ ],
1913
+ "args": [
1914
+ {
1915
+ "name": "model",
1916
+ "value": "gpt-4o",
1917
+ "type": "str"
1918
+ }
1919
+ ],
1920
+ "env": [
1921
+ {
1922
+ "name": "OPENAI_API_KEY",
1923
+ "value": "{api_key}"
1924
+ },
1925
+ {
1926
+ "name": "OPENAI_API_BASE",
1927
+ "value": "{api_endpoint}"
1928
+ },
1929
+ {
1930
+ "name": "AZURE_OPENAI_ENDPOINT",
1931
+ "value": "{api_azure_endpoint}"
1932
+ },
1933
+ {
1934
+ "name": "OPENAI_API_VERSION",
1935
+ "value": "{api_azure_version}"
1936
+ }
1937
+ ]
1938
+ },
1939
+ "ctx": 128000,
1940
+ "tokens": 16384,
1941
+ "default": false
1942
+ },
1864
1943
  "chatgpt-4o-latest": {
1865
1944
  "id": "chatgpt-4o-latest",
1866
1945
  "name": "chatgpt-4o-latest",
@@ -2927,6 +3006,348 @@
2927
3006
  "ctx": 32768,
2928
3007
  "tokens": 4096,
2929
3008
  "default": false
3009
+ },
3010
+ "sonar-deep-research": {
3011
+ "id": "sonar-deep-research",
3012
+ "name": "sonar-deep-research",
3013
+ "mode": [
3014
+ "research"
3015
+ ],
3016
+ "langchain": {
3017
+ "provider": "openai",
3018
+ "mode": [
3019
+ "chat"
3020
+ ],
3021
+ "args": [
3022
+ {
3023
+ "name": "model_name",
3024
+ "value": "sonar-deep-research",
3025
+ "type": "str"
3026
+ }
3027
+ ],
3028
+ "env": [
3029
+ {
3030
+ "name": "OPENAI_API_KEY",
3031
+ "value": "{api_key_perplexity}"
3032
+ },
3033
+ {
3034
+ "name": "OPENAI_API_BASE",
3035
+ "value": "{api_endpoint_perplexity}"
3036
+ }
3037
+ ]
3038
+ },
3039
+ "llama_index": {
3040
+ "provider": "openai",
3041
+ "mode": [
3042
+ "chat"
3043
+ ],
3044
+ "args": [
3045
+ {
3046
+ "name": "model",
3047
+ "value": "sonar-deep-research",
3048
+ "type": "str"
3049
+ }
3050
+ ],
3051
+ "env": [
3052
+ {
3053
+ "name": "OPENAI_API_KEY",
3054
+ "value": "{api_key_perplexity}"
3055
+ },
3056
+ {
3057
+ "name": "OPENAI_API_BASE",
3058
+ "value": "{api_endpoint_perplexity}"
3059
+ }
3060
+ ]
3061
+ },
3062
+ "ctx": 128000,
3063
+ "tokens": 16384,
3064
+ "default": false,
3065
+ "multimodal": []
3066
+ },
3067
+ "sonar-reasoning-pro": {
3068
+ "id": "sonar-reasoning-pro",
3069
+ "name": "sonar-reasoning-pro",
3070
+ "mode": [
3071
+ "research"
3072
+ ],
3073
+ "langchain": {
3074
+ "provider": "openai",
3075
+ "mode": [
3076
+ "chat"
3077
+ ],
3078
+ "args": [
3079
+ {
3080
+ "name": "model_name",
3081
+ "value": "sonar-reasoning-pro",
3082
+ "type": "str"
3083
+ }
3084
+ ],
3085
+ "env": [
3086
+ {
3087
+ "name": "OPENAI_API_KEY",
3088
+ "value": "{api_key_perplexity}"
3089
+ },
3090
+ {
3091
+ "name": "OPENAI_API_BASE",
3092
+ "value": "{api_endpoint_perplexity}"
3093
+ }
3094
+ ]
3095
+ },
3096
+ "llama_index": {
3097
+ "provider": "openai",
3098
+ "mode": [
3099
+ "chat"
3100
+ ],
3101
+ "args": [
3102
+ {
3103
+ "name": "model",
3104
+ "value": "sonar-reasoning-pro",
3105
+ "type": "str"
3106
+ }
3107
+ ],
3108
+ "env": [
3109
+ {
3110
+ "name": "OPENAI_API_KEY",
3111
+ "value": "{api_key_perplexity}"
3112
+ },
3113
+ {
3114
+ "name": "OPENAI_API_BASE",
3115
+ "value": "{api_endpoint_perplexity}"
3116
+ }
3117
+ ]
3118
+ },
3119
+ "ctx": 128000,
3120
+ "tokens": 8000,
3121
+ "default": false,
3122
+ "multimodal": []
3123
+ },
3124
+ "sonar-reasoning": {
3125
+ "id": "sonar-reasoning",
3126
+ "name": "sonar-reasoning",
3127
+ "mode": [
3128
+ "research"
3129
+ ],
3130
+ "langchain": {
3131
+ "provider": "openai",
3132
+ "mode": [
3133
+ "chat"
3134
+ ],
3135
+ "args": [
3136
+ {
3137
+ "name": "model_name",
3138
+ "value": "sonar-reasoning",
3139
+ "type": "str"
3140
+ }
3141
+ ],
3142
+ "env": [
3143
+ {
3144
+ "name": "OPENAI_API_KEY",
3145
+ "value": "{api_key_perplexity}"
3146
+ },
3147
+ {
3148
+ "name": "OPENAI_API_BASE",
3149
+ "value": "{api_endpoint_perplexity}"
3150
+ }
3151
+ ]
3152
+ },
3153
+ "llama_index": {
3154
+ "provider": "openai",
3155
+ "mode": [
3156
+ "chat"
3157
+ ],
3158
+ "args": [
3159
+ {
3160
+ "name": "model",
3161
+ "value": "sonar-reasoning",
3162
+ "type": "str"
3163
+ }
3164
+ ],
3165
+ "env": [
3166
+ {
3167
+ "name": "OPENAI_API_KEY",
3168
+ "value": "{api_key_perplexity}"
3169
+ },
3170
+ {
3171
+ "name": "OPENAI_API_BASE",
3172
+ "value": "{api_endpoint_perplexity}"
3173
+ }
3174
+ ]
3175
+ },
3176
+ "ctx": 128000,
3177
+ "tokens": 16384,
3178
+ "default": false,
3179
+ "multimodal": []
3180
+ },
3181
+ "sonar-pro": {
3182
+ "id": "sonar-pro",
3183
+ "name": "sonar-pro",
3184
+ "mode": [
3185
+ "research"
3186
+ ],
3187
+ "langchain": {
3188
+ "provider": "openai",
3189
+ "mode": [
3190
+ "chat"
3191
+ ],
3192
+ "args": [
3193
+ {
3194
+ "name": "model_name",
3195
+ "value": "sonar-pro",
3196
+ "type": "str"
3197
+ }
3198
+ ],
3199
+ "env": [
3200
+ {
3201
+ "name": "OPENAI_API_KEY",
3202
+ "value": "{api_key_perplexity}"
3203
+ },
3204
+ {
3205
+ "name": "OPENAI_API_BASE",
3206
+ "value": "{api_endpoint_perplexity}"
3207
+ }
3208
+ ]
3209
+ },
3210
+ "llama_index": {
3211
+ "provider": "openai",
3212
+ "mode": [
3213
+ "chat"
3214
+ ],
3215
+ "args": [
3216
+ {
3217
+ "name": "model",
3218
+ "value": "sonar-pro",
3219
+ "type": "str"
3220
+ }
3221
+ ],
3222
+ "env": [
3223
+ {
3224
+ "name": "OPENAI_API_KEY",
3225
+ "value": "{api_key_perplexity}"
3226
+ },
3227
+ {
3228
+ "name": "OPENAI_API_BASE",
3229
+ "value": "{api_endpoint_perplexity}"
3230
+ }
3231
+ ]
3232
+ },
3233
+ "ctx": 200000,
3234
+ "tokens": 8000,
3235
+ "default": false,
3236
+ "multimodal": []
3237
+ },
3238
+ "sonar": {
3239
+ "id": "sonar",
3240
+ "name": "sonar",
3241
+ "mode": [
3242
+ "research"
3243
+ ],
3244
+ "langchain": {
3245
+ "provider": "openai",
3246
+ "mode": [
3247
+ "chat"
3248
+ ],
3249
+ "args": [
3250
+ {
3251
+ "name": "model_name",
3252
+ "value": "sonar",
3253
+ "type": "str"
3254
+ }
3255
+ ],
3256
+ "env": [
3257
+ {
3258
+ "name": "OPENAI_API_KEY",
3259
+ "value": "{api_key_perplexity}"
3260
+ },
3261
+ {
3262
+ "name": "OPENAI_API_BASE",
3263
+ "value": "{api_endpoint_perplexity}"
3264
+ }
3265
+ ]
3266
+ },
3267
+ "llama_index": {
3268
+ "provider": "openai",
3269
+ "mode": [
3270
+ "chat"
3271
+ ],
3272
+ "args": [
3273
+ {
3274
+ "name": "model",
3275
+ "value": "sonar",
3276
+ "type": "str"
3277
+ }
3278
+ ],
3279
+ "env": [
3280
+ {
3281
+ "name": "OPENAI_API_KEY",
3282
+ "value": "{api_key_perplexity}"
3283
+ },
3284
+ {
3285
+ "name": "OPENAI_API_BASE",
3286
+ "value": "{api_endpoint_perplexity}"
3287
+ }
3288
+ ]
3289
+ },
3290
+ "ctx": 128000,
3291
+ "tokens": 16384,
3292
+ "default": false,
3293
+ "multimodal": []
3294
+ },
3295
+ "r1-1776": {
3296
+ "id": "r1-1776",
3297
+ "name": "r1-1776",
3298
+ "mode": [
3299
+ "research"
3300
+ ],
3301
+ "langchain": {
3302
+ "provider": "openai",
3303
+ "mode": [
3304
+ "chat"
3305
+ ],
3306
+ "args": [
3307
+ {
3308
+ "name": "model_name",
3309
+ "value": "r1-1776",
3310
+ "type": "str"
3311
+ }
3312
+ ],
3313
+ "env": [
3314
+ {
3315
+ "name": "OPENAI_API_KEY",
3316
+ "value": "{api_key_perplexity}"
3317
+ },
3318
+ {
3319
+ "name": "OPENAI_API_BASE",
3320
+ "value": "{api_endpoint_perplexity}"
3321
+ }
3322
+ ]
3323
+ },
3324
+ "llama_index": {
3325
+ "provider": "openai",
3326
+ "mode": [
3327
+ "chat"
3328
+ ],
3329
+ "args": [
3330
+ {
3331
+ "name": "model",
3332
+ "value": "r1-1776",
3333
+ "type": "str"
3334
+ }
3335
+ ],
3336
+ "env": [
3337
+ {
3338
+ "name": "OPENAI_API_KEY",
3339
+ "value": "{api_key_perplexity}"
3340
+ },
3341
+ {
3342
+ "name": "OPENAI_API_BASE",
3343
+ "value": "{api_endpoint_perplexity}"
3344
+ }
3345
+ ]
3346
+ },
3347
+ "ctx": 128000,
3348
+ "tokens": 16384,
3349
+ "default": false,
3350
+ "multimodal": []
2930
3351
  }
2931
3352
  }
2932
3353
  }
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "__meta__": {
3
- "version": "2.5.7",
4
- "app.version": "2.5.7",
5
- "updated_at": "2025-02-26T00:00:00"
3
+ "version": "2.5.9",
4
+ "app.version": "2.5.9",
5
+ "updated_at": "2025-03-05T00:00:00"
6
6
  },
7
7
  "items": {
8
8
  "chat": {
@@ -17,6 +17,12 @@
17
17
  "label": "mode.audio",
18
18
  "default": false
19
19
  },
20
+ "research": {
21
+ "id": "research",
22
+ "name": "research",
23
+ "label": "mode.research",
24
+ "default": false
25
+ },
20
26
  "completion": {
21
27
  "id": "completion",
22
28
  "name": "completion",
@@ -0,0 +1,35 @@
1
+ {
2
+ "uuid": "900887dd-dfec-47e6-ab6f-2f217f2e9ada",
3
+ "name": "*",
4
+ "ai_name": "",
5
+ "user_name": "",
6
+ "prompt": "",
7
+ "chat": false,
8
+ "completion": false,
9
+ "img": false,
10
+ "vision": false,
11
+ "langchain": false,
12
+ "assistant": false,
13
+ "llama_index": false,
14
+ "agent": false,
15
+ "agent_llama": false,
16
+ "expert": false,
17
+ "audio": false,
18
+ "research": true,
19
+ "temperature": 1.0,
20
+ "filename": "current.research",
21
+ "model": null,
22
+ "tools": {
23
+ "function": []
24
+ },
25
+ "experts": [],
26
+ "idx": null,
27
+ "agent_provider": null,
28
+ "assistant_id": "",
29
+ "enabled": true,
30
+ "__meta__": {
31
+ "version": "2.4.34",
32
+ "app.version": "2.4.34",
33
+ "updated_at": "2024-11-26T22:06:18"
34
+ }
35
+ }
@@ -177,6 +177,25 @@
177
177
  "advanced": false,
178
178
  "tab": "Azure OpenAI"
179
179
  },
180
+ "api_key_perplexity": {
181
+ "section": "api_keys",
182
+ "type": "text",
183
+ "slider": false,
184
+ "label": "settings.api_key.perplexity",
185
+ "description": "settings.api_key.perplexity.desc",
186
+ "value": "",
187
+ "min": null,
188
+ "max": null,
189
+ "multiplier": null,
190
+ "step": null,
191
+ "extra": {
192
+ "bold": true
193
+ },
194
+ "secret": true,
195
+ "persist": true,
196
+ "advanced": false,
197
+ "tab": "Perplexity"
198
+ },
180
199
  "app.env": {
181
200
  "section": "general",
182
201
  "type": "dict",
@@ -816,6 +816,8 @@ model.tokens = Output tokens
816
816
  model.tokens.desc = Max model output tokens
817
817
  mode.vision = Vision
818
818
  mode.vision.tooltip = Image analysis with GPT-4 Vision
819
+ mode.research = Research (Perplexity)
820
+ mode.research.tooltip = Web research with Perplexity
819
821
  msg.agent.plan = Plan
820
822
  msg.agent.plan.current = Current plan
821
823
  msg.agent.plan.deps = Dependencies
@@ -885,6 +887,7 @@ preset.prompt.paste_template = Paste from template...
885
887
  preset.prompt.rename = Rename
886
888
  preset.prompt.save_custom = Save as My template
887
889
  preset.prompt.use = Paste...
890
+ preset.research = Research (Perplexity)
888
891
  preset.temperature = Temperature
889
892
  preset.tool.function = Functions
890
893
  preset.tool.function.tip.agent_llama = Tip: Functions from plugins are enabled automatically.
@@ -941,6 +944,8 @@ settings.api_key.google = Google API KEY
941
944
  settings.api_key.google.desc = Required for the Google API and Gemini models.
942
945
  settings.api_key.hugging_face = HuggingFace API KEY
943
946
  settings.api_key.hugging_face.desc = Required for the HuggingFace API.
947
+ settings.api_key.perplexity = Perplexity API KEY
948
+ settings.api_key.perplexity.desc = Required for the Perplexity API.
944
949
  settings.api_proxy = Proxy address
945
950
  settings.api_proxy.desc = Optional, proxy for OpenAI API, e.g. http://proxy.example.com or socks5://user:pass@host:port
946
951
  settings.app.env = Application environment (os.environ)
@@ -1123,6 +1128,7 @@ settings.section.api_keys.deepseek = DeepSeek
1123
1128
  settings.section.api_keys.google = Google
1124
1129
  settings.section.api_keys.huggingface = HuggingFace
1125
1130
  settings.section.api_keys.openai = OpenAI
1131
+ settings.section.api_keys.perplexity = Perplexity
1126
1132
  settings.section.audio = Audio
1127
1133
  settings.section.ctx = Context
1128
1134
  settings.section.developer = Developer
pygpt_net/item/preset.py 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: 2024.11.26 19:00:00 #
9
+ # Updated Date: 2025.03.02 19:00:00 #
10
10
  # ================================================== #
11
11
 
12
12
  import json
@@ -31,6 +31,7 @@ class PresetItem:
31
31
  self.agent_llama = False
32
32
  self.expert = False
33
33
  self.audio = False
34
+ self.research = False
34
35
  self.temperature = 1.0
35
36
  self.filename = None
36
37
  self.model = None
@@ -65,6 +66,7 @@ class PresetItem:
65
66
  "agent_llama": self.agent_llama,
66
67
  "expert": self.expert,
67
68
  "audio": self.audio,
69
+ "research": self.research,
68
70
  "temperature": self.temperature,
69
71
  "filename": self.filename,
70
72
  "model": self.model,
@@ -109,6 +111,8 @@ class PresetItem:
109
111
  self.expert = data["expert"]
110
112
  if "audio" in data:
111
113
  self.audio = data["audio"]
114
+ if "research" in data:
115
+ self.research = data["research"]
112
116
  if "temperature" in data:
113
117
  self.temperature = data["temperature"]
114
118
  if "filename" in data: