Clarktribegames, LLC
GPT4All API Server with Watchdog Python 애플리케이션을 모니터링하고 다시 시작하는 간단한 HTTP 서버입니다.
Watchdog Python 응용 프로그램을 지속적으로 실행하고 다시 시작합니다.Watchdog 응용 프로그램 상태를 확인하고 특정 우발 사태를 처리합니다.GPT4All API API 요청이있는 GPT4ALL 호환 모델과 인터페이스하고 모델에서 응답을 다시 보냅니다. Windows : 사용자 (또는 하나를 사용하는 경우 서비스 계정)에 전체 읽기/쓰기 액세스가있는 위치에서 복제.
MACOS/LINUX : 서비스로 사용하려는 경우이 저장소를 /usr/local/bin 으로 클로닝하는 것이 좋습니다. 그러나 어디에서나 복제하고 실행할 수 있습니다. 터미널 에서이 명령을 실행하십시오.
cd /path-to-wherever/
git clone https://github.com/AznIronMan/gpt4all_api.git또한 가상 파이썬 환경 내에서 실행하는 것이 좋습니다.
참고 : Anaconda도 사용할 수 있습니다. 가상 파이썬 환경을 사용하지 않는 것이 좋습니다.
# 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 또는 서버를 시작하려면 번들 start.bat (windows) 또는 start.sh (macos/linux)를 사용할 수 있습니다.
MacOS/Linux 사용자 - start.sh OS에서 실행되도록하기 전에이 명령을 실행해야 할 수도 있습니다.
sudo chmod +x ./start.sh 이 응용 프로그램의 watchdog 부분은 컴퓨터에서 실행되며 gpt4all_api 응용 프로그램을 모니터링합니다. gpt4all_api 서버가 요청 처리를 완료 한시기를 나타내는 신호 역할을하는 watchdog 파일의 존재를 확인합니다.
각 요청이 완료되면 gpt4all_api 서버가 다시 시작됩니다. 이는 gpt4all_api 서버의 상태를 재설정하고 다음 들어오는 요청을 처리 할 준비가되었는지 확인하기 위해 수행됩니다. (이것은 모델의 새로운 응답을 보장하기위한 것입니다. 시험은 API 서버를 다시 시작하지 않으면 반복적이며 때로는 다른 모델의 홀루션 답변을 초래 한 것으로 나타났습니다.)
watchdog 은 watchdog 파일이 5 초 이상 누락되었는지 확인합니다. gpt4all_api 서버는 완료되면 watchdog 파일을 제거하여 다시 시작합니다. watchdog 파일에 gpt4all_api 요청에 응답하거나 gpt4all_api 프로세스 중에 오류가있는 경우 watchdog 스크립트는 오류를 logs 한 후 gpt4all_api 서버를 다시 시작하려고 시도한다고 가정합니다.
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 에 붙여 넣습니다 .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 이메일 : Clark Tribe Games at Geoff dot Com ( @ 및 dot로 교체하지 않음 ).