400-638-8808
|
微信公眾號(hào)








穩(wěn)定可靠 永不間斷

海外收發(fā) 暢通無(wú)阻

協(xié)同辦公 資源管理

超大郵件 超級(jí)功能

智能反垃圾郵件技術(shù)
易管理 免維護(hù)

微信掃一掃 關(guān)注"天下數(shù)據(jù)"商品一律九折
![]()
搜索"朗玥科技"關(guān)注,了解最新優(yōu)惠

最近 ChatGPT 突然爆火。抱著好奇的心態(tài)我也去官網(wǎng)注冊(cè)賬號(hào)體驗(yàn)了一下,因?yàn)榫W(wǎng)站人數(shù)太多,一時(shí)半會(huì)竟然注冊(cè)不了,不過(guò)最終還是成功注冊(cè)了。
在我和 ChatGPT 聊了十幾分鐘之后,這個(gè)東西令我大為震驚,雖然它有些地方顯得笨笨的,帶點(diǎn)機(jī)器人的味道,但是絲毫不影響我對(duì)它的喜愛(ài)。感嘆之余我思考了一下,能不能將它接入到我們現(xiàn)有的應(yīng)用中。于是我仔細(xì)瀏覽了一下 OpenAI 官網(wǎng),果然已經(jīng)提供了比較多的接口供我們使用。
ChatGPT API 接入需要如下條件。


該接口功能較多,支持最常用的問(wèn)答功能。
{ "model": "text-davinci-003", "prompt": "Say this is a test", "max_tokens": 7, "temperature": 0, "top_p": 1, "n": 1, "stream": false } 復(fù)制代碼
| 字段 | 說(shuō)明 |
|---|---|
| model | 可選參數(shù)。語(yǔ)言模型,這里選擇的是text-davinci-003 |
| prompt | 必選參數(shù)。即用戶(hù)的輸入。 |
| max_tokens | 可選參數(shù),默認(rèn)值為 16。最大分詞數(shù),會(huì)影響返回結(jié)果的長(zhǎng)度。 |
| temperature | 可選參數(shù),默認(rèn)值為 1,取值 0-2。該值越大每次返回的結(jié)果越隨機(jī),即相似度越小。 |
| top_p | 可選參數(shù),與temperature類(lèi)似。 |
| n | 可選參數(shù),默認(rèn)值為 1。表示對(duì)每條prompt生成多少條結(jié)果。 |
| stream | 可選參數(shù),默認(rèn)值為false。表示是否回流部分結(jié)果。 |
本文使用OkHttp作為網(wǎng)絡(luò)請(qǐng)求框架,Moshi作為序列/反序列化框架。編寫(xiě)單元測(cè)試對(duì)該接口進(jìn)行請(qǐng)求,代碼如下。
private final OkHttpClient okHttpClient = new OkHttpClient.Builder() .connectTimeout(10, TimeUnit.SECONDS) .writeTimeout(10, TimeUnit.SECONDS) .readTimeout(30, TimeUnit.SECONDS) .callTimeout(60, TimeUnit.SECONDS) .build(); 復(fù)制代碼
private static class CompletionRequest { private String model = "text-davinci-003"; private String prompt; private Integer max_tokens = 256; private float temperature = 0.5f; private Integer top_p = 1; private Integer n = 1; private Boolean stream = false; private Boolean logprobs; private String stop; } 復(fù)制代碼
使用OkHttp發(fā)送請(qǐng)求。需注意所有的 Post 請(qǐng)求需要添加頭字段Authorization,值為Bearer YOUR_API_KEY來(lái)驗(yàn)證身份。
public void completion(String prompt) throws IOException { CompletionRequest completionRequest = new CompletionRequest(); completionRequest.setPrompt(prompt); String reqJson = moshi.adapter(CompletionRequest.class).toJson(completionRequest); System.out.println("reqJson: " + reqJson); Request request = new Request.Builder() .url("https://api.openai.com/v1/completions") // 將 API_KEY 替換成你自己的 API_KEY .header("Authorization", "Bearer " + API_KEY) .post(RequestBody.create(MEDIA_TYPE_JSON, reqJson)) .build(); try (Response response = okHttpClient.newCall(request).execute()) { if (!response.isSuccessful()) throw new IOException("Unexpected code " + response); System.out.println(response.body().string()); } } 復(fù)制代碼
completion()測(cè)試方法中調(diào)用上面的completion(String prompt)方法@Test public void completion() { try { chatGPT.completion("你能背誦多少位圓周率"); } catch (IOException e) { e.printStackTrace(); } } 復(fù)制代碼
{ "id": "cmpl-6j9PhjAom9GyxBNCVacvckcVNKVZg", "object": "text_completion", "created": 1676218965, "model": "text-davinci-003", "choices": [ { "text": "?\n\n我可以背誦50位圓周率:3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679。", "index": 0, "logprobs": null, "finish_reason": "stop" } ], "usage": { "prompt_tokens": 21, "completion_tokens": 73, "total_tokens": 94 } } 復(fù)制代碼
通過(guò)上面一個(gè)例子,相信大家已經(jīng)學(xué)會(huì)了如何將 ChatGPT API 接入到自己的應(yīng)用了。OpenAI 還提供了其他有用的接口,這里就不一個(gè)一個(gè)說(shuō)明了,大家可以前往官網(wǎng)自行查看文檔。
產(chǎn)品與服務(wù)
香港服務(wù)器 香港高防服務(wù)器 美國(guó)服務(wù)器 韓國(guó)服務(wù)器 新加坡服務(wù)器 日本服務(wù)器 臺(tái)灣服務(wù)器云服務(wù)器
香港云主機(jī) 美國(guó)云主機(jī) 韓國(guó)云主機(jī) 新加坡云主機(jī) 臺(tái)灣云主機(jī) 日本云主機(jī) 德國(guó)云主機(jī) 全球云主機(jī)高防專(zhuān)線(xiàn)
海外高防IP 海外無(wú)限防御 SSL證書(shū) 高防CDN套餐 全球節(jié)點(diǎn)定制 全球?qū)>(xiàn)GPLC關(guān)于我們
關(guān)于天下數(shù)據(jù) 數(shù)據(jù)招商加盟 天下數(shù)據(jù)合作伙伴 天下數(shù)據(jù)團(tuán)隊(duì)建設(shè) 加入天下數(shù)據(jù) 媒體報(bào)道 榮譽(yù)資質(zhì) 付款方式關(guān)注我們
微信公眾賬號(hào)
新浪微博
天下數(shù)據(jù)手機(jī)站 關(guān)于天下數(shù)據(jù) 聯(lián)系我們 誠(chéng)聘英才 付款方式 幫助中心 網(wǎng)站備案 解決方案 域名注冊(cè) 網(wǎng)站地圖
天下數(shù)據(jù)18年專(zhuān)注海外香港服務(wù)器、美國(guó)服務(wù)器、海外云主機(jī)、海外vps主機(jī)租用托管以及服務(wù)器解決方案-做天下最好的IDC服務(wù)商
《中華人民共和國(guó)增值電信業(yè)務(wù)經(jīng)營(yíng)許可證》 ISP證:粵ICP備07026347號(hào)
朗信天下發(fā)展有限公司(控股)深圳市朗玥科技有限公司(運(yùn)營(yíng))聯(lián)合版權(quán)
深圳總部:中國(guó).深圳市南山區(qū)深圳國(guó)際創(chuàng)新谷6棟B座10層 香港總部:香港上環(huán)蘇杭街49-51號(hào)建安商業(yè)大廈7樓
7×24小時(shí)服務(wù)熱線(xiàn):4006388808香港服務(wù)電話(huà):+852 67031102
本網(wǎng)站的域名注冊(cè)業(yè)務(wù)代理北京新網(wǎng)數(shù)碼信息技術(shù)有限公司的產(chǎn)品