Clarktribegames, LLC
GPT4All API Server with Watchdog - это простой HTTP -сервер, который контролирует и перезапускает приложение Python, в данном случае Server.py, который служит интерфейсом для совместимых с GPT4All моделями.
Watchdog непрерывно работает и перезапускает приложение Python.Watchdog проверяет статус приложения и обрабатывает определенные непредвиденные обстоятельства.GPT4All API интерфейсы с совместимыми с GPT4ALL моделями с запросом API и отправляет ответы обратно из модели Windows: клон в месте, где ваш пользователь (или учетная запись службы, если он использует), имеет полный доступ к чтению/записи.
MacOS/Linux: мы рекомендуем клонировать этот репозиторий в /usr/local/bin если вы планируете использовать это в качестве услуги. Вы можете, однако, клонировать и запустить его из любого места. Запустите эти команды в вашем терминале:
cd /path-to-wherever/
git clone https://github.com/AznIronMan/gpt4all_api.gitМы также рекомендуем запустить это в виртуальной среде Python:
Примечание: вы также можете использовать Anaconda. Не рекомендуется не использовать виртуальную среду Python.
# Windows
cd gpt4all_api
python.exe -m venv .venv
source .venv/Scripts/activate # macOS/Linux
cd gpt4all_api
python3 -m venv .venv
source .venv/bin/activate Обязательно установите требования PIP (подтвердите, что вы находитесь в своем новом .venv Venv, прежде чем сделать это!)
pip install -r requirements.txt Обязательно настройте файл .env перед запуском! (Клонировать .env.Example и переименовать его .env и загрузить его с соответствующей информацией).
Модели GGML рекомендуются для этого приложения. Модели GGML на обнимающемся лице
Примечание. Это приложение было протестировано только с помощью моделей WizardML GGML (не-FALCON).
Оттуда, чтобы запустить сервер, вы можете либо:
# Windows
python.exe watchdog.py # mac/OS/Linux
sudo python3 watchdog.py Или вы можете использовать bundled start.bat (windows) или start.sh (macos/linux), включенные для запуска сервера.
Пользователи MacOS/Linux - вам может потребоваться запустить эту команду, чтобы позволить start.sh .
sudo chmod +x ./start.sh watchdog часть этого приложения работает на вашей машине и контролирует приложение gpt4all_api . Он проверяет наличие watchdog файла, который служит сигналом для указания, когда сервер gpt4all_api завершил обработку запроса.
После завершения каждого запроса сервер gpt4all_api перезапускается. Это сделано для сброса состояния сервера gpt4all_api и убедиться, что он готов обрабатывать следующий входящий запрос. (Это должно обеспечить свежие ответы от модели. Испытания показали, что не перезагрузка сервера API приводил к повторяющимся и иногда ответам на узаковка из разных моделей.)
watchdog проверяет, отсутствует ли файл watchdog в течение более 5 секунд. Сервер gpt4all_api удалит файл watchdog после завершения, запуская перезапуск. Если в файле watchdog отсутствует в gpt4all_api отвечает на запрос и/или если есть ошибка во время процесса gpt4all_api , сценарий watchdog предполагает, что что -то пошло не так, и пытается перезапустить сервер gpt4all_api после регистрации ошибки в папку logs .
Сервер gpt4all_api использует колбу для принятия входящего запроса API. route по умолчанию - /gpt4all_api , но вы можете установить его вместе со всем остальным, в .env . Вы можете отправлять запросы на почту с типом параметра запроса, чтобы получить желаемые сообщения. Вот несколько примеров того, как получить все сообщения:
# Using curl:
curl -X POST http://serverhostname_or_ipaddress_here:5000/gpt4all_api -H " Content-Type: application/json " -d " { " prompt " : " your question or request goes here " , " persona " : " [your system prompt goes here] " } " # Using Postman:
Set the request type to POST.
Set the URL to http://serverhostname_or_ipaddress_here:5000/messages.
Under Params, add a key-value pair with
key: ' prompt '
value: ' your question or request goes here '
And
key: ' persona '
value: ' [your system prompt goes here] ' Если у вас есть проблемы с настройкой, вы можете выполнить эти шаги:
# macOS/Linux
cp .env.example .env
nano .env # or use TextEdit, VIM, VS Code, etc.
touch requirements.txt
nano requirements.txt # Windows
copy .env.example .env
notepad .env # notepad is on everyone windows machine but vscode or notepad++ is recommended
(make edits to your .env)
# if you do not have a requirements.txt for some reason
notepad requirements.txt Вставьте это содержимое в свой файл requirements.txt :
blinker= =1.6.2
certifi= =2023.5.7
charset-normalizer= =3.1.0
click= =8.1.3
colorama= =0.4.6
Flask= =2.3.2
gpt4all= =0.3.5
idna= =3.4
itsdangerous= =2.1.2
Jinja2= =3.1.2
MarkupSafe= =2.1.3
python-dotenv= =1.0.0
requests= =2.31.0
tqdm= =4.65.0
urllib3= =2.0.3
Werkzeug= =2.3.6Затем установите требования:
pip install -r requirements.txt Затем вы можете использовать python3 start.sh (macos/linux) или python.exe start.bat (Windows) для запуска сервера.
Если у вас есть какие -либо проблемы с настройкой, пожалуйста, не стесняйтесь обращаться к нам, используя данные, представленные ниже.
Этот проект лицензирован по лицензии MIT.
Discord: AznIronMan E-mail: Джефф at Clark Tribe Games dot Com ( без пробелов и замените @ и dot с. )