前言不知道大家刷B站視頻有沒有注意到評論區(qū)下面會有人 沒有錯!我們今天就要復(fù)刻這個功能,不過是在掘金的評論區(qū),通過回復(fù)指定內(nèi)容來召喚BOT對這篇文章進(jìn)行總結(jié)!相信你看完本文后也可以做出自己想要的機(jī)器人,不僅僅是服務(wù)于掘金社區(qū),你可以做的更好更多! 想必大家就已經(jīng)迫不及待的要看看成果了! 成果預(yù)覽這是已經(jīng)用豆包MarsCode[1]開發(fā)的成品,由于掘金尚不支持@功能,目前只能由用戶在BOT的文章下評論文章地址,再由BOT到鏈接文章下回復(fù)!不知道掘金社區(qū)能不能加一個@功能,豐富社區(qū)交流!?? ![]() 當(dāng)你在BOT的文章下評論其他文章鏈接時,BOT就會閱讀該文內(nèi)容,并且在對應(yīng)文章下評論總結(jié)內(nèi)容! ![]() 你可以試著給本文評論文章鏈接,等待你的評論過審后就可以看到BOT給你自動評論的文章總結(jié)啦! 讓我們一起看看這個省流大師是怎么完成的!
環(huán)境準(zhǔn)備
這里我們將采用 注冊平臺應(yīng)該大部分用戶還沒有注冊豆包,現(xiàn)在通過sourl.cn/vKjHKF[2] 即可注冊豆包MarsCode! ![]() 注冊應(yīng)該不用多說什么了,這里我們直接點(diǎn)擊稀土掘金賬戶登錄! 開發(fā)環(huán)境
![]() 登錄后我們點(diǎn)擊首頁 ![]() 和許多AI一樣,豆包也提供了IDE插件,你可以無差別的平移到 ![]() 剩下的操作插件提示已經(jīng)給到位了,我們就不再多說啦! 明確需求先別著急,我上學(xué)期和老師去了一家AI文創(chuàng)公司,他們公司有一部分文創(chuàng)業(yè)務(wù)就使用AI完成。在演示他們使用AI文創(chuàng)之前,他這么說:
我覺得說法很對,因此想要發(fā)揮豆包的完全實(shí)力就需要提問者發(fā)問合適! 我們需要實(shí)現(xiàn)一個掘金機(jī)器人,有人在機(jī)器人的文章下評論其他文章鏈接,BOT就需要閱讀這篇文章,總結(jié)內(nèi)容,再將總結(jié)的內(nèi)容發(fā)到這篇文章的評論區(qū)。 OK,實(shí)現(xiàn)上面的功能,我們需要有
我們的任務(wù)有:
接下來我們只需要口述這些任務(wù)即可!這里我們不講解API抓獲過程了,有需要的大家可以自己去F12看看或者看看我給AI提問的接口。 創(chuàng)建項(xiàng)目根據(jù)我們的預(yù)想這個機(jī)器人是個后臺輪詢服務(wù),那選JS或者Python再好不過了,由于我平時接觸JS多一些那么我們這里就選Node項(xiàng)目。如果你是本地開發(fā)那么就初始化一個本地項(xiàng)目即可,不過云平臺實(shí)在是太方便了,很適合這種腳本項(xiàng)目,我們就用云平臺吧! ![]() 創(chuàng)建后可以看到Node環(huán)境已經(jīng)準(zhǔn)備好啦,甚至我們可以用控制臺安裝外部依賴,你可以做你任何想要的! ![]() 這個環(huán)境配額可太棒了?。?! ![]() 輪詢檢測評論信息讓我們來先開始第一個任務(wù)!我們希望網(wǎng)絡(luò)請求是axios來進(jìn)行的。 ![]() 接下來我們讓他輪詢評論列表接口,讓我們試試看,利用setTimeout來進(jìn)行輪詢 ![]() 現(xiàn)在豆包已經(jīng)給出了答案,讓我們刪除已經(jīng)有代碼,把新代碼插入進(jìn)來 ![]() 哦!讓我們看看這個代碼,哦,很好,他按照要求完成了我們的第一個需求。 ![]() 現(xiàn)在我們希望它加一些注解,試試看它的上下文補(bǔ)全,我們在請求上方加個注解 ![]() 接下來你可以告訴豆包優(yōu)化掉不需要的代碼,比如剛剛的http服務(wù)我們就不需要,可以刪除,這里就不貼圖了! 判斷是否未讀我們用鼠標(biāo)選中這塊代碼,再向豆包提問,這樣豆包會基于這段代碼進(jìn)行聯(lián)想,現(xiàn)在我們把生成的代碼粘貼回來,點(diǎn)擊插入到光標(biāo)處!這很方便。 ![]() 這樣我們就獲得了未處理的信息 ![]() 過濾評論中的掘金文章鏈接現(xiàn)在我們試著讓豆包再進(jìn)一步處理,用正則表達(dá)式來獲取評論的文章ID。 ![]() 現(xiàn)在我們就有了過濾文章ID的能力,這很有用 ![]() 調(diào)用AI總結(jié)文章內(nèi)容這里我們需要配合其他API使用,不知道大家記不記得之前的扣子Coze,它提供了豆包API的能力扣子 - 開發(fā)指南 ()[3],詳細(xì)的內(nèi)容大家可以閱讀開發(fā)文檔,下面我們看看扣子BOT的配置。 扣子API創(chuàng)建![]() 這里我們需要給BOT一個設(shè)定和讀取網(wǎng)頁內(nèi)容的插件,接下來發(fā)布BOT后就可以利用API調(diào)用BOT對話了! 調(diào)用API總結(jié)文章我們給豆包來個有挑戰(zhàn)性的任務(wù),這是系列任務(wù)的聚合,現(xiàn)在來看,豆包可以完成,不過也有一些瑕疵,比如它可能忘記了上下文,重新給我寫了一個函數(shù),但是實(shí)際上我們只是需要一段代碼。 不過我們可以自己手動復(fù)制需要的部分代碼! ![]() 現(xiàn)在我們已經(jīng)完成了調(diào)用AI總結(jié)文章的代碼! ![]() 調(diào)用評論接口評論內(nèi)容現(xiàn)在,我們只需要將獲取到的內(nèi)容評論出去即可。 ![]() 現(xiàn)在我們已經(jīng)成功調(diào)用了評論的接口! ![]() 調(diào)用閱讀未讀信息最后一個任務(wù)也是復(fù)雜的,它不是在我們之前的代碼后面加,而是必須要到循環(huán)外面去寫這個邏輯。 那就是閱讀未處理內(nèi)容,該接口傳入的ID為最后一條未處理信息ID,也就是最早的一條,為此我們必須要在遍歷外面寫這個網(wǎng)絡(luò)請求,看看豆包能否完成! ![]() 顯然它做到了! ![]() 豆包輸出了整個項(xiàng)目的代碼,說明它可能理解了這是最后的任務(wù),接下來它在消息遍歷后進(jìn)行了網(wǎng)絡(luò)請求,閱讀了所有未處理信息,現(xiàn)在我們成功做到了豆包AI開發(fā)整個項(xiàng)目,我們來試試看運(yùn)行。 擴(kuò)展體驗(yàn)前面我們給豆包了許多提示詞,我不是說網(wǎng)絡(luò)請求的接口和提交參數(shù)這些,而是告訴他我們需要內(nèi)容在Json里對應(yīng)的字段,這樣豆包確實(shí)很好的理解了,不過我希望豆包做的更好! 關(guān)鍵數(shù)據(jù)篩選現(xiàn)在我們試試看,給他一個修改當(dāng)前程序的需求,并且給它較多的數(shù)據(jù)信息,讓豆包自己決定如何篩選內(nèi)容,我們只是提供給它可選信息。 下面我們希望評論時帶上評論者的信息,比如評論者的用戶名。 ![]() 我們將整個Json丟給他,就說我們需要發(fā)送總結(jié)時帶上用戶名,豆包也巧妙的明白的我們的意思。 ![]() ![]() 可以看到給出的代碼里已經(jīng)包含了用戶名的信息了。 很多時候我們不希望自己觀察Json信息,那么交給AI也是一個相當(dāng)不錯的選擇。 代碼優(yōu)化光是這樣還不夠,我希望豆包可以重構(gòu)我的代碼,提高復(fù)用和維護(hù),這需要豆包了解全局業(yè)務(wù)和代碼結(jié)構(gòu),讓我們試試看! ![]() 哦天哪,這就是我想要的,你還可以讓它幫你加上注釋! 成果展示![]() 這里我們先填寫好BOT機(jī)器人的掘金賬戶Cookie! ![]() 然后我們點(diǎn)擊這里運(yùn)行即可讓node服務(wù)跑起來! 現(xiàn)在我們用另一個賬戶給BOT的文章下評論一個掘金鏈接試試看!掘金的評論是帶審核的哦,大概是為了防止廣告,評論后稍等才會看到,API接口獲得也是一樣! 成品體驗(yàn)現(xiàn)在給本文章發(fā)送某篇文章鏈接,等待評論過審核,即可看到BOT評論的文章總結(jié)啦! ![]() 當(dāng)評論傳出后,我們可以看到輸出日志,成功完成評論! ![]() 然后看看對應(yīng)的文章,可以看到已經(jīng)成功評論啦! ![]() 項(xiàng)目導(dǎo)出為了讓服務(wù)24小時運(yùn)行,我們這里把項(xiàng)目進(jìn)行導(dǎo)出!看下圖,我們通過另存為的方式將項(xiàng)目導(dǎo)出! ![]() emm說實(shí)話導(dǎo)出文件的位置還是有一些深。 ![]() 最后我們點(diǎn)擊顯示本地即可完成啦,現(xiàn)在你只需要將這個node服務(wù)跑到你的服務(wù)器上就ok,這里就不演示了。 還能做什么?就單獨(dú)對于我們這個業(yè)務(wù)來說,有時候豆包總結(jié)是簡單一句話,我們可以在豆包BOT的設(shè)定中要求必須分條作答。 對于掘金而言,你可以做評論自動回復(fù)、關(guān)注后自動回復(fù)等功能,相當(dāng)于一個額外的自動客服! 面向其他平臺,可見如果你有了充分的準(zhǔn)備,即使你不會這個平臺的語言也沒關(guān)系,我們只需要向豆包描述需求即可,我們可以很快的將腳本遷移到其他平臺,或者開發(fā)其他平臺的類似功能。 文末與感想我是一名學(xué)生,在校期間我許多東西都在使用AI了,最簡單的就是向AI查詢代碼問題和編寫文稿了,這類AI的出現(xiàn)很大的降低了我的學(xué)習(xí)成本,事實(shí)上大部分時候我只知道這里可能需要什么,但是我不知道具體怎么做,那這個時候AI就能幫到我了。說這個就是希望大家不要無視AI的存在,我們必須要接納它,讓它成為我們的工具。 但是我卻往往發(fā)現(xiàn)把AI落地的往往是一些非技術(shù)同學(xué),他們利用AI生成視頻、音頻、配音,然后做一些自媒體靠流量產(chǎn)生收益,而我們技術(shù)的同學(xué)許多時候只是使用它做一些疑問解答和文檔編寫,真的很難不羨慕,那么對我們技術(shù)的同學(xué)來說也要想想如何將AI技術(shù)變現(xiàn),產(chǎn)生商業(yè)價值。 回到豆包,從上面的體驗(yàn)來說我們已經(jīng)可以用它做不少東西了,另一方面是它是國內(nèi)的模型我們使用也會發(fā)布很多。不過我覺得還有進(jìn)展空間,特別是對意圖的理解上,這段時間使用下來也會發(fā)現(xiàn)豆包有時候無法準(zhǔn)確的理解我是的內(nèi)容,不過值得一提的是,豆包的遺忘好像不是那么明顯,上面例子我們發(fā)現(xiàn)說了那么多它還是記得之前的東西,這個可能和豆包的引用文件內(nèi)容有關(guān)系,這個我覺得還挺好的。 總之,希望大家看完后可以動手試試看這個,引入豆包到日常開發(fā)里也能提高不少效率,相信你能發(fā)現(xiàn)更多有意思的東西! https://link./?target=https%3A%2F%2Fwww.marscode.cn%2Fhome%3Futm_source%3Dtiyanguan%26utm_medium%3Djuejin: https://link./?target=https%3A%2F%2Fwww.marscode.cn%2Fhome%3Futm_source%3Dtiyanguan%26utm_medium%3Djuejin [2]https://link./?target=https%3A%2F%2Fwww.marscode.cn%2Fhome%3Futm_source%3Dtiyanguan%26utm_medium%3Djuejin: https://link./?target=https%3A%2F%2Fwww.marscode.cn%2Fhome%3Futm_source%3Dtiyanguan%26utm_medium%3Djuejin [3]https://www./docs/developer_guides/coze_api_overview: https://link./?target=https%3A%2F%2Fwww.%2Fdocs%2Fdeveloper_guides%2Fcoze_api_overview |
|