我是一個(gè)老程序員,今年 42 歲,仍然在一線編程領(lǐng)域工作。 2022 年底以 ChatGPT 為代表的 AI 工具席卷整個(gè)業(yè)界后,我也使用了不少能提高辦公效率的 AI 工具。比如程序員的好幫手,來自微軟的 Copilot. 這款名叫小浣熊的 AI 辦公工具,我之前并沒有聽說過。 在 InfoQ 社區(qū)首頁看到它出自商湯旗下,我眼前一亮,覺得這款工具肯定不會(huì)差。于是就花了一點(diǎn)時(shí)間試用了一番,通過本文同各位同行交流。 我手頭正好有個(gè)數(shù)據(jù)分析的實(shí)際需求。 我平時(shí)堅(jiān)持技術(shù)寫作,每一篇文章寫好后,我都把文章標(biāo)題維護(hù)到一個(gè) Excel 文件中。不知不覺也有 5000 多篇了。 于是我想了解下,這 5000 多篇文章,大致的分類情況。 打開小浣熊工具集合里的辦公小浣熊: https://raccoon./office 選擇本地 Excel 文件進(jìn)行上傳。 然后發(fā)出指令:
我們?cè)谛′叫苻k公助手里,能看到其自動(dòng)生成 Python 代碼,使用的 pands 庫進(jìn)行數(shù)據(jù)分析。 很快就看到了數(shù)據(jù)分析的結(jié)果: 分析結(jié)果顯示,編程類文章約占五分之一,設(shè)計(jì)類占 16.1%, 而其他類文章占據(jù)了五分之三。 我覺得這個(gè)結(jié)果不太準(zhǔn)確。因?yàn)槭聦?shí)上,我的大部分文章,都是和計(jì)算機(jī)編程技術(shù)相關(guān)的。而現(xiàn)在 60% 的文章,被分類成了「其他」。 那么來看看生成這段結(jié)果的 Python 代碼:
可以看出,這段代碼定義了一個(gè)字典數(shù)據(jù)結(jié)構(gòu) categories,鍵為硬編碼的編程,設(shè)計(jì),產(chǎn)品和其他四個(gè)字符串,值為數(shù)組。 然后遍歷 5000 多篇文章的標(biāo)題,如果標(biāo)題至少包含這四個(gè)類別對(duì)應(yīng)數(shù)組里任意一個(gè)元素,就認(rèn)為該文章屬于該類別。 舉個(gè)例子,假設(shè)有篇文章的標(biāo)題為 SAP UI5 List Report Lazy Load 技術(shù)介紹。因?yàn)闃?biāo)題里包含技術(shù)這個(gè)字符串,而小浣熊辦公助手生成的硬編碼的編程類別里,也定義了一個(gè)叫做技術(shù)的元素。 因此二者匹配,SAP UI5 List Report Lazy Load 技術(shù)介紹這篇文章,被劃分到編程的類別范疇內(nèi)。 于是我調(diào)整了提示指令,新的內(nèi)容如下:
然而當(dāng)我發(fā)出指令后,收到提示消息:
這就稍稍有點(diǎn)影響用戶體驗(yàn)了,要知道 ChatGPT 可是沒有這個(gè)限制的,我們可以隨時(shí)對(duì)一個(gè)現(xiàn)成對(duì)話,展開追加交談。 于是創(chuàng)建一個(gè)新的對(duì)話。再次向小浣熊發(fā)出指令后,發(fā)現(xiàn)其處理邏輯,仍然采取之前的硬編碼關(guān)鍵詞+字符串匹配的方式來完成: 不過瑕不掩瑜,小浣熊辦公助手支持用戶采用自然語言的方式來發(fā)送指令,對(duì)于那些沒有任何編程基礎(chǔ),但仍然有需求使用 AI 工具來輔助辦公的用戶來說,仍然能夠發(fā)揮非常大的作用。 下面再嘗試用小浣熊助手解決另一個(gè)實(shí)際辦公需求。 有個(gè)大姐向我求助,她每天有很多 Word 文件需要處理。每個(gè)文件的初始內(nèi)容只有正文,她需要逐一打開每個(gè)文件,進(jìn)行重復(fù)操作。比如添加正文標(biāo)題,設(shè)置頁眉,調(diào)整段落格式等等。 有沒有可能通過工具來自動(dòng)化這些繁瑣的流程? 我的第一反應(yīng)是可以用 RPA 解決此類需求。 不過考慮到有些企業(yè)里,員工使用的辦公電腦,不能隨意安裝一些其他的客戶端。 那么,有沒有辦法通過瀏覽器端運(yùn)行的工具,來實(shí)現(xiàn)自動(dòng)化? 使用小浣熊辦公來嘗試一下。 我先制作好了一個(gè) Word 文件作為模版:頁眉字體大小為 14,字體類型為宋體,背景色為黃色。 發(fā)出指令:
這里我顯式要求它記住這個(gè)設(shè)置。 通過對(duì)話,小浣熊成功將模版文件頁眉的字體類型和字體大小解析了出來。 從生成的代碼看,小浣熊將解析出來的頁眉字體設(shè)置,分別存儲(chǔ)到了三個(gè)變量中。 繼續(xù)測試,給小浣熊提供第二個(gè)文件。我期望它能夠把“第二篇文章,把這段文字設(shè)置為頁眉”這句話,設(shè)置為頁眉,并且按照第一個(gè)模版文件中包含的頁眉參數(shù),進(jìn)行同樣的設(shè)置。 指令如下:
從自動(dòng)生成的 Python 代碼看,小浣熊之前從第一個(gè)文檔里解析出來的頁眉設(shè)置,存儲(chǔ)在變量 header_font.name 和 header_size 中,然后將這些值,賦給第二個(gè)文檔的頁眉。 理論上看這個(gè)處理方式?jīng)]有問題。不過打開修改后的文件,發(fā)現(xiàn)頁眉的字體類型和大小,并沒有修改成期望中的宋體和 14. 我們?cè)賹⑿′叫苌傻慕馕龅谝粋€(gè)模版 Word 文件的 Python 代碼,拷貝到本地,發(fā)現(xiàn)可以直接運(yùn)行,看來小浣熊生成代碼指令的質(zhì)量確實(shí)很高。 并且從 Python 調(diào)試器里,能看到確實(shí)成功將宋體和 14 這兩個(gè)屬性提取出來了。 看來在同一個(gè)上下文的兩次對(duì)話里,小浣熊 Python 代碼里全局變量的值保存處理,有一點(diǎn)小小的問題。 不過這個(gè)問題也不大,因?yàn)槲覀兛梢园岩O(shè)置的頁眉屬性,直接通過指令的方式,發(fā)送給小浣熊即可。 從體驗(yàn)過程中我發(fā)現(xiàn),小浣熊根據(jù)自然語言發(fā)布的指令,生成的 Python 代碼質(zhì)量非常高。因此除了作為辦公助手之外,它也可以用來作為 Python 零基礎(chǔ)的學(xué)習(xí)者,想入門 Python 編程的一個(gè)輔助工具。 |
|