將DeepSeek接入微信聊天,讓你隨時(shí)隨地享受AI的樂(lè)趣
項(xiàng)目介紹
chatgpt-on-wechat(簡(jiǎn)稱(chēng)CoW)項(xiàng)目是基于大模型的智能對(duì)話(huà)機(jī)器人,基于大模型搭建的聊天機(jī)器人。
- 支持平臺(tái):企業(yè)微信、微信 公眾號(hào)、飛書(shū)、釘釘 等接入
- 支持模型:deepseek/GPT3.5/GPT4.0/Claude/文心一言/訊飛星火/通義千問(wèn)/Gemini/GLM-4/Claude/LinkAI,
- 支持能力:處理文本、語(yǔ)音和圖片,訪問(wèn)操作系統(tǒng)和互聯(lián)網(wǎng)
- 支持知識(shí)庫(kù):基于自有知識(shí)庫(kù)進(jìn)行定制企業(yè)智能客服(基于 LinkAI 實(shí)現(xiàn))。
- 支持插件:基于插件系統(tǒng)。如 tools(點(diǎn)這里)、LinkAI等
你既可以使用 python 運(yùn)行,也可以使用 docker 部署
示例
1.基于chat-gpt的對(duì)話(huà)
圖片
2.圖片生成(以文找圖),gpt3不支持
圖片
3.插件系統(tǒng)
3.1文檔總結(jié)(基于Link-AI)
圖片
3.2文檔總結(jié)(基于python庫(kù))
圖片
3.3論文查找
圖片
3.wikipedia
準(zhǔn)備工作
1.獲取DeepSeek的api-key
1.1 申請(qǐng)測(cè)試免費(fèi)的賬號(hào)
打開(kāi)連接(需要手機(jī)號(hào)登錄):https://platform.deepseek.com/api_keys
點(diǎn)擊 創(chuàng)建 API key 按鈕,輸入名稱(chēng)之后點(diǎn)擊創(chuàng)建按鈕
圖片
你將會(huì)得到一個(gè)api key ,請(qǐng)妥善保管!
安裝
1.本地運(yùn)行(需要python環(huán)境)
1.1 拉取代碼
git pull https://github.com/zhayujie/chatgpt-on-wechat.git
1.2 安裝依賴(lài)
# 主應(yīng)用依賴(lài)
pip3 install requirements.txt
# 插件依賴(lài)
pip3 install -r requirements-optional.txt
1.3 配置參數(shù)
主應(yīng)用:基于根目錄下的config-template.json文件生成config.json,參數(shù)說(shuō)明如下
# config.json文件內(nèi)容示例
{
"open_ai_api_key": "YOUR API KEY", # 填入上面創(chuàng)建的 OpenAI API KEY
"model": "gpt-3.5-turbo", # 模型名稱(chēng), 支持 gpt-3.5-turbo, gpt-3.5-turbo-16k, gpt-4, wenxin, xunfei, claude-3-opus-20240229
"claude_api_key":"YOUR API KEY" # 如果選用claude3模型的話(huà),配置這個(gè)key,同時(shí)如想使用生圖,語(yǔ)音等功能,仍需配置open_ai_api_key
"proxy": "", # 代理客戶(hù)端的ip和端口,國(guó)內(nèi)環(huán)境開(kāi)啟代理的需要填寫(xiě)該項(xiàng),如 "127.0.0.1:7890"
"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"], # 開(kāi)啟自動(dòng)回復(fù)的群名稱(chēng)列表
"group_chat_in_one_session": ["ChatGPT測(cè)試群"], # 支持會(huì)話(huà)上下文共享的群名稱(chēng)
"image_create_prefix": ["畫(huà)", "看", "找"], # 開(kāi)啟圖片回復(fù)的前綴
"conversation_max_tokens": 1000, # 支持上下文記憶的最多字符數(shù)
"speech_recognition": false, # 是否開(kāi)啟語(yǔ)音識(shí)別
"group_speech_recognition": false, # 是否開(kāi)啟群組語(yǔ)音識(shí)別
"use_azure_chatgpt": false, # 是否使用Azure ChatGPT service代替openai ChatGPT service. 當(dāng)設(shè)置為true時(shí)需要設(shè)置 open_ai_api_base,如 https://xxx.openai.azure.com/
"azure_deployment_id": "", # 采用Azure ChatGPT時(shí),模型部署名稱(chēng)
"azure_api_version": "", # 采用Azure ChatGPT時(shí),API版本
"character_desc": "你是ChatGPT, 一個(gè)由OpenAI訓(xùn)練的大型語(yǔ)言模型, 你旨在回答并解決人們的任何問(wèn)題,并且可以使用多種語(yǔ)言與人交流。", # 人格描述
# 訂閱消息,公眾號(hào)和企業(yè)微信channel中請(qǐng)?zhí)顚?xiě),當(dāng)被訂閱時(shí)會(huì)自動(dòng)回復(fù),可使用特殊占位符。目前支持的占位符有{trigger_prefix},在程序中它會(huì)自動(dòng)替換成bot的觸發(fā)詞。
"subscribe_msg": "感謝您的關(guān)注!\n這里是ChatGPT,可以自由對(duì)話(huà)。\n支持語(yǔ)音對(duì)話(huà)。\n支持圖片輸出,畫(huà)字開(kāi)頭的消息將按要求創(chuàng)作圖片。\n支持角色扮演和文字冒險(xiǎn)等豐富插件。\n輸入{trigger_prefix}#help 查看詳細(xì)指令。",
"use_linkai": false, # 是否使用LinkAI接口,默認(rèn)關(guān)閉,開(kāi)啟后可國(guó)內(nèi)訪問(wèn),使用知識(shí)庫(kù)和MJ
"linkai_api_key": "", # LinkAI Api Key
"linkai_app_code": "" # LinkAI 應(yīng)用code
}
插件的配置根據(jù)目錄下plugins/config.json.template生成plugins/config.json,詳細(xì)的配置過(guò)程點(diǎn)這里,原文檔很清晰明了,這里不多說(shuō)了
1.4 運(yùn)行
python3 app.py
2.docker版本(需要docker環(huán)境)
2.1 拉取鏡像
docker pull zhayujie/chatgpt-on-wechat:latest
此時(shí),鏡像列表中多出一個(gè)鏡像
圖片
配置參數(shù)
點(diǎn)擊運(yùn)行按鈕,會(huì)出現(xiàn)彈窗:
圖片
名稱(chēng)隨機(jī),我們需要設(shè)置環(huán)境變量,即上述的參數(shù),但是在做環(huán)境變量時(shí),需要將key寫(xiě)成大寫(xiě),例如:OPEN_AI_API_KEY。
由于deepseek 的 api 接口兼容 open-ai,所以你可以像下面這樣配置
"open_ai_api_key": "sk-5xxxxxcxxx74",
"open_ai_api_base": "https://api.deepseek.com/v1",
"model": "deepseek-chat",
運(yùn)行
點(diǎn)擊運(yùn)行按鈕,即可運(yùn)行。
登陸
運(yùn)行之后會(huì)出現(xiàn)一個(gè)二維碼,使用微信掃碼即可完成登陸。掃碼成功后日志會(huì)打?。篠tart auto replying.
圖片
測(cè)試
你可以使用對(duì)話(huà)測(cè)試,也可通過(guò)內(nèi)置命令查看:
圖片
圖片
說(shuō)明
- tool插件是默認(rèn)開(kāi)啟的,如果配置Link-Ai key和code的話(huà)默認(rèn)打開(kāi)文檔總結(jié),支持鏈接和微信卡片鏈接。
- Link-Ai是根據(jù)會(huì)話(huà)Token收費(fèi)的,但是可以通過(guò)積分免費(fèi)使用。
- 可以開(kāi)啟語(yǔ)音識(shí)別功能
- 我用的是小號(hào)微信登陸的,在大號(hào)建立的會(huì)話(huà)窗口
- 部分插件功能原作者還在開(kāi)發(fā)測(cè)試調(diào)優(yōu)中