您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“如何將ChatGPT接入微信實(shí)現(xiàn)智能回復(fù)功能”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
文本對(duì)話: 接收私聊及群組中的微信消息,使用ChatGPT生成回復(fù)內(nèi)容,完成自動(dòng)回復(fù)
規(guī)則定制化: 支持私聊中按指定規(guī)則觸發(fā)自動(dòng)回復(fù),支持對(duì)群組設(shè)置自動(dòng)回復(fù)白名單
多賬號(hào): 支持多微信賬號(hào)同時(shí)運(yùn)行
圖片生成: 支持根據(jù)描述生成圖片,并自動(dòng)發(fā)送至個(gè)人聊天或群聊
2022.12.19: 引入 itchat-uos 替換 itchat,解決由于不能登錄網(wǎng)頁微信而無法使用的問題,且解決Python3.9的兼容問題
2022.12.18: 支持根據(jù)描述生成圖片并發(fā)送,openai版本需大于0.25.0
2022.12.17: 原來的方案是從 ChatGPT頁面 獲取session_token,使用 revChatGPT 直接訪問web接口,但隨著ChatGPT接入Cloudflare人機(jī)驗(yàn)證,這一方案難以在服務(wù)器順利運(yùn)行。 所以目前使用的方案是調(diào)用 OpenAI 官方提供的 API,回復(fù)質(zhì)量上基本接近于ChatGPT的內(nèi)容,劣勢(shì)是暫不支持有上下文記憶的對(duì)話,優(yōu)勢(shì)是穩(wěn)定性和響應(yīng)速度較好。
前往 OpenAI注冊(cè)頁面 創(chuàng)建賬號(hào),參考這篇 教程 可以通過虛擬手機(jī)號(hào)來接收驗(yàn)證碼。創(chuàng)建完賬號(hào)則前往 API管理頁面 創(chuàng)建一個(gè) API Key 并保存下來,后面需要在項(xiàng)目中配置這個(gè)key。
項(xiàng)目中使用的對(duì)話模型是 davinci,計(jì)費(fèi)方式是每1k字 (包含請(qǐng)求和回復(fù)) 消耗 $0.02,圖片生成是每張消耗 $0.016,賬號(hào)創(chuàng)建有免費(fèi)的 $18 額度,使用完可以更換郵箱重新注冊(cè)。
支持 Linux、MacOS、Windows 系統(tǒng)(可在Linux服務(wù)器上長期運(yùn)行),同時(shí)要求安裝有 Python
(版本需在 3.7.1~3.9.X 之間,Linux環(huán)境建議使用3.7.X)。
1.克隆項(xiàng)目代碼:
git clone https://github.com/zhayujie/chatgpt-on-wechat cd chatgpt-on-wechat/
2.安裝所需核心依賴:
pip3 install itchat-uos==1.5.0.dev0 pip3 install openai==0.25.0
配置文件的模板在根目錄的config-template.json
中,需復(fù)制該模板創(chuàng)建最終生效的 config.json
文件:
cp config-template.json config.json
然后在config.json
中填入自定義配置,各配置項(xiàng)含義如下:
# config.json文件內(nèi)容示例 { "open_ai_api_key": "YOUR API KEY" # 填入上面創(chuàng)建的 OpenAI API KEY "single_chat_prefix": ["bot", "@bot"], # 私聊時(shí)文本需要包含該前綴才能觸發(fā)機(jī)器人回復(fù) "single_chat_reply_prefix": "[bot] ", # 私聊時(shí)自動(dòng)回復(fù)的前綴,用于區(qū)分真人 "group_chat_prefix": ["@bot"], # 群聊時(shí)包含該前綴則會(huì)觸發(fā)機(jī)器人回復(fù) "group_name_white_list": ["ChatGPT測(cè)試群", "ChatGPT測(cè)試群2"], # 開啟自動(dòng)回復(fù)的群名稱列表 "image_create_prefix": ["畫", "看", "找"] # 開啟圖片回復(fù)的前綴 }
配置說明:
個(gè)人聊天中,需要以 "bot" 或 "@bot" 為開頭的內(nèi)容觸發(fā)機(jī)器人,對(duì)應(yīng)配置中的 single_chat_prefix
;機(jī)器人回復(fù)的內(nèi)容會(huì)以 "[bot]" 作為前綴, 以區(qū)分真人,對(duì)應(yīng)的配置為 single_chat_reply_prefix
群組聊天中,群名稱需配置在 group_name_white_list
中才能開啟群聊自動(dòng)回復(fù),默認(rèn)只要被@就會(huì)觸發(fā)機(jī)器人自動(dòng)回復(fù),另外群聊天中只要檢測(cè)到以 "@bot" 開頭的內(nèi)容,同樣會(huì)自動(dòng)回復(fù),這對(duì)應(yīng)配置 group_chat_prefix
對(duì)于圖像生成,在滿足個(gè)人或群組觸發(fā)條件外,還需要額外的關(guān)鍵詞,對(duì)應(yīng)配置 image_create_prefix
關(guān)于OpenAI對(duì)話及圖片接口的參數(shù)配置(內(nèi)容自由度、回復(fù)字?jǐn)?shù)限制、圖片大小等),可以參考 對(duì)話接口 和 圖像接口 文檔直接在 代碼 bot\openai\open_ai_bot.py
中進(jìn)行調(diào)整。
1.如果是開發(fā)機(jī)本地調(diào)試,直接在項(xiàng)目根目錄下執(zhí)行:
python3 app.py
終端輸出二維碼后,使用微信進(jìn)行掃碼,當(dāng)輸出 "Start auto replying" 時(shí)表示自動(dòng)回復(fù)程序已經(jīng)成功運(yùn)行了(注意:用于登錄的微信需要在支付處已完成實(shí)名認(rèn)證)。
2.如果是服務(wù)器部署,則使用nohup命令在后臺(tái)運(yùn)行:
touch nohup.out # 首次運(yùn)行需要新建日志文件 nohup python3 app.py & tail -f nohup.out # 后臺(tái)運(yùn)行程序并輸出日志
同樣在掃碼后程序即可成功運(yùn)行于服務(wù)器后臺(tái)。
“如何將ChatGPT接入微信實(shí)現(xiàn)智能回復(fù)功能”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。