/*
* Trieve API
*
* Trieve OpenAPI Specification. This document describes all of the operations available through the Trieve API.
*
* The version of the OpenAPI document: 0.11.7
* Contact: developers@trieve.ai
* Generated by: https://openapi-generator.tech
*/
use crate::models;
/// SemanticBoost : Distance phrase is useful for moving the embedding vector of the chunk in the direction of the distance phrase. I.e. you can push a chunk with a chunk_html of \"iphone\" 25% closer to the term \"flagship\" by using the distance phrase \"flagship\" and a distance factor of 0.25. Conceptually it's drawing a line (euclidean/L2 distance) between the vector for the innerText of the chunk_html and distance_phrase then moving the vector of the chunk_html distance_factor*L2Distance closer to or away from the distance_phrase point along the line between the two points.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct SemanticBoost {
/// Arbitrary float (positive or negative) specifying the multiplicate factor to apply before summing the phrase vector with the chunk_html embedding vector
#[serde(rename = "distance_factor")]
pub distance_factor: f32,
/// Terms to embed in order to create the vector which is weighted summed with the chunk_html embedding vector
#[serde(rename = "phrase")]
pub phrase: String,
}
impl SemanticBoost {
/// Distance phrase is useful for moving the embedding vector of the chunk in the direction of the distance phrase. I.e. you can push a chunk with a chunk_html of \"iphone\" 25% closer to the term \"flagship\" by using the distance phrase \"flagship\" and a distance factor of 0.25. Conceptually it's drawing a line (euclidean/L2 distance) between the vector for the innerText of the chunk_html and distance_phrase then moving the vector of the chunk_html distance_factor*L2Distance closer to or away from the distance_phrase point along the line between the two points.
pub fn new(distance_factor: f32, phrase: String) -> SemanticBoost {
SemanticBoost {
distance_factor,
phrase,
}
}
}