pub struct Glm5Provider { /* private fields */ }Expand description
GLM-5 FP8 provider targeting a Vast.ai vLLM serverless endpoint.
Implementations§
Source§impl Glm5Provider
impl Glm5Provider
Sourcepub fn new(api_key: String, base_url: String) -> Result<Self>
pub fn new(api_key: String, base_url: String) -> Result<Self>
Create a new Glm5Provider pointing at base_url with api_key.
base_url should be the full base URL including /v1, e.g.
https://<vast-endpoint>.vast.ai/v1.
Sourcepub fn with_model(
api_key: String,
base_url: String,
model_name: String,
) -> Result<Self>
pub fn with_model( api_key: String, base_url: String, model_name: String, ) -> Result<Self>
Create with an explicit model name override.
Sourcepub fn normalize_model(model: &str) -> String
pub fn normalize_model(model: &str) -> String
Normalize a model string: strip provider prefix (glm5/, glm5:) and
map aliases to the canonical model name served by vLLM.
Examples:
"glm5/glm-5-fp8"→"glm-5-fp8""glm5:glm-5-fp8"→"glm-5-fp8""glm-5-fp8"→"glm-5-fp8""glm-5"→"glm-5-fp8"(alias to fp8 variant)""→DEFAULT_MODEL
Trait Implementations§
Source§impl Debug for Glm5Provider
impl Debug for Glm5Provider
Source§impl Provider for Glm5Provider
impl Provider for Glm5Provider
Source§fn list_models<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<ModelInfo>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list_models<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<ModelInfo>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
List models available under this provider. Read more
Source§fn complete<'life0, 'async_trait>(
&'life0 self,
request: CompletionRequest,
) -> Pin<Box<dyn Future<Output = Result<CompletionResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn complete<'life0, 'async_trait>(
&'life0 self,
request: CompletionRequest,
) -> Pin<Box<dyn Future<Output = Result<CompletionResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Generate a single completion. Read more
Source§fn complete_stream<'life0, 'async_trait>(
&'life0 self,
request: CompletionRequest,
) -> Pin<Box<dyn Future<Output = Result<BoxStream<'static, StreamChunk>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn complete_stream<'life0, 'async_trait>(
&'life0 self,
request: CompletionRequest,
) -> Pin<Box<dyn Future<Output = Result<BoxStream<'static, StreamChunk>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Generate a streaming completion. Read more
Source§fn embed<'life0, 'async_trait>(
&'life0 self,
_request: EmbeddingRequest,
) -> Pin<Box<dyn Future<Output = Result<EmbeddingResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn embed<'life0, 'async_trait>(
&'life0 self,
_request: EmbeddingRequest,
) -> Pin<Box<dyn Future<Output = Result<EmbeddingResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Generate embeddings (optional; default returns an error).
Auto Trait Implementations§
impl Freeze for Glm5Provider
impl !RefUnwindSafe for Glm5Provider
impl Send for Glm5Provider
impl Sync for Glm5Provider
impl Unpin for Glm5Provider
impl UnsafeUnpin for Glm5Provider
impl !UnwindSafe for Glm5Provider
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ServiceExt for T
impl<T> ServiceExt for T
Source§fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
Apply a transformation to the response body. Read more
Source§fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using HTTP status codes. Read more
Source§fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using gRPC headers. Read more