※ 本文轉寄自 ptt.cc, 文章原始頁面
看板Soft_Job
標題

[心得] 用 ChatGPT 幫忙整理 Code Changes

時間
最新2023-03-19 22:22:00
留言18則留言,12人參與討論
推噓10 ( 1008 )
部落格: https://bit.ly/3yuTBnj GitHub: https://github.com/appleboy/CodeGPT 相信大家對 ChatGPT 不會很陌生,這是目前在生成式人工智慧 (AIGC: AI Generated Content) 內的當紅炸子雞,然而 ChatGPT 對於軟體工程師有什麼影響呢?能否透過 ChatGPT 改善團隊流程或協助開發?而我現在想到最直接的就是用 ChatGTP 幫忙寫 Git Commit Message,然而怎麼把 Commit Message 寫好可以參考這篇文章,為了能達成這目 的,我用 Go 語言寫了一個 CLI 工具 CodeGPT (請大家幫忙分享),來協助軟體工程師整 理開發內容。底下先看看使用 CodeGPT 來產生 Commit Message 的成果: https://i.imgur.com/AG6MWQe.png
[心得] 用 ChatGPT 幫忙整理 Code Changes
上面圖示內容可以從 CodeGPT 的 Commit Log 找到 ## 為什麼要寫 CodeGPT 其實在 GitHub 平台上面已經有超多這樣類似的工具可以使用了,而我為什麼要再重新開 發一次呢?第一個原因是跨平台,透過 Go 語言可以快速產生執行檔,避免不同平台還要 安裝不同的環境,這樣對於不熟環境的開發者可以更容易安裝。 第二個原因是未來規劃朝向整合 GitHub, Gitea 或 Bitbucket 等 Git 平台,發 PR 後 ,可以透過 ChatGPT 自動幫忙整裡 Commit 內容且自動留言。所以這工具不只是單純讓 開發者可以自行產生 Commit Message 而已,未來也會整合成容器化服務,協助進行 Code Review。 第三個原因是未來不只是接 OpenAI 的 API 而已,ChatGPT API 目前也已經在 Azure OpenAI Service 支援了,所以之後除了原本的 OpenAI 外,還會整合微軟 Azure 服務。 ## 使用方式 目前每次釋出都會產生 Linux, MacOS 及 Windows 相對應的執行檔案,只要下載放在 bin 目錄底下即可,接著到 OpenAI 網站申請 API Key,第一個月免費 18 美金,其實每 天用量都不到一美金,相當便宜,信用卡放上去就對了。將 API Key 寫到環境變數 export OPENAI_API_KEY=sk-xxxxxxx 接著將需要 commit 的檔案透過 git add 方式加入,再執行底下指令 codegpt commit --preview ## 心得 由於中國跟香港或者是部分公司對於 ChatGPT 有嚴格的封鎖政策,故在此工具多了設定 Proxy 功能,可以讓大家透過 Proxy 方式出去訪問 OpenAI API,公司希望特定的機器才 可以出去。下一階段預計整合 Azure OpenAI 服務進來。用了此工具後,省下開發者不少 時間,尤其是需要常常 Commit,又不知道該如何整裡內容。如果喜歡的話可以按個 Star CodeGPT. -- AppleBoy Blog: http://blog.wu-boy.com -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.244.123.129 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1678703464.A.DD3.html

Re: 回文串

1018
> [心得] 用 ChatGPT 幫忙整理 Code Changes
Soft_Job03/13 18:31

18 則留言

single4565, 1F
能用chatgpt幫忙真的太狠了

jlhc, 2F
感謝分享, 有心得有實作給推, 雖然我覺得有點畫蛇添足

q26766, 3F
注意看,這個男人太狠了

alan23273850, 4F
現在很多服務都要自己買 token,對窮學生來說實在是

alan23273850, 5F
不忍下手...

blackcan, 6F
推推

jay123peter, 7F
分享給推

appleboy46, 8F
to alan每天不到一美金

j112233456, 9F
請問code change太長是否會超過單次token限制?

Csongs, 10F
我覺得還不錯啊

appleboy46, 11F
to j112233456會,所以可以加上 --exclude_list

appleboy46, 12F
像是 --exclude_list *.py,*.md 用逗號隔開

HybridSC, 13F
把公司的程式碼丟出去不會有問題嗎0.0

friends29, 14F
讚喔這個應用很棒

jfmamjjasond, 15F
--diff_unified設成0很準確欸,不過為什麼預設要設

jfmamjjasond, 16F
成3?

appleboy46, 17F
git diff 預設 unified 就是為 3,所以這部分我就沒動

appleboy46, 18F
設定為 0 還有好處是,Token 會變少。

appleboy46 作者的近期文章

Re: [心得] 用 ChatGPT 幫忙整理 Code Changes
[恕刪] 去年在台北 ModerWeb 分享『生成式 AI CodeGPT 開發經驗談』,並介紹推廣自己每天 都會用的工具 CodeGPT,讓部門省下不少時間在寫 Commit Message,可是該怎麼把工具 導入到部門甚至跨部門其他單位
更多 appleboy46 作者的文章...