langchain.tools.bing_search.tool.BingSearchResults¶

class langchain.tools.bing_search.tool.BingSearchResults(*, name: str = 'Bing Search Results JSON', description: str = 'A wrapper around Bing Search. Useful for when you need to answer questions about current events. Input should be a search query. Output is a JSON array of the query results', args_schema: Optional[Type[BaseModel]] = None, return_direct: bool = False, verbose: bool = False, callbacks: Optional[Union[List[BaseCallbackHandler], BaseCallbackManager]] = None, callback_manager: Optional[BaseCallbackManager] = None, tags: Optional[List[str]] = None, metadata: Optional[Dict[str, Any]] = None, handle_tool_error: Optional[Union[bool, str, Callable[[ToolException], str]]] = False, num_results: int = 4, api_wrapper: BingSearchAPIWrapper)[source]¶

Bases: BaseTool

Tool that queries the Bing Search API and gets back json.

Create a new model by parsing and validating input data from keyword arguments.

Raises ValidationError if the input data cannot be parsed to form a valid model.

param api_wrapper: langchain.utilities.bing_search.BingSearchAPIWrapper [Required]¶
param args_schema: Optional[Type[BaseModel]] = None¶

Pydantic model class to validate and parse the tool’s input arguments.

param callback_manager: Optional[BaseCallbackManager] = None¶

Deprecated. Please use callbacks instead.

param callbacks: Callbacks = None¶

Callbacks to be called during tool execution.

param description: str = 'A wrapper around Bing Search. Useful for when you need to answer questions about current events. Input should be a search query. Output is a JSON array of the query results'¶

Used to tell the model how/when/why to use the tool.

You can provide few-shot examples as a part of the description.

param handle_tool_error: Optional[Union[bool, str, Callable[[ToolException], str]]] = False¶

Handle the content of the ToolException thrown.

param metadata: Optional[Dict[str, Any]] = None¶

Optional metadata associated with the tool. Defaults to None This metadata will be associated with each call to this tool, and passed as arguments to the handlers defined in callbacks. You can use these to eg identify a specific instance of a tool with its use case.

param name: str = 'Bing Search Results JSON'¶

The unique name of the tool that clearly communicates its purpose.

param num_results: int = 4¶
param return_direct: bool = False¶

Whether to return the tool’s output directly. Setting this to True means

that after the tool is called, the AgentExecutor will stop looping.

param tags: Optional[List[str]] = None¶

Optional list of tags associated with the tool. Defaults to None These tags will be associated with each call to this tool, and passed as arguments to the handlers defined in callbacks. You can use these to eg identify a specific instance of a tool with its use case.

param verbose: bool = False¶

Whether to log the tool’s progress.

__call__(tool_input: str, callbacks: Optional[Union[List[BaseCallbackHandler], BaseCallbackManager]] = None) str¶

Make tool callable.

async ainvoke(input: Union[str, Dict], config: Optional[RunnableConfig] = None, **kwargs: Any) Any¶
async arun(tool_input: Union[str, Dict], verbose: Optional[bool] = None, start_color: Optional[str] = 'green', color: Optional[str] = 'green', callbacks: Optional[Union[List[BaseCallbackHandler], BaseCallbackManager]] = None, *, tags: Optional[List[str]] = None, metadata: Optional[Dict[str, Any]] = None, **kwargs: Any) Any¶

Run the tool asynchronously.

invoke(input: Union[str, Dict], config: Optional[RunnableConfig] = None, **kwargs: Any) Any¶
validator raise_deprecation  »  all fields¶

Raise deprecation warning if callback_manager is used.

run(tool_input: Union[str, Dict], verbose: Optional[bool] = None, start_color: Optional[str] = 'green', color: Optional[str] = 'green', callbacks: Optional[Union[List[BaseCallbackHandler], BaseCallbackManager]] = None, *, tags: Optional[List[str]] = None, metadata: Optional[Dict[str, Any]] = None, **kwargs: Any) Any¶

Run the tool.

property args: dict¶
property is_single_input: bool¶

Whether the tool only accepts a single input.

model Config¶

Bases: object

Configuration for this pydantic object.

arbitrary_types_allowed = True¶
extra = 'forbid'¶