精品軟體與實用教程
使用AspNetCore或WPF建構個人AI助手,製作手工版ChatGPT客戶端
chatgpt客戶端 最近 chatgpt 火的一塌糊塗,人人都在用chatgpt ,只是使用chatgpt 也是有一定門檻的,為了方便小白用戶,特意用WPF和AspNetCore的webapi 程序製作了chatgpt客戶端,透過客戶端來快速訪問chatgpt模型生成對話。AI助理單機版chatgpt客戶端。
搭建ChatGPT客戶端
首先新建一個WPF項目,用來做第一個客戶端範例。
專案架構我這邊選擇的是.NET6,建議大家選擇.NET CORE2.2或以上環境,不然ChatGPT的函式庫會引用不成功。
引用下圖這兩個包,如圖。第一個是用來提供依賴注入的核心元件,第二個是用來快速存取OpenAI的我事先寫好的一個通用客戶端類別庫。
WPF專案做點小調整,在App.Xaml裡面,把啟動項目幹掉先。
App.xaml.cs裡面,加入以下功能代碼。因為通用函式庫的方法實作使用了依賴注入的形式,所以這裡就弄一個簡單的註冊方式來意思一下,就不搞別的IOC容器來做了,怎麼簡單怎麼來。
核心的兩個註冊選項:HttpClient、IOpenAiServices介面以及實現
隨便搞兩個輸入框和一個按鈕,給兩個輸入框命個名,區分一哈,例如Receive和Send。大家可以自己自訂,不用在意這些細節。
提供的客戶端存取介面是異步的,建議也用非同步的形式呼叫。在按鈕事件裡面進行實現,如圖所示。其他備註可以直接看圖文字描述。
執行程序,做個簡單測試,例如寫一個hello world。提供的答案是一個C程式碼的Hello world,看來存取是沒問題的,Bingo~
接下來,再做一個基於aspnetcore的webapi的客戶端試試。新建一個webapi專案。
這裡我也選擇的是.NET 6框架版本。大佬們自己喜歡就行,版本不重要,.NET CORE2.2以及以上都可以用。
添加上面同款引用
新增註冊。
對IOpenAiServices服務進行注入。簡單起見,直接在預設的控制器裡面注入吧。
改造一下預設的方法,看圖即可。
啟動程序,走一個。例如寫一個Vue前端登入程式碼
大概可以看出內容,但是回傳值直接看字串是比較頭大,剛好上面WPF有輸入框,那就丟過去看看效果。
啟動,瞅一眼效果,看起來好像還可以,基本上功能都涵蓋到了。比自己擼,還是快很多的。
既然WPF的客戶端都開了,那就順便我也再問一下WPF的前端程式碼,並使用MVVM模式,看看排版怎麼樣。貌似也幾乎寫的不差,包含了Xaml程式碼和ViewModel程式碼
切換回webapi項目,CallGPT3參數如下所示,所以message參數後面也可以自訂為我們自己的個人化調參使用。
例如,內建的key過期了或沒錢了,我要傳一個自己的key來訪問:
走一個,輸入請求對話的內容,以及自己的key,走一個。內容和返回,自行看圖~
到這裡,自建AI助理chatgpt客戶端就已經製作完成了。
你可以基於以上程式碼,進行二次製作。
chatgpt客戶端下載:https://www.mediafire.com/file/670l9xrryetbs9e/ChatClient.zip/file
原文連結:https://www.cnblogs.com/weskynet/p/16990125.html