Используйте ChatGPT для создания чат-бота WeChat
Используйте ChatGPT для создания чат-бота WeChat

Заявление: Большинство статей в этом общедоступном аккаунте взяты из ежедневных учебных заметок автора, а некоторые статьи переизданы с разрешения автора и других белых списков общедоступного аккаунта. Несанкционированная перепечатка строго запрещена. Если вам необходимо перепечатать, свяжитесь с Kaibai. Пожалуйста, не используйте соответствующие технологии, описанные в статье, для участия в незаконном тестировании. Любые вытекающие из этого неблагоприятные последствия не имеют никакого отношения к автору статьи и этому публичному аккаунту.

Введение

ChatGPT в последнее время стал популярен во всем Интернете благодаря своим мощным возможностям диалога и интеграции информации. Он может писать код, редактировать статьи, рассказывать истории и является почти всемогущим. Это заставляет людей задуматься о том, можем ли мы использовать его модель диалога для интеграции. наш WeChat Создайте умного робота, который сможет давать неожиданные ответы при общении с друзьями, и нам больше не придется беспокоиться о том, что наши подруги влияют на нас. играть в игры Работало.

Чат-робот WeChat на основе ChatGPT генерирует контент разговора через интерфейс ChatGPT и использует itchat для получения и автоматического ответа на сообщения WeChat. Реализованные функции следующие:

Язык кода:javascript
копировать
Поддержка ChatGPT: https://github.com/openai/openai-python
itchat: https://github.com/littlecodersh/ItChat
Язык кода:javascript
копировать
Текстовый разговор: получайте сообщения WeChat в частных чатах и ​​группах.,UseChatGPT генерирует содержимое ответа,Полный автоматический ответ
Настройка правил: подтверждение запускает автоматические ответы в соответствии с указанными правилами в частных чатах, подтверждение устанавливает белый список автоматических ответов для групп.
Несколько учетных записей: поддержка Несколько учетных записей WeChat одновременно.
Генерация изображения: поддержание генерирует изображения на основе описаний и автоматически отправляет их в личный кабинет. чат или групповой чат
Контекстная память: поддерживает несколько раундов памяти разговоров и поддерживает независимые контекстные разговоры для каждого друга.
Распознавание голоса: подтверждение получает и обрабатывает голосовые сообщения в виде текстового характера или голосового ответа.

личный чат

Групповой чат

Генерация изображений

быстрый старт

Подготовить

1. Регистрация аккаунта OpenAI

Перейдите на страницу регистрации OpenAI, чтобы создать учетную запись. Обратитесь к этому руководству, чтобы получить код подтверждения через виртуальный номер мобильного телефона.

После создания учетной записи перейдите на страницу управления API, создайте ключ API и сохраните его, затем этот ключ понадобится вам в разделе «Конфигурация» проекта.

Язык кода:javascript
копировать
Страница регистрации OpenAI:https://beta.openai.com/signup
Учебное пособие:https://www.pythonthree.com/register-openai-chatgpt/
Страница управления API:https://beta.openai.com/account/api-keys

Модель разговора, используемая в проекте: davinci,способ оплаты указан примерно за 750 Характер (Содержит запросы и ответы) потреблять $0.02,Генерация изображенийкаждыйпотреблять $0,016, создание аккаунта бесплатно. $18 После использования квоты вы можете изменить свой адрес электронной почты и зарегистрироваться снова.

2. бегатьсреда

поддерживать Linux、MacOS、Windows система (может быть установлена ​​на Linux-сервере в течение длительного времени), и ее необходимо установить одновременно Python。

Примечание:предположениеPythonверсия в 3.7.1~3.9.X между версиями 3.10 и выше находятся в MacOS Доступно, не уверен, что оно работает корректно в других системах.

Язык кода:javascript
копировать
Клонировать код проекта:
git clone https://github.com/zhayujie/chatgpt-on-wechat
cd chatgpt-on-wechat/

Установите необходимые основные зависимости:
pip3 install itchat-uos==1.5.0.dev0
pip3 install --upgrade openai

Примечание:itchat-uosиспользовать Укажите версию1.5.0.dev0,openai использовать последнюю версию,Должно быть выше 0.27.0.

Конфигурация

Шаблон файла конфигурации находится в файле config-template.json в корневом каталоге. Этот шаблон необходимо использовать для создания окончательного документа config.json:

Язык кода:javascript
копировать
cp config-template.json config.json

Затем заполните Конфигурацию в config.json.,Ниже приведено описание конфигурации по умолчанию.,При необходимости могут быть внесены индивидуальные изменения:

Язык кода:javascript
копировать
# Пример содержимого файла config.json
{ 
  "open_ai_api_key": "YOUR API KEY",                          # Заполните OpenAI API KEY
  "proxy": "127.0.0.1:7890",                                  # IP-адрес и порт прокси-клиента
  "single_chat_prefix": ["bot", "@bot"],                      # При личном общении текст должен содержать этот префикс, чтобы вызвать ответ робота.
  "single_chat_reply_prefix": "[bot] ",                       # Префикс автоматического ответа во время приватного чата, используемый для распознавания реальных людей.
  "group_chat_prefix": ["@bot"],                              # Включение этого префикса в групповой чат приведет к ответу робота.
  "group_name_white_list": ["Тестовая группа ChatGPT", «Тестовая группа ChatGPT 2»], # Включить список имен групп автоответчика
  "image_create_prefix": ["рисование", "смотреть", «попробуй найти»],                   # Включить префикс для ответов с картинками
  "conversation_max_tokens": 1000,                            # Максимальное количество символов характера для поддержки контекстной памяти
  "character_desc": «Вы ChatGPT, Большая языковая модель, обученная OpenAI, Вы стремитесь отвечать и решать любые вопросы, которые возникают у людей, и можете общаться с людьми на нескольких языках. "  # Описание личности
}

бегать

1. местныйбегать

Если эта машина разрабатывает локальный проект, выполните непосредственно в корневом каталоге проекта:

Язык кода:javascript
копировать
python3 app.py

После того, как терминал выведет QR-код, используйте WeChat для сканирования кода. "Start auto replying" указывает на то, что автоответчик прошел успешнобегать Понятно(Уведомление:WeChat, используемый для входа в систему, должен пройти аутентификацию по настоящему имени в платежном офисе.)。

После сканирования QR-кода для входа ваша учетная запись станет роботом. Вы можете запускать автоматические ответы с помощью ключевого слова Конфигурация на мобильном телефоне WeChat (Любой друг может отправить вам сообщение, или вы можете). отправить сообщение другу самостоятельно), см. №142.

2. Развертывание сервера

использовать команду nohup в фоновой программе запуска:

Язык кода:javascript
копировать
touch nohup.out                                   # В первый раз необходимо создать новый файл журнала.                     
nohup python3 app.py & tail -f nohup.out          # запустить программу в фоновом режиме и вывести QR-код через журнал

После сканирования QR-кода для входа программу можно запустить в фоновом режиме сервера.,На этом этапе вы можете закрыть журнал, нажав ctrl+c.,запуск не повлияет на фоновые программы.

использовать ps -ef | grep app.py | grep -v grep Команда может просматривать процессы, работающие в фоновом режиме. Если вы хотите перезапустить программу, вы можете сначала перезапустить ее. kill Отмените соответствующий процесс.

Если после закрытия журнала вы хотите открыть его снова, просто введите Tail -f nohup.out. В каталоге scripts/ имеются соответствующие скрипты, которые можно вызвать

Уведомление: Если после сканирования кода мобильный телефон предложит, что для подтверждения входа необходимо подождать 5 секунд, а QR-код терминала снова обновится и предложит Log in time out, reloading QR код, пожалуйста, обратитесь к этому issue Эту проблему можно решить, изменив одну строку кода.

Язык кода:javascript
копировать
Несколько учетных записейподдерживать: Сделайте несколько копий проекта, копируйте, запускайте программы отдельно и сканируйте QR-код, чтобы войти в систему под разными учетными записями и добиться одновременной обработки.
Особые инструкции: Пользователь отправляет робота #очистить память Это очистит контекстную память пользователя.
boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода