pygpt-net 2.6.19__py3-none-any.whl → 2.6.20__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 +5 -0
- pygpt_net/__init__.py +1 -1
- pygpt_net/app.py +3 -1
- pygpt_net/data/config/config.json +2 -2
- pygpt_net/data/config/models.json +2 -2
- pygpt_net/plugin/server/__init__.py +12 -0
- pygpt_net/plugin/server/config.py +301 -0
- pygpt_net/plugin/server/plugin.py +111 -0
- pygpt_net/plugin/server/worker.py +1057 -0
- pygpt_net/ui/base/config_dialog.py +17 -3
- pygpt_net/ui/widget/option/checkbox.py +16 -2
- {pygpt_net-2.6.19.dist-info → pygpt_net-2.6.20.dist-info}/METADATA +267 -1291
- {pygpt_net-2.6.19.dist-info → pygpt_net-2.6.20.dist-info}/RECORD +16 -12
- {pygpt_net-2.6.19.dist-info → pygpt_net-2.6.20.dist-info}/LICENSE +0 -0
- {pygpt_net-2.6.19.dist-info → pygpt_net-2.6.20.dist-info}/WHEEL +0 -0
- {pygpt_net-2.6.19.dist-info → pygpt_net-2.6.20.dist-info}/entry_points.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: pygpt-net
|
|
3
|
-
Version: 2.6.
|
|
3
|
+
Version: 2.6.20
|
|
4
4
|
Summary: Desktop AI Assistant powered by: OpenAI GPT-5, o1, o3, GPT-4, 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: py_gpt,py-gpt,pygpt,desktop,app,o1,o3,gpt-5,gpt,gpt4,gpt-4o,gpt-4v,gpt3.5,gpt-4,gpt-4-vision,gpt-3.5,llama3,mistral,gemini,grok,deepseek,bielik,claude,tts,whisper,vision,chatgpt,dall-e,chat,chatbot,assistant,text completion,image generation,ai,api,openai,api key,langchain,llama-index,ollama,presets,ui,qt,pyside
|
|
@@ -23,6 +23,7 @@ Requires-Dist: PySide6 (==6.9.1)
|
|
|
23
23
|
Requires-Dist: Pygments (>=2.19.2,<3.0.0)
|
|
24
24
|
Requires-Dist: SQLAlchemy (>=2.0.41,<3.0.0)
|
|
25
25
|
Requires-Dist: SpeechRecognition (>=3.14.3,<4.0.0)
|
|
26
|
+
Requires-Dist: Telethon (>=1.40.0,<2.0.0)
|
|
26
27
|
Requires-Dist: anthropic (>=0.54.0,<0.55.0)
|
|
27
28
|
Requires-Dist: azure-core (>=1.34.0,<2.0.0)
|
|
28
29
|
Requires-Dist: beautifulsoup4 (>=4.13.4,<5.0.0)
|
|
@@ -80,6 +81,7 @@ Requires-Dist: openai-agents (>=0.2.3,<0.3.0)
|
|
|
80
81
|
Requires-Dist: opencv-python (>=4.11.0.86,<5.0.0.0)
|
|
81
82
|
Requires-Dist: packaging (>=24.2,<25.0)
|
|
82
83
|
Requires-Dist: pandas (>=2.2.3,<3.0.0)
|
|
84
|
+
Requires-Dist: paramiko (>=4.0.0,<5.0.0)
|
|
83
85
|
Requires-Dist: pillow (>=10.4.0,<11.0.0)
|
|
84
86
|
Requires-Dist: pinecone-client (>=3.2.2,<4.0.0)
|
|
85
87
|
Requires-Dist: psutil (>=7.0.0,<8.0.0)
|
|
@@ -109,7 +111,7 @@ Description-Content-Type: text/markdown
|
|
|
109
111
|
|
|
110
112
|
[](https://snapcraft.io/pygpt)
|
|
111
113
|
|
|
112
|
-
Release: **2.6.
|
|
114
|
+
Release: **2.6.20** | build: **2025-08-22** | Python: **>=3.10, <3.14**
|
|
113
115
|
|
|
114
116
|
> Official website: https://pygpt.net | Documentation: https://pygpt.readthedocs.io
|
|
115
117
|
>
|
|
@@ -1412,320 +1414,91 @@ Required **kwargs:
|
|
|
1412
1414
|
|
|
1413
1415
|
**PyGPT** can be enhanced with plugins to add new features.
|
|
1414
1416
|
|
|
1415
|
-
**Tip:** Plugins works best with GPT-4 models.
|
|
1416
|
-
|
|
1417
1417
|
The following plugins are currently available, and model can use them instantly:
|
|
1418
1418
|
|
|
1419
|
+
- `API calls` - plugin lets you connect the model to the external services using custom defined API calls.
|
|
1420
|
+
|
|
1419
1421
|
- `Audio Input` - provides speech recognition.
|
|
1420
1422
|
|
|
1421
1423
|
- `Audio Output` - provides voice synthesis.
|
|
1422
1424
|
|
|
1423
1425
|
- `Autonomous Agent (inline)` - enables autonomous conversation (AI to AI), manages loop, and connects output back to input. This is the inline Agent mode.
|
|
1424
1426
|
|
|
1425
|
-
- `
|
|
1426
|
-
|
|
1427
|
-
- `API calls` - plugin lets you connect the model to the external services using custom defined API calls.
|
|
1428
|
-
|
|
1429
|
-
- `Code Interpreter` - responsible for generating and executing Python code, functioning much like
|
|
1430
|
-
the Code Interpreter on ChatGPT, but locally. This means a model can interface with any script, application, or code.
|
|
1431
|
-
Plugins can work in conjunction to perform sequential tasks; for example, the `Files` plugin can write generated
|
|
1432
|
-
Python code to a file, which the `Code Interpreter` can execute it and return its result to model.
|
|
1433
|
-
|
|
1434
|
-
- `Custom Commands` - allows you to create and execute custom commands on your system.
|
|
1435
|
-
|
|
1436
|
-
- `Files I/O` - provides access to the local filesystem, enabling a model to read and write files,
|
|
1437
|
-
as well as list and create directories.
|
|
1438
|
-
|
|
1439
|
-
- `System (OS)` - allows you to create and execute custom commands on your system.
|
|
1440
|
-
|
|
1441
|
-
- `Mouse and Keyboard` - provides the ability to control the mouse and keyboard by the model.
|
|
1427
|
+
- `Bitbucket` - Access Bitbucket API to manage repositories, issues, and pull requests.
|
|
1442
1428
|
|
|
1443
|
-
- `
|
|
1429
|
+
- `Chat with Files (LlamaIndex, inline)` - plugin integrates `LlamaIndex` storage in any chat and provides additional knowledge into context (from indexed files and previous context from database).
|
|
1444
1430
|
|
|
1445
|
-
- `
|
|
1431
|
+
- `Code Interpreter` - responsible for generating and executing Python code, functioning much like the Code Interpreter on ChatGPT, but locally. This means a model can interface with any script, application, or code. Plugins can work in conjunction to perform sequential tasks; for example, the `Files` plugin can write generated Python code to a file, which the `Code Interpreter` can execute it and return its result to model.
|
|
1446
1432
|
|
|
1447
1433
|
- `Context history (calendar, inline)` - provides access to context history database.
|
|
1448
1434
|
|
|
1449
1435
|
- `Crontab / Task scheduler` - plugin provides cron-based job scheduling - you can schedule tasks/prompts to be sent at any time using cron-based syntax for task setup.
|
|
1450
1436
|
|
|
1451
|
-
- `
|
|
1437
|
+
- `Custom Commands` - allows you to create and execute custom commands on your system.
|
|
1452
1438
|
|
|
1453
1439
|
- `Experts (inline)` - allows calling experts in any chat mode. This is the inline Experts (co-op) mode.
|
|
1454
1440
|
|
|
1455
|
-
- `Vision (inline)` - integrates Vision capabilities with any chat mode, not just Vision mode. When the plugin is enabled, the model temporarily switches to vision in the background when an image attachment or vision capture is provided.
|
|
1456
|
-
|
|
1457
|
-
- `Real Time` - automatically appends the current date and time to the system prompt, informing the model about current time.
|
|
1458
|
-
|
|
1459
|
-
- `System Prompt Extra (append)` - appends additional system prompts (extra data) from a list to every current system prompt. You can enhance every system prompt with extra instructions that will be automatically appended to the system prompt.
|
|
1460
|
-
|
|
1461
|
-
- `Voice Control (inline)` - provides voice control command execution within a conversation.
|
|
1462
|
-
|
|
1463
|
-
- `Mailer` - Provides the ability to send, receive and read emails.
|
|
1464
|
-
|
|
1465
|
-
- `Google` - Access Gmail, Drive, Docs, Maps, Calendar, Contacts, Colab, YouTube, Keep - for managing emails, files, events, notes, video info, and contacts.
|
|
1466
|
-
|
|
1467
1441
|
- `Facebook` - Manage user info, pages, posts, and photos on Facebook pages.
|
|
1468
1442
|
|
|
1469
|
-
- `
|
|
1470
|
-
|
|
1471
|
-
- `Telegram` - Send messages, photos, and documents; manage chats and contacts.
|
|
1472
|
-
|
|
1473
|
-
- `X/Twitter` - Interact with tweets and users, manage bookmarks and media, perform likes, retweets, and more.
|
|
1443
|
+
- `Files I/O` - provides access to the local filesystem, enabling a model to read and write files, as well as list and create directories.
|
|
1474
1444
|
|
|
1475
1445
|
- `GitHub` - Access GitHub API to manage repositories, issues, and pull requests.
|
|
1476
1446
|
|
|
1477
|
-
- `
|
|
1478
|
-
|
|
1479
|
-
## Audio Input
|
|
1480
|
-
|
|
1481
|
-
The plugin facilitates speech recognition (by default using the `Whisper` model from OpenAI, `Google` and `Bing` are also available). It allows for voice commands to be relayed to the AI using your own voice. Whisper doesn't require any extra API keys or additional configurations; it uses the main OpenAI key. In the plugin's configuration options, you should adjust the volume level (min energy) at which the plugin will respond to your microphone. Once the plugin is activated, a new `Speak` option will appear at the bottom near the `Send` button - when this is enabled, the application will respond to the voice received from the microphone.
|
|
1482
|
-
|
|
1483
|
-
The plugin can be extended with other speech recognition providers.
|
|
1484
|
-
|
|
1485
|
-
Options:
|
|
1486
|
-
|
|
1487
|
-
- `Provider` *provider*
|
|
1488
|
-
|
|
1489
|
-
Choose the provider. *Default:* `Whisper`
|
|
1490
|
-
|
|
1491
|
-
Available providers:
|
|
1492
|
-
|
|
1493
|
-
- Whisper (via `OpenAI API`)
|
|
1494
|
-
- Whisper (local model) - not available in compiled and Snap versions, only Python/PyPi version
|
|
1495
|
-
- Google (via `SpeechRecognition` library)
|
|
1496
|
-
- Google Cloud (via `SpeechRecognition` library)
|
|
1497
|
-
- Microsoft Bing (via `SpeechRecognition` library)
|
|
1498
|
-
|
|
1499
|
-
**Whisper (API)**
|
|
1500
|
-
|
|
1501
|
-
- `Model` *whisper_model*
|
|
1502
|
-
|
|
1503
|
-
Choose the model. *Default:* `whisper-1`
|
|
1504
|
-
|
|
1505
|
-
**Whisper (local)**
|
|
1506
|
-
|
|
1507
|
-
- `Model` *whisper_local_model*
|
|
1508
|
-
|
|
1509
|
-
Choose the local model. *Default:* `base`
|
|
1510
|
-
|
|
1511
|
-
Available models: https://github.com/openai/whisper
|
|
1512
|
-
|
|
1513
|
-
**Google**
|
|
1514
|
-
|
|
1515
|
-
- `Additional keywords arguments` *google_args*
|
|
1516
|
-
|
|
1517
|
-
Additional keywords arguments for r.recognize_google(audio, **kwargs)
|
|
1518
|
-
|
|
1519
|
-
**Google Cloud**
|
|
1520
|
-
|
|
1521
|
-
- `Additional keywords arguments` *google_cloud_args*
|
|
1522
|
-
|
|
1523
|
-
Additional keywords arguments for r.recognize_google_cloud(audio, **kwargs)
|
|
1524
|
-
|
|
1525
|
-
**Bing**
|
|
1526
|
-
|
|
1527
|
-
- `Additional keywords arguments` *bing_args*
|
|
1528
|
-
|
|
1529
|
-
Additional keywords arguments for r.recognize_bing(audio, **kwargs)
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
**General options**
|
|
1533
|
-
|
|
1534
|
-
- `Auto send` *auto_send*
|
|
1535
|
-
|
|
1536
|
-
Automatically send recognized speech as input text after recognition. *Default:* `True`
|
|
1537
|
-
|
|
1538
|
-
- `Advanced mode` *advanced*
|
|
1539
|
-
|
|
1540
|
-
Enable only if you want to use advanced mode and the settings below. Do not enable this option if you just want to use the simplified mode (default). *Default:* `False`
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
**Advanced mode options**
|
|
1544
|
-
|
|
1545
|
-
- `Timeout` *timeout*
|
|
1546
|
-
|
|
1547
|
-
The duration in seconds that the application waits for voice input from the microphone. *Default:* `5`
|
|
1548
|
-
|
|
1549
|
-
- `Phrase max length` *phrase_length*
|
|
1550
|
-
|
|
1551
|
-
Maximum duration for a voice sample (in seconds). *Default:* `10`
|
|
1552
|
-
|
|
1553
|
-
- `Min energy` *min_energy*
|
|
1554
|
-
|
|
1555
|
-
Minimum threshold multiplier above the noise level to begin recording. *Default:* `1.3`
|
|
1556
|
-
|
|
1557
|
-
- `Adjust for ambient noise` *adjust_noise*
|
|
1558
|
-
|
|
1559
|
-
Enables adjustment to ambient noise levels. *Default:* `True`
|
|
1560
|
-
|
|
1561
|
-
- `Continuous listen` *continuous_listen*
|
|
1562
|
-
|
|
1563
|
-
Experimental: continuous listening - do not stop listening after a single input.
|
|
1564
|
-
Warning: This feature may lead to unexpected results and requires fine-tuning with
|
|
1565
|
-
the rest of the options! If disabled, listening must be started manually
|
|
1566
|
-
by enabling the `Speak` option. *Default:* `False`
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
- `Wait for response` *wait_response*
|
|
1570
|
-
|
|
1571
|
-
Wait for a response before initiating listening for the next input. *Default:* `True`
|
|
1572
|
-
|
|
1573
|
-
- `Magic word` *magic_word*
|
|
1574
|
-
|
|
1575
|
-
Activate listening only after the magic word is provided. *Default:* `False`
|
|
1447
|
+
- `Google` - Access Gmail, Drive, Docs, Maps, Calendar, Contacts, Colab, YouTube, Keep - for managing emails, files, events, notes, video info, and contacts.
|
|
1576
1448
|
|
|
1577
|
-
- `
|
|
1449
|
+
- `Image Generation (inline)` - integrates DALL-E 3 image generation with any chat and mode. Just enable and ask for image in Chat mode, using standard model like GPT-4. The plugin does not require the `+ Tools` option to be enabled.
|
|
1578
1450
|
|
|
1579
|
-
|
|
1451
|
+
- `Mailer` - Provides the ability to send, receive and read emails.
|
|
1580
1452
|
|
|
1581
|
-
- `
|
|
1453
|
+
- `Mouse and Keyboard` - provides the ability to control the mouse and keyboard by the model.
|
|
1582
1454
|
|
|
1583
|
-
|
|
1455
|
+
- `Real Time` - automatically appends the current date and time to the system prompt, informing the model about current time.
|
|
1584
1456
|
|
|
1585
|
-
- `
|
|
1457
|
+
- `Serial port / USB` - plugin provides commands for reading and sending data to USB ports.
|
|
1586
1458
|
|
|
1587
|
-
|
|
1459
|
+
- `Server (SSH/FTP)` - Connect to remote servers using FTP, SFTP, and SSH. Execute remote commands, upload, download, and more.
|
|
1588
1460
|
|
|
1589
|
-
- `
|
|
1461
|
+
- `Slack` - Handle users, conversations, messages, and files on Slack.
|
|
1590
1462
|
|
|
1591
|
-
|
|
1463
|
+
- `System Prompt Extra (append)` - appends additional system prompts (extra data) from a list to every current system prompt. You can enhance every system prompt with extra instructions that will be automatically appended to the system prompt.
|
|
1592
1464
|
|
|
1593
|
-
- `
|
|
1465
|
+
- `System (OS)` - allows you to create and execute custom commands on your system.
|
|
1594
1466
|
|
|
1595
|
-
|
|
1467
|
+
- `Telegram` - Send messages, photos, and documents; manage chats and contacts.
|
|
1596
1468
|
|
|
1597
|
-
- `
|
|
1469
|
+
- `Vision (inline)` - integrates Vision capabilities with any chat mode, not just Vision mode. When the plugin is enabled, the model temporarily switches to vision in the background when an image attachment or vision capture is provided.
|
|
1598
1470
|
|
|
1599
|
-
|
|
1471
|
+
- `Voice Control (inline)` - provides voice control command execution within a conversation.
|
|
1600
1472
|
|
|
1601
|
-
|
|
1473
|
+
- `Web Search` - provides the ability to connect to the Web, search web pages for current data, and index external content using LlamaIndex data loaders.
|
|
1602
1474
|
|
|
1603
|
-
- `
|
|
1475
|
+
- `X/Twitter` - Interact with tweets and users, manage bookmarks and media, perform likes, retweets, and more.
|
|
1604
1476
|
|
|
1605
|
-
Represents the energy level threshold for sounds. *Default:* `300`
|
|
1606
1477
|
|
|
1607
|
-
|
|
1478
|
+
## API calls
|
|
1608
1479
|
|
|
1609
|
-
|
|
1610
|
-
should be automatically adjusted based on the currently ambient noise level while listening. *Default:* `True`
|
|
1480
|
+
**PyGPT** lets you connect the model to the external services using custom defined API calls.
|
|
1611
1481
|
|
|
1612
|
-
|
|
1482
|
+
To activate this feature, turn on the `API calls` plugin found in the `Plugins` menu.
|
|
1613
1483
|
|
|
1614
|
-
|
|
1615
|
-
of dynamic threshold adjustment. *Default:* `0.15`
|
|
1484
|
+
In this plugin you can provide list of allowed API calls, their parameters and request types. The model will replace provided placeholders with required params and make API call to external service.
|
|
1616
1485
|
|
|
1617
|
-
-
|
|
1486
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#api-calls
|
|
1618
1487
|
|
|
1619
|
-
|
|
1488
|
+
## Audio Input
|
|
1620
1489
|
|
|
1621
|
-
|
|
1490
|
+
The plugin facilitates speech recognition (by default using the `Whisper` model from OpenAI, `Google` and `Bing` are also available). It allows for voice commands to be relayed to the AI using your own voice. Whisper doesn't require any extra API keys or additional configurations; it uses the main OpenAI key. In the plugin's configuration options, you should adjust the volume level (min energy) at which the plugin will respond to your microphone. Once the plugin is activated, a new `Speak` option will appear at the bottom near the `Send` button - when this is enabled, the application will respond to the voice received from the microphone.
|
|
1622
1491
|
|
|
1623
|
-
The
|
|
1624
|
-
for before returning. *Default:* `1`
|
|
1492
|
+
The plugin can be extended with other speech recognition providers.
|
|
1625
1493
|
|
|
1626
|
-
|
|
1494
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#audio-input
|
|
1627
1495
|
|
|
1628
1496
|
## Audio Output
|
|
1629
1497
|
|
|
1630
1498
|
The plugin lets you turn text into speech using the TTS model from OpenAI or other services like `Microsoft Azure`, `Google`, and `Eleven Labs`. You can add more text-to-speech providers to it too. `OpenAI TTS` does not require any additional API keys or extra configuration; it utilizes the main OpenAI key.
|
|
1631
1499
|
Microsoft Azure requires to have an Azure API Key. Before using speech synthesis via `Microsoft Azure`, `Google` or `Eleven Labs`, you must configure the audio plugin with your API keys, regions and voices if required.
|
|
1632
1500
|
|
|
1633
|
-
|
|
1634
|
-
|
|
1635
|
-
Through the available options, you can select the voice that you want the model to use. More voice synthesis providers coming soon.
|
|
1636
|
-
|
|
1637
|
-
To enable voice synthesis, activate the `Audio Output` plugin in the `Plugins` menu or turn on the `Audio Output` option in the `Audio / Voice` menu (both options in the menu achieve the same outcome).
|
|
1638
|
-
|
|
1639
|
-
**Options**
|
|
1640
|
-
|
|
1641
|
-
- `Provider` *provider*
|
|
1642
|
-
|
|
1643
|
-
Choose the provider. *Default:* `OpenAI TTS`
|
|
1644
|
-
|
|
1645
|
-
Available providers:
|
|
1646
|
-
|
|
1647
|
-
- OpenAI TTS
|
|
1648
|
-
- Microsoft Azure TTS
|
|
1649
|
-
- Google TTS
|
|
1650
|
-
- Eleven Labs TTS
|
|
1651
|
-
|
|
1652
|
-
**OpenAI Text-To-Speech**
|
|
1653
|
-
|
|
1654
|
-
- `Model` *openai_model*
|
|
1655
|
-
|
|
1656
|
-
Choose the model. Available options:
|
|
1657
|
-
|
|
1658
|
-
```
|
|
1659
|
-
- tts-1
|
|
1660
|
-
- tts-1-hd
|
|
1661
|
-
```
|
|
1662
|
-
*Default:* `tts-1`
|
|
1663
|
-
|
|
1664
|
-
- `Voice` *openai_voice*
|
|
1665
|
-
|
|
1666
|
-
Choose the voice. Available voices to choose from:
|
|
1667
|
-
|
|
1668
|
-
```
|
|
1669
|
-
- alloy
|
|
1670
|
-
- echo
|
|
1671
|
-
- fable
|
|
1672
|
-
- onyx
|
|
1673
|
-
- nova
|
|
1674
|
-
- shimmer
|
|
1675
|
-
```
|
|
1676
|
-
|
|
1677
|
-
*Default:* `alloy`
|
|
1678
|
-
|
|
1679
|
-
**Microsoft Azure Text-To-Speech**
|
|
1680
|
-
|
|
1681
|
-
- `Azure API Key` *azure_api_key*
|
|
1682
|
-
|
|
1683
|
-
Here, you should enter the API key, which can be obtained by registering for free on the following website: https://azure.microsoft.com/en-us/services/cognitive-services/text-to-speech
|
|
1684
|
-
|
|
1685
|
-
- `Azure Region` *azure_region*
|
|
1686
|
-
|
|
1687
|
-
You must also provide the appropriate region for Azure here. *Default:* `eastus`
|
|
1688
|
-
|
|
1689
|
-
- `Voice (EN)` *azure_voice_en*
|
|
1690
|
-
|
|
1691
|
-
Here you can specify the name of the voice used for speech synthesis for English. *Default:* `en-US-AriaNeural`
|
|
1692
|
-
|
|
1693
|
-
- `Voice (non-English)` *azure_voice_pl*
|
|
1694
|
-
|
|
1695
|
-
Here you can specify the name of the voice used for speech synthesis for other non-english languages. *Default:* `pl-PL-AgnieszkaNeural`
|
|
1696
|
-
|
|
1697
|
-
**Google Text-To-Speech**
|
|
1698
|
-
|
|
1699
|
-
- `Google Cloud Text-to-speech API Key` *google_api_key*
|
|
1700
|
-
|
|
1701
|
-
You can obtain your own API key at: https://console.cloud.google.com/apis/library/texttospeech.googleapis.com
|
|
1702
|
-
|
|
1703
|
-
- `Voice` *google_voice*
|
|
1704
|
-
|
|
1705
|
-
Specify voice. Voices: https://cloud.google.com/text-to-speech/docs/voices
|
|
1706
|
-
|
|
1707
|
-
- `Language code` *google_api_key*
|
|
1708
|
-
|
|
1709
|
-
Language code. Language codes: https://cloud.google.com/speech-to-text/docs/speech-to-text-supported-languages
|
|
1710
|
-
|
|
1711
|
-
**Eleven Labs Text-To-Speech**
|
|
1712
|
-
|
|
1713
|
-
- `Eleven Labs API Key` *eleven_labs_api_key*
|
|
1714
|
-
|
|
1715
|
-
You can obtain your own API key at: https://elevenlabs.io/speech-synthesis
|
|
1716
|
-
|
|
1717
|
-
- `Voice ID` *eleven_labs_voice*
|
|
1718
|
-
|
|
1719
|
-
Voice ID. Voices: https://elevenlabs.io/voice-library
|
|
1720
|
-
|
|
1721
|
-
- `Model` *eleven_labs_model*
|
|
1722
|
-
|
|
1723
|
-
Specify model. Models: https://elevenlabs.io/docs/speech-synthesis/models
|
|
1724
|
-
|
|
1725
|
-
|
|
1726
|
-
If speech synthesis is enabled, a voice will be additionally generated in the background while generating a response via model.
|
|
1727
|
-
|
|
1728
|
-
Both `OpenAI TTS` and `OpenAI Whisper` use the same single API key provided for the OpenAI API, with no additional keys required.
|
|
1501
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#audio-output
|
|
1729
1502
|
|
|
1730
1503
|
## Autonomous Agent (inline)
|
|
1731
1504
|
|
|
@@ -1737,1044 +1510,188 @@ in self-dialogue, answering his own questions and comments, in order to find the
|
|
|
1737
1510
|
|
|
1738
1511
|
This mode is similar to `Auto-GPT` - it can be used to create more advanced inferences and to solve problems by breaking them down into subtasks that the model will autonomously perform one after another until the goal is achieved. The plugin is capable of working in cooperation with other plugins, thus it can utilize tools such as web search, access to the file system, or image generation using `DALL-E`.
|
|
1739
1512
|
|
|
1740
|
-
|
|
1741
|
-
|
|
1742
|
-
- `Iterations` *iterations*
|
|
1743
|
-
|
|
1744
|
-
*Default:* `3`
|
|
1745
|
-
|
|
1746
|
-
**WARNING**: Setting this option to `0` activates an **infinity loop** which can generate a large number of requests and cause very high token consumption, so use this option with caution!
|
|
1747
|
-
|
|
1748
|
-
- `Prompts` *prompts*
|
|
1749
|
-
|
|
1750
|
-
Editable list of prompts used to instruct how to handle autonomous mode, you can create as many prompts as you want.
|
|
1751
|
-
First active prompt on list will be used to handle autonomous mode. **INFO:** At least one active prompt is required!
|
|
1752
|
-
|
|
1753
|
-
- `Auto-stop after goal is reached` *auto_stop*
|
|
1754
|
-
|
|
1755
|
-
If enabled, plugin will stop after goal is reached." *Default:* `True`
|
|
1756
|
-
|
|
1757
|
-
- `Reverse roles between iterations` *reverse_roles*
|
|
1758
|
-
|
|
1759
|
-
Only for Completion modes.
|
|
1760
|
-
If enabled, this option reverses the roles (AI <> user) with each iteration. For example,
|
|
1761
|
-
if in the previous iteration the response was generated for "Batman," the next iteration will use that
|
|
1762
|
-
response to generate an input for "Joker." *Default:* `True`
|
|
1763
|
-
|
|
1764
|
-
## Chat with Files (LlamaIndex, inline)
|
|
1765
|
-
|
|
1766
|
-
Plugin integrates `LlamaIndex` storage in any chat and provides additional knowledge into context.
|
|
1767
|
-
|
|
1768
|
-
- `Ask LlamaIndex first` *ask_llama_first*
|
|
1769
|
-
|
|
1770
|
-
When enabled, then `LlamaIndex` will be asked first, and response will be used as additional knowledge in prompt. When disabled, then `LlamaIndex` will be asked only when needed. **INFO: Disabled in autonomous mode (via plugin)!** *Default:* `False`
|
|
1771
|
-
|
|
1772
|
-
- `Auto-prepare question before asking LlamaIndex first` *prepare_question*
|
|
1773
|
-
|
|
1774
|
-
When enabled, then question will be prepared before asking LlamaIndex first to create best query. *Default:* `False`
|
|
1775
|
-
|
|
1776
|
-
- `Model for question preparation` *model_prepare_question*
|
|
1777
|
-
|
|
1778
|
-
Model used to prepare question before asking LlamaIndex. *Default:* `gpt-3.5-turbo`
|
|
1779
|
-
|
|
1780
|
-
- `Max output tokens for question preparation` *prepare_question_max_tokens*
|
|
1781
|
-
|
|
1782
|
-
Max tokens in output when preparing question before asking LlamaIndex. *Default:* `500`
|
|
1783
|
-
|
|
1784
|
-
- `Prompt for question preparation` *syntax_prepare_question*
|
|
1785
|
-
|
|
1786
|
-
System prompt for question preparation.
|
|
1787
|
-
|
|
1788
|
-
- `Max characters in question` *max_question_chars*
|
|
1789
|
-
|
|
1790
|
-
Max characters in question when querying LlamaIndex, 0 = no limit. *Default:* `1000`
|
|
1791
|
-
|
|
1792
|
-
- `Append metadata to context` *append_meta*
|
|
1793
|
-
|
|
1794
|
-
If enabled, then metadata from LlamaIndex will be appended to additional context. *Default:* `False`
|
|
1795
|
-
|
|
1796
|
-
- `Model` *model_query*
|
|
1797
|
-
|
|
1798
|
-
Model used for querying `LlamaIndex`. *Default:* `gpt-3.5-turbo`
|
|
1799
|
-
|
|
1800
|
-
- `Indexes IDs` *idx*
|
|
1801
|
-
|
|
1802
|
-
Indexes to use. If you want to use multiple indexes at once then separate them by comma. *Default:* `base`
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
## API calls
|
|
1806
|
-
|
|
1807
|
-
**PyGPT** lets you connect the model to the external services using custom defined API calls.
|
|
1808
|
-
|
|
1809
|
-
To activate this feature, turn on the `API calls` plugin found in the `Plugins` menu.
|
|
1810
|
-
|
|
1811
|
-
In this plugin you can provide list of allowed API calls, their parameters and request types. The model will replace provided placeholders with required params and make API call to external service.
|
|
1812
|
-
|
|
1813
|
-
- `Your custom API calls` *cmds*
|
|
1814
|
-
|
|
1815
|
-
You can provide custom API calls on the list here.
|
|
1816
|
-
|
|
1817
|
-
Params to specify for API call:
|
|
1818
|
-
|
|
1819
|
-
- **Enabled** (True / False)
|
|
1820
|
-
- **Name:** unique API call name (ID)
|
|
1821
|
-
- **Instruction:** description for model when and how to use this API call
|
|
1822
|
-
- **GET params:** list, separated by comma, GET params to append to endpoint URL
|
|
1823
|
-
- **POST params:** list, separated by comma, POST params to send in POST request
|
|
1824
|
-
- **POST JSON:** provide the JSON object, template to send in POST JSON request, use `%param%` as POST param placeholders
|
|
1825
|
-
- **Headers:** provide the JSON object with dictionary of extra request headers, like Authorization, API keys, etc.
|
|
1826
|
-
- **Request type:** use GET for basic GET request, POST to send encoded POST params or POST_JSON to send JSON-encoded object as body
|
|
1827
|
-
- **Endpoint:** API endpoint URL, use `{param}` as GET param placeholders
|
|
1828
|
-
|
|
1829
|
-
An example API call is provided with plugin by default, it calls the Wikipedia API:
|
|
1830
|
-
|
|
1831
|
-
- Name: `search_wiki`
|
|
1832
|
-
- Instructiom: `send API call to Wikipedia to search pages by query`
|
|
1833
|
-
- GET params: `query, limit`
|
|
1834
|
-
- Type: `GET`
|
|
1835
|
-
- API endpoint: https://en.wikipedia.org/w/api.php?action=opensearch&limit={limit}&format=json&search={query}
|
|
1836
|
-
|
|
1837
|
-
In the above example, every time you ask the model for query Wiki for provided query (e.g. `Call the Wikipedia API for query: Nikola Tesla`) it will replace placeholders in provided API endpoint URL with a generated query and it will call prepared API endpoint URL, like below:
|
|
1838
|
-
|
|
1839
|
-
https://en.wikipedia.org/w/api.php?action=opensearch&limit=5&format=json&search=Nikola%20Tesla
|
|
1840
|
-
|
|
1841
|
-
You can specify type of request: `GET`, `POST` and `POST JSON`.
|
|
1842
|
-
|
|
1843
|
-
In the `POST` request you can provide POST params, they will be encoded and send as POST data.
|
|
1844
|
-
|
|
1845
|
-
In the `POST JSON` request you must provide JSON object template to be send, using `%param%` placeholders in the JSON object to be replaced with the model.
|
|
1846
|
-
|
|
1847
|
-
You can also provide any required credentials, like Authorization headers, API keys, tokens, etc. using the `headers` field - you can provide a JSON object here with a dictionary `key => value` - provided JSON object will be converted to headers dictonary and send with the request.
|
|
1848
|
-
|
|
1849
|
-
- `Disable SSL verify` *disable_ssl*
|
|
1850
|
-
|
|
1851
|
-
Disables SSL verification when making requests. *Default:* `False`
|
|
1852
|
-
|
|
1853
|
-
- `Timeout` *timeout*
|
|
1854
|
-
|
|
1855
|
-
Connection timeout (seconds). *Default:* `5`
|
|
1856
|
-
|
|
1857
|
-
- `User agent` *user_agent*
|
|
1858
|
-
|
|
1859
|
-
User agent to use when making requests. *Default:* `Mozilla/5.0`
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
## Code Interpreter
|
|
1863
|
-
|
|
1864
|
-
### Executing Code
|
|
1865
|
-
|
|
1866
|
-
From version `2.4.13` with built-in `IPython`.
|
|
1867
|
-
|
|
1868
|
-
The plugin operates similarly to the `Code Interpreter` in `ChatGPT`, with the key difference that it works locally on the user's system. It allows for the execution of any Python code on the computer that the model may generate. When combined with the `Files I/O` plugin, it facilitates running code from files saved in the `data` directory. You can also prepare your own code files and enable the model to use them or add your own plugin for this purpose. You can execute commands and code on the host machine or in Docker container.
|
|
1869
|
-
|
|
1870
|
-
**IPython:** Starting from version `2.4.13`, it is highly recommended to adopt the new option: `IPython`, which offers significant improvements over previous workflows. IPython provides a robust environment for executing code within a kernel, allowing you to maintain the state of your session by preserving the results of previous commands. This feature is particularly useful for iterative development and data analysis, as it enables you to build upon prior computations without starting from scratch. Moreover, IPython supports the use of magic commands, such as `!pip install <package_name>`, which facilitate the installation of new packages directly within the session. This capability streamlines the process of managing dependencies and enhances the flexibility of your development environment. Overall, IPython offers a more efficient and user-friendly experience for executing and managing code.
|
|
1513
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#autonomous-agent-inline
|
|
1871
1514
|
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
You can find the installation instructions here: https://docs.docker.com/engine/install/
|
|
1875
|
-
|
|
1876
|
-
**Tip: connecting IPython in Docker in Snap version**:
|
|
1877
|
-
|
|
1878
|
-
To use IPython in the Snap version, you must connect PyGPT to the Docker daemon:
|
|
1879
|
-
|
|
1880
|
-
```commandline
|
|
1881
|
-
sudo snap connect pygpt:docker-executables docker:docker-executables
|
|
1882
|
-
```
|
|
1883
|
-
|
|
1884
|
-
````commandline
|
|
1885
|
-
sudo snap connect pygpt:docker docker:docker-daemon
|
|
1886
|
-
````
|
|
1887
|
-
|
|
1888
|
-
|
|
1889
|
-
**Code interpreter:** a real-time Python Code Interpreter is built-in. Click the `<>` icon to open the interpreter window. Both the input and output of the interpreter are connected to the plugin. Any output generated by the executed code will be displayed in the interpreter. Additionally, you can request the model to retrieve contents from the interpreter window output.
|
|
1890
|
-
|
|
1891
|
-

|
|
1892
|
-
|
|
1893
|
-
**INFO:** Executing Python code using IPython in compiled versions requires an enabled sandbox (Docker container). You can connect the Docker container via `Plugins -> Settings`.
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
**Tip:** always remember to enable the `+ Tools` option to allow execute commands from the plugins.
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
**Options:**
|
|
1900
|
-
|
|
1901
|
-
**General**
|
|
1902
|
-
|
|
1903
|
-
- `Connect to the Python Code Interpreter window` *attach_output*
|
|
1904
|
-
|
|
1905
|
-
Automatically attach code input/output to the Python Code Interpreter window. *Default:* `True`
|
|
1515
|
+
## Bitbucket
|
|
1906
1516
|
|
|
1907
|
-
|
|
1517
|
+
The Bitbucket plugin allows for seamless integration with the Bitbucket Cloud API, offering functionalities to manage repositories, issues, and pull requests. This plugin provides highly configurable options for authentication, cached convenience, and manages HTTP requests efficiently.
|
|
1908
1518
|
|
|
1909
|
-
|
|
1910
|
-
|
|
1911
|
-
-
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
|
|
1915
|
-
-
|
|
1916
|
-
|
|
1917
|
-
|
|
1918
|
-
|
|
1919
|
-
|
|
1920
|
-
|
|
1921
|
-
|
|
1922
|
-
-
|
|
1923
|
-
|
|
1924
|
-
|
|
1925
|
-
|
|
1926
|
-
-
|
|
1927
|
-
|
|
1928
|
-
You can customize the Dockerfile for the image used by IPython by editing the configuration above and rebuilding the image via Tools -> Rebuild IPython Docker Image.
|
|
1929
|
-
|
|
1930
|
-
- `Session Key` *ipython_session_key*
|
|
1931
|
-
|
|
1932
|
-
It must match the key provided in the Dockerfile.
|
|
1933
|
-
|
|
1934
|
-
- `Docker image name` *ipython_image_name*
|
|
1935
|
-
|
|
1936
|
-
Custom image name
|
|
1937
|
-
|
|
1938
|
-
- `Docker container name` *ipython_container_name*
|
|
1939
|
-
|
|
1940
|
-
Custom container name
|
|
1941
|
-
|
|
1942
|
-
- `Connection address` *ipython_conn_addr*
|
|
1943
|
-
|
|
1944
|
-
Default: 127.0.0.1
|
|
1945
|
-
|
|
1946
|
-
- `Port: shell` *ipython_port_shell*
|
|
1947
|
-
|
|
1948
|
-
Default: 5555
|
|
1949
|
-
|
|
1950
|
-
- `Port: iopub` *ipython_port_iopub*
|
|
1951
|
-
|
|
1952
|
-
Default: 5556
|
|
1953
|
-
|
|
1954
|
-
- `Port: stdin` *ipython_port_stdin*
|
|
1955
|
-
|
|
1956
|
-
Default: 5557
|
|
1957
|
-
|
|
1958
|
-
- `Port: control` *ipython_port_control*
|
|
1959
|
-
|
|
1960
|
-
Default: 5558
|
|
1961
|
-
|
|
1962
|
-
- `Port: hb` *ipython_port_hb*
|
|
1963
|
-
|
|
1964
|
-
Default: 5559
|
|
1965
|
-
|
|
1966
|
-
|
|
1967
|
-
- `Tool: ipython_execute` *cmd.ipython_execute*
|
|
1968
|
-
|
|
1969
|
-
Allows Python code execution in IPython interpreter (in current kernel). *Default:* `True`
|
|
1970
|
-
|
|
1971
|
-
- `Tool: python_kernel_restart` *cmd.ipython_kernel_restart*
|
|
1972
|
-
|
|
1973
|
-
Allows to restart IPython kernel. *Default:* `True`
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
**Python (legacy)**
|
|
1977
|
-
|
|
1978
|
-
- `Sandbox (docker container)` *sandbox_docker*
|
|
1979
|
-
|
|
1980
|
-
Executes commands in sandbox (docker container). Docker must be installed and running.
|
|
1981
|
-
|
|
1982
|
-
- `Python command template` *python_cmd_tpl*
|
|
1983
|
-
|
|
1984
|
-
Python command template (use {filename} as path to file placeholder). *Default:* `python3 {filename}`
|
|
1985
|
-
|
|
1986
|
-
- `Dockerfile` *dockerfile*
|
|
1987
|
-
|
|
1988
|
-
You can customize the Dockerfile for the image used by legacy Python by editing the configuration above and rebuilding the image via Tools -> Rebuild Python (Legacy) Docker Image.
|
|
1989
|
-
|
|
1990
|
-
- `Docker image name` *image_name*
|
|
1991
|
-
|
|
1992
|
-
Custom Docker image name
|
|
1993
|
-
|
|
1994
|
-
- `Docker container name` *container_name*
|
|
1995
|
-
|
|
1996
|
-
Custom Docker container name
|
|
1997
|
-
|
|
1998
|
-
- `Tool: code_execute` *cmd.code_execute*
|
|
1999
|
-
|
|
2000
|
-
Allows `code_execute` command execution. If enabled, provides Python code execution (generate and execute from file). *Default:* `True`
|
|
2001
|
-
|
|
2002
|
-
- `Tool: code_execute_all` *cmd.code_execute_all*
|
|
2003
|
-
|
|
2004
|
-
Allows `code_execute_all` command execution. If enabled, provides execution of all the Python code in interpreter window. *Default:* `True`
|
|
2005
|
-
|
|
2006
|
-
- `Tool: code_execute_file` *cmd.code_execute_file*
|
|
2007
|
-
|
|
2008
|
-
Allows `code_execute_file` command execution. If enabled, provides Python code execution from existing .py file. *Default:* `True`
|
|
2009
|
-
|
|
2010
|
-
|
|
2011
|
-
**HTML Canvas**
|
|
2012
|
-
|
|
2013
|
-
- `Tool: render_html_output` *cmd.render_html_output*
|
|
2014
|
-
|
|
2015
|
-
Allows `render_html_output` command execution. If enabled, it allows to render HTML/JS code in built-it HTML/JS browser (HTML Canvas). *Default:* `True`
|
|
2016
|
-
|
|
2017
|
-
- `Tool: get_html_output` *cmd.get_html_output*
|
|
2018
|
-
|
|
2019
|
-
Allows `get_html_output` command execution. If enabled, it allows retrieval current output from HTML Canvas. *Default:* `True`
|
|
2020
|
-
|
|
2021
|
-
- `Sandbox (docker container)` *sandbox_docker*
|
|
2022
|
-
|
|
2023
|
-
Execute commands in sandbox (docker container). Docker must be installed and running. *Default:* `False`
|
|
2024
|
-
|
|
2025
|
-
- `Docker image` *sandbox_docker_image*
|
|
2026
|
-
|
|
2027
|
-
Docker image to use for sandbox *Default:* `python:3.8-alpine`
|
|
2028
|
-
|
|
2029
|
-
|
|
2030
|
-
|
|
2031
|
-
## Custom Commands
|
|
2032
|
-
|
|
2033
|
-
With the `Custom Commands` plugin, you can integrate **PyGPT** with your operating system and scripts or applications. You can define an unlimited number of custom commands and instruct model on when and how to execute them. Configuration is straightforward, and **PyGPT** includes a simple tutorial command for testing and learning how it works:
|
|
2034
|
-
|
|
2035
|
-

|
|
2036
|
-
|
|
2037
|
-
To add a new custom command, click the **ADD** button and then:
|
|
2038
|
-
|
|
2039
|
-
1. Provide a name for your command: this is a unique identifier for model.
|
|
2040
|
-
2. Provide an `instruction` explaining what this command does; model will know when to use the command based on this instruction.
|
|
2041
|
-
3. Define `params`, separated by commas - model will send data to your commands using these params. These params will be placed into placeholders you have defined in the `cmd` field. For example:
|
|
2042
|
-
|
|
2043
|
-
If you want instruct model to execute your Python script named `smart_home_lights.py` with an argument, such as `1` to turn the light ON, and `0` to turn it OFF, define it as follows:
|
|
2044
|
-
|
|
2045
|
-
- **name**: lights_cmd
|
|
2046
|
-
- **instruction**: turn lights on/off; use 1 as 'arg' to turn ON, or 0 as 'arg' to turn OFF
|
|
2047
|
-
- **params**: arg
|
|
2048
|
-
- **cmd**: `python /path/to/smart_home_lights.py {arg}`
|
|
2049
|
-
|
|
2050
|
-
The setup defined above will work as follows:
|
|
2051
|
-
|
|
2052
|
-
When you ask model to turn your lights ON, model will locate this command and prepare the command `python /path/to/smart_home_lights.py {arg}` with `{arg}` replaced with `1`. On your system, it will execute the command:
|
|
2053
|
-
|
|
2054
|
-
```python /path/to/smart_home_lights.py 1```
|
|
2055
|
-
|
|
2056
|
-
And that's all. model will take care of the rest when you ask to turn ON the lights.
|
|
2057
|
-
|
|
2058
|
-
You can define as many placeholders and parameters as you desire.
|
|
2059
|
-
|
|
2060
|
-
Here are some predefined system placeholders for use:
|
|
2061
|
-
|
|
2062
|
-
- `{_time}` - current time in `H:M:S` format
|
|
2063
|
-
- `{_date}` - current date in `Y-m-d` format
|
|
2064
|
-
- `{_datetime}` - current date and time in `Y-m-d H:M:S` format
|
|
2065
|
-
- `{_file}` - path to the file from which the command is invoked
|
|
2066
|
-
- `{_home}` - path to **PyGPT**'s home/working directory
|
|
2067
|
-
|
|
2068
|
-
You can connect predefined placeholders with your own params.
|
|
2069
|
-
|
|
2070
|
-
*Example:*
|
|
2071
|
-
|
|
2072
|
-
- **name**: song_cmd
|
|
2073
|
-
- **instruction**: store the generated song on hard disk
|
|
2074
|
-
- **params**: song_text, title
|
|
2075
|
-
- **cmd**: `echo "{song_text}" > {_home}/{title}.txt`
|
|
2076
|
-
|
|
2077
|
-
|
|
2078
|
-
With the setup above, every time you ask model to generate a song for you and save it to the disk, it will:
|
|
2079
|
-
|
|
2080
|
-
1. Generate a song.
|
|
2081
|
-
2. Locate your command.
|
|
2082
|
-
3. Execute the command by sending the song's title and text.
|
|
2083
|
-
4. The command will save the song text into a file named with the song's title in the PyGPT working directory.
|
|
2084
|
-
|
|
2085
|
-
**Example tutorial command**
|
|
2086
|
-
|
|
2087
|
-
**PyGPT** provides simple tutorial command to show how it works, to run it just ask model for execute `tutorial test command` and it will show you how it works:
|
|
2088
|
-
|
|
2089
|
-
```> please execute tutorial test command```
|
|
2090
|
-
|
|
2091
|
-

|
|
2092
|
-
|
|
2093
|
-
## Files I/O
|
|
2094
|
-
|
|
2095
|
-
The plugin allows for file management within the local filesystem. It enables the model to create, read, write and query files located in the `data` directory, which can be found in the user's work directory. With this plugin, the AI can also generate Python code files and thereafter execute that code within the user's system.
|
|
2096
|
-
|
|
2097
|
-
Plugin capabilities include:
|
|
2098
|
-
|
|
2099
|
-
- Sending files as attachments
|
|
2100
|
-
- Reading files
|
|
2101
|
-
- Appending to files
|
|
2102
|
-
- Writing files
|
|
2103
|
-
- Deleting files and directories
|
|
2104
|
-
- Listing files and directories
|
|
2105
|
-
- Creating directories
|
|
2106
|
-
- Downloading files
|
|
2107
|
-
- Copying files and directories
|
|
2108
|
-
- Moving (renaming) files and directories
|
|
2109
|
-
- Reading file info
|
|
2110
|
-
- Indexing files and directories using LlamaIndex
|
|
2111
|
-
- Querying files using LlamaIndex
|
|
2112
|
-
- Searching for files and directories
|
|
2113
|
-
|
|
2114
|
-
If a file being created (with the same name) already exists, a prefix including the date and time is added to the file name.
|
|
2115
|
-
|
|
2116
|
-
**Options:**
|
|
2117
|
-
|
|
2118
|
-
**General**
|
|
2119
|
-
|
|
2120
|
-
- `Tool: send (upload) file as attachment` *cmd.send_file*
|
|
2121
|
-
|
|
2122
|
-
Allows `cmd.send_file` command execution. *Default:* `True`
|
|
2123
|
-
|
|
2124
|
-
- `Tool: read file` *cmd.read_file*
|
|
2125
|
-
|
|
2126
|
-
Allows `read_file` command execution. *Default:* `True`
|
|
2127
|
-
|
|
2128
|
-
- `Tool: append to file` *cmd.append_file*
|
|
2129
|
-
|
|
2130
|
-
Allows `append_file` command execution. Text-based files only (plain text, JSON, CSV, etc.) *Default:* `True`
|
|
2131
|
-
|
|
2132
|
-
- `Tool: save file` *cmd.save_file*
|
|
2133
|
-
|
|
2134
|
-
Allows `save_file` command execution. Text-based files only (plain text, JSON, CSV, etc.) *Default:* `True`
|
|
2135
|
-
|
|
2136
|
-
- `Tool: delete file` *cmd.delete_file*
|
|
2137
|
-
|
|
2138
|
-
Allows `delete_file` command execution. *Default:* `True`
|
|
2139
|
-
|
|
2140
|
-
- `Tool: list files (ls)` *cmd.list_files*
|
|
2141
|
-
|
|
2142
|
-
Allows `list_dir` command execution. *Default:* `True`
|
|
2143
|
-
|
|
2144
|
-
- `Tool: list files in dirs in directory (ls)` *cmd.list_dir*
|
|
2145
|
-
|
|
2146
|
-
Allows `mkdir` command execution. *Default:* `True`
|
|
2147
|
-
|
|
2148
|
-
- `Tool: downloading files` *cmd.download_file*
|
|
2149
|
-
|
|
2150
|
-
Allows `download_file` command execution. *Default:* `True`
|
|
2151
|
-
|
|
2152
|
-
- `Tool: removing directories` *cmd.rmdir*
|
|
2153
|
-
|
|
2154
|
-
Allows `rmdir` command execution. *Default:* `True`
|
|
2155
|
-
|
|
2156
|
-
- `Tool: copying files` *cmd.copy_file*
|
|
2157
|
-
|
|
2158
|
-
Allows `copy_file` command execution. *Default:* `True`
|
|
2159
|
-
|
|
2160
|
-
- `Tool: copying directories (recursive)` *cmd.copy_dir*
|
|
2161
|
-
|
|
2162
|
-
Allows `copy_dir` command execution. *Default:* `True`
|
|
2163
|
-
|
|
2164
|
-
- `Tool: move files and directories (rename)` *cmd.move*
|
|
2165
|
-
|
|
2166
|
-
Allows `move` command execution. *Default:* `True`
|
|
2167
|
-
|
|
2168
|
-
- `Tool: check if path is directory` *cmd.is_dir*
|
|
2169
|
-
|
|
2170
|
-
Allows `is_dir` command execution. *Default:* `True`
|
|
2171
|
-
|
|
2172
|
-
- `Tool: check if path is file` *cmd.is_file*
|
|
2173
|
-
|
|
2174
|
-
Allows `is_file` command execution. *Default:* `True`
|
|
2175
|
-
|
|
2176
|
-
- `Tool: check if file or directory exists` *cmd.file_exists*
|
|
2177
|
-
|
|
2178
|
-
Allows `file_exists` command execution. *Default:* `True`
|
|
2179
|
-
|
|
2180
|
-
- `Tool: get file size` *cmd.file_size*
|
|
2181
|
-
|
|
2182
|
-
Allows `file_size` command execution. *Default:* `True`
|
|
2183
|
-
|
|
2184
|
-
- `Tool: get file info` *cmd.file_info*
|
|
2185
|
-
|
|
2186
|
-
Allows `file_info` command execution. *Default:* `True`
|
|
2187
|
-
|
|
2188
|
-
- `Tool: find file or directory` *cmd.find*
|
|
2189
|
-
|
|
2190
|
-
Allows `find` command execution. *Default:* `True`
|
|
2191
|
-
|
|
2192
|
-
- `Tool: get current working directory` *cmd.cwd*
|
|
2193
|
-
|
|
2194
|
-
Allows `cwd` command execution. *Default:* `True`
|
|
2195
|
-
|
|
2196
|
-
- `Use data loaders` *use_loaders*
|
|
2197
|
-
|
|
2198
|
-
Use data loaders from LlamaIndex for file reading (`read_file` command). *Default:* `True`
|
|
2199
|
-
|
|
2200
|
-
**Indexing**
|
|
2201
|
-
|
|
2202
|
-
- `Tool: quick query the file with LlamaIndex` *cmd.query_file*
|
|
2203
|
-
|
|
2204
|
-
Allows `query_file` command execution (in-memory index). If enabled, model will be able to quick index file into memory and query it for data (in-memory index) *Default:* `True`
|
|
2205
|
-
|
|
2206
|
-
- `Model for query in-memory index` *model_tmp_query*
|
|
2207
|
-
|
|
2208
|
-
Model used for query temporary index for `query_file` command (in-memory index). *Default:* `gpt-3.5-turbo`
|
|
2209
|
-
|
|
2210
|
-
- `Tool: indexing files to persistent index` *cmd.file_index*
|
|
2211
|
-
|
|
2212
|
-
Allows `file_index` command execution. If enabled, model will be able to index file or directory using LlamaIndex (persistent index). *Default:* `True`
|
|
2213
|
-
|
|
2214
|
-
- `Index to use when indexing files` *idx*
|
|
2215
|
-
|
|
2216
|
-
ID of index to use for indexing files (persistent index). *Default:* `base`
|
|
2217
|
-
|
|
2218
|
-
- `Auto index reading files` *auto_index*
|
|
2219
|
-
|
|
2220
|
-
If enabled, every time file is read, it will be automatically indexed (persistent index). *Default:* `False`
|
|
2221
|
-
|
|
2222
|
-
- `Only index reading files` *only_index*
|
|
2223
|
-
|
|
2224
|
-
If enabled, file will be indexed without return its content on file read (persistent index). *Default:* `False`
|
|
2225
|
-
|
|
2226
|
-
## System (OS)
|
|
2227
|
-
|
|
2228
|
-
The plugin provides access to the operating system and executes system commands.
|
|
2229
|
-
|
|
2230
|
-
**Options:**
|
|
2231
|
-
|
|
2232
|
-
**General**
|
|
2233
|
-
|
|
2234
|
-
- `Auto-append CWD to sys_exec` *auto_cwd*
|
|
2235
|
-
|
|
2236
|
-
Automatically append current working directory to `sys_exec` command. *Default:* `True`
|
|
2237
|
-
|
|
2238
|
-
- `Tool: sys_exec` *cmd.sys_exec*
|
|
2239
|
-
|
|
2240
|
-
Allows `sys_exec` command execution. If enabled, provides system commands execution. *Default:* `True`
|
|
2241
|
-
|
|
2242
|
-
|
|
2243
|
-
## Mouse And Keyboard
|
|
2244
|
-
|
|
2245
|
-
Introduced in version: `2.4.4` (2024-11-09)
|
|
2246
|
-
|
|
2247
|
-
**WARNING: Use this plugin with caution - allowing all options gives the model full control over the mouse and keyboard**
|
|
2248
|
-
|
|
2249
|
-
The plugin allows for controlling the mouse and keyboard by the model. With this plugin, you can send a task to the model, e.g., "open notepad, type something in it" or "open web browser, do search, find something."
|
|
2250
|
-
|
|
2251
|
-
Plugin capabilities include:
|
|
2252
|
-
|
|
2253
|
-
- Get mouse cursor position
|
|
2254
|
-
- Control mouse cursor position
|
|
2255
|
-
- Control mouse clicks
|
|
2256
|
-
- Control mouse scroll
|
|
2257
|
-
- Control the keyboard (pressing keys, typing text)
|
|
2258
|
-
- Making screenshots
|
|
2259
|
-
|
|
2260
|
-
The `+ Tools` option must be enabled to use this plugin.
|
|
2261
|
-
|
|
2262
|
-
**Options:**
|
|
2263
|
-
|
|
2264
|
-
**General**
|
|
2265
|
-
|
|
2266
|
-
- `Prompt` *prompt*
|
|
2267
|
-
|
|
2268
|
-
Prompt used to instruct how to control the mouse and keyboard.
|
|
2269
|
-
|
|
2270
|
-
- `Enable: Allow mouse movement` *allow_mouse_move*
|
|
2271
|
-
|
|
2272
|
-
Allows mouse movement. *Default:* `True`
|
|
2273
|
-
|
|
2274
|
-
- `Enable: Allow mouse click` *allow_mouse_click*
|
|
2275
|
-
|
|
2276
|
-
Allows mouse click. *Default:* `True`
|
|
2277
|
-
|
|
2278
|
-
- `Enable: Allow mouse scroll` *allow_mouse_scroll*
|
|
2279
|
-
|
|
2280
|
-
Allows mouse scroll. *Default:* `True`
|
|
2281
|
-
|
|
2282
|
-
- `Enable: Allow keyboard key press` *allow_keyboard*
|
|
2283
|
-
|
|
2284
|
-
Allows keyboard typing. *Default:* `True`
|
|
2285
|
-
|
|
2286
|
-
- `Enable: Allow making screenshots` *allow_screenshot*
|
|
2287
|
-
|
|
2288
|
-
Allows making screenshots. *Default:* `True`
|
|
2289
|
-
|
|
2290
|
-
- `Tool: mouse_get_pos` *cmd.mouse_get_pos*
|
|
2291
|
-
|
|
2292
|
-
Allows `mouse_get_pos` command execution. *Default:* `True`
|
|
2293
|
-
|
|
2294
|
-
- `Tool: mouse_set_pos` *cmd.mouse_set_pos*
|
|
2295
|
-
|
|
2296
|
-
Allows `mouse_set_pos` command execution. *Default:* `True`
|
|
2297
|
-
|
|
2298
|
-
- `Tool: make_screenshot` *cmd.make_screenshot*
|
|
2299
|
-
|
|
2300
|
-
Allows `make_screenshot` command execution. *Default:* `True`
|
|
2301
|
-
|
|
2302
|
-
- `Tool: mouse_click` *cmd.mouse_click*
|
|
2303
|
-
|
|
2304
|
-
Allows `mouse_click` command execution. *Default:* `True`
|
|
2305
|
-
|
|
2306
|
-
- `Tool: mouse_move` *cmd.mouse_move*
|
|
2307
|
-
|
|
2308
|
-
Allows `mouse_move` command execution. *Default:* `True`
|
|
2309
|
-
|
|
2310
|
-
- `Tool: mouse_scroll` *cmd.mouse_scroll*
|
|
2311
|
-
|
|
2312
|
-
Allows `mouse_scroll` command execution. *Default:* `True`
|
|
2313
|
-
|
|
2314
|
-
- `Tool: keyboard_key` *cmd.keyboard_key*
|
|
2315
|
-
|
|
2316
|
-
Allows `keyboard_key` command execution. *Default:* `True`
|
|
2317
|
-
|
|
2318
|
-
- `Tool: keyboard_type` *cmd.keyboard_type*
|
|
2319
|
-
|
|
2320
|
-
Allows `keyboard_type` command execution. *Default:* `True`
|
|
2321
|
-
|
|
2322
|
-
|
|
2323
|
-
## Web Search
|
|
2324
|
-
|
|
2325
|
-
**PyGPT** lets you connect model to the internet and carry out web searches in real time as you make queries.
|
|
2326
|
-
|
|
2327
|
-
To activate this feature, turn on the `Web Search` plugin found in the `Plugins` menu.
|
|
2328
|
-
|
|
2329
|
-
Web searches are provided by `Google Custom Search Engine` and `Microsoft Bing` APIs and can be extended with other search engine providers.
|
|
2330
|
-
|
|
2331
|
-
**Options**
|
|
2332
|
-
|
|
2333
|
-
- `Provider` *provider*
|
|
2334
|
-
|
|
2335
|
-
Choose the provider. *Default:* `Google`
|
|
2336
|
-
|
|
2337
|
-
Available providers:
|
|
2338
|
-
|
|
2339
|
-
- Google
|
|
2340
|
-
- Microsoft Bing
|
|
2341
|
-
|
|
2342
|
-
**Google**
|
|
2343
|
-
|
|
2344
|
-
To use this provider, you need an API key, which you can obtain by registering an account at:
|
|
2345
|
-
|
|
2346
|
-
https://developers.google.com/custom-search/v1/overview
|
|
2347
|
-
|
|
2348
|
-
After registering an account, create a new project and select it from the list of available projects:
|
|
2349
|
-
|
|
2350
|
-
https://programmablesearchengine.google.com/controlpanel/all
|
|
2351
|
-
|
|
2352
|
-
After selecting your project, you need to enable the `Whole Internet Search` option in its settings.
|
|
2353
|
-
Then, copy the following two items into **PyGPT**:
|
|
2354
|
-
|
|
2355
|
-
- `Api Key`
|
|
2356
|
-
- `CX ID`
|
|
2357
|
-
|
|
2358
|
-
These data must be configured in the appropriate fields in the `Plugins / Settings...` menu:
|
|
2359
|
-
|
|
2360
|
-

|
|
2361
|
-
|
|
2362
|
-
- `Google Custom Search API KEY` *google_api_key*
|
|
2363
|
-
|
|
2364
|
-
You can obtain your own API key at https://developers.google.com/custom-search/v1/overview
|
|
2365
|
-
|
|
2366
|
-
- `Google Custom Search CX ID` *google_api_cx*
|
|
2367
|
-
|
|
2368
|
-
You will find your CX ID at https://programmablesearchengine.google.com/controlpanel/all - remember to enable "Search on ALL internet pages" option in project settings.
|
|
2369
|
-
|
|
2370
|
-
**Microsoft Bing**
|
|
2371
|
-
|
|
2372
|
-
- `Bing Search API KEY` *bing_api_key*
|
|
2373
|
-
|
|
2374
|
-
You can obtain your own API key at https://www.microsoft.com/en-us/bing/apis/bing-web-search-api
|
|
2375
|
-
|
|
2376
|
-
- `Bing Search API endpoint` *bing_endpoint*
|
|
2377
|
-
|
|
2378
|
-
API endpoint for Bing Search API, default: https://api.bing.microsoft.com/v7.0/search
|
|
2379
|
-
|
|
2380
|
-
**General options**
|
|
2381
|
-
|
|
2382
|
-
- `Number of pages to search` *num_pages*
|
|
2383
|
-
|
|
2384
|
-
Number of max pages to search per query. *Default:* `10`
|
|
2385
|
-
|
|
2386
|
-
- `Max content characters` *max_page_content_length*
|
|
2387
|
-
|
|
2388
|
-
Max characters of page content to get (0 = unlimited). *Default:* `0`
|
|
2389
|
-
|
|
2390
|
-
- `Per-page content chunk size` *chunk_size*
|
|
2391
|
-
|
|
2392
|
-
Per-page content chunk size (max characters per chunk). *Default:* `20000`
|
|
2393
|
-
|
|
2394
|
-
- `Disable SSL verify` *disable_ssl*
|
|
2395
|
-
|
|
2396
|
-
Disables SSL verification when crawling web pages. *Default:* `False`
|
|
2397
|
-
|
|
2398
|
-
- `Use raw content (without summarization)` *raw*
|
|
2399
|
-
|
|
2400
|
-
Return raw content from web search instead of summarized content. Provides more data but consumes more tokens. *Default:* `True`
|
|
2401
|
-
|
|
2402
|
-
- `Timeout` *timeout*
|
|
2403
|
-
|
|
2404
|
-
Connection timeout (seconds). *Default:* `5`
|
|
2405
|
-
|
|
2406
|
-
- `User agent` *user_agent*
|
|
2407
|
-
|
|
2408
|
-
User agent to use when making requests. *Default:* `Mozilla/5.0`.
|
|
2409
|
-
|
|
2410
|
-
- `Max result length` *max_result_length*
|
|
2411
|
-
|
|
2412
|
-
Max length of the summarized or raw result (characters). *Default:* `50000`
|
|
2413
|
-
|
|
2414
|
-
- `Max summary tokens` *summary_max_tokens*
|
|
2415
|
-
|
|
2416
|
-
Max tokens in output when generating summary. *Default:* `1500`
|
|
2417
|
-
|
|
2418
|
-
- `Tool: web_search` *cmd.web_search*
|
|
2419
|
-
|
|
2420
|
-
Allows `web_search` command execution. If enabled, model will be able to search the Web. *Default:* `True`
|
|
2421
|
-
|
|
2422
|
-
- `Tool: web_url_open` *cmd.web_url_open*
|
|
2423
|
-
|
|
2424
|
-
Allows `web_url_open` command execution. If enabled, model will be able to open specified URL and summarize content. *Default:* `True`
|
|
2425
|
-
|
|
2426
|
-
- `Tool: web_url_raw` *cmd.web_url_raw*
|
|
2427
|
-
|
|
2428
|
-
Allows `web_url_raw` command execution. If enabled, model will be able to open specified URL and get the raw content. *Default:* `True`
|
|
2429
|
-
|
|
2430
|
-
- `Tool: web_request` *cmd.web_request*
|
|
2431
|
-
|
|
2432
|
-
Allows `web_request` command execution. If enabled, model will be able to send any HTTP request to specified URL or API endpoint. *Default:* `True`
|
|
2433
|
-
|
|
2434
|
-
- `Tool: web_extract_links` *cmd.web_extract_links*
|
|
2435
|
-
|
|
2436
|
-
Allows `web_extract_links` command execution. If enabled, model will be able to open URL and get list of all links from it. *Default:* `True`
|
|
2437
|
-
|
|
2438
|
-
- `Tool: web_extract_images` *cmd.web_extract_images*
|
|
2439
|
-
|
|
2440
|
-
Allows `web_extract_images` command execution. If enabled, model will be able to open URL and get list of all images from it.. *Default:* `True`
|
|
2441
|
-
|
|
2442
|
-
**Advanced**
|
|
2443
|
-
|
|
2444
|
-
- `Model used for web page summarize` *summary_model*
|
|
2445
|
-
|
|
2446
|
-
Model used for web page summarize. *Default:* `gpt-4o-mini`
|
|
2447
|
-
|
|
2448
|
-
- `Summarize prompt` *prompt_summarize*
|
|
2449
|
-
|
|
2450
|
-
Prompt used for web search results summarize, use {query} as a placeholder for search query.
|
|
2451
|
-
|
|
2452
|
-
- `Summarize prompt (URL open)` *prompt_summarize_url*
|
|
2453
|
-
|
|
2454
|
-
Prompt used for specified URL page summarize.
|
|
2455
|
-
|
|
2456
|
-
**Indexing**
|
|
2457
|
-
|
|
2458
|
-
- `Tool: web_index` *cmd.web_index*
|
|
2459
|
-
|
|
2460
|
-
Allows `web_index` command execution. If enabled, model will be able to index pages and external content using LlamaIndex (persistent index). *Default:* `True`
|
|
2461
|
-
|
|
2462
|
-
- `Tool: web_index_query` *cmd.web_index_query*
|
|
2463
|
-
|
|
2464
|
-
Allows `web_index_query` command execution. If enabled, model will be able to quick index and query web content using LlamaIndex (in-memory index). *Default:* `True`
|
|
2465
|
-
|
|
2466
|
-
- `Auto-index all used URLs using LlamaIndex` *auto_index*
|
|
2467
|
-
|
|
2468
|
-
If enabled, every URL used by the model will be automatically indexed using LlamaIndex (persistent index). *Default:* `False`
|
|
2469
|
-
|
|
2470
|
-
- `Index to use` *idx*
|
|
2471
|
-
|
|
2472
|
-
ID of index to use for web page indexing (persistent index). *Default:* `base`
|
|
2473
|
-
|
|
2474
|
-
## Serial port / USB
|
|
2475
|
-
|
|
2476
|
-
Provides commands for reading and sending data to USB ports.
|
|
2477
|
-
|
|
2478
|
-
**Tip:** in Snap version you must connect the interface first: https://snapcraft.io/docs/serial-port-interface
|
|
2479
|
-
|
|
2480
|
-
You can send commands to, for example, an Arduino or any other controllers using the serial port for communication.
|
|
2481
|
-
|
|
2482
|
-

|
|
2483
|
-
|
|
2484
|
-
Above is an example of co-operation with the following code uploaded to `Arduino Uno` and connected via USB:
|
|
2485
|
-
|
|
2486
|
-
```cpp
|
|
2487
|
-
// example.ino
|
|
2488
|
-
|
|
2489
|
-
void setup() {
|
|
2490
|
-
Serial.begin(9600);
|
|
2491
|
-
}
|
|
2492
|
-
|
|
2493
|
-
void loop() {
|
|
2494
|
-
if (Serial.available() > 0) {
|
|
2495
|
-
String input = Serial.readStringUntil('\n');
|
|
2496
|
-
if (input.length() > 0) {
|
|
2497
|
-
Serial.println("OK, response for: " + input);
|
|
2498
|
-
}
|
|
2499
|
-
}
|
|
2500
|
-
}
|
|
2501
|
-
```
|
|
2502
|
-
|
|
2503
|
-
**Options**
|
|
2504
|
-
|
|
2505
|
-
- `USB port` *serial_port*
|
|
2506
|
-
|
|
2507
|
-
USB port name, e.g. `/dev/ttyUSB0`, `/dev/ttyACM0`, `COM3`. *Default:* `/dev/ttyUSB0`
|
|
2508
|
-
|
|
2509
|
-
- `Connection speed (baudrate, bps)` *serial_bps*
|
|
2510
|
-
|
|
2511
|
-
Port connection speed, in bps. *Default:* `9600`
|
|
2512
|
-
|
|
2513
|
-
- `Timeout` *timeout*
|
|
2514
|
-
|
|
2515
|
-
Timeout in seconds. *Default:* `1`
|
|
2516
|
-
|
|
2517
|
-
- `Sleep` *sleep*
|
|
2518
|
-
|
|
2519
|
-
Sleep in seconds after connection *Default:* `2`
|
|
2520
|
-
|
|
2521
|
-
- `Tool: Send text commands to USB port` *cmd.serial_send*
|
|
2522
|
-
|
|
2523
|
-
Allows `serial_send` command execution. *Default:* `True`
|
|
2524
|
-
|
|
2525
|
-
- `Tool: Send raw bytes to USB port` *cmd.serial_send_bytes*
|
|
2526
|
-
|
|
2527
|
-
Allows `serial_send_bytes` command execution. *Default:* `True`
|
|
2528
|
-
|
|
2529
|
-
- `Tool: Read data from USB port` *cmd.serial_read*
|
|
2530
|
-
|
|
2531
|
-
Allows `serial_read` command execution. *Default:* `True`
|
|
2532
|
-
|
|
2533
|
-
## Context history (calendar, inline)
|
|
2534
|
-
|
|
2535
|
-
Provides access to context history database.
|
|
2536
|
-
Plugin also provides access to reading and creating day notes.
|
|
2537
|
-
|
|
2538
|
-
Examples of use, you can ask e.g. for the following:
|
|
2539
|
-
|
|
2540
|
-
```Give me today day note```
|
|
2541
|
-
|
|
2542
|
-
```Save a new note for today```
|
|
2543
|
-
|
|
2544
|
-
```Update my today note with...```
|
|
2545
|
-
|
|
2546
|
-
```Get the list of yesterday conversations```
|
|
2547
|
-
|
|
2548
|
-
```Get contents of conversation ID 123```
|
|
2549
|
-
|
|
2550
|
-
etc.
|
|
2551
|
-
|
|
2552
|
-
You can also use `@` ID tags to automatically use summary of previous contexts in current discussion.
|
|
2553
|
-
To use context from previous discussion with specified ID use following syntax in your query:
|
|
2554
|
-
|
|
2555
|
-
```@123```
|
|
2556
|
-
|
|
2557
|
-
Where `123` is the ID of previous context (conversation) in database, example of use:
|
|
2558
|
-
|
|
2559
|
-
```Let's talk about discussion @123```
|
|
2560
|
-
|
|
2561
|
-
|
|
2562
|
-
**Options**
|
|
2563
|
-
|
|
2564
|
-
- `Enable: using context @ ID tags` *use_tags*
|
|
2565
|
-
|
|
2566
|
-
When enabled, it allows to automatically retrieve context history using @ tags, e.g. use @123 in question to use summary of context with ID 123 as additional context. *Default:* `False`
|
|
2567
|
-
|
|
2568
|
-
- `Tool: get date range context list` *cmd.get_ctx_list_in_date_range*
|
|
2569
|
-
|
|
2570
|
-
Allows `get_ctx_list_in_date_range` command execution. If enabled, it allows getting the list of context history (previous conversations). *Default:* `True
|
|
2571
|
-
|
|
2572
|
-
- `Tool: get context content by ID` *cmd.get_ctx_content_by_id*
|
|
2573
|
-
|
|
2574
|
-
Allows `get_ctx_content_by_id` command execution. If enabled, it allows getting summarized content of context with defined ID. *Default:* `True`
|
|
2575
|
-
|
|
2576
|
-
- `Tool: count contexts in date range` *cmd.count_ctx_in_date*
|
|
2577
|
-
|
|
2578
|
-
Allows `count_ctx_in_date` command execution. If enabled, it allows counting contexts in date range. *Default:* `True`
|
|
2579
|
-
|
|
2580
|
-
- `Tool: get day note` *cmd.get_day_note*
|
|
2581
|
-
|
|
2582
|
-
Allows `get_day_note` command execution. If enabled, it allows retrieving day note for specific date. *Default:* `True`
|
|
2583
|
-
|
|
2584
|
-
- `Tool: add day note` *cmd.add_day_note*
|
|
2585
|
-
|
|
2586
|
-
Allows `add_day_note` command execution. If enabled, it allows adding day note for specific date. *Default:* `True`
|
|
2587
|
-
|
|
2588
|
-
- `Tool: update day note` *cmd.update_day_note*
|
|
2589
|
-
|
|
2590
|
-
Allows `update_day_note` command execution. If enabled, it allows updating day note for specific date. *Default:* `True`
|
|
2591
|
-
|
|
2592
|
-
- `Tool: remove day note` *cmd.remove_day_note*
|
|
2593
|
-
|
|
2594
|
-
Allows `remove_day_note` command execution. If enabled, it allows removing day note for specific date. *Default:* `True`
|
|
2595
|
-
|
|
2596
|
-
- `Model` *model_summarize*
|
|
2597
|
-
|
|
2598
|
-
Model used for summarize. *Default:* `gpt-3.5-turbo`
|
|
2599
|
-
|
|
2600
|
-
- `Max summary tokens` *summary_max_tokens*
|
|
2601
|
-
|
|
2602
|
-
Max tokens in output when generating summary. *Default:* `1500`
|
|
2603
|
-
|
|
2604
|
-
- `Max contexts to retrieve` *ctx_items_limit*
|
|
2605
|
-
|
|
2606
|
-
Max items in context history list to retrieve in one query. 0 = no limit. *Default:* `30`
|
|
2607
|
-
|
|
2608
|
-
- `Per-context items content chunk size` *chunk_size*
|
|
2609
|
-
|
|
2610
|
-
Per-context content chunk size (max characters per chunk). *Default:* `100000 chars`
|
|
2611
|
-
|
|
2612
|
-
**Options (advanced)**
|
|
2613
|
-
|
|
2614
|
-
- `Prompt: @ tags (system)` *prompt_tag_system*
|
|
2615
|
-
|
|
2616
|
-
Prompt for use @ tag (system).
|
|
2617
|
-
|
|
2618
|
-
- `Prompt: @ tags (summary)` *prompt_tag_summary*
|
|
2619
|
-
|
|
2620
|
-
Prompt for use @ tag (summary).
|
|
2621
|
-
|
|
2622
|
-
|
|
2623
|
-
## Crontab / Task scheduler
|
|
2624
|
-
|
|
2625
|
-
Plugin provides cron-based job scheduling - you can schedule tasks/prompts to be sent at any time using cron-based syntax for task setup.
|
|
2626
|
-
|
|
2627
|
-

|
|
2628
|
-
|
|
2629
|
-
- `Your tasks` *crontab*
|
|
2630
|
-
|
|
2631
|
-
Add your cron-style tasks here.
|
|
2632
|
-
They will be executed automatically at the times you specify in the cron-based job format.
|
|
2633
|
-
If you are unfamiliar with Cron, consider visiting the Cron Guru page for assistance: https://crontab.guru
|
|
2634
|
-
|
|
2635
|
-
Number of active tasks is always displayed in a tray dropdown menu:
|
|
2636
|
-
|
|
2637
|
-

|
|
2638
|
-
|
|
2639
|
-
- `Create a new context on job run` *new_ctx*
|
|
2640
|
-
|
|
2641
|
-
If enabled, then a new context will be created on every run of the job. *Default:* `True`
|
|
2642
|
-
|
|
2643
|
-
- `Show notification on job run` *show_notify*
|
|
2644
|
-
|
|
2645
|
-
If enabled, then a tray notification will be shown on every run of the job. *Default:* `True`
|
|
2646
|
-
|
|
2647
|
-
|
|
2648
|
-
## Image Generation (inline)
|
|
2649
|
-
|
|
2650
|
-
The plugin integrates `DALL-E 3` image generation with any chat mode. Simply enable it and request an image in Chat mode, using a standard model such as `GPT-4`. The plugin does not require the `+ Tools` option to be enabled.
|
|
2651
|
-
|
|
2652
|
-
**Options**
|
|
2653
|
-
|
|
2654
|
-
- `Prompt` *prompt*
|
|
2655
|
-
|
|
2656
|
-
The prompt is used to generate a query for the `DALL-E` image generation model, which runs in the background.
|
|
2657
|
-
|
|
2658
|
-
## Experts (inline)
|
|
2659
|
-
|
|
2660
|
-
The plugin allows calling experts in any chat mode. This is the inline Experts (co-op) mode.
|
|
1519
|
+
- Retrieve details about the authenticated user.
|
|
1520
|
+
- Get information about a specific user.
|
|
1521
|
+
- List available workspaces.
|
|
1522
|
+
- List repositories in a workspace.
|
|
1523
|
+
- Get details about a specific repository.
|
|
1524
|
+
- Create a new repository.
|
|
1525
|
+
- Delete an existing repository.
|
|
1526
|
+
- Retrieve contents of a file in a repository.
|
|
1527
|
+
- Upload a file to a repository.
|
|
1528
|
+
- Delete a file from a repository.
|
|
1529
|
+
- List issues in a repository.
|
|
1530
|
+
- Create a new issue.
|
|
1531
|
+
- Comment on an existing issue.
|
|
1532
|
+
- Update details of an issue.
|
|
1533
|
+
- List pull requests in a repository.
|
|
1534
|
+
- Create a new pull request.
|
|
1535
|
+
- Merge an existing pull request.
|
|
1536
|
+
- Search for repositories.
|
|
2661
1537
|
|
|
2662
|
-
|
|
1538
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#bitbucket
|
|
2663
1539
|
|
|
2664
|
-
##
|
|
1540
|
+
## Chat with Files (LlamaIndex, inline)
|
|
2665
1541
|
|
|
2666
|
-
|
|
1542
|
+
Plugin integrates `LlamaIndex` storage in any chat and provides additional knowledge into context.
|
|
2667
1543
|
|
|
2668
|
-
|
|
1544
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#chat-with-files-llamaindex-inline
|
|
2669
1545
|
|
|
2670
|
-
|
|
1546
|
+
## Code Interpreter
|
|
2671
1547
|
|
|
2672
|
-
|
|
1548
|
+
### Executing Code
|
|
2673
1549
|
|
|
2674
|
-
|
|
1550
|
+
From version `2.4.13` with built-in `IPython`.
|
|
2675
1551
|
|
|
2676
|
-
|
|
1552
|
+
The plugin operates similarly to the `Code Interpreter` in `ChatGPT`, with the key difference that it works locally on the user's system. It allows for the execution of any Python code on the computer that the model may generate. When combined with the `Files I/O` plugin, it facilitates running code from files saved in the `data` directory. You can also prepare your own code files and enable the model to use them or add your own plugin for this purpose. You can execute commands and code on the host machine or in Docker container.
|
|
2677
1553
|
|
|
2678
|
-
|
|
1554
|
+
**IPython:** Starting from version `2.4.13`, it is highly recommended to adopt the new option: `IPython`, which offers significant improvements over previous workflows. IPython provides a robust environment for executing code within a kernel, allowing you to maintain the state of your session by preserving the results of previous commands. This feature is particularly useful for iterative development and data analysis, as it enables you to build upon prior computations without starting from scratch. Moreover, IPython supports the use of magic commands, such as `!pip install <package_name>`, which facilitate the installation of new packages directly within the session. This capability streamlines the process of managing dependencies and enhances the flexibility of your development environment. Overall, IPython offers a more efficient and user-friendly experience for executing and managing code.
|
|
2679
1555
|
|
|
2680
|
-
|
|
1556
|
+
To use IPython in sandbox mode, Docker must be installed on your system.
|
|
2681
1557
|
|
|
2682
|
-
|
|
1558
|
+
You can find the installation instructions here: https://docs.docker.com/engine/install/
|
|
2683
1559
|
|
|
2684
|
-
|
|
1560
|
+
**Tip: connecting IPython in Docker in Snap version**:
|
|
2685
1561
|
|
|
2686
|
-
|
|
1562
|
+
To use IPython in the Snap version, you must connect PyGPT to the Docker daemon:
|
|
2687
1563
|
|
|
2688
|
-
|
|
1564
|
+
```commandline
|
|
1565
|
+
sudo snap connect pygpt:docker-executables docker:docker-executables
|
|
1566
|
+
```
|
|
2689
1567
|
|
|
2690
|
-
|
|
1568
|
+
````commandline
|
|
1569
|
+
sudo snap connect pygpt:docker docker:docker-daemon
|
|
1570
|
+
````
|
|
2691
1571
|
|
|
2692
|
-
|
|
1572
|
+
**Code interpreter:** a real-time Python Code Interpreter is built-in. Click the `<>` icon to open the interpreter window. Both the input and output of the interpreter are connected to the plugin. Any output generated by the executed code will be displayed in the interpreter. Additionally, you can request the model to retrieve contents from the interpreter window output.
|
|
2693
1573
|
|
|
2694
|
-
|
|
1574
|
+

|
|
2695
1575
|
|
|
2696
|
-
**
|
|
1576
|
+
**INFO:** Executing Python code using IPython in compiled versions requires an enabled sandbox (Docker container). You can connect the Docker container via `Plugins -> Settings`.
|
|
2697
1577
|
|
|
2698
|
-
- `From (email)` *from_email*
|
|
2699
1578
|
|
|
2700
|
-
|
|
1579
|
+
**Tip:** always remember to enable the `+ Tools` option to allow execute commands from the plugins.
|
|
2701
1580
|
|
|
2702
|
-
|
|
1581
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#code-interpreter
|
|
2703
1582
|
|
|
2704
|
-
|
|
1583
|
+
## Context history (calendar, inline)
|
|
2705
1584
|
|
|
2706
|
-
|
|
1585
|
+
Provides access to context history database.
|
|
1586
|
+
Plugin also provides access to reading and creating day notes.
|
|
2707
1587
|
|
|
2708
|
-
|
|
1588
|
+
Examples of use, you can ask e.g. for the following:
|
|
2709
1589
|
|
|
2710
|
-
|
|
1590
|
+
```Give me today day note```
|
|
2711
1591
|
|
|
2712
|
-
|
|
1592
|
+
```Save a new note for today```
|
|
2713
1593
|
|
|
2714
|
-
|
|
1594
|
+
```Update my today note with...```
|
|
2715
1595
|
|
|
2716
|
-
|
|
1596
|
+
```Get the list of yesterday conversations```
|
|
2717
1597
|
|
|
2718
|
-
|
|
1598
|
+
```Get contents of conversation ID 123```
|
|
2719
1599
|
|
|
2720
|
-
|
|
1600
|
+
etc.
|
|
2721
1601
|
|
|
2722
|
-
-
|
|
1602
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#context-history-calendar-inline
|
|
2723
1603
|
|
|
2724
|
-
|
|
1604
|
+
## Crontab / Task scheduler
|
|
2725
1605
|
|
|
2726
|
-
-
|
|
1606
|
+
Plugin provides cron-based job scheduling - you can schedule tasks/prompts to be sent at any time using cron-based syntax for task setup.
|
|
2727
1607
|
|
|
2728
|
-
|
|
1608
|
+

|
|
2729
1609
|
|
|
2730
|
-
-
|
|
1610
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#crontab-task-scheduler
|
|
2731
1611
|
|
|
2732
|
-
|
|
1612
|
+
## Custom Commands
|
|
2733
1613
|
|
|
1614
|
+
With the `Custom Commands` plugin, you can integrate **PyGPT** with your operating system and scripts or applications. You can define an unlimited number of custom commands and instruct model on when and how to execute them. Configuration is straightforward, and **PyGPT** includes a simple tutorial command for testing and learning how it works:
|
|
2734
1615
|
|
|
2735
|
-
|
|
1616
|
+

|
|
2736
1617
|
|
|
2737
|
-
|
|
2738
|
-
You have the option to include just the date, just the time, or both.
|
|
1618
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#custom-commands
|
|
2739
1619
|
|
|
2740
|
-
|
|
1620
|
+
## Experts (inline)
|
|
2741
1621
|
|
|
2742
|
-
|
|
1622
|
+
The plugin allows calling experts in any chat mode. This is the inline Experts (co-op) mode.
|
|
2743
1623
|
|
|
2744
|
-
|
|
1624
|
+
See the `Work modes -> Experts` section for more details.
|
|
2745
1625
|
|
|
2746
|
-
|
|
1626
|
+
## Facebook
|
|
2747
1627
|
|
|
2748
|
-
|
|
1628
|
+
The plugin integrates with Facebook's Graph API to enable various actions such as managing pages, posts, and media uploads. It uses OAuth2 for authentication and supports automatic token exchange processes.
|
|
2749
1629
|
|
|
2750
|
-
|
|
1630
|
+
- Retrieving basic information about the authenticated user.
|
|
1631
|
+
- Listing all Facebook pages the user has access to.
|
|
1632
|
+
- Setting a specified Facebook page as the default.
|
|
1633
|
+
- Retrieving a list of posts from a Facebook page.
|
|
1634
|
+
- Creating a new post on a Facebook page.
|
|
1635
|
+
- Deleting a post from a Facebook page.
|
|
1636
|
+
- Uploading a photo to a Facebook page.
|
|
2751
1637
|
|
|
2752
|
-
|
|
1638
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#facebook
|
|
2753
1639
|
|
|
2754
|
-
|
|
2755
|
-
current date and time in real-time. *Default:* `Current time is {time}.`
|
|
1640
|
+
## Files I/O
|
|
2756
1641
|
|
|
2757
|
-
|
|
1642
|
+
The plugin allows for file management within the local filesystem. It enables the model to create, read, write and query files located in the `data` directory, which can be found in the user's work directory. With this plugin, the AI can also generate Python code files and thereafter execute that code within the user's system.
|
|
2758
1643
|
|
|
2759
|
-
|
|
2760
|
-
You can enhance every system prompt with extra instructions that will be automatically appended to the system prompt.
|
|
1644
|
+
Plugin capabilities include:
|
|
2761
1645
|
|
|
2762
|
-
|
|
1646
|
+
- Sending files as attachments
|
|
1647
|
+
- Reading files
|
|
1648
|
+
- Appending to files
|
|
1649
|
+
- Writing files
|
|
1650
|
+
- Deleting files and directories
|
|
1651
|
+
- Listing files and directories
|
|
1652
|
+
- Creating directories
|
|
1653
|
+
- Downloading files
|
|
1654
|
+
- Copying files and directories
|
|
1655
|
+
- Moving (renaming) files and directories
|
|
1656
|
+
- Reading file info
|
|
1657
|
+
- Indexing files and directories using LlamaIndex
|
|
1658
|
+
- Querying files using LlamaIndex
|
|
1659
|
+
- Searching for files and directories
|
|
2763
1660
|
|
|
2764
|
-
|
|
1661
|
+
If a file being created (with the same name) already exists, a prefix including the date and time is added to the file name.
|
|
2765
1662
|
|
|
2766
|
-
|
|
2767
|
-
All active extra prompts defined on list will be appended to the system prompt in the order they are listed here.
|
|
1663
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#files-i-o
|
|
2768
1664
|
|
|
1665
|
+
## GitHub
|
|
2769
1666
|
|
|
2770
|
-
|
|
1667
|
+
The plugin provides seamless integration with GitHub, allowing various operations such as repository management, issue tracking, pull requests, and more through GitHub's API. This plugin requires authentication, which can be configured using a Personal Access Token (PAT) or OAuth Device Flow.
|
|
2771
1668
|
|
|
2772
|
-
|
|
1669
|
+
- Retrieve details about your GitHub profile.
|
|
1670
|
+
- Get information about a specific GitHub user.
|
|
1671
|
+
- List repositories for a user or organization.
|
|
1672
|
+
- Retrieve details about a specific repository.
|
|
1673
|
+
- Create a new repository.
|
|
1674
|
+
- Delete an existing repository.
|
|
1675
|
+
- Retrieve the contents of a file in a repository.
|
|
1676
|
+
- Upload or update a file in a repository.
|
|
1677
|
+
- Delete a file from a repository.
|
|
1678
|
+
- List issues in a repository.
|
|
1679
|
+
- Create a new issue in a repository.
|
|
1680
|
+
- Add a comment to an existing issue.
|
|
1681
|
+
- Close an existing issue.
|
|
1682
|
+
- List pull requests in a repository.
|
|
1683
|
+
- Create a new pull request.
|
|
1684
|
+
- Merge an existing pull request.
|
|
1685
|
+
- Search for repositories based on a query.
|
|
1686
|
+
- Search for issues based on a query.
|
|
1687
|
+
- Search for code based on a query.
|
|
2773
1688
|
|
|
2774
|
-
|
|
1689
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#github
|
|
2775
1690
|
|
|
2776
1691
|
## Google (Gmail, Drive, Calendar, Contacts, YT, Keep, Docs, Maps, Colab)
|
|
2777
1692
|
|
|
1693
|
+
The plugin integrates with various Google services, enabling features such as email management, calendar events, contact handling, and document manipulation through Google APIs.
|
|
1694
|
+
|
|
2778
1695
|
- **Gmail**
|
|
2779
1696
|
- Listing recent emails from Gmail.
|
|
2780
1697
|
- Listing all emails from Gmail.
|
|
@@ -2837,18 +1754,70 @@ See the ``Accessibility`` section for more details.
|
|
|
2837
1754
|
- Renaming a notebook.
|
|
2838
1755
|
- Duplicating a notebook.
|
|
2839
1756
|
|
|
2840
|
-
|
|
1757
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#google-gmail-drive-calendar-contacts-yt-keep-docs-maps-colab
|
|
2841
1758
|
|
|
2842
|
-
|
|
2843
|
-
|
|
2844
|
-
-
|
|
2845
|
-
|
|
2846
|
-
|
|
2847
|
-
|
|
2848
|
-
|
|
1759
|
+
## Image Generation (inline)
|
|
1760
|
+
|
|
1761
|
+
The plugin integrates `DALL-E 3` image generation with any chat mode. Simply enable it and request an image in Chat mode, using a standard model such as `GPT-4`. The plugin does not require the `+ Tools` option to be enabled.
|
|
1762
|
+
|
|
1763
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#image-generation-inline
|
|
1764
|
+
|
|
1765
|
+
## Mailer
|
|
1766
|
+
|
|
1767
|
+
Enables the sending, receiving, and reading of emails from the inbox. Currently, only SMTP is supported. More options coming soon.
|
|
1768
|
+
|
|
1769
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#mailer
|
|
1770
|
+
|
|
1771
|
+
## Mouse And Keyboard
|
|
1772
|
+
|
|
1773
|
+
Introduced in version: `2.4.4` (2024-11-09)
|
|
1774
|
+
|
|
1775
|
+
**WARNING: Use this plugin with caution - allowing all options gives the model full control over the mouse and keyboard**
|
|
1776
|
+
|
|
1777
|
+
The plugin allows for controlling the mouse and keyboard by the model. With this plugin, you can send a task to the model, e.g., "open notepad, type something in it" or "open web browser, do search, find something."
|
|
1778
|
+
|
|
1779
|
+
Plugin capabilities include:
|
|
1780
|
+
|
|
1781
|
+
- Get mouse cursor position
|
|
1782
|
+
- Control mouse cursor position
|
|
1783
|
+
- Control mouse clicks
|
|
1784
|
+
- Control mouse scroll
|
|
1785
|
+
- Control the keyboard (pressing keys, typing text)
|
|
1786
|
+
- Making screenshots
|
|
1787
|
+
|
|
1788
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#mouse-and-keyboard
|
|
1789
|
+
|
|
1790
|
+
## Real Time
|
|
1791
|
+
|
|
1792
|
+
This plugin automatically adds the current date and time to each system prompt you send.
|
|
1793
|
+
You have the option to include just the date, just the time, or both.
|
|
1794
|
+
|
|
1795
|
+
When enabled, it quietly enhances each system prompt with current time information before sending it to model.
|
|
1796
|
+
|
|
1797
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#real-time
|
|
1798
|
+
|
|
1799
|
+
## Serial port / USB
|
|
1800
|
+
|
|
1801
|
+
Provides commands for reading and sending data to USB ports.
|
|
1802
|
+
|
|
1803
|
+
**Tip:** in Snap version you must connect the interface first: https://snapcraft.io/docs/serial-port-interface
|
|
1804
|
+
|
|
1805
|
+
You can send commands to, for example, an Arduino or any other controllers using the serial port for communication.
|
|
1806
|
+
|
|
1807
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#serial-port-usb
|
|
1808
|
+
|
|
1809
|
+
## Server (SSH/FTP)
|
|
1810
|
+
|
|
1811
|
+
The Server plugin provides integration for remote server management via SSH, SFTP, and FTP protocols. This plugin allows executing commands, transferring files, and managing directories on remote servers.
|
|
1812
|
+
|
|
1813
|
+
For security reasons, the model will not see any credentials, only the server name and port fields (see the docs)
|
|
1814
|
+
|
|
1815
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#server-ssh-ftp
|
|
2849
1816
|
|
|
2850
1817
|
## Slack
|
|
2851
1818
|
|
|
1819
|
+
The Slack plugin integrates with the Slack Web API, enabling interaction with Slack workspaces through the application. This plugin supports OAuth2 for authentication, which allows for seamless integration with Slack services, enabling actions such as posting messages, retrieving users, and managing conversations.
|
|
1820
|
+
|
|
2852
1821
|
- Retrieving a list of users.
|
|
2853
1822
|
- Listing all conversations.
|
|
2854
1823
|
- Accessing conversation history.
|
|
@@ -2858,8 +1827,25 @@ See the ``Accessibility`` section for more details.
|
|
|
2858
1827
|
- Deleting a chat message.
|
|
2859
1828
|
- Uploading files to Slack.
|
|
2860
1829
|
|
|
1830
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#slack
|
|
1831
|
+
|
|
1832
|
+
## System (OS)
|
|
1833
|
+
|
|
1834
|
+
The plugin provides access to the operating system and executes system commands.
|
|
1835
|
+
|
|
1836
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#system-os
|
|
1837
|
+
|
|
1838
|
+
## System Prompt Extra (append)
|
|
1839
|
+
|
|
1840
|
+
The plugin appends additional system prompts (extra data) from a list to every current system prompt.
|
|
1841
|
+
You can enhance every system prompt with extra instructions that will be automatically appended to the system prompt.
|
|
1842
|
+
|
|
1843
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#system-prompt-extra-append
|
|
1844
|
+
|
|
2861
1845
|
## Telegram
|
|
2862
1846
|
|
|
1847
|
+
The plugin enables integration with Telegram for both bots and user accounts through the ``Bot API`` and the ``Telethon`` library respectively. It allows sending and receiving messages, managing chats, and handling updates.
|
|
1848
|
+
|
|
2863
1849
|
- Sending text messages to a chat or channel.
|
|
2864
1850
|
- Sending photos with an optional caption to a chat or channel.
|
|
2865
1851
|
- Sending documents or files to a chat or channel.
|
|
@@ -2870,8 +1856,36 @@ See the ``Accessibility`` section for more details.
|
|
|
2870
1856
|
- Listing recent dialogs or chats in user mode.
|
|
2871
1857
|
- Retrieving recent messages from a specific chat or channel in user mode.
|
|
2872
1858
|
|
|
1859
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#telegram
|
|
1860
|
+
|
|
1861
|
+
## Vision (inline)
|
|
1862
|
+
|
|
1863
|
+
The plugin integrates vision capabilities across all chat modes, not just Vision mode. Once enabled, it allows the model to seamlessly switch to vision processing in the background whenever an image attachment or vision capture is detected.
|
|
1864
|
+
|
|
1865
|
+
**Tip:** When using `Vision (inline)` by utilizing a plugin in standard mode, such as `Chat` (not `Vision` mode), the `+ Vision` special checkbox will appear at the bottom of the Chat window. It will be automatically enabled any time you provide content for analysis (like an uploaded photo). When the checkbox is enabled, the vision model is used. If you wish to exit the vision model after image analysis, simply uncheck the checkbox. It will activate again automatically when the next image content for analysis is provided.
|
|
1866
|
+
|
|
1867
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#vision-inline
|
|
1868
|
+
|
|
1869
|
+
## Voice Control (inline)
|
|
1870
|
+
|
|
1871
|
+
The plugin provides voice control command execution within a conversation.
|
|
1872
|
+
|
|
1873
|
+
See the ``Accessibility`` section for more details.
|
|
1874
|
+
|
|
1875
|
+
## Web Search
|
|
1876
|
+
|
|
1877
|
+
**PyGPT** lets you connect model to the internet and carry out web searches in real time as you make queries.
|
|
1878
|
+
|
|
1879
|
+
To activate this feature, turn on the `Web Search` plugin found in the `Plugins` menu.
|
|
1880
|
+
|
|
1881
|
+
Web searches are provided by `Google Custom Search Engine` and `Microsoft Bing` APIs and can be extended with other search engine providers.
|
|
1882
|
+
|
|
1883
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#web-search
|
|
1884
|
+
|
|
2873
1885
|
## X/Twitter
|
|
2874
1886
|
|
|
1887
|
+
The X/Twitter plugin integrates with the X platform, allowing for comprehensive interactions such as tweeting, retweeting, liking, media uploads, and more. This plugin requires OAuth2 authentication and offers various configuration options to manage API interactions effectively.
|
|
1888
|
+
|
|
2875
1889
|
- Retrieve user details by providing their username.
|
|
2876
1890
|
- Fetch user information using their unique ID.
|
|
2877
1891
|
- Access recent tweets from a specific user.
|
|
@@ -2891,50 +1905,7 @@ See the ``Accessibility`` section for more details.
|
|
|
2891
1905
|
- Upload media files such as images or videos for tweeting.
|
|
2892
1906
|
- Set alternative text for uploaded media for accessibility.
|
|
2893
1907
|
|
|
2894
|
-
|
|
2895
|
-
|
|
2896
|
-
- Retrieve details about your GitHub profile.
|
|
2897
|
-
- Get information about a specific GitHub user.
|
|
2898
|
-
- List repositories for a user or organization.
|
|
2899
|
-
- Retrieve details about a specific repository.
|
|
2900
|
-
- Create a new repository.
|
|
2901
|
-
- Delete an existing repository.
|
|
2902
|
-
- Retrieve the contents of a file in a repository.
|
|
2903
|
-
- Upload or update a file in a repository.
|
|
2904
|
-
- Delete a file from a repository.
|
|
2905
|
-
- List issues in a repository.
|
|
2906
|
-
- Create a new issue in a repository.
|
|
2907
|
-
- Add a comment to an existing issue.
|
|
2908
|
-
- Close an existing issue.
|
|
2909
|
-
- List pull requests in a repository.
|
|
2910
|
-
- Create a new pull request.
|
|
2911
|
-
- Merge an existing pull request.
|
|
2912
|
-
- Search for repositories based on a query.
|
|
2913
|
-
- Search for issues based on a query.
|
|
2914
|
-
- Search for code based on a query.
|
|
2915
|
-
|
|
2916
|
-
|
|
2917
|
-
## Bitbucket
|
|
2918
|
-
|
|
2919
|
-
- Retrieve details about the authenticated user.
|
|
2920
|
-
- Get information about a specific user.
|
|
2921
|
-
- List available workspaces.
|
|
2922
|
-
- List repositories in a workspace.
|
|
2923
|
-
- Get details about a specific repository.
|
|
2924
|
-
- Create a new repository.
|
|
2925
|
-
- Delete an existing repository.
|
|
2926
|
-
- Retrieve contents of a file in a repository.
|
|
2927
|
-
- Upload a file to a repository.
|
|
2928
|
-
- Delete a file from a repository.
|
|
2929
|
-
- List issues in a repository.
|
|
2930
|
-
- Create a new issue.
|
|
2931
|
-
- Comment on an existing issue.
|
|
2932
|
-
- Update details of an issue.
|
|
2933
|
-
- List pull requests in a repository.
|
|
2934
|
-
- Create a new pull request.
|
|
2935
|
-
- Merge an existing pull request.
|
|
2936
|
-
- Search for repositories.
|
|
2937
|
-
|
|
1908
|
+
Documentation: https://pygpt.readthedocs.io/en/latest/plugins.html#x-twitter
|
|
2938
1909
|
|
|
2939
1910
|
# Creating Your Own Plugins
|
|
2940
1911
|
|
|
@@ -4567,6 +3538,11 @@ may consume additional tokens that are not displayed in the main window.
|
|
|
4567
3538
|
|
|
4568
3539
|
## Recent changes:
|
|
4569
3540
|
|
|
3541
|
+
**2.6.20 (2025-08-22)**
|
|
3542
|
+
|
|
3543
|
+
- Added a new plugin: Server (FTP/SSH) - connect to remote servers using FTP, SFTP, and SSH. Execute remote commands, upload, download, and more (beta).
|
|
3544
|
+
- Added support for Wayland in Snap/compiled versions.
|
|
3545
|
+
|
|
4570
3546
|
**2.6.19 (2025-08-22)**
|
|
4571
3547
|
|
|
4572
3548
|
- Fixed: added prevention for summarizing an empty context.
|