mirror of
https://github.com/mii443/openai-api-rs.git
synced 2025-08-27 17:39:23 +00:00
1. Cargo fit
2. Cargo clips 3. v4.0.0 4. Fix readme
This commit is contained in:
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "openai-api-rs"
|
name = "openai-api-rs"
|
||||||
version = "3.0.1"
|
version = "4.0.0"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
authors = ["Dongri Jin <dongrify@gmail.com>"]
|
authors = ["Dongri Jin <dongrify@gmail.com>"]
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
|
@ -7,7 +7,7 @@ Check out the [docs.rs](https://docs.rs/openai-api-rs/).
|
|||||||
Cargo.toml
|
Cargo.toml
|
||||||
```toml
|
```toml
|
||||||
[dependencies]
|
[dependencies]
|
||||||
openai-api-rs = "3.0.1"
|
openai-api-rs = "4.0.0"
|
||||||
```
|
```
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
@ -84,7 +84,7 @@ Check out the [full API documentation](https://platform.openai.com/docs/api-refe
|
|||||||
- [x] [Embeddings](https://platform.openai.com/docs/api-reference/embeddings)
|
- [x] [Embeddings](https://platform.openai.com/docs/api-reference/embeddings)
|
||||||
- [x] [Audio](https://platform.openai.com/docs/api-reference/audio)
|
- [x] [Audio](https://platform.openai.com/docs/api-reference/audio)
|
||||||
- [x] [Files](https://platform.openai.com/docs/api-reference/files)
|
- [x] [Files](https://platform.openai.com/docs/api-reference/files)
|
||||||
- [x] [Fine-tunes](https://platform.openai.com/docs/api-reference/fine-tunes)
|
- [x] [Fine-tuning](https://platform.openai.com/docs/api-reference/fine-tuning)
|
||||||
- [x] [Moderations](https://platform.openai.com/docs/api-reference/moderations)
|
- [x] [Moderations](https://platform.openai.com/docs/api-reference/moderations)
|
||||||
- [x] [Function calling](https://platform.openai.com/docs/guides/gpt/function-calling)
|
- [x] [Function calling](https://platform.openai.com/docs/guides/gpt/function-calling)
|
||||||
- [x] [Assistants](https://platform.openai.com/docs/assistants/overview)
|
- [x] [Assistants](https://platform.openai.com/docs/assistants/overview)
|
||||||
|
@ -17,8 +17,9 @@ use crate::v1::file::{
|
|||||||
FileUploadResponse,
|
FileUploadResponse,
|
||||||
};
|
};
|
||||||
use crate::v1::fine_tuning::{
|
use crate::v1::fine_tuning::{
|
||||||
CreateFineTuningJobRequest, ListFineTuningJobEventsRequest, RetrieveFineTuningJobRequest, CancelFineTuningJobRequest,
|
CancelFineTuningJobRequest, CreateFineTuningJobRequest, FineTuningJobEvent,
|
||||||
FineTuningPagination, FineTuningJobObject, FineTuningJobEvent,
|
FineTuningJobObject, FineTuningPagination, ListFineTuningJobEventsRequest,
|
||||||
|
RetrieveFineTuningJobRequest,
|
||||||
};
|
};
|
||||||
use crate::v1::image::{
|
use crate::v1::image::{
|
||||||
ImageEditRequest, ImageEditResponse, ImageGenerationRequest, ImageGenerationResponse,
|
ImageEditRequest, ImageEditResponse, ImageGenerationRequest, ImageGenerationResponse,
|
||||||
@ -346,7 +347,9 @@ impl Client {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn list_fine_tuning_jobs(&self) -> Result<FineTuningPagination<FineTuningJobObject>, APIError> {
|
pub fn list_fine_tuning_jobs(
|
||||||
|
&self,
|
||||||
|
) -> Result<FineTuningPagination<FineTuningJobObject>, APIError> {
|
||||||
let res = self.get("/fine_tuning/jobs")?;
|
let res = self.get("/fine_tuning/jobs")?;
|
||||||
let r = res.json::<FineTuningPagination<FineTuningJobObject>>();
|
let r = res.json::<FineTuningPagination<FineTuningJobObject>>();
|
||||||
match r {
|
match r {
|
||||||
@ -359,7 +362,10 @@ impl Client {
|
|||||||
&self,
|
&self,
|
||||||
req: ListFineTuningJobEventsRequest,
|
req: ListFineTuningJobEventsRequest,
|
||||||
) -> Result<FineTuningPagination<FineTuningJobEvent>, APIError> {
|
) -> Result<FineTuningPagination<FineTuningJobEvent>, APIError> {
|
||||||
let res = self.get(&format!("/fine_tuning/jobs/{}/events", req.fine_tuning_job_id))?;
|
let res = self.get(&format!(
|
||||||
|
"/fine_tuning/jobs/{}/events",
|
||||||
|
req.fine_tuning_job_id
|
||||||
|
))?;
|
||||||
let r = res.json::<FineTuningPagination<FineTuningJobEvent>>();
|
let r = res.json::<FineTuningPagination<FineTuningJobEvent>>();
|
||||||
match r {
|
match r {
|
||||||
Ok(r) => Ok(r),
|
Ok(r) => Ok(r),
|
||||||
@ -383,7 +389,10 @@ impl Client {
|
|||||||
&self,
|
&self,
|
||||||
req: CancelFineTuningJobRequest,
|
req: CancelFineTuningJobRequest,
|
||||||
) -> Result<FineTuningJobObject, APIError> {
|
) -> Result<FineTuningJobObject, APIError> {
|
||||||
let res = self.post(&format!("/fine_tuning/jobs/{}/cancel", req.fine_tuning_job_id), &req)?;
|
let res = self.post(
|
||||||
|
&format!("/fine_tuning/jobs/{}/cancel", req.fine_tuning_job_id),
|
||||||
|
&req,
|
||||||
|
)?;
|
||||||
let r = res.json::<FineTuningJobObject>();
|
let r = res.json::<FineTuningJobObject>();
|
||||||
match r {
|
match r {
|
||||||
Ok(r) => Ok(r),
|
Ok(r) => Ok(r),
|
||||||
|
@ -2,7 +2,6 @@ use serde::{Deserialize, Serialize};
|
|||||||
|
|
||||||
use crate::impl_builder_methods;
|
use crate::impl_builder_methods;
|
||||||
|
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Clone)]
|
#[derive(Debug, Serialize, Clone)]
|
||||||
pub struct CreateFineTuningJobRequest {
|
pub struct CreateFineTuningJobRequest {
|
||||||
pub model: String,
|
pub model: String,
|
||||||
@ -44,7 +43,7 @@ pub struct ListFineTuningJobsRequest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl ListFineTuningJobsRequest {
|
impl ListFineTuningJobsRequest {
|
||||||
pub fn new(fine_tune_id: String) -> Self {
|
pub fn new(_fine_tune_id: String) -> Self {
|
||||||
Self {
|
Self {
|
||||||
after: None,
|
after: None,
|
||||||
limit: None,
|
limit: None,
|
||||||
@ -144,4 +143,3 @@ pub struct HyperParameters {
|
|||||||
#[serde(skip_serializing_if = "Option::is_none")]
|
#[serde(skip_serializing_if = "Option::is_none")]
|
||||||
pub n_epochs: Option<String>,
|
pub n_epochs: Option<String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user