pub struct EchoProvider;Trait Implementations§
Source§impl ChatProvider for EchoProvider
impl ChatProvider for EchoProvider
Source§fn chat_with_tools<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
messages: &'life1 [ChatMessage],
_tools: Option<&'life2 [Tool]>,
_json_schema: Option<StructuredOutputFormat>,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn ChatResponse>, LLMError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn chat_with_tools<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
messages: &'life1 [ChatMessage],
_tools: Option<&'life2 [Tool]>,
_json_schema: Option<StructuredOutputFormat>,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn ChatResponse>, LLMError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Sends a chat request to the provider with a sequence of messages and tools. Read more
Source§fn chat<'life0, 'life1, 'async_trait>(
&'life0 self,
messages: &'life1 [ChatMessage],
json_schema: Option<StructuredOutputFormat>,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn ChatResponse>, LLMError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn chat<'life0, 'life1, 'async_trait>(
&'life0 self,
messages: &'life1 [ChatMessage],
json_schema: Option<StructuredOutputFormat>,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn ChatResponse>, LLMError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Sends a chat request to the provider with a sequence of messages. Read more
Source§fn chat_with_web_search<'life0, 'async_trait>(
&'life0 self,
_input: String,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn ChatResponse>, LLMError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn chat_with_web_search<'life0, 'async_trait>(
&'life0 self,
_input: String,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn ChatResponse>, LLMError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Sends a chat with web search request to the provider Read more
Source§fn chat_stream<'life0, 'life1, 'async_trait>(
&'life0 self,
_messages: &'life1 [ChatMessage],
_json_schema: Option<StructuredOutputFormat>,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Stream<Item = Result<String, LLMError>> + Send>>, LLMError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn chat_stream<'life0, 'life1, 'async_trait>(
&'life0 self,
_messages: &'life1 [ChatMessage],
_json_schema: Option<StructuredOutputFormat>,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Stream<Item = Result<String, LLMError>> + Send>>, LLMError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Sends a streaming chat request to the provider with a sequence of messages. Read more
Source§fn chat_stream_struct<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_messages: &'life1 [ChatMessage],
_tools: Option<&'life2 [Tool]>,
_json_schema: Option<StructuredOutputFormat>,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Stream<Item = Result<StreamResponse, LLMError>> + Send>>, LLMError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn chat_stream_struct<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_messages: &'life1 [ChatMessage],
_tools: Option<&'life2 [Tool]>,
_json_schema: Option<StructuredOutputFormat>,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Stream<Item = Result<StreamResponse, LLMError>> + Send>>, LLMError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Sends a streaming chat request that returns structured response chunks. Read more
Source§fn chat_stream_with_tools<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_messages: &'life1 [ChatMessage],
_tools: Option<&'life2 [Tool]>,
_json_schema: Option<StructuredOutputFormat>,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Stream<Item = Result<StreamChunk, LLMError>> + Send>>, LLMError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn chat_stream_with_tools<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_messages: &'life1 [ChatMessage],
_tools: Option<&'life2 [Tool]>,
_json_schema: Option<StructuredOutputFormat>,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Stream<Item = Result<StreamChunk, LLMError>> + Send>>, LLMError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Sends a streaming chat request with tool support. Read more
Source§impl CompletionProvider for EchoProvider
impl CompletionProvider for EchoProvider
Source§fn complete<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 CompletionRequest,
_json_schema: Option<StructuredOutputFormat>,
) -> Pin<Box<dyn Future<Output = Result<CompletionResponse, LLMError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn complete<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 CompletionRequest,
_json_schema: Option<StructuredOutputFormat>,
) -> Pin<Box<dyn Future<Output = Result<CompletionResponse, LLMError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Sends a completion request to generate text. Read more
Source§impl Debug for EchoProvider
impl Debug for EchoProvider
Source§impl Default for EchoProvider
impl Default for EchoProvider
Source§fn default() -> EchoProvider
fn default() -> EchoProvider
Returns the “default value” for a type. Read more
Source§impl EmbeddingProvider for EchoProvider
impl EmbeddingProvider for EchoProvider
Source§impl HasConfig for EchoProvider
impl HasConfig for EchoProvider
Source§impl ModelsProvider for EchoProvider
impl ModelsProvider for EchoProvider
Source§fn list_models<'life0, 'life1, 'async_trait>(
&'life0 self,
_request: Option<&'life1 ModelListRequest>,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn ModelListResponse>, LLMError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: Sync + 'async_trait,
fn list_models<'life0, 'life1, 'async_trait>(
&'life0 self,
_request: Option<&'life1 ModelListRequest>,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn ModelListResponse>, LLMError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: Sync + 'async_trait,
Asynchronously retrieves the list of available models ID’s from the provider. Read more
impl LLMProvider for EchoProvider
Auto Trait Implementations§
impl Freeze for EchoProvider
impl RefUnwindSafe for EchoProvider
impl Send for EchoProvider
impl Sync for EchoProvider
impl Unpin for EchoProvider
impl UnsafeUnpin for EchoProvider
impl UnwindSafe for EchoProvider
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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