C#/.Net開(kāi)發(fā)chatGPT、openAI的簡(jiǎn)單步驟
C#/.Net開(kāi)發(fā)chatGPT、openAI
最近ChatGPT火爆了,自己使用了一下,確實(shí)厲害。所以自己折騰一番,使用C#來(lái)調(diào)用API。
獲取Token
本文不再贅述。
C#/.net調(diào)用接口
C#/.net 對(duì)接chatGPT非常簡(jiǎn)單,導(dǎo)入相關(guān)的依賴(lài),然后構(gòu)建OpenAiService實(shí)例,填寫(xiě)相關(guān)參數(shù),就可以發(fā)送我們的問(wèn)題,返回結(jié)果是問(wèn)題答案。
API常用參數(shù)
設(shè)置項(xiàng) | 含義 | 數(shù)據(jù)類(lèi)型 | 作用 |
---|---|---|---|
model(必需) | 模型 | string | 要使用的模型ID,目前text-davinci-003 是自然語(yǔ)言最強(qiáng)大的模型 |
prompt | 提示(問(wèn)題) | string/array | 你向API提供的提示,即你提出的問(wèn)題 |
temperature | 創(chuàng)新采樣 | float | 取值范圍0-1,當(dāng)設(shè)置為0時(shí),對(duì)于相同的問(wèn)題,模型始終返回相同或者相近的結(jié)果,設(shè)置1則與上次的回答更加不同。默認(rèn)1 |
top_p | 情緒采樣 | float | 默認(rèn)1。替代temperature使用,考慮了模型質(zhì)量,0.1為生成結(jié)果的質(zhì)量為10%,建議使用1。 |
n | 結(jié)果數(shù)量 | int | 默認(rèn)1。針對(duì)提示所生成結(jié)果的次數(shù),會(huì)大量消耗令牌。 |
stream | 流式返回 | bool | 默認(rèn)false。是否以流式返回部分進(jìn)度,流完成后會(huì)發(fā)送終止消息data:[DONE] |
echo | 顯示提示 | bool | 默認(rèn)false,在返回結(jié)果外,還顯示用戶(hù)給的問(wèn)題 |
stop | 停止詞 | string/array | 最多四個(gè)序列,返回的文本不包括停止序列 |
max_tokens | 最大令牌數(shù) | int | 默認(rèn)16,大多數(shù)模型支持最大為2048 |
注意:有一個(gè)限制是,對(duì)于大多數(shù)模型,單個(gè)API請(qǐng)求只能處理2048個(gè)tokens,大約1500個(gè)單詞(一個(gè)token大約是4個(gè)字符或者),大家在使用時(shí)注意余額情況。
使用示例
采用OpenAPI官網(wǎng)給出的nuget包Betalgo.OpenAI.GPT3
const string OPENAPI_TOKEN = "sk-************************";//輸入自己的api-key private async void Chat() { OpenAIService service = new OpenAIService(new OpenAiOptions() { ApiKey = OPENAPI_TOKEN}); CompletionCreateRequest createRequest = new CompletionCreateRequest() { Prompt = "寫(xiě)一首關(guān)于工作的詩(shī)", Temperature = 0.3f, MaxTokens = 1000 }; var res = await service.Completions.CreateCompletion(createRequest,Models.TextDavinciV3); if (res.Successful) { var ss= res.Choices.FirstOrDefault().Text; Console.WriteLine(ss); } }
可以看出寫(xiě)的還不錯(cuò)
總結(jié)
到此這篇關(guān)于C#/.Net開(kāi)發(fā)chatGPT、openAI的文章就介紹到這了,更多相關(guān)C# .Net開(kāi)發(fā)chatGPT openAI內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 利用OpenAI?ChatGPT進(jìn)行編碼嘗試體驗(yàn)
- 176萬(wàn)!GPT-4發(fā)布詳解如何查看OpenAI的下載量
- python使用openai生成圖像的超詳細(xì)教程
- OpenAI發(fā)布GPT-4支持圖像文本輸入處理中文準(zhǔn)確度大幅提升
- 使用?OpenAI?API?和?Python?使用?GPT-3的操作方法
- Python免費(fèi)試用最新Openai?API的步驟
- OpenAI的Whisper模型進(jìn)行語(yǔ)音識(shí)別使用詳解
- 人工智能深度學(xué)習(xí)OpenAI?baselines的使用方法
- 使用Python對(duì)接OpenAi?API實(shí)現(xiàn)智能QQ機(jī)器人的方法
相關(guān)文章
C#通過(guò)屬性名稱(chēng)獲取(讀取)屬性值的方法
本文主要介紹了C#通過(guò)屬性名稱(chēng)獲取(讀取)屬性值的方法,并提供了簡(jiǎn)化版代碼,具有很好的參考價(jià)值,需要的朋友可以看下2016-12-12VsCode使用EmmyLua插件調(diào)試Unity工程Lua代碼的詳細(xì)步驟
這篇文章主要介紹了VsCode使用EmmyLua插件調(diào)試Unity工程Lua代碼,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-08-08關(guān)于C#繼承的簡(jiǎn)單應(yīng)用代碼分析
在本篇文章里小編給大家整理了一篇關(guān)于C#繼承的簡(jiǎn)單應(yīng)用代碼分析內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。2021-05-05C#使用struct直接轉(zhuǎn)換下位機(jī)數(shù)據(jù)的示例代碼
這篇文章主要介紹了C#使用struct直接轉(zhuǎn)換下位機(jī)數(shù)據(jù)的示例代碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01C#多線程學(xué)習(xí)之(二)操縱一個(gè)線程的方法
這篇文章主要介紹了C#多線程學(xué)習(xí)之操縱一個(gè)線程的方法,實(shí)例分析了C#中線程的使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-04-04C#中的WebRequest與WebResponse抽象類(lèi)、DNS靜態(tài)類(lèi)、Ping類(lèi)介紹
這篇文章介紹了C#中的WebRequest與WebResponse抽象類(lèi)、DNS靜態(tài)類(lèi)、Ping類(lèi),文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05C#實(shí)現(xiàn)導(dǎo)入CSV文件到Excel工作簿的方法
這篇文章主要介紹了C#實(shí)現(xiàn)導(dǎo)入CSV文件到Excel工作簿的方法,涉及C#針對(duì)office組件的相關(guān)操作技巧,需要的朋友可以參考下2015-06-06C#獲取存儲(chǔ)過(guò)程返回值和輸出參數(shù)值的方法
這篇文章主要介紹了C#獲取存儲(chǔ)過(guò)程返回值和輸出參數(shù)值的方法,有需要的朋友可以參考一下2014-01-01