#[non_exhaustive]pub enum PairTruncationPolicy {
LongestFirst,
PreserveQueryToThreeQuarters,
}Expand description
How a pair longer than max_length is cut to fit; each rerank entry names its own.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
LongestFirst
The tokenizer’s default: remove one token at a time from whichever side is longer until the pair fits.
PreserveQueryToThreeQuarters
FlagEmbedding’s policy: the query alone is cut to three quarters of max_length, then only the document, to
zero tokens if need be; at a max_length of 12 or less the pair can still exceed it, as in the reference.
Trait Implementations§
Source§impl Clone for PairTruncationPolicy
impl Clone for PairTruncationPolicy
impl Copy for PairTruncationPolicy
Source§impl Debug for PairTruncationPolicy
impl Debug for PairTruncationPolicy
Source§impl<'de> Deserialize<'de> for PairTruncationPolicy
impl<'de> Deserialize<'de> for PairTruncationPolicy
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for PairTruncationPolicy
Source§impl PartialEq for PairTruncationPolicy
impl PartialEq for PairTruncationPolicy
Source§impl Serialize for PairTruncationPolicy
impl Serialize for PairTruncationPolicy
impl StructuralPartialEq for PairTruncationPolicy
Auto Trait Implementations§
impl Freeze for PairTruncationPolicy
impl RefUnwindSafe for PairTruncationPolicy
impl Send for PairTruncationPolicy
impl Sync for PairTruncationPolicy
impl Unpin for PairTruncationPolicy
impl UnsafeUnpin for PairTruncationPolicy
impl UnwindSafe for PairTruncationPolicy
Blanket Implementations§
impl<T> Boilerplate for T
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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