Python一行代碼實(shí)現(xiàn)ChatGPT接入微信機(jī)器人
正文
去年開(kāi)發(fā)了一個(gè)開(kāi)源項(xiàng)目:PyOfficeRobot,微信聊天機(jī)器人。今年ChatGPT大火,很多朋友在后臺(tái)提問(wèn):
能不能把微信機(jī)器人和ChatGPT加在一起?1行代碼就可以調(diào)用~
當(dāng)然可以了!視頻教程已經(jīng)錄制好了??傳送門(mén),在這里,我們分享一下文字教程。??
1、實(shí)現(xiàn)原理
也許所有智能聊天機(jī)器人都是下圖這種實(shí)現(xiàn)思路?
首先通過(guò)代碼(不限語(yǔ)言)去獲取聊天內(nèi)容,其次把聊天內(nèi)容傳給AI后臺(tái),最后把拿到的AI回復(fù),原路傳給聊天界面。

在這個(gè)過(guò)程中,問(wèn)題的難點(diǎn)有:
- 如何獲取聊天內(nèi)容;
- 如何調(diào)用AI回復(fù);
- 如何正確的自動(dòng)回復(fù)。
在開(kāi)發(fā)的過(guò)程中你會(huì)發(fā)現(xiàn),其中最后一項(xiàng):如何正確每一次對(duì)話是最難的。
有很多種實(shí)現(xiàn)方式,今天我們講最簡(jiǎn)單的一種,如果點(diǎn)贊超過(guò)100,我會(huì)給大家更新一個(gè)更復(fù)雜的方式~
2、上代碼
下載PyOfficeRobot
pip install PyOfficeRobot
1行代碼,實(shí)現(xiàn)微信機(jī)器人 + ChatGPT
import PyOfficeRobot PyOfficeRobot.chat.chat_by_gpt(who='程序員晚?xiàng)?, api_key='你的api_key')
3、參數(shù)說(shuō)明
上面只列出了2個(gè)參數(shù):
- who='程序員晚?xiàng)?#39;:必填,你想智能回復(fù)的人;
- api_key='你的api_key':必填,你自己的ChatGPT
其實(shí)在方法內(nèi)部還有一系列參數(shù),不過(guò)我們的項(xiàng)目主要給小白使用,我都給填了默認(rèn)值,如果你是專業(yè)開(kāi)發(fā),可以參考下面的說(shuō)明,去修改一下。(來(lái)自O(shè)penAI官網(wǎng))
completions = openai.Completion.create(
engine=model_engine,
prompt=prompt,
max_tokens=max_tokens, # 生成結(jié)果時(shí)的最大 tokens 數(shù)。平均一個(gè)漢字是 2 個(gè) tokens,text-davinci-003 最多是 4000 個(gè) tokens,也就是 2000 個(gè)漢字左右
n=n,
stop=stop,
temperature=temperature, # 控制結(jié)果的隨機(jī)性,如果希望結(jié)果更有差異性 0.9,或者希望有固定結(jié)果可以嘗試 0.0
top_p=top_p, # 一個(gè)可用于代替 temperature 的參數(shù),對(duì)應(yīng)機(jī)器學(xué)習(xí)中 nucleus sampling,如果設(shè)置 0.1 意味著只考慮構(gòu)成前 10% 概率質(zhì)量的 tokens
frequency_penalty=frequency_penalty, # 控制字符的重復(fù)度,取值為 -2.0 ~ 2.0 之間的數(shù)字
presence_penalty=presence_penalty # 控制主題的重復(fù)度,取值為 -2.0 ~ 2.0 之間的數(shù)字
)
4、寫(xiě)在最后
GPT-3,尤其是GPT-4發(fā)布以后,越來(lái)越多的大廠加入到這場(chǎng)AIGC的競(jìng)爭(zhēng)中,你覺(jué)得哪家公司會(huì)笑道最后?
以上就是Python一行代碼實(shí)現(xiàn)ChatGPT接入微信機(jī)器人的詳細(xì)內(nèi)容,更多關(guān)于Python ChatGPT接入微信的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- 一行代碼解決動(dòng)態(tài)執(zhí)行Python函數(shù)方法實(shí)例
- Python一行代碼快速實(shí)現(xiàn)程序進(jìn)度條示例
- Python一行代碼識(shí)別發(fā)票并保存Excel示例詳解
- python一行代碼合并了162個(gè)Word文件
- Python一行代碼對(duì)話ChatGPT實(shí)現(xiàn)詳解
- Python一行代碼識(shí)別增值稅發(fā)票實(shí)現(xiàn)示例
- Python一行代碼識(shí)別車(chē)牌號(hào)碼實(shí)現(xiàn)示例詳解
- Python中驚艷的一行代碼簡(jiǎn)潔強(qiáng)大表達(dá)力技巧實(shí)例
相關(guān)文章
pytorch數(shù)據(jù)預(yù)處理錯(cuò)誤的解決
今天小編就為大家分享一篇pytorch數(shù)據(jù)預(yù)處理錯(cuò)誤的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02
Python實(shí)現(xiàn)圖片和base64轉(zhuǎn)換詳解
這篇文章主要介紹了Python實(shí)現(xiàn)圖片和base64轉(zhuǎn)換詳解,Base64是一種二進(jìn)制到文本的編碼方式,如果要更具體一點(diǎn)的話,可以認(rèn)為它是一種將 byte數(shù)組編碼為字符串的方法,而且編碼出的字符串只包含ASCII基礎(chǔ)字符,需要的朋友可以參考下2024-01-01
Python3使用tesserocr識(shí)別字母數(shù)字驗(yàn)證碼的實(shí)現(xiàn)
這篇文章主要介紹了Python3使用tesserocr識(shí)別字母數(shù)字驗(yàn)證碼的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01
Python3幾個(gè)常見(jiàn)問(wèn)題的處理方法
今天小編就為大家分享一篇關(guān)于Python3幾個(gè)常見(jiàn)問(wèn)題的處理方法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-02-02
在pytorch中動(dòng)態(tài)調(diào)整優(yōu)化器的學(xué)習(xí)率方式
這篇文章主要介紹了在pytorch中動(dòng)態(tài)調(diào)整優(yōu)化器的學(xué)習(xí)率方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06

