Neo Prompt — это веб-интерфейс на базе Gradio для работы с локальным сервером LM Studio. Он позволяет выстраивать цепочки из до 5 пресетов (промптов) и обрабатывать запросы последовательно, с полной поддержкой стриминга, отображением «размышлений» модели (reasoning) и детальной статистикой использования токенов.
Проект специально разработан для связки промптов ТРИЗ (Теория решения изобретательских задач), но может использоваться для любых многошаговых рассуждений.
Автоматическое определение статуса сервера и загруженной модели.
Выберите до пяти пресетов из конфигурационных файлов LM Studio. Запрос будет обработан каждым пресетом по порядку, при этом каждый следующий агент (пресет) получает на вход только ответ предыдущего агента и не имеет информации о самом предыдущем агенте, его промпте или истории переписки. Это обеспечивает чистое последовательное преобразование ответа, идеально подходящее для ТРИЗ-цепочек.
Ответы генерируются в реальном времени. Отдельный блок показывает процесс «мышления» модели (reasoning content).
В авто-режиме все шаги выполняются последовательно. В ручном — вы контролируете переход к следующему шагу кнопкой.
Каждое сообщение может начинаться с чистым контекстом, если это необходимо.
Скорость генерации, количество токенов в последнем ответе, время выполнения и общий прогресс использования контекстного окна.
Приятная тёмная тема, адаптированная для Gradio.
- Установленный и запущенный LM Studio с активным локальным API‑сервером (адрес нужно настроить в config.py) и загруженной моделью.
- Python 3.12 или выше.
- Клонируйте репозиторий:
git clone https://github.com/AITISPEC/neo-prompt.git
cd neo-prompt- Установите проект с помощью скрипта install.ps1 (Windows PowerShell):
.\install.ps1 -create_envСкрипт автоматически проверит наличие Python 3.12+, создаст виртуальное окружение и установит зависимости (gradio, requests).
Доступные флаги:
| Флаг | Описание |
|---|---|
| -create_env | Создать виртуальное окружение (обязателен) |
| -verbose | Показывать подробный вывод установки |
| -nodeps | Установить только проект, без зависимостей |
| -env_name "name" | Имя виртуального окружения (по умолчанию .venv) |
| -extra "args" | Дополнительные аргументы для pip |
- Настройте конфигурацию (при необходимости): Отредактируйте config.py, указав актуальный адрес сервера LM Studio.
BASE_API_URL = "http://192.168.0.98:1234"-
Запустите приложение файлом
run.bat, либо:- Активируйте окружение (если еще не активно):
.venv\Scripts\Activate.ps1
- Введите команду:
python Neo-Prompt.py
- Активируйте окружение (если еще не активно):
-
Откройте браузер и перейдите по адресу http://127.0.0.1:7860.
| Файл | Назначение |
|---|---|
| Neo-Prompt.py | Главный файл приложения с интерфейсом Gradio. |
| config.py | Настройки: адрес API, приоритет моделей, размер контекста. |
| neo_client.py | Клиент для взаимодействия с LM Studio API, стриминг, статистика. |
| model_manager.py | Управление цепочкой пресетов, состоянием шагов, режимами. |
| presets.py | Загрузка пресетов из файловой системы LM Studio. |
| formatters.py | Форматирование отображения reasoning и ответов. |
| ui_components.py | CSS-стили для красивого отображения в Gradio. |
| requirements.txt | Список Python‑зависимостей. |
| install.ps1 | Установочный скрипт для Windows. |
| Действие | Описание |
|---|---|
| Проверьте статус сервера — нажмите кнопку «Проверить». | Если всё в порядке, вы увидите название модели и доступный контекст. |
| Обновите список пресетов. | Кнопка «Обновить пресеты» загрузит все пресеты из папки ~/.lmstudio/config-presets/. |
| Выберите пресеты для шагов (от 1 до 5). | Можно оставить пустые слоты — тогда цепочка будет короче. |
| Режим | Описание |
|---|---|
| Авто | Все выбранные шаги выполняются автоматически подряд. |
| Новый чат | Каждый запрос отправляется без предыдущего контекста (полезно при тестировании). |
- Введите сообщение и нажмите «Отправить».
- Во время генерации в верхней области отображается процесс «размышления» модели. После завершения ответ появляется в чате.
- Справа отображается статистика по последнему ответу и общее использование токенов.
Важно: В цепочке обработки каждый следующий пресет получает только текст ответа от предыдущего пресета. Никакой информации о предыдущих агентах, их системных промптах или исходном запросе не передаётся. Это обеспечивает строгую последовательную трансформацию, аналогичную применению инструментов ТРИЗ, где каждый шаг преобразует результат предыдущего без «шума» контекста.
- Смена темы интерфейса: измените параметр
themeвdemo.launch(). - Порт и доступ: по умолчанию
server_name="127.0.0.1", server_port=7860. Для доступа из локальной сети изменитеserver_nameна"0.0.0.0".
Проект распространяется под лицензией Apache 2.0. Подробности см. в файле LICENSE.
Приветствуются сообщения об ошибках, предложения по улучшению и пул-реквесты. Для серьёзных изменений сначала создайте issue для обсуждения.
