You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## Multi-purpose Text & Image Generation Desktop Commercial Chatbot (supporting various models including GPT)
12
12
13
-
You can use OpenAI models(GPT4o, GPT4o-mini, DALL-E, etc.), Replicate image generation models with PyQt.
13
+
This application is developed using PyQt.
14
14
15
-
The major advantage of this package is that you don't need to know other language aside from Python.
15
+
It supports Windows, macOS, and Linux.
16
16
17
-
If you want to study openai with Python-only good old desktop software, this is for you.
17
+
It uses SQLite as a database.
18
18
19
-
This is using <b>sqlite</b> as a database.
19
+
You can use OpenAI models (GPT-4, GPT-4 Mini, DALL-E, etc.) and Replicate image generation models with PyQt.
20
20
21
-
You can select the model and change each parameters of openai from the right side bar.
21
+
The major advantage of this package is that you don't need to know any language aside from Python.
22
22
23
-
Also you can combine openai with llama-index feature to make GPT model answer your question based on information you had provided!
23
+
If you want to study OpenAI with Python-only in a good old desktop software environment, this is for you.
24
24
25
-
If you have any questions or you want to make AI related software with PyQt or PySide, feel free to join Discord server of pyqt-openai.
25
+
You can select the model and adjust each parameter of OpenAI from the right sidebar.
26
26
27
-
And if you would like to support this project, you can click the button below to make a donation. Your contribution will greatly assist various projects, including this one!
27
+
Additionally, you can combine OpenAI with the Llama-Index feature to make the GPT model answer your questions based on the information you have provided!
28
+
29
+
If you have any questions or if you want to develop AI-related software with PyQt or PySide, feel free to join the Discord server!
30
+
31
+
If you would like to support this project, please click the button below to make a donation. Your contribution will greatly assist various projects, including this one!
28
32
29
33
<ahref="https://www.buymeacoffee.com/yjg30737"target="_blank"><imgsrc="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png"alt="Buy Me A Coffee"style="height: 60px!important;width: 217px!important;" ></a>
30
34
<ahref="https://paypal.me/yjg30737">
@@ -39,51 +43,39 @@ And if you would like to support this project, you can click the button below to
39
43
*[Overview](#overview)
40
44
*[Conversation](#conversation)
41
45
*[Prompt Generator](#prompt-generator)
42
-
*[Use GPT Vision](#use-gpt-vision)
43
-
*[Image Generation](#image-generation)
44
46
*[How to Install](#how-to-install)
45
47
*[Troubleshooting](#troubleshooting)
46
48
*[Contact](#contact)
47
49
*[Note](#note)
48
-
*[LICENSE](#license)
49
50
*[Disclaimer](#disclaimer)
50
51
51
52
## Feature
52
53
* Basically this is <b>desktop application version of ChatGPT</b> with image generation tool.
53
-
* Text streaming (enable by default, you can disable it)
54
-
* AI remembers past conversation
55
-
* Support copy button
56
-
* Able to stop response in the middle of text generation
57
54
* <b>Conversation(=Thread) management</b>
58
55
* Add & delete conversations
59
-
* Export conversations - JSON file, text files compressed file, html files compressed file (both are zip)
60
-
* Import conversations from pyqt-openai, GPT
61
-
* Rename conversation
56
+
* Export & Import conversations (including import from ChatGPT)
62
57
* "Favorite" feature
63
58
* Support JSON mode
64
-
* everything above is saved in an SQLite database file named conv.db. (File's name can be changed by yourself)
65
-
* Support controlling parameters(temperature, top_p, etc) just like openai playground
66
-
* Able to see the reason why stream is finished
59
+
* Everything above is saved in an SQLite database file named conv.db. (File's name can be changed by yourself)
60
+
* Support text(*.txt), image(*.png, *.jpg) file uploading
61
+
* Support controlling parameters(temperature, top_p, etc)
62
+
* You can see the reason why stream is finished.
67
63
* Support token count (only for non-streaming response)
68
64
* Support <b>prompt generator</b> (manageable, autosaved in database)
69
65
* Support import & export prompt group as JSON
66
+
* Full screen feature
70
67
* Support <b>slash commands</b>
71
68
* Support beginning and ending part of the prompt
72
-
* You can <b>run this in background</b> application
73
-
*notification will pop up when response is generated
69
+
* You can <b>run this in background</b>
70
+
*Notification will pop up when response is generated
74
71
* You can make window stack on top or control its transparency
75
72
* Image generation (DALL-E3 from openai, a bunch of image models in Replicate)
76
73
* Support saving generated image to local
77
74
* Support continue generation
78
75
* Notification when task completes
79
-
* You can copy and download the image directly as well. just hover the mouse cursor over the image.
80
-
* You can <b>fine-tune</b> openai with llama-index and use it (support streaming response)
81
-
* Support text(*.txt), image(*.png, *.jpg) file uploading
82
-
* Support searching title and content in the conversation
83
-
* Support "find text" feature (match word, case-sensitive, regex, etc.)
76
+
* Support llamaindex
84
77
* Support customizing feature (homepage, user and AI profile image, font settings)
85
78
* Support light/dark theme based on your system settings (Above Qt6 only)
86
-
* Full screen feature
87
79
88
80
## Supported Languages
89
81
* English
@@ -193,37 +185,20 @@ In this preview, i pressed the keyboard shortcut of each actions(show beginning,
193
185
194
186
I made the command suggestion GUI resemble the Discord command autocomplete popup, with which a lot of people have become accustomed.
5. You should put your api key in the line edit. You can get it in <ahref="https://platform.openai.com/account/api-keys">official site</a> of openai. Sign up and log in before you get it.
221
-
222
-
Be sure, this is a very important API key that belongs to you only, so you should remember it and keep it secure.
223
-
224
194
6. python main.py
225
195
226
-
If installation doesn't work, you can contact me with bring up new issue in issue tab or check the troubleshooting below even it is only about very specific error.
Please check that the path does not contain any other invalid languages.
245
220
246
-
### subprocess-exited-with-error
247
-
If you see this error while installing the openai package
248
-
```
249
-
subprocess-exited-with-error
250
-
```
251
-
download the package itself from <ahref="https://pypi.org/project/openai/#files">pypi</a>.
252
-
253
-
Unzip it, access the package directory, type
254
-
```
255
-
python setup.py install
256
-
```
257
-
258
-
That will install the openai.
259
-
260
-
Note: I don't know this can happen in newer version of openai as well, so tell me if you know about something
261
-
262
221
### qtpy.QtBindingsNotFoundError: No Qt bindings could be found
263
-
first, do this:
222
+
First, do this:
264
223
```
265
224
pip uninstall -r requirements.txt
266
225
```
@@ -273,34 +232,6 @@ then it will work :)
273
232
## Contact
274
233
You can join pyqt-openai's <ahref="https://discord.gg/cHekprskVE">Discord Server</a> to have a conversation about it or AI-related stuff 🙂
275
234
276
-
## Note
277
-
I recommend to install sqlite management software. It's not necessary to run this app (obviously), but it's good practice to manage database about conversation history with AI and to know how this works.
278
-
279
-
## LICENSE
280
-
```
281
-
MIT License
282
-
283
-
Copyright (c) 2023-2024 Jung Gyu Yoon
284
-
285
-
Permission is hereby granted, free of charge, to any person obtaining a copy
286
-
of this software and associated documentation files (the "Software"), to deal
287
-
in the Software without restriction, including without limitation the rights
288
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
289
-
copies of the Software, and to permit persons to whom the Software is
290
-
furnished to do so, subject to the following conditions:
291
-
292
-
The above copyright notice and this permission notice shall be included in all
293
-
copies or substantial portions of the Software.
294
-
295
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
296
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
297
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
298
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
299
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
300
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
301
-
SOFTWARE.
302
-
```
303
-
304
235
## Disclaimer
305
236
306
237
Please do not distribute this commercially without my permission, by claiming it as your own creation.
0 commit comments