pub struct WikipediaQuery {
pub options: WikipediaQueryOptions,
/* private fields */
}Expand description
A tool for querying Wikipedia articles
This tool searches Wikipedia and returns summaries of the top matching articles. It’s useful for answering general questions about people, places, companies, facts, historical events, and other subjects that have Wikipedia articles.
§Examples
use langchain_rust::tools::{Tool, WikipediaQuery, WikipediaQueryOptions};
use serde_json::json;
#[tokio::main]
async fn main() {
let options = WikipediaQueryOptions {
top_k_results: 2,
max_doc_content_length: 2000,
lang: "en".to_string(),
};
let wiki = WikipediaQuery::new(options);
let result = wiki.run(json!("LangChain")).await.unwrap();
println!("{}", result);
}Fields§
§options: WikipediaQueryOptionsImplementations§
Source§impl WikipediaQuery
impl WikipediaQuery
Sourcepub fn new(options: WikipediaQueryOptions) -> Self
pub fn new(options: WikipediaQueryOptions) -> Self
Creates a new WikipediaQuery with custom options
§Arguments
options- Configuration options for Wikipedia queries
Sourcepub fn with_lang(lang: impl Into<String>) -> Self
pub fn with_lang(lang: impl Into<String>) -> Self
Creates a WikipediaQuery with a specific language
§Arguments
lang- Language code (e.g., “en”, “es”, “fr”, “de”)
Sourcepub fn with_top_k_results(self, top_k: usize) -> Self
pub fn with_top_k_results(self, top_k: usize) -> Self
Sets the maximum number of results to return
Sourcepub fn with_max_doc_content_length(self, max_len: usize) -> Self
pub fn with_max_doc_content_length(self, max_len: usize) -> Self
Sets the maximum content length per document
Sourcepub fn with_base_url(self, base_url: impl Into<String>) -> Self
pub fn with_base_url(self, base_url: impl Into<String>) -> Self
Overrides the API origin (e.g. http://127.0.0.1:1234) instead of
deriving it from the configured language. Mainly useful for pointing the
tool at a mock server in tests or at a self-hosted MediaWiki instance.
Trait Implementations§
Source§impl Default for WikipediaQuery
impl Default for WikipediaQuery
Source§impl Tool for WikipediaQuery
impl Tool for WikipediaQuery
Source§fn description(&self) -> String
fn description(&self) -> String
Provides a description of what the tool does and when to use it.
Source§fn run<'life0, 'async_trait>(
&'life0 self,
input: Value,
) -> Pin<Box<dyn Future<Output = Result<String, Box<dyn Error>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn run<'life0, 'async_trait>(
&'life0 self,
input: Value,
) -> Pin<Box<dyn Future<Output = Result<String, Box<dyn Error>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Executes the core functionality of the tool. Read more
Source§fn parameters(&self) -> Value
fn parameters(&self) -> Value
This are the parametters for OpenAi-like function call.
You should return a jsnon like this one Read more
Source§fn call<'life0, 'life1, 'async_trait>(
&'life0 self,
input: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<String, Box<dyn Error>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn call<'life0, 'life1, 'async_trait>(
&'life0 self,
input: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<String, Box<dyn Error>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Processes an input string and executes the tool’s functionality, returning a
Result. Read moreSource§fn parse_input<'life0, 'life1, 'async_trait>(
&'life0 self,
input: &'life1 str,
) -> Pin<Box<dyn Future<Output = Value> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn parse_input<'life0, 'life1, 'async_trait>(
&'life0 self,
input: &'life1 str,
) -> Pin<Box<dyn Future<Output = Value> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Parses the input string, which could be a JSON value or a raw string, depending on the LLM model. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for WikipediaQuery
impl !UnwindSafe for WikipediaQuery
impl Freeze for WikipediaQuery
impl Send for WikipediaQuery
impl Sync for WikipediaQuery
impl Unpin for WikipediaQuery
impl UnsafeUnpin for WikipediaQuery
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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