https://beta.openai.com/docs/api-reference/parameter-details
Parameter details
Frequency and presence penalties
The frequency and presence penalties found in the Completions API can be used to reduce the likelihood of sampling repetitive sequences of tokens. They work by directly modifying the logits (un-normalized log-probabilities) with an additive contribution.
Completions API에 있는 빈도 및 존재 여부 패널티를 사용하여 반복적인 토큰 시퀀스를 샘플링할 가능성을 줄일 수 있습니다. 추가 기여로 로짓(정규화되지 않은 로그 확률)을 직접 수정하여 작동합니다.
mu[j] -> mu[j] - c[j] * alpha_frequency - float(c[j] > 0) * alpha_presence
Where:
- mu[j] is the logits of the j-th token
- mu[j]는 j번째 토큰의 로짓입니다.
- c[j] is how often that token was sampled prior to the current position
- c[j]는 현재 위치 이전에 해당 토큰이 샘플링된 빈도입니다.
- float(c[j] > 0) is 1 if c[j] > 0 and 0 otherwise
- float(c[j] > 0)은 c[j] > 0이면 1이고 그렇지 않으면 0입니다.
- alpha_frequency is the frequency penalty coefficient
- alpha_frequency는 빈도 페널티 계수입니다.
- alpha_presence is the presence penalty coefficient
- alpha_presence는 존재 페널티 계수입니다.
As we can see, the presence penalty is a one-off additive contribution that applies to all tokens that have been sampled at least once and the frequency penalty is a contribution that is proportional to how often a particular token has already been sampled.
보시다시피 존재 패널티는 적어도 한 번 샘플링된 모든 토큰에 적용되는 일회성 추가 기여이며 빈도 페널티는 특정 토큰이 이미 샘플링된 빈도에 비례하는 기여입니다.
Reasonable values for the penalty coefficients are around 0.1 to 1 if the aim is to just reduce repetitive samples somewhat. If the aim is to strongly suppress repetition, then one can increase the coefficients up to 2, but this can noticeably degrade the quality of samples. Negative values can be used to increase the likelihood of repetition.
페널티 계수의 합리적인 값은 반복적인 샘플을 어느 정도 줄이는 것이 목표인 경우 약 0.1에서 1 사이입니다. 반복을 강력하게 억제하는 것이 목적이라면 계수를 최대 2까지 높일 수 있지만 이렇게 하면 샘플의 품질이 눈에 띄게 저하될 수 있습니다. 음수 값을 사용하여 반복 가능성을 높일 수 있습니다.
'Open AI > API REFERENCE' 카테고리의 다른 글
Audio - openai.Audio.transcribe(), openai.Audio.translate() (0) | 2023.03.07 |
---|---|
Chat - Create chat completion (ChatGPT API usage) (0) | 2023.03.06 |
Engines - openai.Engine.list(), (0) | 2023.01.17 |
Moderations - openai.Moderation.create() (0) | 2023.01.17 |
Fine-tunes : openai.FineTune.create(), list(), retrieve(), cancel(), list_events(), delete() (0) | 2023.01.17 |
Files - openai.File.list(), create(), delete(), retrieve(), download() (0) | 2023.01.17 |
Embeddings - openai.Embedding.create() (0) | 2023.01.17 |
Images - openai.Image.create(), openai.Image.create_edit(), openai.Image.create_variation() (0) | 2023.01.17 |
Edits - openai.Edit.create() (0) | 2023.01.17 |
Completions - openai.Completion.create() (0) | 2023.01.17 |