OpenAI API Documentation
https://platform.openai.com/docs/models/overview
GPT 迭代過程
版本 | 釋出時間 | 訓練方案 | 引數量 | 是否開放介面 |
---|---|---|---|---|
GPT(GPT-1) | 2018 年 6 月 | 無監督學習 | 1.17 億 | 是 |
GPT-2 | 2019 年 2 月 | 多工學習 | 15 億 | 是 |
GPT-3 | 2020 年 5 月 | 海量引數 | 1,750 億 | 是 |
ChatGPT(GPT-3.5) | 2022 年 12 月 | 針對對話場景最佳化 | 1,750 億 | 是 |
GPT-4 | 2023 年 3 月 | 萬億引數 | 100萬億 | 否 |
模型
概述
OpenAI API 由具有不同功能和價位的多種模型提供支援。您還可以透過微調針對您的特定用例對我們的原始基礎模型進行有限的定製。
楷模 | 描述 |
---|---|
GPT-4
有限公測
|
一組在 GPT-3.5 上改進的模型,可以理解並生成自然語言或程式碼 |
GPT-3.5 | 一組在 GPT-3 上改進的模型,可以理解並生成自然語言或程式碼 |
DALL·E<
測試版
|
可以在給定自然語言提示的情況下生成和編輯影像的模型 |
Whisper
測試版
|
一種可以將音訊轉換為文字的模型 |
Embeddings | 一組可以將文字轉換為數字形式的模型 |
Moderation | 可以檢測文字是否敏感或不安全的微調模型 |
GPT-3 | 一組可以理解和生成自然語言的模型 |
Codex
棄用
|
一組可以理解和生成程式碼的模型,包括將自然語言翻譯成程式碼 |
訪問我們的研究人員模型索引,詳細瞭解我們的研究論文中介紹了哪些模型以及 InstructGPT 和 GPT-3.5 等模型系列之間的差異。
模型端點相容性
端點 | 型號名稱 | |
---|---|---|
/v1/chat/completions | gpt-4、gpt-4-0314、gpt-4-32k、gpt-4-32k-0314、gpt-3.5-turbo、gpt-3.5-turbo-0301 | |
/v1/completions | text-davinci-003、text-davinci-002、text-curie-001、text-babbage-001、text-ada-001 | |
/v1/edits | 文字-davinci-edit-001,code-davinci-edit-001 | |
/v1/audio/transcriptions | whisper-1 | |
/v1/audio/translations< | whisper-1 | |
/v1/fine-tunes | davinci, curie, babbage, ada | |
/v1/embeddings | text-embedding-ada-002, text-search-ada-doc-001 | |
/v1/moderations | text-moderation-stable, text-moderation-latest |
持續的模型升級
隨著 的釋出gpt-3.5-turbo
,我們的一些模型現在正在不斷更新。為了減少模型更改以意外方式影響我們使用者的可能性,我們還提供將在 3 個月內保持靜態的模型版本。隨著模型更新的新節奏,我們還讓人們能夠貢獻評估,以幫助我們針對不同的用例改進模型。如果您有興趣,請檢視OpenAI Evals儲存庫。
以下模型是將在指定日期棄用的臨時快照。如果您想使用最新的模型版本,請使用標準模型名稱,例如gpt-4
或gpt-3.5-turbo
。
型號名稱 | 棄用日期 | |
---|---|---|
gpt-3.5-turbo-0301 | 2023 年 6 月 1 日 | |
gpt-4-0314 | 2023 年 6 月 14 日 | |
gpt-4-32k-0314 | 2023 年 6 月 14 日 |
GPT-4
GPT-4 是一個大型多模態模型(今天接受文字輸入併發出文字輸出,將來會出現影像輸入),由於其更廣泛的常識和高階推理,它可以比我們以前的任何模型更準確地解決難題能力。與 GPT-4 一樣gpt-3.5-turbo
,GPT-4 針對聊天進行了最佳化,但也適用於使用聊天完成 API 的傳統完成任務。在我們的聊天指南中瞭解如何使用 GPT-4 。
最新款 | 描述 | 最大tokens | 訓練資料 |
---|---|---|---|
gpt-4 | 比任何 GPT-3.5 模型都更強大,能夠執行更復雜的任務,並針對聊天進行了最佳化。將使用我們最新的模型迭代進行更新。 | 8,192 個tokens | 截至 2021 年 9 月 |
gpt-4-0314 | 2023 年 3 月 14 日的快照gpt-4 。與 不同的是gpt-4 ,此模型不會收到更新,並且只會在 2023 年 6 月 14 日結束的三個月內提供支援。 |
8,192 個tokens | 截至 2021 年 9 月 |
gpt-4-32k | 與基本gpt-4 模式相同的功能,但上下文長度是其 4 倍。將使用我們最新的模型迭代進行更新。 |
32,768 個tokens | 截至 2021 年 9 月 |
gpt-4-32k-0314 | 2023 年 3 月 14 日的快照gpt-4-32 。與 不同的是gpt-4-32k ,此模型不會收到更新,並且只會在 2023 年 6 月 14 日結束的三個月內提供支援。 |
32,768 個tokens | 截至 2021 年 9 月 |
對於許多基本任務,GPT-4 和 GPT-3.5 模型之間的差異並不顯著。然而,在更復雜的推理情況下,GPT-4 比我們之前的任何模型都更有能力。
GPT-3.5
GPT-3.5 模型可以理解並生成自然語言或程式碼。我們在 GPT-3.5 系列中功能最強大且最具成本效益的模型gpt-3.5-turbo
已針對聊天進行了最佳化,但也適用於傳統的完成任務。
最新款 | 描述 | 最大tokens | 訓練資料 |
---|---|---|---|
gpt-3.5-turbo | 功能最強大的 GPT-3.5 模型,並針對聊天進行了最佳化,成本僅為text-davinci-003 . 將使用我們最新的模型迭代進行更新。 |
4,096 個tokens | 截至 2021 年 9 月 |
gpt-3.5-turbo-0301 | 2023 年 3 月 1 日的快照gpt-3.5-turbo 。與 不同的是gpt-3.5-turbo ,此模型不會收到更新,並且只會在 2023 年 6 月 1 日結束的三個月內提供支援。 |
4,096 個tokens | 截至 2021 年 9 月 |
text-davinci-003 | 可以比curie, babbage, 或 ada 模型更好的質量、更長的輸出和一致的指令遵循來完成任何語言任務。還支援在文字中插入補全。 | 4,097 個tokens | 截至 2021 年 6 月 |
text-davinci-002 | 類似的能力,text-davinci-003 但訓練有監督的微調而不是強化學習 |
4,097 個tokens | 截至 2021 年 6 月 |
code-davinci-002 | 針對程式碼完成任務進行了最佳化 | 8,001 個tokens | 截至 2021 年 6 月 |
我們建議使用gpt-3.5-turbo
其他 GPT-3.5 模型,因為它的成本較低。
特定功能模型
雖然新gpt-3.5-turbo
模型針對聊天進行了最佳化,但它非常適合傳統的完成任務。原始的 GPT-3.5 模型針對文字補全進行了最佳化。
我們用於建立嵌入和編輯文字的端點使用它們自己的一組專用模型。
找到合適的模型
進行試驗gpt-3.5-turbo
是瞭解 API 功能的好方法。在您瞭解要實現的目標之後,您可以繼續使用gpt-3.5-turbo
或使用其他模型並嘗試圍繞其功能進行最佳化。
您可以使用GPT 比較工具,讓您並排執行不同的模型來比較輸出、設定和響應時間,然後將資料下載到 Excel 電子表格中。
DALL·E
DALL·E 是一個人工智慧系統,可以根據自然語言的描述建立逼真的影像和藝術作品。我們目前支援在提示的情況下建立具有特定大小的新影像、編輯現有影像或建立使用者提供的影像的變體的能力。
透過我們的 API 提供的當前 DALL·E 模型是 DALL·E 的第 2 次迭代,具有比原始模型更逼真、更準確且解析度高 4 倍的影像。您可以透過我們的實驗室介面或API進行試用。
Whisper
Whisper 是一種通用的語音識別模型。它在不同音訊的大型資料集上進行訓練,也是一個多工模型,可以執行多語言語音識別以及語音翻譯和語言識別。Whisper v2-large 模型目前可透過我們的 API 使用whisper-1
模型名稱獲得。
目前, Whisper 的開源版本與透過我們的 API 提供的版本之間沒有區別。然而,透過我們的 API,我們提供了一個最佳化的推理過程,這使得透過我們的 API 執行 Whisper 比透過其他方式執行要快得多。有關 Whisper 的更多技術細節,您可以閱讀論文。
embedding
嵌入是文字的數字表示,可用於衡量兩段文字之間的相關性。我們的第二代嵌入模型text-embedding-ada-002
旨在以一小部分成本取代之前的 16 種第一代嵌入模型。嵌入可用於搜尋、聚類、推薦、異常檢測和分類任務。您可以在公告部落格文章中閱讀有關我們最新嵌入模型的更多資訊。
moderation
稽核模型旨在檢查內容是否符合 OpenAI 的使用政策。這些模型提供了查詢以下類別內容的分類功能:仇恨、仇恨/威脅、自殘、性、性/未成年人、暴力和暴力/圖片。您可以在我們的稽核指南中找到更多資訊。
稽核模型接受任意大小的輸入,該輸入會自動分解以修復模型特定的上下文視窗。
模型 | 描述 |
---|---|
text-moderation-latest | 最有能力的稽核模型。精度會比穩定模型略高 |
text-moderation-stable | 幾乎與最新型號一樣強大,但稍舊一些。 |
GPT-3
GPT-3 模型可以理解和生成自然語言。這些模型被更強大的 GPT-3.5 代模型所取代。但是,原始 GPT-3 基本模型(davinci
、curie
、ada
和babbage
)是當前唯一可用於微調的模型。
最新款 | 描述 | 最大tokens | 訓練資料 |
---|---|---|---|
text-curie-001 | 非常有能力,比達芬奇更快,成本更低。 | 2,049 個tokens | 截至 2019 年 10 月 |
text-babbage-001 | 能夠執行簡單的任務,速度非常快,成本更低。 | 2,049 個tokens | 截至 2019 年 10 月 |
text-ada-001 | 能夠執行非常簡單的任務,通常是 GPT-3 系列中最快的型號,而且成本最低。 | 2,049 個tokens | 截至 2019 年 10 月 |
davinci | 功能最強大的 GPT-3 模型。可以完成其他模型可以完成的任何任務,而且通常質量更高。 | 2,049 個tokens | 截至 2019 年 10 月 |
curie | 非常有能力,但比達芬奇更快,成本更低。 | 2,049 個tokens | 截至 2019 年 10 月 |
babbage | 能夠執行簡單的任務,速度非常快,成本更低。 | 2,049 個tokens | 截至 2019 年 10 月 |
ada | 能夠執行非常簡單的任務,通常是 GPT-3 系列中最快的型號,而且成本最低。 | 2,049 個tokens | 截至 2019 年 10 月 |
Codex
Codex 模型現已棄用。他們是我們 GPT-3 模型的後代,可以理解和生成程式碼。他們的訓練資料包含自然語言和來自 GitHub 的數十億行公共程式碼。瞭解更多。
他們最擅長 Python,精通 JavaScript、Go、Perl、PHP、Ruby、Swift、TypeScript、SQL 甚至 Shell 等十幾種語言。
以下 Codex 模型現已棄用:
最新款 | 描述 | 最大tokens | 訓練資料 |
---|---|---|---|
code-davinci-002 | 功能最強大的 Codex 型號。特別擅長將自然語言翻譯成程式碼。除了補全程式碼,還支援在程式碼中插入補全。 | 8,001 個tokens | 截至 2021 年 6 月 |
code-davinci-001 | 早期版本code-davinci-002 |
8,001 個tokens | 截至 2021 年 6 月 |
code-cushman-002 | 幾乎與 Davinci Codex 一樣強大,但速度稍快。這種速度優勢可能使其成為實時應用程式的首選。 | 最多 2,048 個tokens | |
code-cushman-001 | 早期版本code-cushman-002 |
最多 2,048 個tokens |
API
介紹下openai api的介面入參,並說明每個引數的用法
OpenAI API的介面入參因不同的任務型別而異,但是大多數任務都需要以下幾個通用引數:
model: 模型名稱,表示要使用的模型。例如:davinci, curie, ada等。每個模型的能力和用途不同,可以在OpenAI API的官方文件中檢視各個模型的介紹和用途。
prompt: 輸入文字,即需要進行自然語言處理的文字。不同任務可能對輸入文字的格式有要求,例如:文字長度、標點符號等。
temperature: 生成文字的隨機性程度。值越大,生成的文字就越隨機,但同時也越不可控。通常情況下,這個引數的取值範圍為0-1之間的浮點數,建議取值在0.5左右。
max_tokens: 生成文字的長度,即最大的生成文字的長度。這個引數通常用來控制生成的文字的長度,避免生成過於冗長的文字。
stop: 停止詞,用來控制生成的文字是否停止在某個指定的詞或短語處。當生成的文字中包含了指定的停止詞或短語時,生成文字的過程就會停止。這個引數通常用來控制生成的文字的內容和方向。
n: 生成文字的數量,即需要生成的文字的數量。這個引數通常用來控制生成的文字的多樣性和數量。
best_of: 最佳生成文字數量,即從多次生成文字中選取最佳的文字數量。這個引數通常用來控制生成文字的質量和可讀性。
frequency_penalty: 頻率懲罰,用來控制重複的單詞和短語在生成文字中的出現頻率。值越大,生成文字中出現重複單詞和短語的機率越小。
presence_penalty: 存在懲罰,用來控制生成文字中出現新單詞和短語的機率。值越大,生成文字中出現新單詞和短語的機率越大。
best_of: 最佳文字數量,即從多次生成的文字中選取最佳的文字數量。這個引數通常用來控制生成文字的質量和可讀性。
logprobs: 是否返回每個單詞或短語的機率值。當這個引數設定為true時,生成文字中每個單詞或短語的機率值會被返回。
echo: 是否返回輸入文字。當這個引數設定為true時,輸入文字也會被返回。
介紹下openai api的介面返回值,並說明用法
OpenAI API的介面返回值因不同的任務和模型而異。一般而言,返回值包括以下幾個欄位:
- id: 該請求的唯一識別符號。
- object: 返回值的型別,通常為 “text_completion”,表示文字生成任務。
- created: 請求的建立時間。
- model: 使用的模型的識別符號。
- choices: 一個包含所有可能輸出結果的列表,每個結果包括以下欄位:
- text: 模型生成的文字。
- index: 輸出結果的排序位置。
- logprobs: 對於每個token,給出其機率分佈及其對數機率。
- finish_reason: 完成原因。可能的值包括 “stop”,表示生成的文字達到了指定的長度或終止標記,或者 “max_turns”,表示已達到最大的文字生成輪數。
- prompt: 模型使用的輸入提示。
- created: 輸出結果的建立時間。 開發者可以根據自己的需求,使用返回值中的 text 欄位獲取模型生成的文字。同時,還可以使用 logprobs 欄位獲取模型對每個token的機率分佈,這對於某些應用場景非常有用。
基本引數
- model: 要使用的模型的 ID,訪問 OpenAI Docs Models 頁面可以檢視全部可用的模型
- prompt: 生成結果的提示文字,即你想要得到的內容描述
- max_tokens: 生成結果時的最大 tokens 數,不能超過模型的上下文長度,可以把結果內容複製到 OpenAI Tokenizer 來了解 tokens 的計數方式
- temperature: 控制結果的隨機性,如果希望結果更有創意可以嘗試 0.9,或者希望有固定結果可以嘗試 0.0
- top_p: 一個可用於代替 temperature 的引數,對應機器學習中 nucleus sampling,如果設定 0.1 意味著只考慮構成前 10% 機率質量的 tokens
temperature可以簡單得將其理解為“熵”,控制輸出的混亂程度(隨機性),而top-p可以簡單將其理解為候選詞列表大小,控制模型所能看到的候選詞的多少。實際使用中大家要多嘗試不同的值,從而獲得最佳輸出效果。
- frequency_penalty: [控制字元的重複度] -2.0 ~ 2.0 之間的數字,正值會根據新 tokens 在文字中的現有頻率對其進行懲罰,從而降低模型逐字重複同一行的可能性(以恐怖故事為例)
- = -2.0:當早上黎明時,我發現我家現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在現在(頻率最高字元是 “現”,佔比 44.79%)
- = -1.0:他總是在清晨漫步在一片森林裡,每次漫遊每次每次遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊遊(頻率最高字元是 “遊”,佔比 57.69%)
- = 0.0:當一道陰森的風吹過早晨的小餐館時,一個被嚇得發抖的人突然出現在門口,他的嘴唇上掛滿血跡,害怕的店主決定給他一份早餐,卻發現他的早餐裡滿是血漬。(頻率最高字元是 “的”,佔比 8.45%)
- = 1.0:一個熟睡的女孩被一陣清冷的風吹得不由自主地醒了,她看到了早上還未到來的黑暗,周圍只有像訴說厄運般狂風呼嘯而過。(頻率最高字元是 “的”,佔比 5.45%)
- = 2.0:每天早上,他都會在露臺上坐著吃早餐。柔和的夕陽照耀下,一切看起來安詳寂靜。但是有一天,當他準備端起早食的時候發現衚衕裡清冷的風撲進了他的意識中並帶來了不安全感…… (頻率最高字元是 “的”,佔比 4.94%)
- presence_penalty: [控制主題的重複度] -2.0 ~ 2.0 之間的數字,正值會根據到目前為止是否出現在文字中來懲罰新 tokens,從而增加模型談論新主題的可能性(以雲課堂的廣告文案為例)
- -2.0:家長們,你們是否為家裡的孩子學業的發展而發愁?擔心他們的學習沒有取得有效的提高?那麼,你們可以放心,可以嘗試雲課堂!它是一個為從幼兒園到高中的學生提供的一個網路平臺,可以有效的幫助孩子們提高學習效率,提升學習成績,幫助他們在學校表現出色!讓孩子們的學業發展更加順利,家長們趕緊加入吧!(抓住一個主題使勁談論)
- -1.0:家長們,你們是否還在為孩子的學習成績擔憂?雲課堂給你們帶來了一個絕佳的解決方案!我們為孩子提供了專業的學習指導,從幼兒園到高中,我們都能幫助孩子們在學校取得更好的成績!讓孩子們在學習中更輕鬆,更有成就感!加入我們,讓孩子們擁有更好的學習體驗!(緊密圍繞一個主題談論)
- 0.0:家長們,你們是否擔心孩子在學校表現不佳?雲課堂將幫助您的孩子更好地學習!雲課堂是一個網路平臺,為從幼兒園到高中的學生提供了全面的學習資源,讓他們可以在學校表現出色!讓您的孩子更加聰明,讓他們在學校取得更好的成績,快來雲課堂吧!(相對圍繞一個主題談論)
- 1.0:家長們,你們的孩子夢想成為最優秀的學生嗎?雲課堂就是你們的答案!它不僅可以幫助孩子在學校表現出色,還能夠提供專業教育資源,助力孩子取得更好的成績!讓你們的孩子一路走向成功,就用雲課堂!(避免一個主題談論的太多)
- 2.0:家長們,您有沒有想過,讓孩子在學校表現出色可不是一件容易的事?沒關係!我們為您提供了一個優質的網路平臺——雲課堂!無論您的孩子是小學生、初中生還是高中生,都能夠透過雲課堂找到最合適的學習方法,幫助他們在學校取得優異成績。快來體驗吧!(最大程度避免談論重複的主題)
- stop: 最大長度為 4 的字串列表,一旦生成的 tokens 包含其中的內容,將停止生成並返回結果
//private final String path_base="https://api.openai.com/v1";
/**
* https://platform.openai.com/docs/api-reference/
* <p>
* models 列出 API 中可用的各種模型,並提供有關每個模型的基本資訊,例如所有者和可用性。 * https://api.openai.com/v1/models
* completions 給定提示,模型將返回一個或多個預測完成,還可以返回每個位置的替代令牌的機率。 * https://api.openai.com/v1/completions
* edits 給定提示和指令,模型將返回提示的編輯版本。 * https://api.openai.com/v1/edits
* images/generations 建立映像,建立給定提示的影像。給定提示和/或輸入影像,模型將生成一個新影像。* https://api.openai.com/v1/images/generations
* images/edits 建立影像編輯,在給定原始影像和提示的情況下建立編輯或擴充套件的影像。 * https://api.openai.com/v1/images/edits
* images/variations 建立影像變體,建立給定影像的變體。 * https://api.openai.com/v1/images/variations
* Embeddings 獲取給定輸入的向量表示形式,機器學習模型和演算法可以輕鬆使用該表示形式。 * https://api.openai.com/v1/embeddings
* files 返回屬於使用者組織的檔案列表。檔案用於上傳可與微調等功能一起使用的文件。 * https://api.openai.com/v1/files
* fine-tunes 管理微調作業,以根據特定訓練資料定製模型。 * https://api.openai.com/v1/fine-tunes
* moderations 給定輸入文字,如果模型將其歸類為違反 OpenAI 的內容策略,則輸出。 * https://api.openai.com/v1/moderations
* engines 提供對 API 中可用的各種引擎的訪問。 * https://api.openai.com/v1/engines
Create completion
(/docs/api-reference/completions/create) post https://api.openai.com/v1/completions Creates a completion for the provided prompt and parameters
Request body
引數名 | 型別 | 必填 | 預設值 | 說明 |
---|---|---|---|---|
model | string | Required | ||
prompt | string or array | Optional | Defaults to </endoftext/> | |
suffix | string | Optional | Defaults to null | |
max_tokens | integer | Optional | Defaults to 16 | |
temperature | number | Optional | Defaults to 1 | |
top_p | number | Optional | Defaults to 1 | |
n | integer | Optional | Defaults to 1 | |
stream | boolean | Optional | Defaults to false | |
logprobs | integer | Optional | Defaults to null | |
echo | boolean | Optional | Defaults to false | |
stop | string or array | Optional | Defaults to null | |
presence_penalty | number | Optional | Defaults to 0 | |
frequency_penalty | number | Optional | Defaults to 0 | |
best_of | integer | Optional | Defaults to 1 | |
logit_bias | map | Optional | Defaults to null | |
user | string | Optional |
https://platform.openai.com/docs/api-reference/completions/
model
- ID of the model to use. You can use the List models API to see all of your available models, or see our Model overview for descriptions of them.
prompt
- The prompt(s) to generate completions for, encoded as a string, array of strings, array of tokens, or array of token arrays.
- Note that <|endoftext|> is the document separator that the model sees during training, so if a prompt is not specified the model will generate as if from the beginning of a new document.
suffix
- The suffix that comes after a completion of inserted text.
max_tokens
- The maximum number of tokens to generate in the completion.
- The token count of your prompt plus
max_tokens
cannot exceed the model’s context length. Most models have a context length of 2048 tokens (except for the newest models, which support 4096).
temperature
- What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.
- We generally recommend altering this or
top_p
but not both.
top_p
- An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.
- We generally recommend altering this or
temperature
but not both.
n
- How many completions to generate for each prompt.
- Note: Because this parameter generates many completions, it can quickly consume your token quota. Use carefully and ensure that you have reasonable settings for
max_tokens
andstop
.
stream
- Whether to stream back partial progress. If set, tokens will be sent as data-only server-sent events as they become available, with the stream terminated by a
data: [DONE]
message.
- Include the log probabilities on the
logprobs
most likely tokens, as well the chosen tokens. For example, iflogprobs
is 5, the API will return a list of the 5 most likely tokens. The API will always return thelogprob
of the sampled token, so there may be up tologprobs+1
elements in the response.- The maximum value for
logprobs
is 5. If you need more than this, please contact us through our Help center and describe your use case.
echo
- Echo back the prompt in addition to the completion
stop
- Up to 4 sequences where the API will stop generating further tokens. The returned text will not contain the stop sequence.
presence_penalty
- Number between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far, increasing the model’s likelihood to talk about new topics.
- See more information about frequency and presence penalties.
frequency_penalty
- Number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model’s likelihood to repeat the same line verbatim.
- See more information about frequency and presence penalties.
best_of
- Generates
best_of
completions server-side and returns the “best” (the one with the highest log probability per token). Results cannot be streamed.- When used with
n
,best_of
controls the number of candidate completions andn
specifies how many to return –best_of
must be greater thann
.- Note: Because this parameter generates many completions, it can quickly consume your token quota. Use carefully and ensure that you have reasonable settings for
max_tokens
andstop
.
logit_bias
- Modify the likelihood of specified tokens appearing in the completion.
- Accepts a json object that maps tokens (specified by their token ID in the GPT tokenizer) to an associated bias value from -100 to 100. You can use this tokenizer tool (which works for both GPT-2 and GPT-3) to convert text to token IDs. Mathematically, the bias is added to the logits generated by the model prior to sampling. The exact effect will vary per model, but values between -1 and 1 should decrease or increase likelihood of selection; values like -100 or 100 should result in a ban or exclusive selection of the relevant token.
- As an example, you can pass
{"50256": -100}
to prevent the <|endoftext|> token from being generated.
user
- A unique identifier representing your end-user, which can help OpenAI to monitor and detect abuse. Learn more.