Java使用ChatGPT的API詳解
介紹
OpenAI API 幾乎可以應(yīng)用于任何涉及理解或生成自然語(yǔ)言或代碼的任務(wù)。我們提供一系列具有不同功率級(jí)別的模型,適用于不同的任務(wù),并且能夠微調(diào)您自己的自定義模型。這些模型可用于從內(nèi)容生成到語(yǔ)義搜索和分類(lèi)的所有領(lǐng)域。
驗(yàn)證
OpenAI API 使用 API 密鑰進(jìn)行身份驗(yàn)證。訪問(wèn)您的API 密鑰頁(yè)面以檢索您將在請(qǐng)求中使用的 API 密鑰。
請(qǐng)記住,您的 API 密鑰是秘密的!不要與他人共享或在任何客戶(hù)端代碼(瀏覽器、應(yīng)用程序)中公開(kāi)它。生產(chǎn)請(qǐng)求必須通過(guò)您自己的后端服務(wù)器進(jìn)行路由,您的 API 密鑰可以從環(huán)境變量或密鑰管理服務(wù)中安全加載。
所有 API 請(qǐng)求都應(yīng)在AuthorizationHTTP 標(biāo)頭中包含您的 API 密鑰,如下所示:
Authorization: Bearer YOUR_API_KEY
對(duì)于屬于多個(gè)組織的用戶(hù),您可以傳遞一個(gè)標(biāo)頭來(lái)指定哪個(gè)組織用于 API 請(qǐng)求。來(lái)自這些 API 請(qǐng)求的使用將計(jì)入指定組織的訂閱配額。
卷曲命令示例:
curl https://api.openai.com/v1/models \ -H 'Authorization: Bearer YOUR_API_KEY' \ -H 'OpenAI-Organization: org-Kh317O0F3ISLtdXBdafrKQl2'
發(fā)出請(qǐng)求
您可以將下面的命令粘貼到您的終端中以運(yùn)行您的第一個(gè) API 請(qǐng)求。確保替換YOUR_API_KEY為您的秘密 API 密鑰。
curl https://api.openai.com/v1/chat/completions \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer YOUR_API_KEY' \ -d '{ "model": "gpt-3.5-turbo", "messages": [{"role": "user", "content": "Say this is a test!"}], "temperature": 0.7 }'
此請(qǐng)求查詢(xún)模型以完成以提示“ Say this is a testgpt-3.5-turbo ”開(kāi)頭的文本。您應(yīng)該會(huì)收到類(lèi)似于以下內(nèi)容的響應(yīng):
{ "id":"chatcmpl-abc123", "object":"chat.completion", "created":1677858242, "model":"gpt-3.5-turbo-0301", "usage":{ "prompt_tokens":13, "completion_tokens":7, "total_tokens":20 }, "choices":[ { "message":{ "role":"assistant", "content":"\n\nThis is a test!" }, "finish_reason":"stop", "index":0 } ] }
現(xiàn)在你已經(jīng)生成了你的第一個(gè)聊天完成。我們可以看到finish_reasonisstop這意味著 API 返回了模型生成的完整完成。在上面的請(qǐng)求中,我們只生成了一條消息,但是您可以設(shè)置參數(shù)n來(lái)生成多條消息選擇。在這個(gè)例子中,gpt-3.5-turbo更多的是用于傳統(tǒng)的文本完成任務(wù)。該模型還針對(duì)聊天應(yīng)用程序進(jìn)行了優(yōu)化。
創(chuàng)建聊天
curl https://api.openai.com/v1/chat/completions \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer YOUR_API_KEY' \ -d '{ "model": "gpt-3.5-turbo", "messages": [{"role": "user", "content": "Hello!"}] }'
{ "model": "gpt-3.5-turbo", "messages": [{"role": "user", "content": "Hello!"}] }
{ "id": "chatcmpl-123", "object": "chat.completion", "created": 1677652288, "choices": [{ "index": 0, "message": { "role": "assistant", "content": "\n\nHello there, how may I assist you today?", }, "finish_reason": "stop" }], "usage": { "prompt_tokens": 9, "completion_tokens": 12, "total_tokens": 21 } }
PostMan實(shí)例
到此這篇關(guān)于Java如何使用ChatGPT的API詳解的文章就介紹到這了,更多相關(guān)Java ChatGPT的API使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JAVA對(duì)象和字節(jié)數(shù)組互轉(zhuǎn)操作
這篇文章主要介紹了JAVA對(duì)象和字節(jié)數(shù)組互轉(zhuǎn)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-08-08java連接池Druid連接回收DestroyConnectionThread&DestroyTask
這篇文章主要為大家介紹了java連接池Druid連接回收DestroyConnectionThread&DestroyTask示例分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09Java內(nèi)部類(lèi)和異常類(lèi)的概念以及使用
這篇文章主要介紹了Java內(nèi)部類(lèi)和異常類(lèi)的概念以及使用,文中有非常詳細(xì)的代碼以及注釋,適合正在學(xué)習(xí)java基礎(chǔ)的同學(xué)們使用,需要的朋友可以參考下2021-04-04Mybatis基于MapperScan注解的動(dòng)態(tài)代理加載機(jī)制詳解
這篇文章主要介紹了Mybatis基于MapperScan注解的動(dòng)態(tài)代理加載機(jī)制,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2023-01-01spring?boot項(xiàng)目實(shí)戰(zhàn)之實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的連接
在我們?nèi)粘5拈_(kāi)發(fā)過(guò)程中,肯定不可避免的會(huì)使用到數(shù)據(jù)庫(kù)以及SQL?語(yǔ)句,下面這篇文章主要給大家介紹了關(guān)于spring?boot項(xiàng)目實(shí)戰(zhàn)之實(shí)現(xiàn)與數(shù)據(jù)庫(kù)連接的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-05-05