pub struct LlamaModelV2 { /* private fields */ }Expand description
Main Llama model implementation
Implementations§
Source§impl LlamaModelV2
impl LlamaModelV2
Sourcepub fn forward_with_cache(
&self,
inputs: &ModelInputs,
cache: Option<&mut KVCache>,
) -> Result<ModelOutputs>
pub fn forward_with_cache( &self, inputs: &ModelInputs, cache: Option<&mut KVCache>, ) -> Result<ModelOutputs>
Sourcepub fn generate_with_cache(
&self,
prompt: &str,
config: &GenerationConfig,
) -> Result<String>
pub fn generate_with_cache( &self, prompt: &str, config: &GenerationConfig, ) -> Result<String>
Generate text with KV caching for efficient autoregressive generation
This method is significantly faster than generate() for long sequences
because it caches Key and Value tensors instead of recomputing them.
§Arguments
prompt- Input text promptconfig- Generation configuration
§Returns
Generated text including the prompt
Trait Implementations§
Source§impl Model for LlamaModelV2
impl Model for LlamaModelV2
Source§type Config = LlamaConfig
type Config = LlamaConfig
Model configuration type
Source§fn from_weights(config: Self::Config, weights: ModelWeights) -> Result<Self>
fn from_weights(config: Self::Config, weights: ModelWeights) -> Result<Self>
Load model with weights
Source§fn forward(&self, inputs: &ModelInputs) -> Result<ModelOutputs>
fn forward(&self, inputs: &ModelInputs) -> Result<ModelOutputs>
Forward pass - core inference method
Source§fn generate(&self, prompt: &str, config: &GenerationConfig) -> Result<String>
fn generate(&self, prompt: &str, config: &GenerationConfig) -> Result<String>
Generate text (high-level interface)
Source§fn memory_requirements(&self) -> MemoryRequirements
fn memory_requirements(&self) -> MemoryRequirements
Get model memory requirements
Auto Trait Implementations§
impl !RefUnwindSafe for LlamaModelV2
impl !UnwindSafe for LlamaModelV2
impl Freeze for LlamaModelV2
impl Send for LlamaModelV2
impl Sync for LlamaModelV2
impl Unpin for LlamaModelV2
impl UnsafeUnpin for LlamaModelV2
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
impl<T> ErasedDestructor for Twhere
T: 'static,
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