langchain[patch], experimental[patch], docs: update tools imports (#15433)

pull/15434/head
Bagatur 5 months ago committed by GitHub
parent e57e50b213
commit 1678d6ca17
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -28,9 +28,9 @@
"outputs": [],
"source": [
"from langchain.agents import Tool\n",
"from langchain.tools.file_management.read import ReadFileTool\n",
"from langchain.tools.file_management.write import WriteFileTool\n",
"from langchain.utilities import SerpAPIWrapper\n",
"from langchain_community.tools.file_management.read import ReadFileTool\n",
"from langchain_community.tools.file_management.write import WriteFileTool\n",
"\n",
"search = SerpAPIWrapper()\n",
"tools = [\n",

@ -93,8 +93,8 @@
"from typing import Optional\n",
"\n",
"from langchain.agents import tool\n",
"from langchain.tools.file_management.read import ReadFileTool\n",
"from langchain.tools.file_management.write import WriteFileTool\n",
"from langchain_community.tools.file_management.read import ReadFileTool\n",
"from langchain_community.tools.file_management.write import WriteFileTool\n",
"\n",
"ROOT_DIR = \"./data/\"\n",
"\n",

@ -44,8 +44,8 @@
"from langchain.chains import LLMChain\n",
"from langchain.prompts import StringPromptTemplate\n",
"from langchain.schema import AgentAction, AgentFinish\n",
"from langchain.tools.plugin import AIPlugin\n",
"from langchain_community.llms import OpenAI"
"from langchain_community.llms import OpenAI\n",
"from langchain_community.tools.plugin import AIPlugin"
]
},
{

@ -69,8 +69,8 @@
"from langchain.chains import LLMChain\n",
"from langchain.prompts import StringPromptTemplate\n",
"from langchain.schema import AgentAction, AgentFinish\n",
"from langchain.tools.plugin import AIPlugin\n",
"from langchain_community.llms import OpenAI"
"from langchain_community.llms import OpenAI\n",
"from langchain_community.tools.plugin import AIPlugin"
]
},
{

@ -29,9 +29,9 @@
"from langchain.prompts import ChatPromptTemplate, MessagesPlaceholder\n",
"from langchain.prompts.chat import ChatPromptValue\n",
"from langchain.tools import WikipediaQueryRun\n",
"from langchain.tools.render import format_tool_to_openai_function\n",
"from langchain.utilities import WikipediaAPIWrapper\n",
"from langchain_community.chat_models import ChatOpenAI"
"from langchain_community.chat_models import ChatOpenAI\n",
"from langchain_community.tools.convert_to_openai import format_tool_to_openai_function"
]
},
{

@ -62,7 +62,7 @@
"metadata": {},
"outputs": [],
"source": [
"from langchain.tools.nuclia import NucliaUnderstandingAPI\n",
"from langchain_community.tools.nuclia import NucliaUnderstandingAPI\n",
"\n",
"nua = NucliaUnderstandingAPI(enable_ml=False)"
]

@ -52,7 +52,7 @@
"metadata": {},
"outputs": [],
"source": [
"from langchain.tools.nuclia import NucliaUnderstandingAPI\n",
"from langchain_community.tools.nuclia import NucliaUnderstandingAPI\n",
"\n",
"nua = NucliaUnderstandingAPI(enable_ml=True)"
]

@ -312,7 +312,7 @@ See a [usage example and authorization instructions](/docs/integrations/tools/go
```python
from langchain.utilities.google_drive import GoogleDriveAPIWrapper
from langchain.tools.google_drive.tool import GoogleDriveSearchTool
from langchain_community.tools.google_drive.tool import GoogleDriveSearchTool
```
### Google Places
@ -359,7 +359,7 @@ pip install google-search-results
See a [usage example and authorization instructions](/docs/integrations/tools/google_finance).
```python
from langchain.tools.google_finance import GoogleFinanceQueryRun
from langchain_community.tools.google_finance import GoogleFinanceQueryRun
from langchain.utilities.google_finance import GoogleFinanceAPIWrapper
```
@ -374,7 +374,7 @@ pip install google-search-results
See a [usage example and authorization instructions](/docs/integrations/tools/google_jobs).
```python
from langchain.tools.google_jobs import GoogleJobsQueryRun
from langchain_community.tools.google_jobs import GoogleJobsQueryRun
from langchain.utilities.google_finance import GoogleFinanceAPIWrapper
```
@ -383,7 +383,7 @@ from langchain.utilities.google_finance import GoogleFinanceAPIWrapper
See a [usage example and authorization instructions](/docs/integrations/tools/google_lens).
```python
from langchain.tools.google_lens import GoogleLensQueryRun
from langchain_community.tools.google_lens import GoogleLensQueryRun
from langchain.utilities.google_lens import GoogleLensAPIWrapper
```
@ -398,7 +398,7 @@ pip install google-search-results
See a [usage example and authorization instructions](/docs/integrations/tools/google_scholar).
```python
from langchain.tools.google_scholar import GoogleScholarQueryRun
from langchain_community.tools.google_scholar import GoogleScholarQueryRun
from langchain.utilities.google_scholar import GoogleScholarAPIWrapper
```
@ -413,7 +413,7 @@ pip install google-search-results
See a [usage example and authorization instructions](/docs/integrations/tools/google_trends).
```python
from langchain.tools.google_trends import GoogleTrendsQueryRun
from langchain_community.tools.google_trends import GoogleTrendsQueryRun
from langchain.utilities.google_trends import GoogleTrendsAPIWrapper
```

@ -23,7 +23,7 @@ To use the Nuclia document transformer, we need to instantiate a `NucliaUndersta
tool with `enable_ml` set to `True`:
```python
from langchain.tools.nuclia import NucliaUnderstandingAPI
from langchain_community.tools.nuclia import NucliaUnderstandingAPI
nua = NucliaUnderstandingAPI(enable_ml=True)
```

@ -73,7 +73,7 @@ This examples showcases a quick way to create multiple tools from the same
wrapper.
```python
from langchain.tools.searx_search.tool import SearxSearchResults
from langchain_community.tools.searx_search.tool import SearxSearchResults
wrapper = SearxSearchWrapper(searx_host="**")
github_tool = SearxSearchResults(name="Github", wrapper=wrapper,

@ -63,7 +63,10 @@
},
"outputs": [],
"source": [
"from langchain.tools.gmail.utils import build_resource_service, get_gmail_credentials\n",
"from langchain_community.tools.gmail.utils import (\n",
" build_resource_service,\n",
" get_gmail_credentials,\n",
")\n",
"\n",
"# Can review scopes here https://developers.google.com/gmail/api/auth/scopes\n",
"# For instance, readonly scope is 'https://www.googleapis.com/auth/gmail.readonly'\n",
@ -86,11 +89,11 @@
{
"data": {
"text/plain": [
"[GmailCreateDraft(name='create_gmail_draft', description='Use this tool to create a draft email with the provided message fields.', args_schema=<class 'langchain.tools.gmail.create_draft.CreateDraftSchema'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, api_resource=<googleapiclient.discovery.Resource object at 0x10e5c6d10>),\n",
"[GmailCreateDraft(name='create_gmail_draft', description='Use this tool to create a draft email with the provided message fields.', args_schema=<class 'langchain_community.tools.gmail.create_draft.CreateDraftSchema'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, api_resource=<googleapiclient.discovery.Resource object at 0x10e5c6d10>),\n",
" GmailSendMessage(name='send_gmail_message', description='Use this tool to send email messages. The input is the message, recipents', args_schema=None, return_direct=False, verbose=False, callbacks=None, callback_manager=None, api_resource=<googleapiclient.discovery.Resource object at 0x10e5c6d10>),\n",
" GmailSearch(name='search_gmail', description=('Use this tool to search for email messages or threads. The input must be a valid Gmail query. The output is a JSON list of the requested resource.',), args_schema=<class 'langchain.tools.gmail.search.SearchArgsSchema'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, api_resource=<googleapiclient.discovery.Resource object at 0x10e5c6d10>),\n",
" GmailGetMessage(name='get_gmail_message', description='Use this tool to fetch an email by message ID. Returns the thread ID, snipet, body, subject, and sender.', args_schema=<class 'langchain.tools.gmail.get_message.SearchArgsSchema'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, api_resource=<googleapiclient.discovery.Resource object at 0x10e5c6d10>),\n",
" GmailGetThread(name='get_gmail_thread', description=('Use this tool to search for email messages. The input must be a valid Gmail query. The output is a JSON list of messages.',), args_schema=<class 'langchain.tools.gmail.get_thread.GetThreadSchema'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, api_resource=<googleapiclient.discovery.Resource object at 0x10e5c6d10>)]"
" GmailSearch(name='search_gmail', description=('Use this tool to search for email messages or threads. The input must be a valid Gmail query. The output is a JSON list of the requested resource.',), args_schema=<class 'langchain_community.tools.gmail.search.SearchArgsSchema'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, api_resource=<googleapiclient.discovery.Resource object at 0x10e5c6d10>),\n",
" GmailGetMessage(name='get_gmail_message', description='Use this tool to fetch an email by message ID. Returns the thread ID, snipet, body, subject, and sender.', args_schema=<class 'langchain_community.tools.gmail.get_message.SearchArgsSchema'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, api_resource=<googleapiclient.discovery.Resource object at 0x10e5c6d10>),\n",
" GmailGetThread(name='get_gmail_thread', description=('Use this tool to search for email messages. The input must be a valid Gmail query. The output is a JSON list of messages.',), args_schema=<class 'langchain_community.tools.gmail.get_thread.GetThreadSchema'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, api_resource=<googleapiclient.discovery.Resource object at 0x10e5c6d10>)]"
]
},
"execution_count": 5,

@ -35,8 +35,8 @@
"import yaml\n",
"from langchain.agents import create_json_agent\n",
"from langchain.agents.agent_toolkits import JsonToolkit\n",
"from langchain.tools.json.tool import JsonSpec\n",
"from langchain_community.llms.openai import OpenAI"
"from langchain_community.llms.openai import OpenAI\n",
"from langchain_community.tools.json.tool import JsonSpec"
]
},
{

@ -64,11 +64,11 @@
{
"data": {
"text/plain": [
"[O365SearchEvents(name='events_search', description=\" Use this tool to search for the user's calendar events. The input must be the start and end datetimes for the search query. The output is a JSON list of all the events in the user's calendar between the start and end times. You can assume that the user can not schedule any meeting over existing meetings, and that the user is busy during meetings. Any times without events are free for the user. \", args_schema=<class 'langchain.tools.office365.events_search.SearchEventsInput'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, handle_tool_error=False, account=Account Client Id: f32a022c-3c4c-4d10-a9d8-f6a9a9055302),\n",
" O365CreateDraftMessage(name='create_email_draft', description='Use this tool to create a draft email with the provided message fields.', args_schema=<class 'langchain.tools.office365.create_draft_message.CreateDraftMessageSchema'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, handle_tool_error=False, account=Account Client Id: f32a022c-3c4c-4d10-a9d8-f6a9a9055302),\n",
" O365SearchEmails(name='messages_search', description='Use this tool to search for email messages. The input must be a valid Microsoft Graph v1.0 $search query. The output is a JSON list of the requested resource.', args_schema=<class 'langchain.tools.office365.messages_search.SearchEmailsInput'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, handle_tool_error=False, account=Account Client Id: f32a022c-3c4c-4d10-a9d8-f6a9a9055302),\n",
" O365SendEvent(name='send_event', description='Use this tool to create and send an event with the provided event fields.', args_schema=<class 'langchain.tools.office365.send_event.SendEventSchema'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, handle_tool_error=False, account=Account Client Id: f32a022c-3c4c-4d10-a9d8-f6a9a9055302),\n",
" O365SendMessage(name='send_email', description='Use this tool to send an email with the provided message fields.', args_schema=<class 'langchain.tools.office365.send_message.SendMessageSchema'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, handle_tool_error=False, account=Account Client Id: f32a022c-3c4c-4d10-a9d8-f6a9a9055302)]"
"[O365SearchEvents(name='events_search', description=\" Use this tool to search for the user's calendar events. The input must be the start and end datetimes for the search query. The output is a JSON list of all the events in the user's calendar between the start and end times. You can assume that the user can not schedule any meeting over existing meetings, and that the user is busy during meetings. Any times without events are free for the user. \", args_schema=<class 'langchain_community.tools.office365.events_search.SearchEventsInput'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, handle_tool_error=False, account=Account Client Id: f32a022c-3c4c-4d10-a9d8-f6a9a9055302),\n",
" O365CreateDraftMessage(name='create_email_draft', description='Use this tool to create a draft email with the provided message fields.', args_schema=<class 'langchain_community.tools.office365.create_draft_message.CreateDraftMessageSchema'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, handle_tool_error=False, account=Account Client Id: f32a022c-3c4c-4d10-a9d8-f6a9a9055302),\n",
" O365SearchEmails(name='messages_search', description='Use this tool to search for email messages. The input must be a valid Microsoft Graph v1.0 $search query. The output is a JSON list of the requested resource.', args_schema=<class 'langchain_community.tools.office365.messages_search.SearchEmailsInput'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, handle_tool_error=False, account=Account Client Id: f32a022c-3c4c-4d10-a9d8-f6a9a9055302),\n",
" O365SendEvent(name='send_event', description='Use this tool to create and send an event with the provided event fields.', args_schema=<class 'langchain_community.tools.office365.send_event.SendEventSchema'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, handle_tool_error=False, account=Account Client Id: f32a022c-3c4c-4d10-a9d8-f6a9a9055302),\n",
" O365SendMessage(name='send_email', description='Use this tool to send an email with the provided message fields.', args_schema=<class 'langchain_community.tools.office365.send_message.SendMessageSchema'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, handle_tool_error=False, account=Account Client Id: f32a022c-3c4c-4d10-a9d8-f6a9a9055302)]"
]
},
"execution_count": 3,

@ -584,8 +584,8 @@
"source": [
"from langchain.agents import create_openapi_agent\n",
"from langchain.agents.agent_toolkits import OpenAPIToolkit\n",
"from langchain.tools.json.tool import JsonSpec\n",
"from langchain_community.llms.openai import OpenAI"
"from langchain_community.llms.openai import OpenAI\n",
"from langchain_community.tools.json.tool import JsonSpec"
]
},
{

@ -97,12 +97,12 @@
{
"data": {
"text/plain": [
"[ClickTool(name='click_element', description='Click on an element with the given CSS selector', args_schema=<class 'langchain.tools.playwright.click.ClickToolInput'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, sync_browser=None, async_browser=<Browser type=<BrowserType name=chromium executable_path=/Users/wfh/Library/Caches/ms-playwright/chromium-1055/chrome-mac/Chromium.app/Contents/MacOS/Chromium> version=112.0.5615.29>),\n",
" NavigateTool(name='navigate_browser', description='Navigate a browser to the specified URL', args_schema=<class 'langchain.tools.playwright.navigate.NavigateToolInput'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, sync_browser=None, async_browser=<Browser type=<BrowserType name=chromium executable_path=/Users/wfh/Library/Caches/ms-playwright/chromium-1055/chrome-mac/Chromium.app/Contents/MacOS/Chromium> version=112.0.5615.29>),\n",
"[ClickTool(name='click_element', description='Click on an element with the given CSS selector', args_schema=<class 'langchain_community.tools.playwright.click.ClickToolInput'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, sync_browser=None, async_browser=<Browser type=<BrowserType name=chromium executable_path=/Users/wfh/Library/Caches/ms-playwright/chromium-1055/chrome-mac/Chromium.app/Contents/MacOS/Chromium> version=112.0.5615.29>),\n",
" NavigateTool(name='navigate_browser', description='Navigate a browser to the specified URL', args_schema=<class 'langchain_community.tools.playwright.navigate.NavigateToolInput'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, sync_browser=None, async_browser=<Browser type=<BrowserType name=chromium executable_path=/Users/wfh/Library/Caches/ms-playwright/chromium-1055/chrome-mac/Chromium.app/Contents/MacOS/Chromium> version=112.0.5615.29>),\n",
" NavigateBackTool(name='previous_webpage', description='Navigate back to the previous page in the browser history', args_schema=<class 'pydantic.main.BaseModel'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, sync_browser=None, async_browser=<Browser type=<BrowserType name=chromium executable_path=/Users/wfh/Library/Caches/ms-playwright/chromium-1055/chrome-mac/Chromium.app/Contents/MacOS/Chromium> version=112.0.5615.29>),\n",
" ExtractTextTool(name='extract_text', description='Extract all the text on the current webpage', args_schema=<class 'pydantic.main.BaseModel'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, sync_browser=None, async_browser=<Browser type=<BrowserType name=chromium executable_path=/Users/wfh/Library/Caches/ms-playwright/chromium-1055/chrome-mac/Chromium.app/Contents/MacOS/Chromium> version=112.0.5615.29>),\n",
" ExtractHyperlinksTool(name='extract_hyperlinks', description='Extract all hyperlinks on the current webpage', args_schema=<class 'langchain.tools.playwright.extract_hyperlinks.ExtractHyperlinksToolInput'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, sync_browser=None, async_browser=<Browser type=<BrowserType name=chromium executable_path=/Users/wfh/Library/Caches/ms-playwright/chromium-1055/chrome-mac/Chromium.app/Contents/MacOS/Chromium> version=112.0.5615.29>),\n",
" GetElementsTool(name='get_elements', description='Retrieve elements in the current web page matching the given CSS selector', args_schema=<class 'langchain.tools.playwright.get_elements.GetElementsToolInput'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, sync_browser=None, async_browser=<Browser type=<BrowserType name=chromium executable_path=/Users/wfh/Library/Caches/ms-playwright/chromium-1055/chrome-mac/Chromium.app/Contents/MacOS/Chromium> version=112.0.5615.29>),\n",
" ExtractHyperlinksTool(name='extract_hyperlinks', description='Extract all hyperlinks on the current webpage', args_schema=<class 'langchain_community.tools.playwright.extract_hyperlinks.ExtractHyperlinksToolInput'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, sync_browser=None, async_browser=<Browser type=<BrowserType name=chromium executable_path=/Users/wfh/Library/Caches/ms-playwright/chromium-1055/chrome-mac/Chromium.app/Contents/MacOS/Chromium> version=112.0.5615.29>),\n",
" GetElementsTool(name='get_elements', description='Retrieve elements in the current web page matching the given CSS selector', args_schema=<class 'langchain_community.tools.playwright.get_elements.GetElementsToolInput'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, sync_browser=None, async_browser=<Browser type=<BrowserType name=chromium executable_path=/Users/wfh/Library/Caches/ms-playwright/chromium-1055/chrome-mac/Chromium.app/Contents/MacOS/Chromium> version=112.0.5615.29>),\n",
" CurrentWebPageTool(name='current_webpage', description='Returns the URL of the current page', args_schema=<class 'pydantic.main.BaseModel'>, return_direct=False, verbose=False, callbacks=None, callback_manager=None, sync_browser=None, async_browser=<Browser type=<BrowserType name=chromium executable_path=/Users/wfh/Library/Caches/ms-playwright/chromium-1055/chrome-mac/Chromium.app/Contents/MacOS/Chromium> version=112.0.5615.29>)]"
]
},

@ -48,7 +48,7 @@
"metadata": {},
"outputs": [],
"source": [
"from langchain.tools.edenai import (\n",
"from langchain_community.tools.edenai import (\n",
" EdenAiExplicitImageTool,\n",
" EdenAiObjectDetectionTool,\n",
" EdenAiParsingIDTool,\n",

@ -56,13 +56,13 @@
{
"data": {
"text/plain": [
"[CopyFileTool(name='copy_file', description='Create a copy of a file in a specified location', args_schema=<class 'langchain.tools.file_management.copy.FileCopyInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" DeleteFileTool(name='file_delete', description='Delete a file', args_schema=<class 'langchain.tools.file_management.delete.FileDeleteInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" FileSearchTool(name='file_search', description='Recursively search for files in a subdirectory that match the regex pattern', args_schema=<class 'langchain.tools.file_management.file_search.FileSearchInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" MoveFileTool(name='move_file', description='Move or rename a file from one location to another', args_schema=<class 'langchain.tools.file_management.move.FileMoveInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" ReadFileTool(name='read_file', description='Read file from disk', args_schema=<class 'langchain.tools.file_management.read.ReadFileInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" WriteFileTool(name='write_file', description='Write file to disk', args_schema=<class 'langchain.tools.file_management.write.WriteFileInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" ListDirectoryTool(name='list_directory', description='List files and directories in a specified folder', args_schema=<class 'langchain.tools.file_management.list_dir.DirectoryListingInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug')]"
"[CopyFileTool(name='copy_file', description='Create a copy of a file in a specified location', args_schema=<class 'langchain_community.tools.file_management.copy.FileCopyInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" DeleteFileTool(name='file_delete', description='Delete a file', args_schema=<class 'langchain_community.tools.file_management.delete.FileDeleteInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" FileSearchTool(name='file_search', description='Recursively search for files in a subdirectory that match the regex pattern', args_schema=<class 'langchain_community.tools.file_management.file_search.FileSearchInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" MoveFileTool(name='move_file', description='Move or rename a file from one location to another', args_schema=<class 'langchain_community.tools.file_management.move.FileMoveInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" ReadFileTool(name='read_file', description='Read file from disk', args_schema=<class 'langchain_community.tools.file_management.read.ReadFileInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" WriteFileTool(name='write_file', description='Write file to disk', args_schema=<class 'langchain_community.tools.file_management.write.WriteFileInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" ListDirectoryTool(name='list_directory', description='List files and directories in a specified folder', args_schema=<class 'langchain_community.tools.file_management.list_dir.DirectoryListingInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug')]"
]
},
"execution_count": 2,
@ -96,9 +96,9 @@
{
"data": {
"text/plain": [
"[ReadFileTool(name='read_file', description='Read file from disk', args_schema=<class 'langchain.tools.file_management.read.ReadFileInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" WriteFileTool(name='write_file', description='Write file to disk', args_schema=<class 'langchain.tools.file_management.write.WriteFileInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" ListDirectoryTool(name='list_directory', description='List files and directories in a specified folder', args_schema=<class 'langchain.tools.file_management.list_dir.DirectoryListingInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug')]"
"[ReadFileTool(name='read_file', description='Read file from disk', args_schema=<class 'langchain_community.tools.file_management.read.ReadFileInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" WriteFileTool(name='write_file', description='Write file to disk', args_schema=<class 'langchain_community.tools.file_management.write.WriteFileInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug'),\n",
" ListDirectoryTool(name='list_directory', description='List files and directories in a specified folder', args_schema=<class 'langchain_community.tools.file_management.list_dir.DirectoryListingInput'>, return_direct=False, verbose=False, callback_manager=<langchain.callbacks.shared.SharedCallbackManager object at 0x1156f4350>, root_dir='/var/folders/gf/6rnp_mbx5914kx7qmmh7xzmw0000gn/T/tmpxb8c3aug')]"
]
},
"execution_count": 3,

@ -99,8 +99,8 @@
},
"outputs": [],
"source": [
"from langchain.tools.google_drive.tool import GoogleDriveSearchTool\n",
"from langchain.utilities.google_drive import GoogleDriveAPIWrapper\n",
"from langchain_community.tools.google_drive.tool import GoogleDriveSearchTool\n",
"\n",
"# By default, search only in the filename.\n",
"tool = GoogleDriveSearchTool(\n",

@ -43,8 +43,8 @@
"source": [
"import os\n",
"\n",
"from langchain.tools.google_finance import GoogleFinanceQueryRun\n",
"from langchain.utilities.google_finance import GoogleFinanceAPIWrapper\n",
"from langchain_community.tools.google_finance import GoogleFinanceQueryRun\n",
"\n",
"os.environ[\"SERPAPI_API_KEY\"] = \"\"\n",
"tool = GoogleFinanceQueryRun(api_wrapper=GoogleFinanceAPIWrapper())"

@ -70,8 +70,8 @@
"source": [
"import os\n",
"\n",
"from langchain.tools.google_jobs import GoogleJobsQueryRun\n",
"from langchain.utilities.google_jobs import GoogleJobsAPIWrapper\n",
"from langchain_community.tools.google_jobs import GoogleJobsQueryRun\n",
"\n",
"os.environ[\"SERPAPI_API_KEY\"] = \"[your serpapi key]\"\n",
"tool = GoogleJobsQueryRun(api_wrapper=GoogleJobsAPIWrapper())"

@ -50,8 +50,8 @@
"source": [
"import os\n",
"\n",
"from langchain.tools.google_lens import GoogleLensQueryRun\n",
"from langchain.utilities.google_lens import GoogleLensAPIWrapper\n",
"from langchain_community.tools.google_lens import GoogleLensQueryRun\n",
"\n",
"os.environ[\"SERPAPI_API_KEY\"] = \"\"\n",
"tool = GoogleLensQueryRun(api_wrapper=GoogleLensAPIWrapper())"

@ -39,8 +39,8 @@
"source": [
"import os\n",
"\n",
"from langchain.tools.google_scholar import GoogleScholarQueryRun\n",
"from langchain.utilities.google_scholar import GoogleScholarAPIWrapper"
"from langchain.utilities.google_scholar import GoogleScholarAPIWrapper\n",
"from langchain_community.tools.google_scholar import GoogleScholarQueryRun"
]
},
{

@ -51,8 +51,8 @@
"source": [
"import os\n",
"\n",
"from langchain.tools.google_trends import GoogleTrendsQueryRun\n",
"from langchain.utilities.google_trends import GoogleTrendsAPIWrapper\n",
"from langchain_community.tools.google_trends import GoogleTrendsQueryRun\n",
"\n",
"os.environ[\"SERPAPI_API_KEY\"] = \"\"\n",
"tool = GoogleTrendsQueryRun(api_wrapper=GoogleTrendsAPIWrapper())"

@ -51,7 +51,7 @@
"metadata": {},
"outputs": [],
"source": [
"from langchain.tools.ifttt import IFTTTWebhook"
"from langchain_community.tools.ifttt import IFTTTWebhook"
]
},
{

@ -41,7 +41,7 @@
"metadata": {},
"outputs": [],
"source": [
"from langchain.tools.nuclia import NucliaUnderstandingAPI\n",
"from langchain_community.tools.nuclia import NucliaUnderstandingAPI\n",
"\n",
"nua = NucliaUnderstandingAPI(enable_ml=False)"
]

@ -50,8 +50,8 @@
"metadata": {},
"outputs": [],
"source": [
"from langchain.tools.reddit_search.tool import RedditSearchRun\n",
"from langchain.utilities.reddit_search import RedditSearchAPIWrapper\n",
"from langchain_community.tools.reddit_search.tool import RedditSearchRun\n",
"\n",
"search = RedditSearchRun(\n",
" api_wrapper=RedditSearchAPIWrapper(\n",
@ -75,7 +75,7 @@
"metadata": {},
"outputs": [],
"source": [
"from langchain.tools.reddit_search.tool import RedditSearchSchema\n",
"from langchain_community.tools.reddit_search.tool import RedditSearchSchema\n",
"\n",
"search_params = RedditSearchSchema(\n",
" query=\"beginner\", sort=\"new\", time_filter=\"week\", subreddit=\"python\", limit=\"2\"\n",
@ -173,9 +173,9 @@
"from langchain.chains import LLMChain\n",
"from langchain.memory import ConversationBufferMemory, ReadOnlySharedMemory\n",
"from langchain.prompts import PromptTemplate\n",
"from langchain.tools.reddit_search.tool import RedditSearchRun\n",
"from langchain.utilities.reddit_search import RedditSearchAPIWrapper\n",
"from langchain_community.chat_models import ChatOpenAI\n",
"from langchain_community.tools.reddit_search.tool import RedditSearchRun\n",
"\n",
"# Provide keys for Reddit\n",
"client_id = \"\"\n",

@ -82,9 +82,9 @@
"import os\n",
"\n",
"from langchain.agents import AgentType, initialize_agent\n",
"from langchain.tools.tavily_search import TavilySearchResults\n",
"from langchain.utilities.tavily_search import TavilySearchAPIWrapper\n",
"from langchain_community.chat_models import ChatOpenAI\n",
"from langchain_community.tools.tavily_search import TavilySearchResults\n",
"\n",
"# set up API key\n",
"os.environ[\"TAVILY_API_KEY\"] = \"...\"\n",

@ -53,8 +53,8 @@
"outputs": [],
"source": [
"from langchain.agents import AgentType, initialize_agent\n",
"from langchain.tools.yahoo_finance_news import YahooFinanceNewsTool\n",
"from langchain_community.chat_models import ChatOpenAI\n",
"from langchain_community.tools.yahoo_finance_news import YahooFinanceNewsTool\n",
"\n",
"llm = ChatOpenAI(temperature=0.0)\n",
"tools = [YahooFinanceNewsTool()]\n",

@ -162,9 +162,9 @@
"source": [
"from langchain.chains import LLMChain, SimpleSequentialChain, TransformChain\n",
"from langchain.prompts import PromptTemplate\n",
"from langchain.tools.zapier.tool import ZapierNLARunAction\n",
"from langchain.utilities.zapier import ZapierNLAWrapper\n",
"from langchain_community.llms import OpenAI"
"from langchain_community.llms import OpenAI\n",
"from langchain_community.tools.zapier.tool import ZapierNLARunAction"
]
},
{

@ -143,8 +143,8 @@
"from langchain.agents.format_scratchpad import format_to_openai_function_messages\n",
"from langchain.agents.output_parsers import OpenAIFunctionsAgentOutputParser\n",
"from langchain.tools import DuckDuckGoSearchResults\n",
"from langchain.tools.render import format_tool_to_openai_function\n",
"from langchain_community.chat_models import ChatOpenAI\n",
"from langchain_community.tools.convert_to_openai import format_tool_to_openai_function\n",
"\n",
"# Fetches the latest version of this prompt\n",
"prompt = hub.pull(\"wfh/langsmith-agent-prompt:latest\")\n",
@ -337,8 +337,8 @@
"from langchain.agents import AgentExecutor, AgentType, initialize_agent, load_tools\n",
"from langchain.agents.format_scratchpad import format_to_openai_function_messages\n",
"from langchain.agents.output_parsers import OpenAIFunctionsAgentOutputParser\n",
"from langchain.tools.render import format_tool_to_openai_function\n",
"from langchain_community.chat_models import ChatOpenAI\n",
"from langchain_community.tools.convert_to_openai import format_tool_to_openai_function\n",
"\n",
"\n",
"# Since chains can be stateful (e.g. they can have memory), we provide\n",

@ -232,8 +232,8 @@
"from langchain.agents import AgentExecutor\n",
"from langchain.agents.format_scratchpad import format_to_openai_function_messages\n",
"from langchain.prompts import ChatPromptTemplate, MessagesPlaceholder\n",
"from langchain.tools.render import format_tool_to_openai_function\n",
"from langchain_community.chat_models import ChatOpenAI"
"from langchain_community.chat_models import ChatOpenAI\n",
"from langchain_community.tools.convert_to_openai import format_tool_to_openai_function"
]
},
{

@ -129,7 +129,7 @@
"metadata": {},
"outputs": [],
"source": [
"from langchain.tools.render import format_tool_to_openai_function\n",
"from langchain_community.tools.convert_to_openai import format_tool_to_openai_function\n",
"\n",
"llm_with_tools = llm.bind(functions=[format_tool_to_openai_function(t) for t in tools])"
]

@ -998,8 +998,8 @@
" You can use the `ReActAgent` class and pass it the desired tools as, for example, you would do like this to create an agent with the `Lookup` and `Search` tool:\n",
"```python\n",
"from langchain.agents.react import ReActAgent\n",
"from langchain.tools.lookup import Lookup\n",
"from langchain.tools.search import Search\n",
"from langchain_community.tools.lookup import Lookup\n",
"from langchain_community.tools.search import Search\n",
"ReActAgent(Lookup(), Search())\n",
"```"
]
@ -1019,7 +1019,7 @@
{
"data": {
"text/plain": [
"{'output_text': ' You can use the `ReActAgent` class and pass it the desired tools as, for example, you would do like this to create an agent with the `Lookup` and `Search` tool:\\n```python\\nfrom langchain.agents.react import ReActAgent\\nfrom langchain.tools.lookup import Lookup\\nfrom langchain.tools.search import Search\\nReActAgent(Lookup(), Search())\\n```'}"
"{'output_text': ' You can use the `ReActAgent` class and pass it the desired tools as, for example, you would do like this to create an agent with the `Lookup` and `Search` tool:\\n```python\\nfrom langchain.agents.react import ReActAgent\\nfrom langchain_community.tools.lookup import Lookup\\nfrom langchain_community.tools.search import Search\\nReActAgent(Lookup(), Search())\\n```'}"
]
},
"execution_count": 29,

@ -525,7 +525,9 @@ def _import_reddit_search_RedditSearchRun() -> Any:
def _import_render() -> Any:
from langchain_community.tools.render import format_tool_to_openai_function
from langchain_community.tools.convert_to_openai import (
format_tool_to_openai_function,
)
return format_tool_to_openai_function

@ -9,7 +9,7 @@ from langchain.schema import (
Document,
)
from langchain.tools.base import BaseTool
from langchain.tools.human.tool import HumanInputRun
from langchain_community.tools.human.tool import HumanInputRun
from langchain_core.language_models import BaseChatModel
from langchain_core.messages import AIMessage, HumanMessage, SystemMessage
from langchain_core.vectorstores import VectorStoreRetriever

@ -10,8 +10,8 @@ from langchain.chains.llm import LLMChain
from langchain.chains.sql_database.prompt import DECIDER_PROMPT, PROMPT, SQL_PROMPTS
from langchain.prompts.prompt import PromptTemplate
from langchain.schema import BasePromptTemplate
from langchain.tools.sql_database.prompt import QUERY_CHECKER
from langchain.utilities.sql_database import SQLDatabase
from langchain_community.tools.sql_database.prompt import QUERY_CHECKER
from langchain_core.language_models import BaseLanguageModel
from langchain_experimental.pydantic_v1 import Extra, Field, root_validator

@ -8,8 +8,8 @@ from langchain.chains.llm import LLMChain
from langchain.chains.sql_database.prompt import PROMPT, SQL_PROMPTS
from langchain.prompts.prompt import PromptTemplate
from langchain.schema import BaseOutputParser, BasePromptTemplate
from langchain.tools.sql_database.prompt import QUERY_CHECKER
from langchain.utilities.sql_database import SQLDatabase
from langchain_community.tools.sql_database.prompt import QUERY_CHECKER
from langchain_core.embeddings import Embeddings
from langchain_core.language_models import BaseLanguageModel

@ -2,16 +2,16 @@
from typing import List
from langchain_community.llms.openai import OpenAI
from langchain_community.tools.vectorstore.tool import (
VectorStoreQATool,
VectorStoreQAWithSourcesTool,
)
from langchain_core.language_models import BaseLanguageModel
from langchain_core.pydantic_v1 import BaseModel, Field
from langchain_core.vectorstores import VectorStore
from langchain.agents.agent_toolkits.base import BaseToolkit
from langchain.tools import BaseTool
from langchain.tools.vectorstore.tool import (
VectorStoreQATool,
VectorStoreQAWithSourcesTool,
)
class VectorStoreInfo(BaseModel):

@ -27,45 +27,56 @@ from langchain.chains.api.base import APIChain
from langchain.chains.llm_math.base import LLMMathChain
from langchain.utilities.dalle_image_generator import DallEAPIWrapper
from langchain.utilities.requests import TextRequestsWrapper
from langchain.tools.arxiv.tool import ArxivQueryRun
from langchain.tools.golden_query.tool import GoldenQueryRun
from langchain.tools.pubmed.tool import PubmedQueryRun
from langchain_community.tools.arxiv.tool import ArxivQueryRun
from langchain_community.tools.golden_query.tool import GoldenQueryRun
from langchain_community.tools.pubmed.tool import PubmedQueryRun
from langchain_core.tools import BaseTool
from langchain.tools.bing_search.tool import BingSearchRun
from langchain.tools.ddg_search.tool import DuckDuckGoSearchRun
from langchain.tools.google_cloud.texttospeech import GoogleCloudTextToSpeechTool
from langchain.tools.google_lens.tool import GoogleLensQueryRun
from langchain.tools.google_search.tool import GoogleSearchResults, GoogleSearchRun
from langchain.tools.google_scholar.tool import GoogleScholarQueryRun
from langchain.tools.google_finance.tool import GoogleFinanceQueryRun
from langchain.tools.google_trends.tool import GoogleTrendsQueryRun
from langchain.tools.metaphor_search.tool import MetaphorSearchResults
from langchain.tools.google_jobs.tool import GoogleJobsQueryRun
from langchain.tools.google_serper.tool import GoogleSerperResults, GoogleSerperRun
from langchain.tools.searchapi.tool import SearchAPIResults, SearchAPIRun
from langchain.tools.graphql.tool import BaseGraphQLTool
from langchain.tools.human.tool import HumanInputRun
from langchain.tools.requests.tool import (
from langchain_community.tools.bing_search.tool import BingSearchRun
from langchain_community.tools.ddg_search.tool import DuckDuckGoSearchRun
from langchain_community.tools.google_cloud.texttospeech import (
GoogleCloudTextToSpeechTool,
)
from langchain_community.tools.google_lens.tool import GoogleLensQueryRun
from langchain_community.tools.google_search.tool import (
GoogleSearchResults,
GoogleSearchRun,
)
from langchain_community.tools.google_scholar.tool import GoogleScholarQueryRun
from langchain_community.tools.google_finance.tool import GoogleFinanceQueryRun
from langchain_community.tools.google_trends.tool import GoogleTrendsQueryRun
from langchain_community.tools.metaphor_search.tool import MetaphorSearchResults
from langchain_community.tools.google_jobs.tool import GoogleJobsQueryRun
from langchain_community.tools.google_serper.tool import (
GoogleSerperResults,
GoogleSerperRun,
)
from langchain_community.tools.searchapi.tool import SearchAPIResults, SearchAPIRun
from langchain_community.tools.graphql.tool import BaseGraphQLTool
from langchain_community.tools.human.tool import HumanInputRun
from langchain_community.tools.requests.tool import (
RequestsDeleteTool,
RequestsGetTool,
RequestsPatchTool,
RequestsPostTool,
RequestsPutTool,
)
from langchain.tools.eleven_labs.text2speech import ElevenLabsText2SpeechTool
from langchain.tools.scenexplain.tool import SceneXplainTool
from langchain.tools.searx_search.tool import SearxSearchResults, SearxSearchRun
from langchain.tools.shell.tool import ShellTool
from langchain.tools.sleep.tool import SleepTool
from langchain.tools.stackexchange.tool import StackExchangeTool
from langchain.tools.merriam_webster.tool import MerriamWebsterQueryRun
from langchain.tools.wikipedia.tool import WikipediaQueryRun
from langchain.tools.wolfram_alpha.tool import WolframAlphaQueryRun
from langchain.tools.openweathermap.tool import OpenWeatherMapQueryRun
from langchain.tools.dataforseo_api_search import DataForSeoAPISearchRun
from langchain.tools.dataforseo_api_search import DataForSeoAPISearchResults
from langchain.tools.memorize.tool import Memorize
from langchain.tools.reddit_search.tool import RedditSearchRun
from langchain_community.tools.eleven_labs.text2speech import ElevenLabsText2SpeechTool
from langchain_community.tools.scenexplain.tool import SceneXplainTool
from langchain_community.tools.searx_search.tool import (
SearxSearchResults,
SearxSearchRun,
)
from langchain_community.tools.shell.tool import ShellTool
from langchain_community.tools.sleep.tool import SleepTool
from langchain_community.tools.stackexchange.tool import StackExchangeTool
from langchain_community.tools.merriam_webster.tool import MerriamWebsterQueryRun
from langchain_community.tools.wikipedia.tool import WikipediaQueryRun
from langchain_community.tools.wolfram_alpha.tool import WolframAlphaQueryRun
from langchain_community.tools.openweathermap.tool import OpenWeatherMapQueryRun
from langchain_community.tools.dataforseo_api_search import DataForSeoAPISearchRun
from langchain_community.tools.dataforseo_api_search import DataForSeoAPISearchResults
from langchain_community.tools.memorize.tool import Memorize
from langchain_community.tools.reddit_search.tool import RedditSearchRun
from langchain.utilities.arxiv import ArxivAPIWrapper
from langchain.utilities.golden_query import GoldenQueryAPIWrapper
from langchain.utilities.pubmed import PubMedAPIWrapper

@ -5,6 +5,7 @@ from json import JSONDecodeError
from time import sleep
from typing import TYPE_CHECKING, Any, Dict, List, Optional, Sequence, Tuple, Union
from langchain_community.tools.convert_to_openai import format_tool_to_openai_tool
from langchain_core.agents import AgentAction, AgentFinish
from langchain_core.load import dumpd
from langchain_core.pydantic_v1 import Field
@ -12,7 +13,6 @@ from langchain_core.runnables import RunnableConfig, RunnableSerializable, ensur
from langchain_core.tools import BaseTool
from langchain.callbacks.manager import CallbackManager
from langchain.tools.render import format_tool_to_openai_tool
if TYPE_CHECKING:
import openai

@ -1,6 +1,7 @@
"""Module implements an agent that uses OpenAI's APIs function enabled API."""
from typing import Any, List, Optional, Sequence, Tuple, Union
from langchain_community.tools.convert_to_openai import format_tool_to_openai_function
from langchain_core.agents import AgentAction, AgentFinish
from langchain_core.language_models import BaseLanguageModel
from langchain_core.messages import (
@ -27,7 +28,6 @@ from langchain.agents.output_parsers.openai_functions import (
)
from langchain.callbacks.base import BaseCallbackManager
from langchain.callbacks.manager import Callbacks
from langchain.tools.render import format_tool_to_openai_function
class OpenAIFunctionsAgent(BaseSingleActionAgent):

@ -1,5 +1,6 @@
from typing import Sequence
from langchain_community.tools.convert_to_openai import format_tool_to_openai_tool
from langchain_core.language_models import BaseLanguageModel
from langchain_core.prompts.chat import ChatPromptTemplate
from langchain_core.runnables import Runnable, RunnablePassthrough
@ -9,7 +10,6 @@ from langchain.agents.format_scratchpad.openai_tools import (
format_to_openai_tool_messages,
)
from langchain.agents.output_parsers.openai_tools import OpenAIToolsAgentOutputParser
from langchain.tools.render import format_tool_to_openai_tool
def create_openai_tools_agent(

@ -4,6 +4,7 @@ from __future__ import annotations
import json
from typing import Any, Dict, List, NamedTuple, Optional, cast
from langchain_community.tools.openapi.utils.api_models import APIOperation
from langchain_core.language_models import BaseLanguageModel
from langchain_core.pydantic_v1 import BaseModel, Field
from requests import Response
@ -13,7 +14,6 @@ from langchain.chains.api.openapi.requests_chain import APIRequesterChain
from langchain.chains.api.openapi.response_chain import APIResponderChain
from langchain.chains.base import Chain
from langchain.chains.llm import LLMChain
from langchain.tools.openapi.utils.api_models import APIOperation
from langchain.utilities.requests import Requests

@ -25,67 +25,75 @@ _DEPRECATED_TOOLS = {"PythonAstREPLTool", "PythonREPLTool"}
def _import_ainetwork_app() -> Any:
from langchain.tools.ainetwork.app import AINAppOps
from langchain_community.tools.ainetwork.app import AINAppOps
return AINAppOps
def _import_ainetwork_owner() -> Any:
from langchain.tools.ainetwork.owner import AINOwnerOps
from langchain_community.tools.ainetwork.owner import AINOwnerOps
return AINOwnerOps
def _import_ainetwork_rule() -> Any:
from langchain.tools.ainetwork.rule import AINRuleOps
from langchain_community.tools.ainetwork.rule import AINRuleOps
return AINRuleOps
def _import_ainetwork_transfer() -> Any:
from langchain.tools.ainetwork.transfer import AINTransfer
from langchain_community.tools.ainetwork.transfer import AINTransfer
return AINTransfer
def _import_ainetwork_value() -> Any:
from langchain.tools.ainetwork.value import AINValueOps
from langchain_community.tools.ainetwork.value import AINValueOps
return AINValueOps
def _import_arxiv_tool() -> Any:
from langchain.tools.arxiv.tool import ArxivQueryRun
from langchain_community.tools.arxiv.tool import ArxivQueryRun
return ArxivQueryRun
def _import_azure_cognitive_services_AzureCogsFormRecognizerTool() -> Any:
from langchain.tools.azure_cognitive_services import AzureCogsFormRecognizerTool
from langchain_community.tools.azure_cognitive_services import (
AzureCogsFormRecognizerTool,
)
return AzureCogsFormRecognizerTool
def _import_azure_cognitive_services_AzureCogsImageAnalysisTool() -> Any:
from langchain.tools.azure_cognitive_services import AzureCogsImageAnalysisTool
from langchain_community.tools.azure_cognitive_services import (
AzureCogsImageAnalysisTool,
)
return AzureCogsImageAnalysisTool
def _import_azure_cognitive_services_AzureCogsSpeech2TextTool() -> Any:
from langchain.tools.azure_cognitive_services import AzureCogsSpeech2TextTool
from langchain_community.tools.azure_cognitive_services import (
AzureCogsSpeech2TextTool,
)
return AzureCogsSpeech2TextTool
def _import_azure_cognitive_services_AzureCogsText2SpeechTool() -> Any:
from langchain.tools.azure_cognitive_services import AzureCogsText2SpeechTool
from langchain_community.tools.azure_cognitive_services import (
AzureCogsText2SpeechTool,
)
return AzureCogsText2SpeechTool
def _import_azure_cognitive_services_AzureCogsTextAnalyticsHealthTool() -> Any:
from langchain.tools.azure_cognitive_services import (
from langchain_community.tools.azure_cognitive_services import (
AzureCogsTextAnalyticsHealthTool,
)
@ -93,385 +101,391 @@ def _import_azure_cognitive_services_AzureCogsTextAnalyticsHealthTool() -> Any:
def _import_bing_search_tool_BingSearchResults() -> Any:
from langchain.tools.bing_search.tool import BingSearchResults
from langchain_community.tools.bing_search.tool import BingSearchResults
return BingSearchResults
def _import_bing_search_tool_BingSearchRun() -> Any:
from langchain.tools.bing_search.tool import BingSearchRun
from langchain_community.tools.bing_search.tool import BingSearchRun
return BingSearchRun
def _import_brave_search_tool() -> Any:
from langchain.tools.brave_search.tool import BraveSearch
from langchain_community.tools.brave_search.tool import BraveSearch
return BraveSearch
def _import_ddg_search_tool_DuckDuckGoSearchResults() -> Any:
from langchain.tools.ddg_search.tool import DuckDuckGoSearchResults
from langchain_community.tools.ddg_search.tool import DuckDuckGoSearchResults
return DuckDuckGoSearchResults
def _import_ddg_search_tool_DuckDuckGoSearchRun() -> Any:
from langchain.tools.ddg_search.tool import DuckDuckGoSearchRun
from langchain_community.tools.ddg_search.tool import DuckDuckGoSearchRun
return DuckDuckGoSearchRun
def _import_edenai_EdenAiExplicitImageTool() -> Any:
from langchain.tools.edenai import EdenAiExplicitImageTool
from langchain_community.tools.edenai import EdenAiExplicitImageTool
return EdenAiExplicitImageTool
def _import_edenai_EdenAiObjectDetectionTool() -> Any:
from langchain.tools.edenai import EdenAiObjectDetectionTool
from langchain_community.tools.edenai import EdenAiObjectDetectionTool
return EdenAiObjectDetectionTool
def _import_edenai_EdenAiParsingIDTool() -> Any:
from langchain.tools.edenai import EdenAiParsingIDTool
from langchain_community.tools.edenai import EdenAiParsingIDTool
return EdenAiParsingIDTool
def _import_edenai_EdenAiParsingInvoiceTool() -> Any:
from langchain.tools.edenai import EdenAiParsingInvoiceTool
from langchain_community.tools.edenai import EdenAiParsingInvoiceTool
return EdenAiParsingInvoiceTool
def _import_edenai_EdenAiSpeechToTextTool() -> Any:
from langchain.tools.edenai import EdenAiSpeechToTextTool
from langchain_community.tools.edenai import EdenAiSpeechToTextTool
return EdenAiSpeechToTextTool
def _import_edenai_EdenAiTextModerationTool() -> Any:
from langchain.tools.edenai import EdenAiTextModerationTool
from langchain_community.tools.edenai import EdenAiTextModerationTool
return EdenAiTextModerationTool
def _import_edenai_EdenAiTextToSpeechTool() -> Any:
from langchain.tools.edenai import EdenAiTextToSpeechTool
from langchain_community.tools.edenai import EdenAiTextToSpeechTool
return EdenAiTextToSpeechTool
def _import_edenai_EdenaiTool() -> Any:
from langchain.tools.edenai import EdenaiTool
from langchain_community.tools.edenai import EdenaiTool
return EdenaiTool
def _import_eleven_labs_text2speech() -> Any:
from langchain.tools.eleven_labs.text2speech import ElevenLabsText2SpeechTool
from langchain_community.tools.eleven_labs.text2speech import (
ElevenLabsText2SpeechTool,
)
return ElevenLabsText2SpeechTool
def _import_file_management_CopyFileTool() -> Any:
from langchain.tools.file_management import CopyFileTool
from langchain_community.tools.file_management import CopyFileTool
return CopyFileTool
def _import_file_management_DeleteFileTool() -> Any:
from langchain.tools.file_management import DeleteFileTool
from langchain_community.tools.file_management import DeleteFileTool
return DeleteFileTool
def _import_file_management_FileSearchTool() -> Any:
from langchain.tools.file_management import FileSearchTool
from langchain_community.tools.file_management import FileSearchTool
return FileSearchTool
def _import_file_management_ListDirectoryTool() -> Any:
from langchain.tools.file_management import ListDirectoryTool
from langchain_community.tools.file_management import ListDirectoryTool
return ListDirectoryTool
def _import_file_management_MoveFileTool() -> Any:
from langchain.tools.file_management import MoveFileTool
from langchain_community.tools.file_management import MoveFileTool
return MoveFileTool
def _import_file_management_ReadFileTool() -> Any:
from langchain.tools.file_management import ReadFileTool
from langchain_community.tools.file_management import ReadFileTool
return ReadFileTool
def _import_file_management_WriteFileTool() -> Any:
from langchain.tools.file_management import WriteFileTool
from langchain_community.tools.file_management import WriteFileTool
return WriteFileTool
def _import_gmail_GmailCreateDraft() -> Any:
from langchain.tools.gmail import GmailCreateDraft
from langchain_community.tools.gmail import GmailCreateDraft
return GmailCreateDraft
def _import_gmail_GmailGetMessage() -> Any:
from langchain.tools.gmail import GmailGetMessage
from langchain_community.tools.gmail import GmailGetMessage
return GmailGetMessage
def _import_gmail_GmailGetThread() -> Any:
from langchain.tools.gmail import GmailGetThread
from langchain_community.tools.gmail import GmailGetThread
return GmailGetThread
def _import_gmail_GmailSearch() -> Any:
from langchain.tools.gmail import GmailSearch
from langchain_community.tools.gmail import GmailSearch
return GmailSearch
def _import_gmail_GmailSendMessage() -> Any:
from langchain.tools.gmail import GmailSendMessage
from langchain_community.tools.gmail import GmailSendMessage
return GmailSendMessage
def _import_google_cloud_texttospeech() -> Any:
from langchain.tools.google_cloud.texttospeech import GoogleCloudTextToSpeechTool
from langchain_community.tools.google_cloud.texttospeech import (
GoogleCloudTextToSpeechTool,
)
return GoogleCloudTextToSpeechTool
def _import_google_places_tool() -> Any:
from langchain.tools.google_places.tool import GooglePlacesTool
from langchain_community.tools.google_places.tool import GooglePlacesTool
return GooglePlacesTool
def _import_google_search_tool_GoogleSearchResults() -> Any:
from langchain.tools.google_search.tool import GoogleSearchResults
from langchain_community.tools.google_search.tool import GoogleSearchResults
return GoogleSearchResults
def _import_google_search_tool_GoogleSearchRun() -> Any:
from langchain.tools.google_search.tool import GoogleSearchRun
from langchain_community.tools.google_search.tool import GoogleSearchRun
return GoogleSearchRun
def _import_google_serper_tool_GoogleSerperResults() -> Any:
from langchain.tools.google_serper.tool import GoogleSerperResults
from langchain_community.tools.google_serper.tool import GoogleSerperResults
return GoogleSerperResults
def _import_google_serper_tool_GoogleSerperRun() -> Any:
from langchain.tools.google_serper.tool import GoogleSerperRun
from langchain_community.tools.google_serper.tool import GoogleSerperRun
return GoogleSerperRun
def _import_searchapi_tool_SearchAPIResults() -> Any:
from langchain.tools.searchapi.tool import SearchAPIResults
from langchain_community.tools.searchapi.tool import SearchAPIResults
return SearchAPIResults
def _import_searchapi_tool_SearchAPIRun() -> Any:
from langchain.tools.searchapi.tool import SearchAPIRun
from langchain_community.tools.searchapi.tool import SearchAPIRun
return SearchAPIRun
def _import_graphql_tool() -> Any:
from langchain.tools.graphql.tool import BaseGraphQLTool
from langchain_community.tools.graphql.tool import BaseGraphQLTool
return BaseGraphQLTool
def _import_human_tool() -> Any:
from langchain.tools.human.tool import HumanInputRun
from langchain_community.tools.human.tool import HumanInputRun
return HumanInputRun
def _import_ifttt() -> Any:
from langchain.tools.ifttt import IFTTTWebhook
from langchain_community.tools.ifttt import IFTTTWebhook
return IFTTTWebhook
def _import_interaction_tool() -> Any:
from langchain.tools.interaction.tool import StdInInquireTool
from langchain_community.tools.interaction.tool import StdInInquireTool
return StdInInquireTool
def _import_jira_tool() -> Any:
from langchain.tools.jira.tool import JiraAction
from langchain_community.tools.jira.tool import JiraAction
return JiraAction
def _import_json_tool_JsonGetValueTool() -> Any:
from langchain.tools.json.tool import JsonGetValueTool
from langchain_community.tools.json.tool import JsonGetValueTool
return JsonGetValueTool
def _import_json_tool_JsonListKeysTool() -> Any:
from langchain.tools.json.tool import JsonListKeysTool
from langchain_community.tools.json.tool import JsonListKeysTool
return JsonListKeysTool
def _import_merriam_webster_tool() -> Any:
from langchain.tools.merriam_webster.tool import MerriamWebsterQueryRun
from langchain_community.tools.merriam_webster.tool import MerriamWebsterQueryRun
return MerriamWebsterQueryRun
def _import_metaphor_search() -> Any:
from langchain.tools.metaphor_search import MetaphorSearchResults
from langchain_community.tools.metaphor_search import MetaphorSearchResults
return MetaphorSearchResults
def _import_nasa_tool() -> Any:
from langchain.tools.nasa.tool import NasaAction
from langchain_community.tools.nasa.tool import NasaAction
return NasaAction
def _import_office365_create_draft_message() -> Any:
from langchain.tools.office365.create_draft_message import O365CreateDraftMessage
from langchain_community.tools.office365.create_draft_message import (
O365CreateDraftMessage,
)
return O365CreateDraftMessage
def _import_office365_events_search() -> Any:
from langchain.tools.office365.events_search import O365SearchEvents
from langchain_community.tools.office365.events_search import O365SearchEvents
return O365SearchEvents
def _import_office365_messages_search() -> Any:
from langchain.tools.office365.messages_search import O365SearchEmails
from langchain_community.tools.office365.messages_search import O365SearchEmails
return O365SearchEmails
def _import_office365_send_event() -> Any:
from langchain.tools.office365.send_event import O365SendEvent
from langchain_community.tools.office365.send_event import O365SendEvent
return O365SendEvent
def _import_office365_send_message() -> Any:
from langchain.tools.office365.send_message import O365SendMessage
from langchain_community.tools.office365.send_message import O365SendMessage
return O365SendMessage
def _import_openapi_utils_api_models() -> Any:
from langchain.tools.openapi.utils.api_models import APIOperation
from langchain_community.tools.openapi.utils.api_models import APIOperation
return APIOperation
def _import_openapi_utils_openapi_utils() -> Any:
from langchain.tools.openapi.utils.openapi_utils import OpenAPISpec
from langchain_community.tools.openapi.utils.openapi_utils import OpenAPISpec
return OpenAPISpec
def _import_openweathermap_tool() -> Any:
from langchain.tools.openweathermap.tool import OpenWeatherMapQueryRun
from langchain_community.tools.openweathermap.tool import OpenWeatherMapQueryRun
return OpenWeatherMapQueryRun
def _import_playwright_ClickTool() -> Any:
from langchain.tools.playwright import ClickTool
from langchain_community.tools.playwright import ClickTool
return ClickTool
def _import_playwright_CurrentWebPageTool() -> Any:
from langchain.tools.playwright import CurrentWebPageTool
from langchain_community.tools.playwright import CurrentWebPageTool
return CurrentWebPageTool
def _import_playwright_ExtractHyperlinksTool() -> Any:
from langchain.tools.playwright import ExtractHyperlinksTool
from langchain_community.tools.playwright import ExtractHyperlinksTool
return ExtractHyperlinksTool
def _import_playwright_ExtractTextTool() -> Any:
from langchain.tools.playwright import ExtractTextTool
from langchain_community.tools.playwright import ExtractTextTool
return ExtractTextTool
def _import_playwright_GetElementsTool() -> Any:
from langchain.tools.playwright import GetElementsTool
from langchain_community.tools.playwright import GetElementsTool
return GetElementsTool
def _import_playwright_NavigateBackTool() -> Any:
from langchain.tools.playwright import NavigateBackTool
from langchain_community.tools.playwright import NavigateBackTool
return NavigateBackTool
def _import_playwright_NavigateTool() -> Any:
from langchain.tools.playwright import NavigateTool
from langchain_community.tools.playwright import NavigateTool
return NavigateTool
def _import_plugin() -> Any:
from langchain.tools.plugin import AIPluginTool
from langchain_community.tools.plugin import AIPluginTool
return AIPluginTool
def _import_powerbi_tool_InfoPowerBITool() -> Any:
from langchain.tools.powerbi.tool import InfoPowerBITool
from langchain_community.tools.powerbi.tool import InfoPowerBITool
return InfoPowerBITool
def _import_powerbi_tool_ListPowerBITool() -> Any:
from langchain.tools.powerbi.tool import ListPowerBITool
from langchain_community.tools.powerbi.tool import ListPowerBITool
return ListPowerBITool
def _import_powerbi_tool_QueryPowerBITool() -> Any:
from langchain.tools.powerbi.tool import QueryPowerBITool
from langchain_community.tools.powerbi.tool import QueryPowerBITool
return QueryPowerBITool
def _import_pubmed_tool() -> Any:
from langchain.tools.pubmed.tool import PubmedQueryRun
from langchain_community.tools.pubmed.tool import PubmedQueryRun
return PubmedQueryRun
@ -499,241 +513,245 @@ def _import_python_tool_PythonREPLTool() -> Any:
def _import_reddit_search_RedditSearchRun() -> Any:
from langchain.tools.reddit_search.tool import RedditSearchRun
from langchain_community.tools.reddit_search.tool import RedditSearchRun
return RedditSearchRun
def _import_render() -> Any:
from langchain.tools.render import format_tool_to_openai_function
from langchain_community.tools.convert_to_openai import (
format_tool_to_openai_function,
)
return format_tool_to_openai_function
def _import_requests_tool_BaseRequestsTool() -> Any:
from langchain.tools.requests.tool import BaseRequestsTool
from langchain_community.tools.requests.tool import BaseRequestsTool
return BaseRequestsTool
def _import_requests_tool_RequestsDeleteTool() -> Any:
from langchain.tools.requests.tool import RequestsDeleteTool
from langchain_community.tools.requests.tool import RequestsDeleteTool
return RequestsDeleteTool
def _import_requests_tool_RequestsGetTool() -> Any:
from langchain.tools.requests.tool import RequestsGetTool
from langchain_community.tools.requests.tool import RequestsGetTool
return RequestsGetTool
def _import_requests_tool_RequestsPatchTool() -> Any:
from langchain.tools.requests.tool import RequestsPatchTool
from langchain_community.tools.requests.tool import RequestsPatchTool
return RequestsPatchTool
def _import_requests_tool_RequestsPostTool() -> Any:
from langchain.tools.requests.tool import RequestsPostTool
from langchain_community.tools.requests.tool import RequestsPostTool
return RequestsPostTool
def _import_requests_tool_RequestsPutTool() -> Any:
from langchain.tools.requests.tool import RequestsPutTool
from langchain_community.tools.requests.tool import RequestsPutTool
return RequestsPutTool
def _import_steam_webapi_tool() -> Any:
from langchain.tools.steam.tool import SteamWebAPIQueryRun
from langchain_community.tools.steam.tool import SteamWebAPIQueryRun
return SteamWebAPIQueryRun
def _import_scenexplain_tool() -> Any:
from langchain.tools.scenexplain.tool import SceneXplainTool
from langchain_community.tools.scenexplain.tool import SceneXplainTool
return SceneXplainTool
def _import_searx_search_tool_SearxSearchResults() -> Any:
from langchain.tools.searx_search.tool import SearxSearchResults
from langchain_community.tools.searx_search.tool import SearxSearchResults
return SearxSearchResults
def _import_searx_search_tool_SearxSearchRun() -> Any:
from langchain.tools.searx_search.tool import SearxSearchRun
from langchain_community.tools.searx_search.tool import SearxSearchRun
return SearxSearchRun
def _import_shell_tool() -> Any:
from langchain.tools.shell.tool import ShellTool
from langchain_community.tools.shell.tool import ShellTool
return ShellTool
def _import_slack_get_channel() -> Any:
from langchain.tools.slack.get_channel import SlackGetChannel
from langchain_community.tools.slack.get_channel import SlackGetChannel
return SlackGetChannel
def _import_slack_get_message() -> Any:
from langchain.tools.slack.get_message import SlackGetMessage
from langchain_community.tools.slack.get_message import SlackGetMessage
return SlackGetMessage
def _import_slack_schedule_message() -> Any:
from langchain.tools.slack.schedule_message import SlackScheduleMessage
from langchain_community.tools.slack.schedule_message import SlackScheduleMessage
return SlackScheduleMessage
def _import_slack_send_message() -> Any:
from langchain.tools.slack.send_message import SlackSendMessage
from langchain_community.tools.slack.send_message import SlackSendMessage
return SlackSendMessage
def _import_sleep_tool() -> Any:
from langchain.tools.sleep.tool import SleepTool
from langchain_community.tools.sleep.tool import SleepTool
return SleepTool
def _import_spark_sql_tool_BaseSparkSQLTool() -> Any:
from langchain.tools.spark_sql.tool import BaseSparkSQLTool
from langchain_community.tools.spark_sql.tool import BaseSparkSQLTool
return BaseSparkSQLTool
def _import_spark_sql_tool_InfoSparkSQLTool() -> Any:
from langchain.tools.spark_sql.tool import InfoSparkSQLTool
from langchain_community.tools.spark_sql.tool import InfoSparkSQLTool
return InfoSparkSQLTool
def _import_spark_sql_tool_ListSparkSQLTool() -> Any:
from langchain.tools.spark_sql.tool import ListSparkSQLTool
from langchain_community.tools.spark_sql.tool import ListSparkSQLTool
return ListSparkSQLTool
def _import_spark_sql_tool_QueryCheckerTool() -> Any:
from langchain.tools.spark_sql.tool import QueryCheckerTool
from langchain_community.tools.spark_sql.tool import QueryCheckerTool
return QueryCheckerTool
def _import_spark_sql_tool_QuerySparkSQLTool() -> Any:
from langchain.tools.spark_sql.tool import QuerySparkSQLTool
from langchain_community.tools.spark_sql.tool import QuerySparkSQLTool
return QuerySparkSQLTool
def _import_sql_database_tool_BaseSQLDatabaseTool() -> Any:
from langchain.tools.sql_database.tool import BaseSQLDatabaseTool
from langchain_community.tools.sql_database.tool import BaseSQLDatabaseTool
return BaseSQLDatabaseTool
def _import_sql_database_tool_InfoSQLDatabaseTool() -> Any:
from langchain.tools.sql_database.tool import InfoSQLDatabaseTool
from langchain_community.tools.sql_database.tool import InfoSQLDatabaseTool
return InfoSQLDatabaseTool
def _import_sql_database_tool_ListSQLDatabaseTool() -> Any:
from langchain.tools.sql_database.tool import ListSQLDatabaseTool
from langchain_community.tools.sql_database.tool import ListSQLDatabaseTool
return ListSQLDatabaseTool
def _import_sql_database_tool_QuerySQLCheckerTool() -> Any:
from langchain.tools.sql_database.tool import QuerySQLCheckerTool
from langchain_community.tools.sql_database.tool import QuerySQLCheckerTool
return QuerySQLCheckerTool
def _import_sql_database_tool_QuerySQLDataBaseTool() -> Any:
from langchain.tools.sql_database.tool import QuerySQLDataBaseTool
from langchain_community.tools.sql_database.tool import QuerySQLDataBaseTool
return QuerySQLDataBaseTool
def _import_stackexchange_tool() -> Any:
from langchain.tools.stackexchange.tool import StackExchangeTool
from langchain_community.tools.stackexchange.tool import StackExchangeTool
return StackExchangeTool
def _import_steamship_image_generation() -> Any:
from langchain.tools.steamship_image_generation import SteamshipImageGenerationTool
from langchain_community.tools.steamship_image_generation import (
SteamshipImageGenerationTool,
)
return SteamshipImageGenerationTool
def _import_vectorstore_tool_VectorStoreQATool() -> Any:
from langchain.tools.vectorstore.tool import VectorStoreQATool
from langchain_community.tools.vectorstore.tool import VectorStoreQATool
return VectorStoreQATool
def _import_vectorstore_tool_VectorStoreQAWithSourcesTool() -> Any:
from langchain.tools.vectorstore.tool import VectorStoreQAWithSourcesTool
from langchain_community.tools.vectorstore.tool import VectorStoreQAWithSourcesTool
return VectorStoreQAWithSourcesTool
def _import_wikipedia_tool() -> Any:
from langchain.tools.wikipedia.tool import WikipediaQueryRun
from langchain_community.tools.wikipedia.tool import WikipediaQueryRun
return WikipediaQueryRun
def _import_wolfram_alpha_tool() -> Any:
from langchain.tools.wolfram_alpha.tool import WolframAlphaQueryRun
from langchain_community.tools.wolfram_alpha.tool import WolframAlphaQueryRun
return WolframAlphaQueryRun
def _import_yahoo_finance_news() -> Any:
from langchain.tools.yahoo_finance_news import YahooFinanceNewsTool
from langchain_community.tools.yahoo_finance_news import YahooFinanceNewsTool
return YahooFinanceNewsTool
def _import_youtube_search() -> Any:
from langchain.tools.youtube.search import YouTubeSearchTool
from langchain_community.tools.youtube.search import YouTubeSearchTool
return YouTubeSearchTool
def _import_zapier_tool_ZapierNLAListActions() -> Any:
from langchain.tools.zapier.tool import ZapierNLAListActions
from langchain_community.tools.zapier.tool import ZapierNLAListActions
return ZapierNLAListActions
def _import_zapier_tool_ZapierNLARunAction() -> Any:
from langchain.tools.zapier.tool import ZapierNLARunAction
from langchain_community.tools.zapier.tool import ZapierNLARunAction
return ZapierNLARunAction
def _import_bearly_tool() -> Any:
from langchain.tools.bearly.tool import BearlyInterpreterTool
from langchain_community.tools.bearly.tool import BearlyInterpreterTool
return BearlyInterpreterTool
def _import_e2b_data_analysis() -> Any:
from langchain.tools.e2b_data_analysis.tool import E2BDataAnalysisTool
from langchain_community.tools.e2b_data_analysis.tool import E2BDataAnalysisTool
return E2BDataAnalysisTool

@ -1,7 +1,7 @@
"""Amadeus tools."""
from langchain.tools.amadeus.closest_airport import AmadeusClosestAirport
from langchain.tools.amadeus.flight_search import AmadeusFlightSearch
from langchain_community.tools.amadeus.closest_airport import AmadeusClosestAirport
from langchain_community.tools.amadeus.flight_search import AmadeusFlightSearch
__all__ = [
"AmadeusClosestAirport",

@ -1,18 +1,18 @@
"""Azure Cognitive Services Tools."""
from langchain.tools.azure_cognitive_services.form_recognizer import (
from langchain_community.tools.azure_cognitive_services.form_recognizer import (
AzureCogsFormRecognizerTool,
)
from langchain.tools.azure_cognitive_services.image_analysis import (
from langchain_community.tools.azure_cognitive_services.image_analysis import (
AzureCogsImageAnalysisTool,
)
from langchain.tools.azure_cognitive_services.speech2text import (
from langchain_community.tools.azure_cognitive_services.speech2text import (
AzureCogsSpeech2TextTool,
)
from langchain.tools.azure_cognitive_services.text2speech import (
from langchain_community.tools.azure_cognitive_services.text2speech import (
AzureCogsText2SpeechTool,
)
from langchain.tools.azure_cognitive_services.text_analytics_health import (
from langchain_community.tools.azure_cognitive_services.text_analytics_health import (
AzureCogsTextAnalyticsHealthTool,
)

@ -1,5 +1,5 @@
"""Bing Search API toolkit."""
from langchain.tools.bing_search.tool import BingSearchResults, BingSearchRun
from langchain_community.tools.bing_search.tool import BingSearchResults, BingSearchRun
__all__ = ["BingSearchRun", "BingSearchResults"]

@ -1,4 +1,4 @@
from langchain.tools.render import format_tool_to_openai_function
from langchain_community.tools.convert_to_openai import format_tool_to_openai_function
# For backwards compatibility
__all__ = ["format_tool_to_openai_function"]

@ -1,4 +1,4 @@
from langchain.tools.dataforseo_api_search.tool import (
from langchain_community.tools.dataforseo_api_search.tool import (
DataForSeoAPISearchResults,
DataForSeoAPISearchRun,
)

@ -1,5 +1,5 @@
"""DuckDuckGo Search API toolkit."""
from langchain.tools.ddg_search.tool import DuckDuckGoSearchRun
from langchain_community.tools.ddg_search.tool import DuckDuckGoSearchRun
__all__ = ["DuckDuckGoSearchRun"]

@ -1,24 +1,24 @@
"""Edenai Tools."""
from langchain.tools.edenai.audio_speech_to_text import (
from langchain_community.tools.edenai.audio_speech_to_text import (
EdenAiSpeechToTextTool,
)
from langchain.tools.edenai.audio_text_to_speech import (
from langchain_community.tools.edenai.audio_text_to_speech import (
EdenAiTextToSpeechTool,
)
from langchain.tools.edenai.edenai_base_tool import EdenaiTool
from langchain.tools.edenai.image_explicitcontent import (
from langchain_community.tools.edenai.edenai_base_tool import EdenaiTool
from langchain_community.tools.edenai.image_explicitcontent import (
EdenAiExplicitImageTool,
)
from langchain.tools.edenai.image_objectdetection import (
from langchain_community.tools.edenai.image_objectdetection import (
EdenAiObjectDetectionTool,
)
from langchain.tools.edenai.ocr_identityparser import (
from langchain_community.tools.edenai.ocr_identityparser import (
EdenAiParsingIDTool,
)
from langchain.tools.edenai.ocr_invoiceparser import (
from langchain_community.tools.edenai.ocr_invoiceparser import (
EdenAiParsingInvoiceTool,
)
from langchain.tools.edenai.text_moderation import (
from langchain_community.tools.edenai.text_moderation import (
EdenAiTextModerationTool,
)

@ -1,5 +1,5 @@
"""Eleven Labs Services Tools."""
from langchain.tools.eleven_labs.text2speech import ElevenLabsText2SpeechTool
from langchain_community.tools.eleven_labs.text2speech import ElevenLabsText2SpeechTool
__all__ = ["ElevenLabsText2SpeechTool"]

@ -1,12 +1,12 @@
"""File Management Tools."""
from langchain.tools.file_management.copy import CopyFileTool
from langchain.tools.file_management.delete import DeleteFileTool
from langchain.tools.file_management.file_search import FileSearchTool
from langchain.tools.file_management.list_dir import ListDirectoryTool
from langchain.tools.file_management.move import MoveFileTool
from langchain.tools.file_management.read import ReadFileTool
from langchain.tools.file_management.write import WriteFileTool
from langchain_community.tools.file_management.copy import CopyFileTool
from langchain_community.tools.file_management.delete import DeleteFileTool
from langchain_community.tools.file_management.file_search import FileSearchTool
from langchain_community.tools.file_management.list_dir import ListDirectoryTool
from langchain_community.tools.file_management.move import MoveFileTool
from langchain_community.tools.file_management.read import ReadFileTool
from langchain_community.tools.file_management.write import WriteFileTool
__all__ = [
"CopyFileTool",

@ -1,10 +1,10 @@
"""Gmail tools."""
from langchain.tools.gmail.create_draft import GmailCreateDraft
from langchain.tools.gmail.get_message import GmailGetMessage
from langchain.tools.gmail.get_thread import GmailGetThread
from langchain.tools.gmail.search import GmailSearch
from langchain.tools.gmail.send_message import GmailSendMessage
from langchain_community.tools.gmail.create_draft import GmailCreateDraft
from langchain_community.tools.gmail.get_message import GmailGetMessage
from langchain_community.tools.gmail.get_thread import GmailGetThread
from langchain_community.tools.gmail.search import GmailSearch
from langchain_community.tools.gmail.send_message import GmailSendMessage
__all__ = [
"GmailCreateDraft",

@ -1,7 +1,7 @@
"""Golden API toolkit."""
from langchain.tools.golden_query.tool import GoldenQueryRun
from langchain_community.tools.golden_query.tool import GoldenQueryRun
__all__ = [
"GoldenQueryRun",

@ -1,5 +1,7 @@
"""Google Cloud Tools."""
from langchain.tools.google_cloud.texttospeech import GoogleCloudTextToSpeechTool
from langchain_community.tools.google_cloud.texttospeech import (
GoogleCloudTextToSpeechTool,
)
__all__ = ["GoogleCloudTextToSpeechTool"]

@ -1,5 +1,5 @@
"""Google Finance API Toolkit."""
from langchain.tools.google_finance.tool import GoogleFinanceQueryRun
from langchain_community.tools.google_finance.tool import GoogleFinanceQueryRun
__all__ = ["GoogleFinanceQueryRun"]

@ -1,5 +1,5 @@
"""Google Jobs API Toolkit."""
from langchain.tools.google_jobs.tool import GoogleJobsQueryRun
from langchain_community.tools.google_jobs.tool import GoogleJobsQueryRun
__all__ = ["GoogleJobsQueryRun"]

@ -1,5 +1,5 @@
"""Google Lens API Toolkit."""
from langchain.tools.google_lens.tool import GoogleLensQueryRun
from langchain_community.tools.google_lens.tool import GoogleLensQueryRun
__all__ = ["GoogleLensQueryRun"]

@ -1,5 +1,5 @@
"""Google Places API Toolkit."""
from langchain.tools.google_places.tool import GooglePlacesTool
from langchain_community.tools.google_places.tool import GooglePlacesTool
__all__ = ["GooglePlacesTool"]

@ -1,5 +1,5 @@
"""Google Scholar API Toolkit."""
from langchain.tools.google_scholar.tool import GoogleScholarQueryRun
from langchain_community.tools.google_scholar.tool import GoogleScholarQueryRun
__all__ = ["GoogleScholarQueryRun"]

@ -1,5 +1,8 @@
"""Google Search API Toolkit."""
from langchain.tools.google_search.tool import GoogleSearchResults, GoogleSearchRun
from langchain_community.tools.google_search.tool import (
GoogleSearchResults,
GoogleSearchRun,
)
__all__ = ["GoogleSearchRun", "GoogleSearchResults"]

@ -1,4 +1,7 @@
from langchain.tools.google_serper.tool import GoogleSerperResults, GoogleSerperRun
from langchain_community.tools.google_serper.tool import (
GoogleSerperResults,
GoogleSerperRun,
)
"""Google Serper API Toolkit."""
"""Tool for the Serer.dev Google Search API."""

@ -1,5 +1,5 @@
"""Google Trends API Toolkit."""
from langchain.tools.google_trends.tool import GoogleTrendsQueryRun
from langchain_community.tools.google_trends.tool import GoogleTrendsQueryRun
__all__ = ["GoogleTrendsQueryRun"]

@ -1,5 +1,5 @@
"""Tool for asking for human input."""
from langchain.tools.human.tool import HumanInputRun
from langchain_community.tools.human.tool import HumanInputRun
__all__ = ["HumanInputRun"]

@ -1,5 +1,5 @@
"""Unsupervised learning based memorization."""
from langchain.tools.memorize.tool import Memorize
from langchain_community.tools.memorize.tool import Memorize
__all__ = ["Memorize"]

@ -1,5 +1,5 @@
"""Metaphor Search API toolkit."""
from langchain.tools.metaphor_search.tool import MetaphorSearchResults
from langchain_community.tools.metaphor_search.tool import MetaphorSearchResults
__all__ = ["MetaphorSearchResults"]

@ -1,6 +1,6 @@
"""MutliOn Client API tools."""
from langchain.tools.multion.close_session import MultionCloseSession
from langchain.tools.multion.create_session import MultionCreateSession
from langchain.tools.multion.update_session import MultionUpdateSession
from langchain_community.tools.multion.close_session import MultionCloseSession
from langchain_community.tools.multion.create_session import MultionCreateSession
from langchain_community.tools.multion.update_session import MultionUpdateSession
__all__ = ["MultionCreateSession", "MultionUpdateSession", "MultionCloseSession"]

@ -1,3 +1,3 @@
from langchain.tools.nuclia.tool import NucliaUnderstandingAPI
from langchain_community.tools.nuclia.tool import NucliaUnderstandingAPI
__all__ = ["NucliaUnderstandingAPI"]

@ -1,10 +1,12 @@
"""O365 tools."""
from langchain.tools.office365.create_draft_message import O365CreateDraftMessage
from langchain.tools.office365.events_search import O365SearchEvents
from langchain.tools.office365.messages_search import O365SearchEmails
from langchain.tools.office365.send_event import O365SendEvent
from langchain.tools.office365.send_message import O365SendMessage
from langchain_community.tools.office365.create_draft_message import (
O365CreateDraftMessage,
)
from langchain_community.tools.office365.events_search import O365SearchEvents
from langchain_community.tools.office365.messages_search import O365SearchEmails
from langchain_community.tools.office365.send_event import O365SendEvent
from langchain_community.tools.office365.send_message import O365SendMessage
__all__ = [
"O365SearchEmails",

@ -1,7 +1,7 @@
"""OpenWeatherMap API toolkit."""
from langchain.tools.openweathermap.tool import OpenWeatherMapQueryRun
from langchain_community.tools.openweathermap.tool import OpenWeatherMapQueryRun
__all__ = [
"OpenWeatherMapQueryRun",

@ -1,12 +1,14 @@
"""Browser tools and toolkit."""
from langchain.tools.playwright.click import ClickTool
from langchain.tools.playwright.current_page import CurrentWebPageTool
from langchain.tools.playwright.extract_hyperlinks import ExtractHyperlinksTool
from langchain.tools.playwright.extract_text import ExtractTextTool
from langchain.tools.playwright.get_elements import GetElementsTool
from langchain.tools.playwright.navigate import NavigateTool
from langchain.tools.playwright.navigate_back import NavigateBackTool
from langchain_community.tools.playwright.click import ClickTool
from langchain_community.tools.playwright.current_page import CurrentWebPageTool
from langchain_community.tools.playwright.extract_hyperlinks import (
ExtractHyperlinksTool,
)
from langchain_community.tools.playwright.extract_text import ExtractTextTool
from langchain_community.tools.playwright.get_elements import GetElementsTool
from langchain_community.tools.playwright.navigate import NavigateTool
from langchain_community.tools.playwright.navigate_back import NavigateBackTool
__all__ = [
"NavigateTool",

@ -1,4 +1,4 @@
from langchain.tools.searchapi.tool import SearchAPIResults, SearchAPIRun
from langchain_community.tools.searchapi.tool import SearchAPIResults, SearchAPIRun
"""SearchApi.io API Toolkit."""
"""Tool for the SearchApi.io Google SERP API."""

@ -1,5 +1,5 @@
"""Shell tool."""
from langchain.tools.shell.tool import ShellTool
from langchain_community.tools.shell.tool import ShellTool
__all__ = ["ShellTool"]

@ -1,9 +1,9 @@
"""Slack tools."""
from langchain.tools.slack.get_channel import SlackGetChannel
from langchain.tools.slack.get_message import SlackGetMessage
from langchain.tools.slack.schedule_message import SlackScheduleMessage
from langchain.tools.slack.send_message import SlackSendMessage
from langchain_community.tools.slack.get_channel import SlackGetChannel
from langchain_community.tools.slack.get_message import SlackGetMessage
from langchain_community.tools.slack.schedule_message import SlackScheduleMessage
from langchain_community.tools.slack.send_message import SlackSendMessage
__all__ = [
"SlackGetChannel",

@ -1,5 +1,7 @@
"""Tool to generate an image."""
from langchain.tools.steamship_image_generation.tool import SteamshipImageGenerationTool
from langchain_community.tools.steamship_image_generation.tool import (
SteamshipImageGenerationTool,
)
__all__ = ["SteamshipImageGenerationTool"]

@ -1,5 +1,8 @@
"""Tavily Search API toolkit."""
from langchain.tools.tavily_search.tool import TavilyAnswer, TavilySearchResults
from langchain_community.tools.tavily_search.tool import (
TavilyAnswer,
TavilySearchResults,
)
__all__ = ["TavilySearchResults", "TavilyAnswer"]

@ -1,7 +1,7 @@
"""Wolfram Alpha API toolkit."""
from langchain.tools.wolfram_alpha.tool import WolframAlphaQueryRun
from langchain_community.tools.wolfram_alpha.tool import WolframAlphaQueryRun
__all__ = [
"WolframAlphaQueryRun",

@ -1,6 +1,9 @@
"""Zapier Tool."""
from langchain.tools.zapier.tool import ZapierNLAListActions, ZapierNLARunAction
from langchain_community.tools.zapier.tool import (
ZapierNLAListActions,
ZapierNLARunAction,
)
__all__ = [
"ZapierNLARunAction",

@ -6,10 +6,9 @@ from unittest import mock
from langchain_community.document_transformers.nuclia_text_transform import (
NucliaTextTransformer,
)
from langchain_community.tools.nuclia.tool import NucliaUnderstandingAPI
from langchain_core.documents import Document
from langchain.tools.nuclia.tool import NucliaUnderstandingAPI
def fakerun(**args: Any) -> Any:
async def run(self: Any, **args: Any) -> str:
@ -36,7 +35,8 @@ def fakerun(**args: Any) -> Any:
async def test_nuclia_loader() -> None:
with mock.patch(
"langchain.tools.nuclia.tool.NucliaUnderstandingAPI._arun", new_callable=fakerun
"langchain_community.tools.nuclia.tool.NucliaUnderstandingAPI._arun",
new_callable=fakerun,
):
with mock.patch("os.environ.get", return_value="_a_key_"):
nua = NucliaUnderstandingAPI(enable_ml=False)

@ -27,7 +27,7 @@ def import_all_modules(package_name: str) -> dict:
if module_name not in (
"langchain.chains.llm_bash",
"langchain.chains.llm_symbolic_math",
"langchain.tools.python",
"langchain_community.tools.python",
"langchain_community.vectorstores._pgvector_data_models",
):
importlib.import_module(module_name)

@ -88,7 +88,7 @@ runnable = RemoteRunnable("http://localhost:8000/openai-functions-agent-gmail")
## Customize Auth
```
from langchain.tools.gmail.utils import build_resource_service, get_gmail_credentials
from langchain_community.tools.gmail.utils import build_resource_service, get_gmail_credentials
# Can review scopes here https://developers.google.com/gmail/api/auth/scopes
# For instance, readonly scope is 'https://www.googleapis.com/auth/gmail.readonly'

@ -4,8 +4,8 @@ from typing import List, Tuple
from langchain.agents import AgentExecutor
from langchain.agents.format_scratchpad import format_to_openai_function_messages
from langchain.agents.output_parsers import OpenAIFunctionsAgentOutputParser
from langchain.tools.render import format_tool_to_openai_function
from langchain_community.chat_models import ChatOpenAI
from langchain_community.tools.convert_to_openai import format_tool_to_openai_function
from langchain_community.tools.gmail import (
GmailCreateDraft,
GmailGetMessage,

@ -4,10 +4,10 @@ from langchain.agents import AgentExecutor
from langchain.agents.format_scratchpad import format_to_openai_function_messages
from langchain.agents.output_parsers import OpenAIFunctionsAgentOutputParser
from langchain.prompts import ChatPromptTemplate, MessagesPlaceholder
from langchain.tools.render import format_tool_to_openai_function
from langchain.tools.tavily_search import TavilySearchResults
from langchain.utilities.tavily_search import TavilySearchAPIWrapper
from langchain_community.chat_models import ChatOpenAI
from langchain_community.tools.convert_to_openai import format_tool_to_openai_function
from langchain_community.tools.tavily_search import TavilySearchResults
from langchain_core.messages import AIMessage, HumanMessage
from langchain_core.pydantic_v1 import BaseModel, Field

@ -11,11 +11,11 @@ from langchain.prompts import (
MessagesPlaceholder,
)
from langchain.schema import Document
from langchain.tools.render import format_tool_to_openai_function
from langchain.tools.tavily_search import TavilySearchResults
from langchain.utilities.tavily_search import TavilySearchAPIWrapper
from langchain_community.chat_models import ChatOpenAI
from langchain_community.embeddings import OpenAIEmbeddings
from langchain_community.tools.convert_to_openai import format_tool_to_openai_function
from langchain_community.tools.tavily_search import TavilySearchResults
from langchain_community.vectorstores import FAISS
from langchain_core.messages import AIMessage, HumanMessage
from langchain_core.pydantic_v1 import BaseModel, Field

@ -7,10 +7,10 @@ from langchain.agents.output_parsers import OpenAIFunctionsAgentOutputParser
from langchain.callbacks.manager import CallbackManagerForRetrieverRun
from langchain.prompts import ChatPromptTemplate, MessagesPlaceholder
from langchain.schema import BaseRetriever, Document
from langchain.tools.render import format_tool_to_openai_function
from langchain.tools.retriever import create_retriever_tool
from langchain.utilities.arxiv import ArxivAPIWrapper
from langchain_community.chat_models import AzureChatOpenAI
from langchain_community.tools.convert_to_openai import format_tool_to_openai_function
from langchain_core.messages import AIMessage, HumanMessage
from langchain_core.pydantic_v1 import BaseModel, Field

Loading…
Cancel
Save