pub struct ChatRequest {
pub messages: Vec<Message>,
pub model: ModelKind,
pub api_key: Option<String>,
pub temperature: Option<f64>,
pub frequency_penalty: Option<f64>,
pub max_tokens: Option<usize>,
pub timeout: Option<u64>,
pub max_retry: usize,
pub sleep_between_retries: u64,
pub record_api_usage_at: Option<RecordAt>,
pub dump_pdl_at: Option<String>,
}
Fields§
§messages: Vec<Message>
§model: ModelKind
§api_key: Option<String>
§temperature: Option<f64>
§frequency_penalty: Option<f64>
§max_tokens: Option<usize>
§timeout: Option<u64>
milliseconds
max_retry: usize
It tries 1 + max_retry times.
sleep_between_retries: u64
milliseconds
record_api_usage_at: Option<RecordAt>
§dump_pdl_at: Option<String>
It dumps the AI conversation in pdl format. See README file to know what pdl is.
Implementations§
source§impl Request
impl Request
pub fn is_valid(&self) -> bool
sourcepub fn build_json_body(&self) -> JsonValue
pub fn build_json_body(&self) -> JsonValue
It panics if its fields are not complete. If you’re not sure, run self.is_valid()
before sending a request.
sourcepub fn blocking_send(&self) -> Result<Response, Error>
pub fn blocking_send(&self) -> Result<Response, Error>
NOTE: this function dies ocassionally, for no reason.
It panics if its fields are not complete. If you’re not sure, run self.is_valid()
before sending a request.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Request
impl RefUnwindSafe for Request
impl Send for Request
impl Sync for Request
impl Unpin for Request
impl UnwindSafe for Request
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)