GPT Desktop Chatbot
Python Tkinter Desktop Interface чат для GPT через API Openai
Автор
Адам Рис
Калгари, Альберта, Канада
AdamalexAnderries {} gmail {} com
Функции
- Автосовировка потока в локальной
history/ папке - Поиск тока или всех потоков
ctrl-f - вручную переименовать разговоры
ctrl-s - Распадное меню Pref -Prempt
- управление клавиатурой
Настраивать
Зависимости (старые версии предназначены для совместимости Windows 7, потому что я динозавр)
- Python 3.8.0
- Openai 0,27,0
- Tiktoken 0.3.0
Установите OPENAI_API_KEY в вашей среде переменные
- Получите ключ API здесь.
-
import openai автоматически находит ваш ключ, если вы установите его на это имя
запустить main_window.py
Проектный каталог
main_window.py

- Три выпадающих меню
-
Preprompts - выберите системное сообщение -
Saved , History - загрузочные потоки
- Коробка с потоком содержит текущую историю разговоров
- Помощник: золото #997755
- Пользователь: Грей #555555
- Система: синий #6666ff
- Ошибка: Red #FF0000
- входная ящик ниже
- потоки усечены, если дольше, чем max_tokens
- В настоящее время жестко программируется 3096, оставляя 1000 токенов для ответа
- Синяя горизонтальная линия показывает, где предыдущая нарезанная резьба вызова API
search_window.py

gpt.py
- Отделен от main_window.py, потому что он продолжал пытаться исправить себя после того, как Openai изменил форматирование API с
Completion до ChatCompletion в 2023-03-01 с выпуском gpt-3.5-turbo (из-за перерыва обучающих данных в 2021 году) - Запустите это само по себе для взаимодействия Barebones с GPT в терминале
История/
- потоки, сохраненные в этой папке как файлы JSON
- Откройте старые темы с
History и Saved выпадающие меню 
Формат:
- 2023-03-02_151106.json (
datetime.now().strftime("%Y-%m-%d_%H%M%S") )) - [{«Роль»: «Пользователь», «Контент»: «Пользовательский ввод»}, {«Роль»: «Помощник», «Контент»: «Ответ AI»}, ...]
preprompts.json

- Вставлено перед каждым вызовом API как
{"role": "system", "content": "[preprompt text]"} - не спасен в истории разговоров
- Добавить/удалить/редактировать вручную на данный момент (любой текстовый редактор)
Включено преобразование:
- По умолчанию: быть точным, подробным и ясным. Предсказайте мои потребности.
- Кодер: Вы старший разработчик программного обеспечения и наставник. Я начинающий разработчик и студент.
- Сократ: Ответить в стиле Сократа. Не дайте ответов. Вместо этого терпеливо и методично задавайте вопросы, такие как любопытные умы, которые могут привести себя к истине и мудрости. Когда это необходимо, вы можете разбить темы на постоянные детали, или расширить объем или сделать проницательные боковые скачки.
- CTHULU: Ответьте в ужасном стиле Лавкрафта. Вы - бог Элдрича, чьи слова выносят из непостижимой космической пропасти.
- Поэт: писать красиво и метафорически.
Горячие клавиши
Главное окно:
-
ctrl-e Переключение фокусировки между входной коробкой и коробкой потока - Окно поиска
ctrl-f -
ctrl-s переименовать текущий поток -
ctrl-w закрыть ток -
f5 Начните новую ветку разговора -
f11 Toggle FullScreen -
Return сообщение Отправить -
Shift-Return INSERT NEWLINE
Поиск окна:
-
return следующий матч - Управление поиска
ctrl-d -
ctrl-g Toggle Searing в текущих/всех файлах -
ctrl-f , esc закрыть окно поиска