pub struct WebSearchTool { /* private fields */ }Expand description
WebSearch is a built-in tool for Anthropic Claude models that enables server-side web search. The model searches the web internally and returns results as ServerToolUse / WebSearchToolResult content blocks.
Implementations§
Source§impl WebSearchTool
impl WebSearchTool
pub fn new() -> Self
pub fn with_allowed_domains( self, domains: impl IntoIterator<Item = impl Into<String>>, ) -> Self
pub fn with_blocked_domains( self, domains: impl IntoIterator<Item = impl Into<String>>, ) -> Self
pub fn with_max_uses(self, max_uses: i32) -> Self
pub fn with_user_location(self, user_location: WebSearchUserLocation) -> Self
Trait Implementations§
Source§impl Clone for WebSearchTool
impl Clone for WebSearchTool
Source§fn clone(&self) -> WebSearchTool
fn clone(&self) -> WebSearchTool
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for WebSearchTool
impl Debug for WebSearchTool
Source§impl Default for WebSearchTool
impl Default for WebSearchTool
Source§fn default() -> WebSearchTool
fn default() -> WebSearchTool
Returns the “default value” for a type. Read more
Source§impl Tool for WebSearchTool
impl Tool for WebSearchTool
fn name(&self) -> &str
fn description(&self) -> &str
Source§fn is_builtin(&self) -> bool
fn is_builtin(&self) -> bool
Indicates whether this tool is a built-in server-side tool (e.g.,
google_search, url_context). Read moreSource§fn declaration(&self) -> Value
fn declaration(&self) -> Value
Returns the tool declaration that should be exposed to model providers. Read more
fn execute<'life0, 'async_trait>(
&'life0 self,
_ctx: Arc<dyn ToolContext>,
_args: Value,
) -> Pin<Box<dyn Future<Output = Result<Value>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§fn enhanced_description(&self) -> String
fn enhanced_description(&self) -> String
Returns an enhanced description that may include additional notes.
For long-running tools, this includes a warning not to call the tool
again if it has already returned a pending status.
Default implementation returns the base description.
Source§fn is_long_running(&self) -> bool
fn is_long_running(&self) -> bool
Indicates whether the tool is a long-running operation.
Long-running tools typically return a task ID immediately and
complete the operation asynchronously.
fn parameters_schema(&self) -> Option<Value>
fn response_schema(&self) -> Option<Value>
Source§fn required_scopes(&self) -> &[&str]
fn required_scopes(&self) -> &[&str]
Returns the scopes required to execute this tool. Read more
Auto Trait Implementations§
impl Freeze for WebSearchTool
impl RefUnwindSafe for WebSearchTool
impl Send for WebSearchTool
impl Sync for WebSearchTool
impl Unpin for WebSearchTool
impl UnsafeUnpin for WebSearchTool
impl UnwindSafe for WebSearchTool
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> 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::Request