Skip to content
This repository was archived by the owner on Feb 11, 2025. It is now read-only.

Commit 3fa21da

Browse files
author
deep-learning-dynamo
committed
moved "v1" into baseUrl
1 parent c746447 commit 3fa21da

File tree

2 files changed

+16
-16
lines changed

2 files changed

+16
-16
lines changed

src/main/java/dev/ai4j/openai4j/OpenAiApi.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,19 @@
1515

1616
interface OpenAiApi {
1717

18-
@POST("v1/completions")
18+
@POST("completions")
1919
@Headers("Content-Type: application/json")
2020
Call<CompletionResponse> completions(@Body CompletionRequest request);
2121

22-
@POST("v1/chat/completions")
22+
@POST("chat/completions")
2323
@Headers("Content-Type: application/json")
2424
Call<ChatCompletionResponse> chatCompletions(@Body ChatCompletionRequest request);
2525

26-
@POST("v1/embeddings")
26+
@POST("embeddings")
2727
@Headers("Content-Type: application/json")
2828
Call<EmbeddingResponse> embeddings(@Body EmbeddingRequest request);
2929

30-
@POST("v1/moderations")
30+
@POST("moderations")
3131
@Headers("Content-Type: application/json")
3232
Call<ModerationResponse> moderations(@Body ModerationRequest request);
3333
}

src/main/java/dev/ai4j/openai4j/OpenAiClient.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public class OpenAiClient {
2828

2929
private static final Logger log = LoggerFactory.getLogger(OpenAiClient.class);
3030

31-
private final String url;
31+
private final String baseUrl;
3232
private final OkHttpClient okHttpClient;
3333
private final OpenAiApi openAiApi;
3434
private final boolean logStreamingResponses;
@@ -39,7 +39,7 @@ public OpenAiClient(String apiKey) {
3939

4040
private OpenAiClient(Builder serviceBuilder) {
4141

42-
this.url = serviceBuilder.url;
42+
this.baseUrl = serviceBuilder.baseUrl;
4343

4444
OkHttpClient.Builder okHttpClientBuilder = new OkHttpClient.Builder()
4545
.addInterceptor(new ApiKeyInsertingInterceptor(serviceBuilder.apiKey))
@@ -63,7 +63,7 @@ private OpenAiClient(Builder serviceBuilder) {
6363
this.okHttpClient = okHttpClientBuilder.build();
6464

6565
Retrofit retrofit = new Retrofit.Builder()
66-
.baseUrl(serviceBuilder.url)
66+
.baseUrl(serviceBuilder.baseUrl)
6767
.client(okHttpClient)
6868
.addConverterFactory(GsonConverterFactory.create(GSON))
6969
.build();
@@ -93,7 +93,7 @@ public static Builder builder() {
9393

9494
public static class Builder {
9595

96-
private String url = "https://api.openai.com/";
96+
private String baseUrl = "https://api.openai.com/v1/";
9797
private String apiKey;
9898
private Duration callTimeout = Duration.ofSeconds(60);
9999
private Duration connectTimeout = Duration.ofSeconds(60);
@@ -107,11 +107,11 @@ public static class Builder {
107107
private Builder() {
108108
}
109109

110-
public Builder url(String url) {
111-
if (url == null || url.trim().isEmpty()) {
112-
throw new IllegalArgumentException("URL cannot be null or empty");
110+
public Builder baseUrl(String baseUrl) {
111+
if (baseUrl == null || baseUrl.trim().isEmpty()) {
112+
throw new IllegalArgumentException("baseUrl cannot be null or empty");
113113
}
114-
this.url = url.endsWith("/") ? url : url + "/";
114+
this.baseUrl = baseUrl.endsWith("/") ? baseUrl : baseUrl + "/";
115115
return this;
116116
}
117117

@@ -212,7 +212,7 @@ public SyncOrAsyncOrStreaming<CompletionResponse> completion(CompletionRequest r
212212
openAiApi.completions(CompletionRequest.builder().from(request).stream(null).build()),
213213
(r) -> r,
214214
okHttpClient,
215-
url + "v1/completions",
215+
baseUrl + "completions",
216216
() -> CompletionRequest.builder().from(request).stream(true).build(),
217217
CompletionResponse.class,
218218
(r) -> r,
@@ -231,7 +231,7 @@ public SyncOrAsyncOrStreaming<String> completion(String prompt) {
231231
openAiApi.completions(CompletionRequest.builder().from(request).stream(null).build()),
232232
CompletionResponse::text,
233233
okHttpClient,
234-
url + "v1/completions",
234+
baseUrl + "completions",
235235
() -> CompletionRequest.builder().from(request).stream(true).build(),
236236
CompletionResponse.class,
237237
CompletionResponse::text,
@@ -245,7 +245,7 @@ public SyncOrAsyncOrStreaming<ChatCompletionResponse> chatCompletion(ChatComplet
245245
openAiApi.chatCompletions(ChatCompletionRequest.builder().from(request).stream(null).build()),
246246
(r) -> r,
247247
okHttpClient,
248-
url + "v1/chat/completions",
248+
baseUrl + "chat/completions",
249249
() -> ChatCompletionRequest.builder().from(request).stream(true).build(),
250250
ChatCompletionResponse.class,
251251
(r) -> r,
@@ -264,7 +264,7 @@ public SyncOrAsyncOrStreaming<String> chatCompletion(String userMessage) {
264264
openAiApi.chatCompletions(ChatCompletionRequest.builder().from(request).stream(null).build()),
265265
ChatCompletionResponse::content,
266266
okHttpClient,
267-
url + "v1/chat/completions",
267+
baseUrl + "chat/completions",
268268
() -> ChatCompletionRequest.builder().from(request).stream(true).build(),
269269
ChatCompletionResponse.class,
270270
(r) -> r.choices().get(0).delta().content(),

0 commit comments

Comments
 (0)