Hiroshi는 Bing, You, AI Chat 등을 포함하여 GPT-3.5, GPT-4 및 Llama2 언어 모델과 상호 작용할 수 있는 100% 무료 액세스를 제공하는 GPT4Free 기반 Telegram 챗봇입니다. 사용자는 선호하는 모델이나 특정 공급자를 자유롭게 선택할 수 있습니다. 특정 공급자와 작업할 때 속도/안정성이 약간 저하될 수 있습니다. 모델과 공급자 간에 전환하면 대화 내용이 완전히 유지됩니다.
참고: 이 봇은 공개 무료 서비스에 대한 액세스를 제공합니다. 이러한 서비스의 품질과 속도는 다양한 조건과 현재 부하에 따라 달라질 수 있습니다. 공식 OpenAI API를 사용하는 봇이 필요하고 API KEY가 있는 경우 다음 저장소를 확인하세요: https://github.com/s-nagaev/chibi.
확신하는! @hiroshi_gpt_bot
응용 프로그램은 리소스를 전혀 요구하지 않습니다. 최소 Raspberry Pi 4 및 가장 저렴한 AWS EC2 인스턴스 t4g.nano
(arm64 코어 2개, 512MB RAM)에서 완벽하게 작동하는 동시에 많은 사람들에게 서비스를 제공할 수 있습니다.
Hiroshi Docker 이미지를 가져옵니다.
docker pull pysergio/hiroshi:latest
필요한 환경 변수를 사용하여 Docker 컨테이너를 실행합니다.
docker run -d
-e TELEGRAM_BOT_TOKEN= < your_telegram_token >
-v < path_to_local_data_directory > :/app/data
--name hiroshi
pysergio/hiroshi:latest
및
적절한 값으로 바꾸십시오.
다음 내용으로 docker-compose.yml
파일을 만듭니다.
version : ' 3 '
services :
hiroshi :
restart : unless-stopped
image : pysergio/hiroshi:latest
environment :
TELEGRAM_BOT_TOKEN :
volumes :
- hiroshi_data:/app/data
volumes :
hiroshi_data :
적절한 값으로 바꾸세요.
Docker 컨테이너를 실행합니다.
docker-compose up -d
더 많은 예제를 보려면 현재 저장소의 예제 디렉터리를 방문하세요.
다음 환경 변수를 사용하여 Hiroshi를 구성할 수 있습니다.
변하기 쉬운 | 설명 | 필수의 | 기본값 |
---|---|---|---|
텔레그램_BOT_TOKEN | 귀하의 텔레그램 봇 토큰 | 예 | |
ALLOW_BOTS | 다른 봇이 Hiroshi와 상호작용하도록 허용 | 아니요 | 거짓 |
ANSWER_DIRECT_MESSAGES_ONLY | True인 경우 그룹 채팅의 봇은 이름이 포함된 메시지에만 응답합니다( BOT_NAME 설정 참조). | 아니요 | 진실 |
ASSISTANT_PROMPT | OpenAI 클라이언트에 대한 초기 보조 프롬프트 | 아니요 | "당신은 도움이 되고 친절한 조수입니다. 당신의 이름은 히로시입니다" |
BOT_NAME | 봇의 이름 | 아니요 | "히로시" |
GROUP_ADMINS | 쉼표로 구분된 사용자 이름 목록(예: "@YourName,@YourFriendName,@YourCatName" . 그룹 채팅에서 공급자를 설정하고 대화 기록을 지울 수 있는 독점 권한이 있어야 합니다. | 아니요 | |
그룹_화이트리스트 | 허용된 그룹 ID의 쉼표로 구분된 목록(예: "-799999999,-788888888" | 아니요 | |
LOG_PROMPT_DATA | 디버깅 목적으로 사용자의 메시지와 GPT 답변을 기록합니다. | 아니요 | 거짓 |
MAX_CONVERSATION_AGE_MINUTES | 최대 대화 기간(분) | 아니요 | 60 |
MAX_HISTORY_TOKENS | 대화 기록의 최대 토큰 수 | 아니요 | 1800 |
MESSAGE_FOR_DISALLOWED_USERS | 허용되지 않는 사용자를 표시하는 메시지 | 아니요 | "나와 교류하는 것은 허용되지 않습니다. 죄송합니다. 먼저 내 주인에게 연락해 주세요." |
대리 | 애플리케이션의 프록시 설정 | 아니요 | |
레디스 | Redis 연결 문자열(예: "redis://localhost") | 아니요 | |
REDIS_PASSWORD | Redis 비밀번호(선택사항) | 아니요 | |
재시도 | 응답 실패 시 공급자에게 재시도 요청 횟수 | 아니요 | 2 |
SHOW_ABOUT | 어떤 이유로 /about 명령을 숨기려면 false 로 설정하세요. | 아니요 | 진실 |
시간 초과 | 요청 처리 제한 시간(초) | 아니요 | 60 |
사용자_화이트리스트 | 허용된 사용자 이름의 쉼표로 구분된 목록(예: "@YourName,@YourFriendName,@YourCatName" | 아니요 | |
MONITORING_URL | 모니터링 기능을 활성화하고 MONITORING_FREQUENCY_CALL 초마다 이 URL에 GET 요청을 보냅니다. | 아니요 | |
MONITORING_FREQUENCY_CALL | 모니터링 기능이 활성화된 경우 MONITORING_FREQUENCY_CALL 초마다 MONITORING_URL에 GET 요청을 보냅니다. | 아니요 | 300 |
MONITORING_RETRY_CALLS | MONITORING_RETRY_CALLS를 시도한 후에만 오류 응답을 기록합니다. | 아니요 | 3 |
MONITORING_PROXY | 프록시 URL을 모니터링합니다. | 아니요 |
.env
-file의 예를 보려면 예제 디렉토리를 방문하십시오.
버전 관리를 위해 SemVer를 사용합니다. 사용 가능한 버전은 이 저장소의 태그를 참조하세요.
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE.md 파일을 참조하세요.