codekingpro/portable-devtools
114k
1"""**Tools** are classes that an Agent uses to interact with the world.2 3Each tool has a **description**. Agent uses the description to choose the right4tool for the job.5 6**Class hierarchy:**7 8.. code-block::9 10 ToolMetaclass --> BaseTool --> <name>Tool # Examples: AIPluginTool, BaseGraphQLTool11 <name> # Examples: BraveSearch, HumanInputRun12 13**Main helpers:**14 15.. code-block::16 17 CallbackManagerForToolRun, AsyncCallbackManagerForToolRun18"""19 20import importlib21from typing import TYPE_CHECKING, Any22 23if TYPE_CHECKING:24 from langchain_core.tools import (25 BaseTool as BaseTool,26 )27 from langchain_core.tools import (28 StructuredTool as StructuredTool,29 )30 from langchain_core.tools import (31 Tool as Tool,32 )33 from langchain_core.tools.convert import tool as tool34 35 from langchain_community.tools.ainetwork.app import (36 AINAppOps,37 )38 from langchain_community.tools.ainetwork.owner import (39 AINOwnerOps,40 )41 from langchain_community.tools.ainetwork.rule import (42 AINRuleOps,43 )44 from langchain_community.tools.ainetwork.transfer import (45 AINTransfer,46 )47 from langchain_community.tools.ainetwork.value import (48 AINValueOps,49 )50 from langchain_community.tools.arxiv.tool import (51 ArxivQueryRun,52 )53 from langchain_community.tools.asknews.tool import (54 AskNewsSearch,55 )56 from langchain_community.tools.azure_ai_services import (57 AzureAiServicesDocumentIntelligenceTool,58 AzureAiServicesImageAnalysisTool,59 AzureAiServicesSpeechToTextTool,60 AzureAiServicesTextAnalyticsForHealthTool,61 AzureAiServicesTextToSpeechTool,62 )63 from langchain_community.tools.azure_cognitive_services import (64 AzureCogsFormRecognizerTool,65 AzureCogsImageAnalysisTool,66 AzureCogsSpeech2TextTool,67 AzureCogsText2SpeechTool,68 AzureCogsTextAnalyticsHealthTool,69 )70 from langchain_community.tools.bearly.tool import (71 BearlyInterpreterTool,72 )73 from langchain_community.tools.bing_search.tool import (74 BingSearchResults,75 BingSearchRun,76 )77 from langchain_community.tools.brave_search.tool import (78 BraveSearch,79 )80 from langchain_community.tools.cassandra_database.tool import (81 GetSchemaCassandraDatabaseTool, # noqa: F40182 GetTableDataCassandraDatabaseTool, # noqa: F40183 QueryCassandraDatabaseTool, # noqa: F40184 )85 from langchain_community.tools.cogniswitch.tool import (86 CogniswitchKnowledgeRequest,87 CogniswitchKnowledgeSourceFile,88 CogniswitchKnowledgeSourceURL,89 CogniswitchKnowledgeStatus,90 )91 from langchain_community.tools.connery import (92 ConneryAction,93 )94 from langchain_community.tools.convert_to_openai import (95 format_tool_to_openai_function,96 )97 from langchain_community.tools.dataherald import DataheraldTextToSQL98 from langchain_community.tools.ddg_search.tool import (99 DuckDuckGoSearchResults,100 DuckDuckGoSearchRun,101 )102 from langchain_community.tools.e2b_data_analysis.tool import (103 E2BDataAnalysisTool,104 )105 from langchain_community.tools.edenai import (106 EdenAiExplicitImageTool,107 EdenAiObjectDetectionTool,108 EdenAiParsingIDTool,109 EdenAiParsingInvoiceTool,110 EdenAiSpeechToTextTool,111 EdenAiTextModerationTool,112 EdenAiTextToSpeechTool,113 EdenaiTool,114 )115 from langchain_community.tools.eleven_labs.text2speech import (116 ElevenLabsText2SpeechTool,117 )118 from langchain_community.tools.file_management import (119 CopyFileTool,120 DeleteFileTool,121 FileSearchTool,122 ListDirectoryTool,123 MoveFileTool,124 ReadFileTool,125 WriteFileTool,126 )127 from langchain_community.tools.financial_datasets.balance_sheets import (128 BalanceSheets,129 )130 from langchain_community.tools.financial_datasets.cash_flow_statements import (131 CashFlowStatements,132 )133 from langchain_community.tools.financial_datasets.income_statements import (134 IncomeStatements,135 )136 from langchain_community.tools.gmail import (137 GmailCreateDraft,138 GmailGetMessage,139 GmailGetThread,140 GmailSearch,141 GmailSendMessage,142 )143 from langchain_community.tools.google_books import (144 GoogleBooksQueryRun,145 )146 from langchain_community.tools.google_cloud.texttospeech import (147 GoogleCloudTextToSpeechTool,148 )149 from langchain_community.tools.google_places.tool import (150 GooglePlacesTool,151 )152 from langchain_community.tools.google_search.tool import (153 GoogleSearchResults,154 GoogleSearchRun,155 )156 from langchain_community.tools.google_serper.tool import (157 GoogleSerperResults,158 GoogleSerperRun,159 )160 from langchain_community.tools.graphql.tool import (161 BaseGraphQLTool,162 )163 from langchain_community.tools.human.tool import (164 HumanInputRun,165 )166 from langchain_community.tools.ifttt import (167 IFTTTWebhook,168 )169 from langchain_community.tools.interaction.tool import (170 StdInInquireTool,171 )172 from langchain_community.tools.jina_search.tool import JinaSearch173 from langchain_community.tools.jira.tool import (174 JiraAction,175 )176 from langchain_community.tools.json.tool import (177 JsonGetValueTool,178 JsonListKeysTool,179 )180 from langchain_community.tools.merriam_webster.tool import (181 MerriamWebsterQueryRun,182 )183 from langchain_community.tools.metaphor_search import (184 MetaphorSearchResults,185 )186 from langchain_community.tools.mojeek_search.tool import (187 MojeekSearch,188 )189 from langchain_community.tools.nasa.tool import (190 NasaAction,191 )192 from langchain_community.tools.office365.create_draft_message import (193 O365CreateDraftMessage,194 )195 from langchain_community.tools.office365.events_search import (196 O365SearchEvents,197 )198 from langchain_community.tools.office365.messages_search import (199 O365SearchEmails,200 )201 from langchain_community.tools.office365.send_event import (202 O365SendEvent,203 )204 from langchain_community.tools.office365.send_message import (205 O365SendMessage,206 )207 from langchain_community.tools.office365.utils import (208 authenticate,209 )210 from langchain_community.tools.openapi.utils.api_models import (211 APIOperation,212 )213 from langchain_community.tools.openapi.utils.openapi_utils import (214 OpenAPISpec,215 )216 from langchain_community.tools.openweathermap.tool import (217 OpenWeatherMapQueryRun,218 )219 from langchain_community.tools.playwright import (220 ClickTool,221 CurrentWebPageTool,222 ExtractHyperlinksTool,223 ExtractTextTool,224 GetElementsTool,225 NavigateBackTool,226 NavigateTool,227 )228 from langchain_community.tools.plugin import (229 AIPluginTool,230 )231 from langchain_community.tools.polygon.aggregates import (232 PolygonAggregates,233 )234 from langchain_community.tools.polygon.financials import (235 PolygonFinancials,236 )237 from langchain_community.tools.polygon.last_quote import (238 PolygonLastQuote,239 )240 from langchain_community.tools.polygon.ticker_news import (241 PolygonTickerNews,242 )243 from langchain_community.tools.powerbi.tool import (244 InfoPowerBITool,245 ListPowerBITool,246 QueryPowerBITool,247 )248 from langchain_community.tools.pubmed.tool import (249 PubmedQueryRun,250 )251 from langchain_community.tools.reddit_search.tool import (252 RedditSearchRun,253 RedditSearchSchema,254 )255 from langchain_community.tools.requests.tool import (256 BaseRequestsTool,257 RequestsDeleteTool,258 RequestsGetTool,259 RequestsPatchTool,260 RequestsPostTool,261 RequestsPutTool,262 )263 from langchain_community.tools.scenexplain.tool import (264 SceneXplainTool,265 )266 from langchain_community.tools.searchapi.tool import (267 SearchAPIResults,268 SearchAPIRun,269 )270 from langchain_community.tools.searx_search.tool import (271 SearxSearchResults,272 SearxSearchRun,273 )274 from langchain_community.tools.shell.tool import (275 ShellTool,276 )277 from langchain_community.tools.slack.get_channel import (278 SlackGetChannel,279 )280 from langchain_community.tools.slack.get_message import (281 SlackGetMessage,282 )283 from langchain_community.tools.slack.schedule_message import (284 SlackScheduleMessage,285 )286 from langchain_community.tools.slack.send_message import (287 SlackSendMessage,288 )289 from langchain_community.tools.sleep.tool import (290 SleepTool,291 )292 from langchain_community.tools.spark_sql.tool import (293 BaseSparkSQLTool,294 InfoSparkSQLTool,295 ListSparkSQLTool,296 QueryCheckerTool,297 QuerySparkSQLTool,298 )299 from langchain_community.tools.sql_database.tool import (300 BaseSQLDatabaseTool,301 InfoSQLDatabaseTool,302 ListSQLDatabaseTool,303 QuerySQLCheckerTool,304 QuerySQLDataBaseTool,305 QuerySQLDatabaseTool,306 )307 from langchain_community.tools.stackexchange.tool import (308 StackExchangeTool,309 )310 from langchain_community.tools.steam.tool import (311 SteamWebAPIQueryRun,312 )313 from langchain_community.tools.steamship_image_generation import (314 SteamshipImageGenerationTool,315 )316 from langchain_community.tools.tavily_search import (317 TavilyAnswer,318 TavilySearchResults,319 )320 from langchain_community.tools.vectorstore.tool import (321 VectorStoreQATool,322 VectorStoreQAWithSourcesTool,323 )324 from langchain_community.tools.wikipedia.tool import (325 WikipediaQueryRun,326 )327 from langchain_community.tools.wolfram_alpha.tool import (328 WolframAlphaQueryRun,329 )330 from langchain_community.tools.yahoo_finance_news import (331 YahooFinanceNewsTool,332 )333 from langchain_community.tools.you.tool import (334 YouSearchTool,335 )336 from langchain_community.tools.youtube.search import (337 YouTubeSearchTool,338 )339 from langchain_community.tools.zapier.tool import (340 ZapierNLAListActions,341 ZapierNLARunAction,342 )343 from langchain_community.tools.zenguard.tool import (344 Detector,345 ZenGuardInput,346 ZenGuardTool,347 )348 349__all__ = [350 "BaseTool",351 "Tool",352 "tool",353 "StructuredTool",354 "AINAppOps",355 "AINOwnerOps",356 "AINRuleOps",357 "AINTransfer",358 "AINValueOps",359 "AIPluginTool",360 "APIOperation",361 "ArxivQueryRun",362 "AskNewsSearch",363 "AzureAiServicesDocumentIntelligenceTool",364 "AzureAiServicesImageAnalysisTool",365 "AzureAiServicesSpeechToTextTool",366 "AzureAiServicesTextAnalyticsForHealthTool",367 "AzureAiServicesTextToSpeechTool",368 "AzureCogsFormRecognizerTool",369 "AzureCogsImageAnalysisTool",370 "AzureCogsSpeech2TextTool",371 "AzureCogsText2SpeechTool",372 "AzureCogsTextAnalyticsHealthTool",373 "BalanceSheets",374 "BaseGraphQLTool",375 "BaseRequestsTool",376 "BaseSQLDatabaseTool",377 "BaseSparkSQLTool",378 "BearlyInterpreterTool",379 "BingSearchResults",380 "BingSearchRun",381 "BraveSearch",382 "CashFlowStatements",383 "ClickTool",384 "CogniswitchKnowledgeRequest",385 "CogniswitchKnowledgeSourceFile",386 "CogniswitchKnowledgeSourceURL",387 "CogniswitchKnowledgeStatus",388 "ConneryAction",389 "CopyFileTool",390 "CurrentWebPageTool",391 "DeleteFileTool",392 "DataheraldTextToSQL",393 "DuckDuckGoSearchResults",394 "DuckDuckGoSearchRun",395 "E2BDataAnalysisTool",396 "EdenAiExplicitImageTool",397 "EdenAiObjectDetectionTool",398 "EdenAiParsingIDTool",399 "EdenAiParsingInvoiceTool",400 "EdenAiSpeechToTextTool",401 "EdenAiTextModerationTool",402 "EdenAiTextToSpeechTool",403 "EdenaiTool",404 "ElevenLabsText2SpeechTool",405 "ExtractHyperlinksTool",406 "ExtractTextTool",407 "FileSearchTool",408 "GetElementsTool",409 "GmailCreateDraft",410 "GmailGetMessage",411 "GmailGetThread",412 "GmailSearch",413 "GmailSendMessage",414 "GoogleBooksQueryRun",415 "GoogleCloudTextToSpeechTool",416 "GooglePlacesTool",417 "GoogleSearchResults",418 "GoogleSearchRun",419 "GoogleSerperResults",420 "GoogleSerperRun",421 "HumanInputRun",422 "IFTTTWebhook",423 "IncomeStatements",424 "InfoPowerBITool",425 "InfoSQLDatabaseTool",426 "InfoSparkSQLTool",427 "JiraAction",428 "JinaSearch",429 "JsonGetValueTool",430 "JsonListKeysTool",431 "ListDirectoryTool",432 "ListPowerBITool",433 "ListSQLDatabaseTool",434 "ListSparkSQLTool",435 "MerriamWebsterQueryRun",436 "MetaphorSearchResults",437 "MojeekSearch",438 "MoveFileTool",439 "NasaAction",440 "NavigateBackTool",441 "NavigateTool",442 "O365CreateDraftMessage",443 "O365SearchEmails",444 "O365SearchEvents",445 "O365SendEvent",446 "O365SendMessage",447 "OpenAPISpec",448 "OpenWeatherMapQueryRun",449 "PolygonAggregates",450 "PolygonFinancials",451 "PolygonLastQuote",452 "PolygonTickerNews",453 "PubmedQueryRun",454 "QueryCheckerTool",455 "QueryPowerBITool",456 "QuerySQLCheckerTool",457 "QuerySQLDatabaseTool",458 "QuerySQLDataBaseTool", # Legacy, kept for backwards compatibility.459 "QuerySparkSQLTool",460 "ReadFileTool",461 "RedditSearchRun",462 "RedditSearchSchema",463 "RequestsDeleteTool",464 "RequestsGetTool",465 "RequestsPatchTool",466 "RequestsPostTool",467 "RequestsPutTool",468 "SceneXplainTool",469 "SearchAPIResults",470 "SearchAPIRun",471 "SearxSearchResults",472 "SearxSearchRun",473 "ShellTool",474 "SlackGetChannel",475 "SlackGetMessage",476 "SlackScheduleMessage",477 "SlackSendMessage",478 "SleepTool",479 "StackExchangeTool",480 "StdInInquireTool",481 "SteamWebAPIQueryRun",482 "SteamshipImageGenerationTool",483 "TavilyAnswer",484 "TavilySearchResults",485 "VectorStoreQATool",486 "VectorStoreQAWithSourcesTool",487 "WikipediaQueryRun",488 "WolframAlphaQueryRun",489 "WriteFileTool",490 "YahooFinanceNewsTool",491 "YouSearchTool",492 "YouTubeSearchTool",493 "ZapierNLAListActions",494 "ZapierNLARunAction",495 "Detector",496 "ZenGuardInput",497 "ZenGuardTool",498 "authenticate",499 "format_tool_to_openai_function",500]501 502# Used for internal purposes503_DEPRECATED_TOOLS = {"PythonAstREPLTool", "PythonREPLTool"}504 505_module_lookup = {506 "AINAppOps": "langchain_community.tools.ainetwork.app",507 "AINOwnerOps": "langchain_community.tools.ainetwork.owner",508 "AINRuleOps": "langchain_community.tools.ainetwork.rule",509 "AINTransfer": "langchain_community.tools.ainetwork.transfer",510 "AINValueOps": "langchain_community.tools.ainetwork.value",511 "AIPluginTool": "langchain_community.tools.plugin",512 "APIOperation": "langchain_community.tools.openapi.utils.api_models",513 "ArxivQueryRun": "langchain_community.tools.arxiv.tool",514 "AskNewsSearch": "langchain_community.tools.asknews.tool",515 "AzureAiServicesDocumentIntelligenceTool": "langchain_community.tools.azure_ai_services", # noqa: E501516 "AzureAiServicesImageAnalysisTool": "langchain_community.tools.azure_ai_services",517 "AzureAiServicesSpeechToTextTool": "langchain_community.tools.azure_ai_services",518 "AzureAiServicesTextToSpeechTool": "langchain_community.tools.azure_ai_services",519 "AzureAiServicesTextAnalyticsForHealthTool": "langchain_community.tools.azure_ai_services", # noqa: E501520 "AzureCogsFormRecognizerTool": "langchain_community.tools.azure_cognitive_services",521 "AzureCogsImageAnalysisTool": "langchain_community.tools.azure_cognitive_services",522 "AzureCogsSpeech2TextTool": "langchain_community.tools.azure_cognitive_services",523 "AzureCogsText2SpeechTool": "langchain_community.tools.azure_cognitive_services",524 "AzureCogsTextAnalyticsHealthTool": "langchain_community.tools.azure_cognitive_services", # noqa: E501525 "BalanceSheets": "langchain_community.tools.financial_datasets.balance_sheets",526 "BaseGraphQLTool": "langchain_community.tools.graphql.tool",527 "BaseRequestsTool": "langchain_community.tools.requests.tool",528 "BaseSQLDatabaseTool": "langchain_community.tools.sql_database.tool",529 "BaseSparkSQLTool": "langchain_community.tools.spark_sql.tool",530 "BaseTool": "langchain_core.tools",531 "BearlyInterpreterTool": "langchain_community.tools.bearly.tool",532 "BingSearchResults": "langchain_community.tools.bing_search.tool",533 "BingSearchRun": "langchain_community.tools.bing_search.tool",534 "BraveSearch": "langchain_community.tools.brave_search.tool",535 "CashFlowStatements": "langchain_community.tools.financial_datasets.cash_flow_statements", # noqa: E501536 "ClickTool": "langchain_community.tools.playwright",537 "CogniswitchKnowledgeRequest": "langchain_community.tools.cogniswitch.tool",538 "CogniswitchKnowledgeSourceFile": "langchain_community.tools.cogniswitch.tool",539 "CogniswitchKnowledgeSourceURL": "langchain_community.tools.cogniswitch.tool",540 "CogniswitchKnowledgeStatus": "langchain_community.tools.cogniswitch.tool",541 "ConneryAction": "langchain_community.tools.connery",542 "CopyFileTool": "langchain_community.tools.file_management",543 "CurrentWebPageTool": "langchain_community.tools.playwright",544 "DataheraldTextToSQL": "langchain_community.tools.dataherald.tool",545 "DeleteFileTool": "langchain_community.tools.file_management",546 "Detector": "langchain_community.tools.zenguard.tool",547 "DuckDuckGoSearchResults": "langchain_community.tools.ddg_search.tool",548 "DuckDuckGoSearchRun": "langchain_community.tools.ddg_search.tool",549 "E2BDataAnalysisTool": "langchain_community.tools.e2b_data_analysis.tool",550 "EdenAiExplicitImageTool": "langchain_community.tools.edenai",551 "EdenAiObjectDetectionTool": "langchain_community.tools.edenai",552 "EdenAiParsingIDTool": "langchain_community.tools.edenai",553 "EdenAiParsingInvoiceTool": "langchain_community.tools.edenai",554 "EdenAiSpeechToTextTool": "langchain_community.tools.edenai",555 "EdenAiTextModerationTool": "langchain_community.tools.edenai",556 "EdenAiTextToSpeechTool": "langchain_community.tools.edenai",557 "EdenaiTool": "langchain_community.tools.edenai",558 "ElevenLabsText2SpeechTool": "langchain_community.tools.eleven_labs.text2speech",559 "ExtractHyperlinksTool": "langchain_community.tools.playwright",560 "ExtractTextTool": "langchain_community.tools.playwright",561 "FileSearchTool": "langchain_community.tools.file_management",562 "GetElementsTool": "langchain_community.tools.playwright",563 "GmailCreateDraft": "langchain_community.tools.gmail",564 "GmailGetMessage": "langchain_community.tools.gmail",565 "GmailGetThread": "langchain_community.tools.gmail",566 "GmailSearch": "langchain_community.tools.gmail",567 "GmailSendMessage": "langchain_community.tools.gmail",568 "GoogleBooksQueryRun": "langchain_community.tools.google_books",569 "GoogleCloudTextToSpeechTool": "langchain_community.tools.google_cloud.texttospeech", # noqa: E501570 "GooglePlacesTool": "langchain_community.tools.google_places.tool",571 "GoogleSearchResults": "langchain_community.tools.google_search.tool",572 "GoogleSearchRun": "langchain_community.tools.google_search.tool",573 "GoogleSerperResults": "langchain_community.tools.google_serper.tool",574 "GoogleSerperRun": "langchain_community.tools.google_serper.tool",575 "HumanInputRun": "langchain_community.tools.human.tool",576 "IFTTTWebhook": "langchain_community.tools.ifttt",577 "IncomeStatements": "langchain_community.tools.financial_datasets.income_statements", # noqa: E501578 "InfoPowerBITool": "langchain_community.tools.powerbi.tool",579 "InfoSQLDatabaseTool": "langchain_community.tools.sql_database.tool",580 "InfoSparkSQLTool": "langchain_community.tools.spark_sql.tool",581 "JiraAction": "langchain_community.tools.jira.tool",582 "JinaSearch": "langchain_community.tools.jina_search.tool",583 "JsonGetValueTool": "langchain_community.tools.json.tool",584 "JsonListKeysTool": "langchain_community.tools.json.tool",585 "ListDirectoryTool": "langchain_community.tools.file_management",586 "ListPowerBITool": "langchain_community.tools.powerbi.tool",587 "ListSQLDatabaseTool": "langchain_community.tools.sql_database.tool",588 "ListSparkSQLTool": "langchain_community.tools.spark_sql.tool",589 "MerriamWebsterQueryRun": "langchain_community.tools.merriam_webster.tool",590 "MetaphorSearchResults": "langchain_community.tools.metaphor_search",591 "MojeekSearch": "langchain_community.tools.mojeek_search.tool",592 "MoveFileTool": "langchain_community.tools.file_management",593 "NasaAction": "langchain_community.tools.nasa.tool",594 "NavigateBackTool": "langchain_community.tools.playwright",595 "NavigateTool": "langchain_community.tools.playwright",596 "O365CreateDraftMessage": "langchain_community.tools.office365.create_draft_message", # noqa: E501597 "O365SearchEmails": "langchain_community.tools.office365.messages_search",598 "O365SearchEvents": "langchain_community.tools.office365.events_search",599 "O365SendEvent": "langchain_community.tools.office365.send_event",600 "O365SendMessage": "langchain_community.tools.office365.send_message",601 "OpenAPISpec": "langchain_community.tools.openapi.utils.openapi_utils",602 "OpenWeatherMapQueryRun": "langchain_community.tools.openweathermap.tool",603 "PolygonAggregates": "langchain_community.tools.polygon.aggregates",604 "PolygonFinancials": "langchain_community.tools.polygon.financials",605 "PolygonLastQuote": "langchain_community.tools.polygon.last_quote",606 "PolygonTickerNews": "langchain_community.tools.polygon.ticker_news",607 "PubmedQueryRun": "langchain_community.tools.pubmed.tool",608 "QueryCheckerTool": "langchain_community.tools.spark_sql.tool",609 "QueryPowerBITool": "langchain_community.tools.powerbi.tool",610 "QuerySQLCheckerTool": "langchain_community.tools.sql_database.tool",611 "QuerySQLDatabaseTool": "langchain_community.tools.sql_database.tool",612 # Legacy, kept for backwards compatibility.613 "QuerySQLDataBaseTool": "langchain_community.tools.sql_database.tool",614 "QuerySparkSQLTool": "langchain_community.tools.spark_sql.tool",615 "ReadFileTool": "langchain_community.tools.file_management",616 "RedditSearchRun": "langchain_community.tools.reddit_search.tool",617 "RedditSearchSchema": "langchain_community.tools.reddit_search.tool",618 "RequestsDeleteTool": "langchain_community.tools.requests.tool",619 "RequestsGetTool": "langchain_community.tools.requests.tool",620 "RequestsPatchTool": "langchain_community.tools.requests.tool",621 "RequestsPostTool": "langchain_community.tools.requests.tool",622 "RequestsPutTool": "langchain_community.tools.requests.tool",623 "SceneXplainTool": "langchain_community.tools.scenexplain.tool",624 "SearchAPIResults": "langchain_community.tools.searchapi.tool",625 "SearchAPIRun": "langchain_community.tools.searchapi.tool",626 "SearxSearchResults": "langchain_community.tools.searx_search.tool",627 "SearxSearchRun": "langchain_community.tools.searx_search.tool",628 "ShellTool": "langchain_community.tools.shell.tool",629 "SlackGetChannel": "langchain_community.tools.slack.get_channel",630 "SlackGetMessage": "langchain_community.tools.slack.get_message",631 "SlackScheduleMessage": "langchain_community.tools.slack.schedule_message",632 "SlackSendMessage": "langchain_community.tools.slack.send_message",633 "SleepTool": "langchain_community.tools.sleep.tool",634 "StackExchangeTool": "langchain_community.tools.stackexchange.tool",635 "StdInInquireTool": "langchain_community.tools.interaction.tool",636 "SteamWebAPIQueryRun": "langchain_community.tools.steam.tool",637 "SteamshipImageGenerationTool": "langchain_community.tools.steamship_image_generation", # noqa: E501638 "StructuredTool": "langchain_core.tools",639 "TavilyAnswer": "langchain_community.tools.tavily_search",640 "TavilySearchResults": "langchain_community.tools.tavily_search",641 "Tool": "langchain_core.tools",642 "VectorStoreQATool": "langchain_community.tools.vectorstore.tool",643 "VectorStoreQAWithSourcesTool": "langchain_community.tools.vectorstore.tool",644 "WikipediaQueryRun": "langchain_community.tools.wikipedia.tool",645 "WolframAlphaQueryRun": "langchain_community.tools.wolfram_alpha.tool",646 "WriteFileTool": "langchain_community.tools.file_management",647 "YahooFinanceNewsTool": "langchain_community.tools.yahoo_finance_news",648 "YouSearchTool": "langchain_community.tools.you.tool",649 "YouTubeSearchTool": "langchain_community.tools.youtube.search",650 "ZapierNLAListActions": "langchain_community.tools.zapier.tool",651 "ZapierNLARunAction": "langchain_community.tools.zapier.tool",652 "ZenGuardInput": "langchain_community.tools.zenguard.tool",653 "ZenGuardTool": "langchain_community.tools.zenguard.tool",654 "authenticate": "langchain_community.tools.office365.utils",655 "format_tool_to_openai_function": "langchain_community.tools.convert_to_openai",656 "tool": "langchain_core.tools",657}658 659 660def __getattr__(name: str) -> Any:661 if name in _module_lookup:662 module = importlib.import_module(_module_lookup[name])663 return getattr(module, name)664 raise AttributeError(f"module {__name__} has no attribute {name}")665 