aleph_alpha_client

Struct TaskChat

Source
pub struct TaskChat<'a> {
    pub messages: Vec<Message<'a>>,
    pub maximum_tokens: Option<u32>,
    pub temperature: Option<f64>,
    pub top_p: Option<f64>,
}

Fields§

§messages: Vec<Message<'a>>

The list of messages comprising the conversation so far.

§maximum_tokens: Option<u32>

The maximum number of tokens to be generated. Completion will terminate after the maximum number of tokens is reached. Increase this value to allow for longer outputs. A text is split into tokens. Usually there are more tokens than words. The total number of tokens of prompt and maximum_tokens depends on the model. If maximum tokens is set to None, no outside limit is opposed on the number of maximum tokens. The model will generate tokens until it generates one of the specified stop_sequences or it reaches its technical limit, which usually is its context window.

§temperature: Option<f64>

A temperature encourages the model to produce less probable outputs (“be more creative”). Values are expected to be between 0 and 1. Try high values for a more random (“creative”) response.

§top_p: Option<f64>

Introduces random sampling for generated tokens by randomly selecting the next token from the smallest possible set of tokens whose cumulative probability exceeds the probability top_p. Set to 0 to get the same behaviour as None.

Implementations§

Source§

impl<'a> TaskChat<'a>

Source

pub fn with_message(message: Message<'a>) -> Self

Creates a new TaskChat containing one message with the given role and content. All optional TaskChat attributes are left unset.

Source

pub fn with_messages(messages: Vec<Message<'a>>) -> Self

Creates a new TaskChat containing the given messages. All optional TaskChat attributes are left unset.

Source

pub fn push_message(self, message: Message<'a>) -> Self

Pushes a new Message to this TaskChat.

Source

pub fn with_maximum_tokens(self, maximum_tokens: u32) -> Self

Sets the maximum token attribute of this TaskChat.

Source

pub fn with_temperature(self, temperature: f64) -> Self

Sets the temperature attribute of this TaskChat.

Source

pub fn with_top_p(self, top_p: f64) -> Self

Sets the top_p attribute of this TaskChat.

Trait Implementations§

Source§

impl<'a> StreamTask for TaskChat<'a>

Source§

type Output = ChatStreamChunk

Output returned by crate::Client::output_of
Source§

type ResponseBody = ChatEvent

Expected answer of the Aleph Alpha API
Source§

fn build_request( &self, client: &Client, base: &str, model: &str, ) -> RequestBuilder

Prepare the request for the Aleph Alpha API. Authentication headers can be assumed to be already set.
Source§

fn body_to_output(response: Self::ResponseBody) -> Self::Output

Parses the response of the server into higher level structs for the user.
Source§

fn with_model<'a>(&'a self, model: &'a str) -> MethodJob<'a, Self>
where Self: Sized,

Turn your task into [Job] by annotating it with a model name.
Source§

impl<'a> Task for TaskChat<'a>

Source§

type Output = ChatOutput

Output returned by crate::Client::output_of
Source§

type ResponseBody = ResponseChat

Expected answer of the Aleph Alpha API
Source§

fn build_request( &self, client: &Client, base: &str, model: &str, ) -> RequestBuilder

Prepare the request for the Aleph Alpha API. Authentication headers can be assumed to be already set.
Source§

fn body_to_output(&self, response: Self::ResponseBody) -> Self::Output

Parses the response of the server into higher level structs for the user.
Source§

fn with_model<'a>(&'a self, model: &'a str) -> MethodJob<'a, Self>
where Self: Sized,

Turn your task into Job by annotating it with a model name.

Auto Trait Implementations§

§

impl<'a> Freeze for TaskChat<'a>

§

impl<'a> RefUnwindSafe for TaskChat<'a>

§

impl<'a> Send for TaskChat<'a>

§

impl<'a> Sync for TaskChat<'a>

§

impl<'a> Unpin for TaskChat<'a>

§

impl<'a> UnwindSafe for TaskChat<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize = _

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more