public class OpenAiService
extends java.lang.Object
| Constructor and Description |
|---|
OpenAiService(OpenAiApi api,
okhttp3.OkHttpClient client)
Creates a new OpenAiService that wraps OpenAiApi.
|
OpenAiService(java.lang.String token)
Creates a new OpenAiService that wraps OpenAiApi
|
OpenAiService(java.lang.String token,
java.time.Duration timeout)
Creates a new OpenAiService that wraps OpenAiApi
|
| Modifier and Type | Method and Description |
|---|---|
void |
addStreamChatCompletionListener(StreamChatCompletionListener listener)
replace old one if exist
|
static OpenAiApi |
buildApi(java.lang.String token,
java.time.Duration timeout) |
FineTune |
cancelFineTune(java.lang.String fineTuneId) |
AudioResponse |
createAudioTranscription(CreateAudioTranscriptionRequest request)
whisper-1
|
AudioResponse |
createAudioTranslation(CreateAudioTranslationRequest request)
whisper-1
|
ChatCompletion |
createChatCompletion(CreateChatCompletionRequest request)
gpt-4, gpt-4-0314, gpt-4-32k, gpt-4-32k-0314, gpt-3.5-turbo, gpt-3.5-turbo-0301
|
Completion |
createCompletion(CreateCompletionRequest request)
text-davinci-003, text-davinci-002, text-curie-001, text-babbage-001,
text-ada-001, davinci, curie, babbage, ada
|
Edit |
createEdit(CreateEditRequest request)
text-davinci-edit-001, code-davinci-edit-001
|
CreateEmbeddingResponse |
createEmbeddings(CreateEmbeddingRequest request)
text-embedding-ada-002, text-search-ada-doc-001
|
FineTune |
createFineTune(CreateFineTuneRequest request) |
ImageResponse |
createImage(CreateImageRequest request) |
ImageResponse |
createImageEdit(CreateImageEditRequest request) |
ImageResponse |
createImageVariation(CreateImageVariationRequest request) |
CreateModerationResponse |
createModeration(CreateModerationRequest request)
text-moderation-stable, text-moderation-latest
|
void |
createSteamChatCompletion(java.lang.String requestId,
CreateChatCompletionRequest request)
create chat completion by stream
|
static okhttp3.OkHttpClient |
defaultClient(java.lang.String token,
java.time.Duration timeout) |
static com.fasterxml.jackson.databind.ObjectMapper |
defaultObjectMapper() |
static retrofit2.Retrofit |
defaultRetrofit(okhttp3.OkHttpClient client,
com.fasterxml.jackson.databind.ObjectMapper mapper) |
DeleteResponse |
deleteFile(java.lang.String fileId) |
DeleteResponse |
deleteFineTune(java.lang.String model,
java.lang.String fineTuneId) |
static <T> T |
execute(io.reactivex.rxjava3.core.Single<T> apiCall)
Calls the Open AI api, returns the response, and parses error messages if the request fails
|
Model |
getModel(java.lang.String modelId) |
java.util.Set<StreamChatCompletionListener> |
getStreamChatCompletionListeners() |
java.util.List<File> |
listFiles() |
java.util.List<FineTuneEvent> |
listFineTuneEvents(java.lang.String fineTuneId) |
java.util.List<FineTune> |
listFineTunes() |
java.util.List<Model> |
listModels() |
void |
printStreamChatCompletionListeners() |
void |
removeStreamChatCompletionListener(java.lang.String listenerId) |
File |
retrieveFile(java.lang.String fileId) |
RetrieveFileContentResponse |
retrieveFileContent(java.lang.String fileId)
TODO This is not for free accounts
|
FineTune |
retrieveFineTune(java.lang.String fineTuneId) |
File |
uploadFile(java.lang.String filepath,
java.lang.String purpose) |
public OpenAiService(java.lang.String token)
token - OpenAi token string "sk-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"public OpenAiService(java.lang.String token,
java.time.Duration timeout)
token - OpenAi token string "sk-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"timeout - http read timeout, Duration.ZERO means no timeoutpublic OpenAiService(OpenAiApi api, okhttp3.OkHttpClient client)
api - OpenAiApi instance to use for all methodspublic void addStreamChatCompletionListener(StreamChatCompletionListener listener)
listener - Stream listenerpublic void removeStreamChatCompletionListener(java.lang.String listenerId)
public java.util.Set<StreamChatCompletionListener> getStreamChatCompletionListeners()
public void printStreamChatCompletionListeners()
public static <T> T execute(io.reactivex.rxjava3.core.Single<T> apiCall)
public static OpenAiApi buildApi(java.lang.String token, java.time.Duration timeout)
public static com.fasterxml.jackson.databind.ObjectMapper defaultObjectMapper()
public static okhttp3.OkHttpClient defaultClient(java.lang.String token,
java.time.Duration timeout)
public static retrofit2.Retrofit defaultRetrofit(okhttp3.OkHttpClient client,
com.fasterxml.jackson.databind.ObjectMapper mapper)
public java.util.List<Model> listModels()
public Model getModel(java.lang.String modelId)
public Completion createCompletion(CreateCompletionRequest request)
request - public ChatCompletion createChatCompletion(CreateChatCompletionRequest request)
request - create chat completion requestpublic void createSteamChatCompletion(java.lang.String requestId,
CreateChatCompletionRequest request)
requestId - request ID, every observer is uniquerequest - detail of requestpublic Edit createEdit(CreateEditRequest request)
request - create edit requestpublic ImageResponse createImage(CreateImageRequest request)
public ImageResponse createImageEdit(CreateImageEditRequest request)
public ImageResponse createImageVariation(CreateImageVariationRequest request)
public CreateEmbeddingResponse createEmbeddings(CreateEmbeddingRequest request)
request - public AudioResponse createAudioTranscription(CreateAudioTranscriptionRequest request)
TODO only support mp3 so far
request - public AudioResponse createAudioTranslation(CreateAudioTranslationRequest request)
TODO only support mp3 so far
request - public java.util.List<File> listFiles()
public File uploadFile(java.lang.String filepath, java.lang.String purpose)
public DeleteResponse deleteFile(java.lang.String fileId)
public File retrieveFile(java.lang.String fileId)
public RetrieveFileContentResponse retrieveFileContent(java.lang.String fileId)
fileId - public FineTune createFineTune(CreateFineTuneRequest request)
public java.util.List<FineTune> listFineTunes()
public FineTune retrieveFineTune(java.lang.String fineTuneId)
public FineTune cancelFineTune(java.lang.String fineTuneId)
public java.util.List<FineTuneEvent> listFineTuneEvents(java.lang.String fineTuneId)
public DeleteResponse deleteFineTune(java.lang.String model, java.lang.String fineTuneId)
public CreateModerationResponse createModeration(CreateModerationRequest request)
request - Copyright © 2023. All Rights Reserved.