Hiroshi — это чат-бот Telegram на основе GPT4Free, который предлагает 100% бесплатный доступ для взаимодействия с языковыми моделями GPT-3.5, GPT-4 и Llama2, включая Bing, You, AI Chat и другие. Пользователи имеют свободу выбора предпочитаемой модели или конкретного поставщика. Обратите внимание: скорость/стабильность могут немного снизиться при работе с некоторыми провайдерами. Контекст разговора полностью сохраняется при переключении между моделями и поставщиками.
Примечание. Этот бот предоставляет доступ к общедоступным бесплатным услугам. Качество и скорость оказания таких услуг может варьироваться в зависимости от различных условий и их текущей загрузки. Если вам нужен бот, использующий официальный API OpenAI, и у вас есть КЛЮЧ API, проверьте следующий репозиторий: https://github.com/s-nagaev/chibi.
Конечно! @hiroshi_gpt_bot
Приложение совершенно не требовательно к ресурсам. Он отлично работает на минимальном Raspberry Pi 4 и самом дешевом экземпляре AWS EC2 t4g.nano
(2 ядра Arm64, 512 МБ ОЗУ), при этом способный обслуживать множество людей одновременно.
Загрузите образ Хироши 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, используя следующие переменные среды:
Переменная | Описание | Необходимый | Значение по умолчанию |
---|---|---|---|
TELEGRAM_BOT_TOKEN | Ваш токен Telegram-бота | Да | |
ALLOW_BOTS | Разрешить другим ботам взаимодействовать с Хироши | Нет | ЛОЖЬ |
ANSWER_DIRECT_MESSAGES_ONLY | Если True, бот в групповых чатах будет отвечать только на сообщения, содержащие его имя (см. настройку BOT_NAME ) | Нет | истинный |
ASSISTANT_PROMPT | Начальная подсказка помощника для клиента OpenAI | Нет | «Ты отзывчивый и дружелюбный помощник. Тебя зовут Хироши» |
БОТ_ИМЯ | Имя бота | Нет | "Хироши" |
ГРУППА_АДМИНЫ | Список имен пользователей, разделенных запятыми, например "@YourName,@YourFriendName,@YourCatName" , которые должны иметь эксклюзивные права на установку поставщика и очистку истории диалогов в групповых чатах. | Нет | |
ГРУПП_БЕЛЫЙ СПИСОК | Список идентификаторов групп из белого списка, разделенных запятыми, например "-799999999,-788888888" | Нет | |
LOG_PROMPT_DATA | Записывайте запросы пользователей и ответы GPT для целей отладки. | Нет | ЛОЖЬ |
MAX_CONVERSATION_AGE_MINUTES | Максимальный возраст разговоров (в минутах) | Нет | 60 |
MAX_HISTORY_TOKENS | Максимальное количество токенов в истории разговоров | Нет | 1800 г. |
MESSAGE_FOR_DISALLOWED_USERS | Сообщение для отображения запрещенных пользователей | Нет | «Извините, вам не разрешено общаться со мной. Сначала свяжитесь с моим владельцем, пожалуйста». |
ПРОКСИ | Настройки прокси для вашего приложения | Нет | |
РЕДИС | Строка подключения Redis, например «redis://localhost». | Нет | |
REDIS_ПАРОЛЬ | Пароль Redis (необязательно) | Нет | |
ПОВТОРНЫЕ ПОПЫТКИ | Количество повторных запросов к провайдеру в случае неудачного ответа | Нет | 2 |
SHOW_ABOUT | Просто установите для него значение false , если по какой-то причине вы хотите скрыть команду /about . | Нет | истинный |
ТАЙМ-АУТ | Таймаут (в секундах) обработки запросов | Нет | 60 |
USERS_WHITELIST | Список имен пользователей, разделенных запятыми, например "@YourName,@YourFriendName,@YourCatName" | Нет | |
МОНИТОРИНГ_URL | Активирует функцию мониторинга и отправляет запрос GET на этот URL-адрес каждые MONITORING_FREQUENCY_CALL секунд. | Нет | |
МОНИТОРИНГ_ЧАСТОТА_ЗВОНКА | Если функция мониторинга активна, отправляет запрос GET на MONITORING_URL каждые MONITORING_FREQUENCY_CALL секунд. | Нет | 300 |
МОНИТОРИНГ_RETRY_CALLS | Регистрирует ответ об ошибке только после попытки MONITORING_RETRY_CALLS. | Нет | 3 |
МОНИТОРИНГ_ПРОКСИ | Мониторинг URL-адреса прокси. | Нет |
Пожалуйста, посетите каталог примеров для примера файла .env
.
Мы используем SemVer для управления версиями. Доступные версии см. в тегах этого репозитория.
Этот проект лицензируется по лицензии MIT — подробности см. в файле LICENSE.md.