❗ GPT-Shell의 새 버전은 Erin입니다! 자세한 내용은 Erin 웹사이트에서 확인하세요! ❗ |
---|
GPT-Shell은 OpenAI의 ChatGPT와 유사한 OpenAI 기반 채팅봇입니다.
이를 통해 사용자는 가상 동반자와 대화할 수 있습니다. nodejs와 typescript는 물론 최신 원사를 사용하여 원활한 대화 환경을 만듭니다.
대화를 기반으로 이미지를 생성할 수도 있습니다!
공식 Discord 서버에서 봇을 사용해 볼 수 있습니다:
GPT-Shell과 상호작용하기 위해 사용자는 다음을 수행할 수 있습니다.
/chat-gpt
명령을 사용하여 봇과 대화를 시작하세요. /chat-gpt
명령은 새로운 대화 스레드를 시작하고 사용자가 무언가를 입력할 때마다 봇이 응답합니다.
봇은 한 번에 여러 대화를 처리할 수 있으므로 원하는 만큼 많은 대화를 시작할 수 있습니다.
여기서 디스코드 봇을 설정하고 서버에 추가하세요.
범위:
봇 권한:
또한 메시지 콘텐츠 의도를 활성화해야 합니다.
여기에서 리플릿을 포크해 볼 수 있습니다.
아니면 컴퓨터에 설정할 수도 있습니다.
Nodejs: (18 이상)
원사: (nodejs 설치 후)
pm2: 터미널을 종료한 후에도 봇을 활성 상태로 유지합니다.
GPT-Shell을 사용하려면 다음을 수행해야 합니다.
git clone https://github.com/firtoz/GPT-Shell.git
cd GPT-Shell
(Windows에서는 폴더 아무 곳이나 마우스 오른쪽 버튼으로 클릭하고 "터미널에서 열기"를 선택합니다.) powershell에 대한 정보가 있으면 cmd
입력하고 Enter 키를 눌러 더 간단한 명령줄 터미널로 이동합니다.
yarn install
GPT-Shell이 제대로 작동하려면 다음 환경 변수가 필요합니다.
원하는 방식으로 환경 변수를 설정하거나 프로젝트 루트에 .env.local 파일을 배치할 수 있습니다( example.env.local
이름을 .env.local
로 변경). .env.local
이 다음과 같은지 확인하세요. :
# MongoDB:
MONGODB_URI=
DB_NAME=CHAT_DB
# Bot Token from Discord:
BOT_TOKEN=
# Commands:
COMMAND_NAME=chat-gpt
PRIVATE_COMMAND_NAME=chat-gpt-private
CONFIG_COMMAND_NAME=chat-gpt-config
CUSTOM_PROMPT_COMMAND_NAME=chat-gpt-prompt
DRAW_COMMAND_NAME=draw-gpt
# Discord Server Details:
MAIN_SERVER_ID=
LOG_CHANNEL_ID=
MAIN_SERVER_INVITE=
ADMIN_PING_ID=
USE_SAME_API_KEY_FOR_ALL=false
IGNORE_INIT=false
몽고DB:
CHAT_DB
또는 원하는 것을 사용할 수 있습니다.봇 토큰:
명령:
Discord 서버 세부 정보:
MAIN_SERVER_ID: 봇이 있는 Discord 서버
LOG_CHANNEL_ID: (선택 사항) 로그 메시지 채널
MAIN_SERVER_INVITE: (선택 사항) 이상적으로 만료되지 않는 서버 초대 링크(사용자가 서버에 봇을 추가하도록 하려는 경우)
USE_SAME_API_KEY_FOR_ALL: (선택 사항) 'true'로 설정하면 모든 서버 또는 사용자가 자체 API 키를 제공하지 않고도 봇을 사용할 수 있습니다.
ADMIN_PING_ID: 봇 소유자의 Discord ID(바로 귀하입니다!)
몇 가지 특수 명령을 보내고 봇을 구성하는 데 사용됩니다.
IGNORE_INIT: (선택 사항) 'true'로 설정하면 시작 시 봇이 마지막으로 온라인 상태였기 때문에 활성 스레드에서 새 메시지를 확인하지 않습니다. 많은 서버에 있는 경우 활성 스레드가 많아 속도 제한에 도달할 수 있습니다. 이 경우 한 번에 많은 스레드를 확인하는 것보다 메시지가 오면 즉시 처리하는 것이 좋습니다.
추가 사항:
WOLFRAM_APP_ID: Wolfram Alpha 기능에 사용됩니다.
https://developer.wolframalpha.com/portal/myapps에서 앱을 만들고 해당 ID를 얻을 수 있습니다.
위에서 설명한 대로 환경 변수를 설정합니다.
실 사용:
yarn global add pm2
npm 사용:
npm install pm2 -g
데비안에서는 설치 스크립트를 사용하세요:
apt update && apt install sudo curl && curl -sL https://raw.githubusercontent.com/Unitech/pm2/master/packager/setup.deb.sh | sudo -E bash -
yarn dev
이렇게 하면 코드를 변경할 때마다 봇이 다시 시작되어 업데이트됩니다.
yarn build
그런 다음
yarn start
npm start
또는 npm run start
실행하여 봇을 시작할 수도 있습니다.
참고: yarn start
, npm start
또는 npm run start
실행하면 PM2로 봇이 시작되고 "GPT-Shell"이라는 이름이 지정됩니다. package.json에서 "GPT-Shell"을 원하는 이름으로 바꿀 수 있습니다. 또한 PM2 실행 프로세스에 대한 로그를 표시하고 저장합니다.
개발 환경에 있다면 node .
코드를 테스트하려면:
node .
변경 사항에 만족하면 다음을 실행합니다.
pm2 restart GPT-Shell && pm2 logs
봇을 중지하려면 다음을 실행하세요.
yarn run stop
아래와 같이 pm2.io 대시보드에서 다시 시작할 수도 있습니다.
서버로 이동하여 config 명령을 입력하고 config를 사용하여 서버에 대한 API 키를 설정하십시오.
/chat-gpt-config
2.0.0부터 봇에는 장기 기억 능력이 있습니다.
이 기능은 실험적이지만 내부 테스트에 따르면 일반적인 대화에 매우 잘 작동하는 것으로 나타났습니다.
토큰 제한으로 인해 대화에 긴 코드 조각이 있으면 제대로 작동하지 않습니다.
작동 방식:
이를 설정하려면 기본 서버에서 config 명령을 사용하십시오.
/chat-gpt-config
그런 다음 솔방울 구성 세부 정보를 입력합니다.
https://app.pinecone.io/에서 계정을 만들 수 있습니다.
올바르게 수행했다면 다음과 같은 내용이 표시되어야 합니다.
기본적으로 봇은 유용한 소프트웨어 엔지니어처럼 작동합니다.
봇이 다르게 동작하도록 하려면 사용자 지정 프롬프트를 사용할 수 있습니다.
이 작업은 봇 전용 새 채널, 새 대화 스레드 또는 DM에서 수행할 수 있습니다.
권한이 있는 경우 /chat-gpt-prompt
명령을 사용할 수 있으며, 양식을 작성하여 봇에 대한 사용자 지정 프롬프트를 설정할 수 있습니다.
이 명령은 다음에서 사용할 수 있습니다.
온도는 OpenAI의 온도 매개변수와 동일합니다. 0은 반복적이라는 의미이고, 1은 약간 혼란스럽다는 의미입니다. GPT-Shell의 기본값은 0.8입니다.
GPT-Shell에 대한 기여를 환영합니다. 새로운 기능에 대한 아이디어가 있거나 버그를 발견한 경우 GitHub에서 문제를 열어주세요. 후원이나 기부도 감사하겠습니다.
여기 GitHub 후원 페이지를 통해 후원하실 수 있습니다.
GPT-Shell은 MIT 라이선스에 따라 출시됩니다.