又發(fā)現(xiàn)了一個(gè)有趣的 ChatGPT 玩法,分享給大家
阿粉之前給大家寫過(guò)如何將 ChatGPT 接入微信和釘釘,沒(méi)看過(guò)的可以往公眾號(hào)前面的文章翻翻,最近又發(fā)現(xiàn)了一個(gè)有趣的玩法,周末找時(shí)間實(shí)現(xiàn)了一下,感覺(jué)挺不錯(cuò)的,分享給大家。
背景
事情的起因是阿粉在朋友圈看到了這樣一條信息,敏感信息已經(jīng)去掉了,意思很明顯就是將 OpenAI? 接入到知識(shí)星球了,用戶可以通過(guò)星球提問(wèn)的方式來(lái)對(duì) OpenAI? 進(jìn)行提問(wèn),OpenAI 會(huì)自動(dòng)回答相應(yīng)用戶的問(wèn)題,并通知到用戶。

看到這就很有意思了,對(duì)于運(yùn)營(yíng)了知識(shí)星球的博主來(lái)說(shuō),特別是技術(shù)類博主,很多簡(jiǎn)單的技術(shù)知識(shí)點(diǎn),完全就可以通過(guò)自動(dòng)化來(lái)進(jìn)行回答,而不用太消耗自己的時(shí)間。
那有的小伙伴就要問(wèn)了,這跟用戶自己百度有什么區(qū)別呢?
只要用過(guò) OpenAI 的小伙伴是深有體會(huì)的,百度搜索出來(lái)的答案廣告很多不說(shuō),要在大量相似的內(nèi)容中找到有用了,往往還是要花點(diǎn)時(shí)間的。
而 OpenAI 提供的答案往往思路清晰,條理分明,雖然說(shuō)對(duì)于很多時(shí)效性的問(wèn)題給不了確切的答案,但是對(duì)于一些技術(shù)知識(shí)點(diǎn)的回答還是可以很精準(zhǔn)的。
下面是阿粉看到的一些 case,大家可以瞅瞅
可以寫代碼

會(huì)回答問(wèn)題

會(huì)寫大綱

會(huì)分析性能

搭建
上面的 case? 看完了,那么接下來(lái)就可以開(kāi)始著手搭建了,首先要知道我們?cè)撊绾螌?shí)現(xiàn)這個(gè)自動(dòng)智能回答功能,思路很簡(jiǎn)單,就是先獲取待回答的問(wèn)題列表,然后遍歷問(wèn)題請(qǐng)求 OpenAI 的接口,然后再將返回的結(jié)果回寫通知對(duì)應(yīng)的用戶,這個(gè)過(guò)程我們需要通過(guò)定時(shí)任務(wù)輪詢?nèi)ヌ幚怼?/p>
綜上所述,我們需要準(zhǔn)備下面這些東西
- 一個(gè)可以被提問(wèn)的知識(shí)星球賬號(hào),也就是被提問(wèn)者;
 - OpenAI? 賬號(hào)對(duì)應(yīng)的 API KEY,這一步相對(duì)會(huì)稍微麻煩一點(diǎn),不過(guò)之前的文章都提供過(guò)思路如何獲取,不在本文討論的范圍,感興趣的翻翻前面的文章。
 - 調(diào)度工具或者調(diào)度平臺(tái),也可以是 Linux 系統(tǒng)的定時(shí)命令;
 - 實(shí)現(xiàn) API 請(qǐng)求的程序或者腳本;
 
編程
上面的四點(diǎn)都是必須的,但是最主要的當(dāng)然還是編寫代碼,按照我們上面的思路,我們這個(gè)程序需要調(diào)用三個(gè)接口
- 獲取問(wèn)題列表;
 - 請(qǐng)求 OpenAI 獲取答案;
 - 回寫答案通知用戶;
 
下面我們依次來(lái)看看這三個(gè)接口要如何對(duì)接,提前說(shuō)明下,阿粉這邊為了簡(jiǎn)單用的調(diào)度平臺(tái)是 XXL-JOB? 對(duì)應(yīng)的執(zhí)行任務(wù)腳本是采用 Nodejs 寫的。
用準(zhǔn)備好的被提問(wèn)者賬號(hào)登錄網(wǎng)頁(yè)版的知識(shí)星球進(jìn)入到對(duì)應(yīng)的星球后,可以看到有一個(gè)【等我回答】的菜單。

我們打開(kāi)瀏覽器的控制臺(tái),點(diǎn)擊【等我回答】按鈕,就可以看到請(qǐng)求的對(duì)應(yīng)接口地址

這是我們第一個(gè)要請(qǐng)求的接口地址,請(qǐng)把它記下來(lái),再通過(guò) request header? 拿到對(duì)應(yīng)的 cookie 信息和一些參數(shù)過(guò)后,這樣我們就可以通過(guò)代碼來(lái)進(jìn)行接口請(qǐng)求了,獲取到需要回答的問(wèn)題列表。
獲取到了問(wèn)題列表過(guò)后,我們?cè)?nbsp;callback? 回調(diào)方法里面就可以開(kāi)始遍歷請(qǐng)求 OpenAI? 接口獲取答案了,OpenAI? 的接口地址是這個(gè) https://api.openai.com/v1/completions。
將獲取到的答案回寫到用戶,這里我們需要第三個(gè)地址了,可以跟第一個(gè)地址一樣進(jìn)行獲取,在頁(yè)面進(jìn)行一個(gè)回答,就可以獲取到對(duì)應(yīng)的回答地址,不過(guò)需要我們自行替換其中的主題 ID,這個(gè)比較簡(jiǎn)單就不截圖了,直接上代碼。
至此相應(yīng)的功能基本上已經(jīng)算實(shí)現(xiàn)了,有幾個(gè)細(xì)節(jié)簡(jiǎn)單說(shuō)明下
- 回寫答案接口參數(shù)中 silenced 代表是否通知其他人,true 代表只通知提問(wèn)者,false 表示通知所有人,通知所有人就表示所有人都能看到回答,否則就只有提問(wèn)者才會(huì)看到回答,剛開(kāi)始調(diào)試的時(shí)候可以設(shè)置成 true,后期上線可以設(shè)置成 false。
 - 因?yàn)檫@個(gè)功能是需要通過(guò)定時(shí)任務(wù)來(lái)觸發(fā)的,為了避免不必要的麻煩,可以自行設(shè)定合理的定時(shí)時(shí)間,比如半夜就別調(diào)用了,晚點(diǎn)回答別人問(wèn)題并不會(huì)有什么影響,調(diào)度頻次也不要太頻繁,低調(diào)使用。
 
效果
在 XXL-JOB? 上面配置一個(gè) NodeJs 的任務(wù),



可以看到阿粉這邊指定了相應(yīng)時(shí)間才進(jìn)行查詢,能看到可以智能回答成功了,對(duì)應(yīng)在知識(shí)星球中也能正常的顯示。爽歪歪~
總結(jié)
今天又給大家?guī)?lái)了一種 OpenAI 的玩法,阿粉提供了幾種玩法都是自己學(xué)習(xí)研究的玩法,大家自己玩玩就好,目的是為了讓大家在遇到新事物和技術(shù)的時(shí)候能保持著熱情,新技術(shù)的到來(lái)我們不能保守,而是要迎接。















 
 
 












 
 
 
 