Skip to content

Commit b1a3e62

Browse files
committed
[FineTuning] Support fetch job content
1 parent 3f93dd3 commit b1a3e62

6 files changed

Lines changed: 42 additions & 1 deletion

File tree

src/main/java/org/devlive/sdk/openai/DefaultApi.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -218,4 +218,11 @@ Single<FineTuningResponse> fetchCreateFineTuningJob(@Url String url,
218218
*/
219219
@GET
220220
Single<FineTuningResponse> fetchFineTuningJobEvents(@Url String url);
221+
222+
/**
223+
* Get info about a fine-tuning job.
224+
* 获取有关微调作业的信息。
225+
*/
226+
@GET
227+
Single<FineTuningEntity> fetchFineTuningJobContent(@Url String url);
221228
}

src/main/java/org/devlive/sdk/openai/DefaultClient.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,13 @@ public FineTuningResponse fineTuningJobEvents(String jobId)
233233
.blockingGet();
234234
}
235235

236+
public FineTuningEntity fineTuningJobContent(String jobId)
237+
{
238+
String url = String.format(ProviderUtils.getUrl(provider, UrlModel.FETCH_FINE_TUNING_JOBS_CONTENT), jobId);
239+
return this.api.fetchFineTuningJobContent(url)
240+
.blockingGet();
241+
}
242+
236243
private ObjectMapper createObjectMapper()
237244
{
238245
ObjectMapper objectMapper = new ObjectMapper();

src/main/java/org/devlive/sdk/openai/entity/FineTuningEntity.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,10 @@ public class FineTuningEntity
5757
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
5858
private String createTime;
5959

60+
@JsonProperty(value = "finished_at")
61+
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
62+
private String finishTime;
63+
6064
@JsonProperty(value = "level")
6165
private String level;
6266

@@ -69,6 +73,21 @@ public class FineTuningEntity
6973
@JsonProperty(value = "type")
7074
private String type;
7175

76+
@JsonProperty(value = "fine_tuned_model")
77+
private String tunedModel;
78+
79+
@JsonProperty(value = "organization_id")
80+
private String organizationId;
81+
82+
@JsonProperty(value = "status")
83+
private String status;
84+
85+
@JsonProperty(value = "validation_file")
86+
private String validationFile;
87+
88+
@JsonProperty(value = "trained_tokens")
89+
private Long trainedTokens;
90+
7291
private FineTuningEntity(FineTuningEntityBuilder builder)
7392
{
7493
if (builder.limit == null) {

src/main/java/org/devlive/sdk/openai/model/UrlModel.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,6 @@ public enum UrlModel
1717
FETCH_EDITS,
1818
FETCH_FILES,
1919
FETCH_FINE_TUNING_JOBS,
20-
FETCH_FINE_TUNING_JOBS_EVENTS
20+
FETCH_FINE_TUNING_JOBS_EVENTS,
21+
FETCH_FINE_TUNING_JOBS_CONTENT
2122
}

src/main/java/org/devlive/sdk/openai/utils/ProviderUtils.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ public class ProviderUtils
2929
DEFAULT_PROVIDER.put(UrlModel.FETCH_FILES, "v1/files");
3030
DEFAULT_PROVIDER.put(UrlModel.FETCH_FINE_TUNING_JOBS, "v1/fine_tuning/jobs");
3131
DEFAULT_PROVIDER.put(UrlModel.FETCH_FINE_TUNING_JOBS_EVENTS, "v1/fine_tuning/jobs/%s/events");
32+
DEFAULT_PROVIDER.put(UrlModel.FETCH_FINE_TUNING_JOBS_CONTENT, "v1/fine_tuning/jobs/%s");
3233

3334
AZURE_PROVIDER.put(UrlModel.FETCH_COMPLETIONS, "completions");
3435
AZURE_PROVIDER.put(UrlModel.FETCH_CHAT_COMPLETIONS, "chat/completions");

src/test/java/org/devlive/sdk/openai/FineTuningTest.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,4 +38,10 @@ public void testFineTuningJobEvents()
3838
{
3939
Assert.assertThrows(RequestException.class, () -> client.fineTuningJobEvents("ftjob-abc123"));
4040
}
41+
42+
@Test
43+
public void testFineTuningJobContent()
44+
{
45+
Assert.assertThrows(RequestException.class, () -> client.fineTuningJobContent("ftjob-abc123"));
46+
}
4147
}

0 commit comments

Comments
 (0)