core[minor], community[patch], langchain[patch]: move BaseChatLoader to core (#19607)

Thank you for contributing to LangChain!

- [ ] **PR title**: "core: move BaseChatLoader and BaseToolkit from
community"


- [ ] **PR message**: move BaseChatLoader and BaseToolkit

---------

Co-authored-by: Bagatur <baskaryan@gmail.com>
pull/20955/head
Leonid Kuligin 1 month ago committed by GitHub
parent d4befd0cfb
commit 893a924b90
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -216,11 +216,11 @@
"source": [ "source": [
"from typing import List\n", "from typing import List\n",
"\n", "\n",
"from langchain_community.chat_loaders.base import ChatSession\n",
"from langchain_community.chat_loaders.utils import (\n", "from langchain_community.chat_loaders.utils import (\n",
" map_ai_messages,\n", " map_ai_messages,\n",
" merge_chat_runs,\n", " merge_chat_runs,\n",
")\n", ")\n",
"from langchain_core.chat_sessions import ChatSession\n",
"\n", "\n",
"raw_messages = loader.lazy_load()\n", "raw_messages = loader.lazy_load()\n",
"# Merge consecutive messages from the same sender into a single message\n", "# Merge consecutive messages from the same sender into a single message\n",

@ -116,11 +116,11 @@
"source": [ "source": [
"from typing import List\n", "from typing import List\n",
"\n", "\n",
"from langchain_community.chat_loaders.base import ChatSession\n",
"from langchain_community.chat_loaders.utils import (\n", "from langchain_community.chat_loaders.utils import (\n",
" map_ai_messages,\n", " map_ai_messages,\n",
" merge_chat_runs,\n", " merge_chat_runs,\n",
")\n", ")\n",
"from langchain_core.chat_sessions import ChatSession\n",
"\n", "\n",
"raw_messages = loader.lazy_load()\n", "raw_messages = loader.lazy_load()\n",
"# Merge consecutive messages from the same sender into a single message\n", "# Merge consecutive messages from the same sender into a single message\n",

@ -87,11 +87,11 @@
"source": [ "source": [
"from typing import List\n", "from typing import List\n",
"\n", "\n",
"from langchain_community.chat_loaders.base import ChatSession\n",
"from langchain_community.chat_loaders.utils import (\n", "from langchain_community.chat_loaders.utils import (\n",
" map_ai_messages,\n", " map_ai_messages,\n",
" merge_chat_runs,\n", " merge_chat_runs,\n",
")\n", ")\n",
"from langchain_core.chat_sessions import ChatSession\n",
"\n", "\n",
"raw_messages = loader.lazy_load()\n", "raw_messages = loader.lazy_load()\n",
"# Merge consecutive messages from the same sender into a single message\n", "# Merge consecutive messages from the same sender into a single message\n",

@ -136,11 +136,11 @@
"source": [ "source": [
"from typing import List\n", "from typing import List\n",
"\n", "\n",
"from langchain_community.chat_loaders.base import ChatSession\n",
"from langchain_community.chat_loaders.utils import (\n", "from langchain_community.chat_loaders.utils import (\n",
" map_ai_messages,\n", " map_ai_messages,\n",
" merge_chat_runs,\n", " merge_chat_runs,\n",
")\n", ")\n",
"from langchain_core.chat_sessions import ChatSession\n",
"\n", "\n",
"raw_messages = loader.lazy_load()\n", "raw_messages = loader.lazy_load()\n",
"# Merge consecutive messages from the same sender into a single message\n", "# Merge consecutive messages from the same sender into a single message\n",

@ -209,11 +209,11 @@
"source": [ "source": [
"from typing import List\n", "from typing import List\n",
"\n", "\n",
"from langchain_community.chat_loaders.base import ChatSession\n",
"from langchain_community.chat_loaders.utils import (\n", "from langchain_community.chat_loaders.utils import (\n",
" map_ai_messages,\n", " map_ai_messages,\n",
" merge_chat_runs,\n", " merge_chat_runs,\n",
")\n", ")\n",
"from langchain_core.chat_sessions import ChatSession\n",
"\n", "\n",
"raw_messages = loader.lazy_load()\n", "raw_messages = loader.lazy_load()\n",
"# Merge consecutive messages from the same sender into a single message\n", "# Merge consecutive messages from the same sender into a single message\n",

@ -126,11 +126,11 @@
"source": [ "source": [
"from typing import List\n", "from typing import List\n",
"\n", "\n",
"from langchain_community.chat_loaders.base import ChatSession\n",
"from langchain_community.chat_loaders.utils import (\n", "from langchain_community.chat_loaders.utils import (\n",
" map_ai_messages,\n", " map_ai_messages,\n",
" merge_chat_runs,\n", " merge_chat_runs,\n",
")\n", ")\n",
"from langchain_core.chat_sessions import ChatSession\n",
"\n", "\n",
"raw_messages = loader.lazy_load()\n", "raw_messages = loader.lazy_load()\n",
"# Merge consecutive messages from the same sender into a single message\n", "# Merge consecutive messages from the same sender into a single message\n",

@ -3,8 +3,8 @@ from __future__ import annotations
from typing import TYPE_CHECKING, List, Literal, Optional from typing import TYPE_CHECKING, List, Literal, Optional
from langchain_core.pydantic_v1 import root_validator from langchain_core.pydantic_v1 import root_validator
from langchain_core.tools import BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.ainetwork.app import AINAppOps from langchain_community.tools.ainetwork.app import AINAppOps
from langchain_community.tools.ainetwork.owner import AINOwnerOps from langchain_community.tools.ainetwork.owner import AINOwnerOps

@ -4,8 +4,8 @@ from typing import TYPE_CHECKING, List, Optional
from langchain_core.language_models import BaseLanguageModel from langchain_core.language_models import BaseLanguageModel
from langchain_core.pydantic_v1 import Field from langchain_core.pydantic_v1 import Field
from langchain_core.tools import BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.amadeus.closest_airport import AmadeusClosestAirport from langchain_community.tools.amadeus.closest_airport import AmadeusClosestAirport
from langchain_community.tools.amadeus.flight_search import AmadeusFlightSearch from langchain_community.tools.amadeus.flight_search import AmadeusFlightSearch

@ -3,9 +3,8 @@ from __future__ import annotations
import sys import sys
from typing import List from typing import List
from langchain_core.tools import BaseTool from langchain_core.tools import BaseTool, BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools.azure_cognitive_services import ( from langchain_community.tools.azure_cognitive_services import (
AzureCogsFormRecognizerTool, AzureCogsFormRecognizerTool,
AzureCogsImageAnalysisTool, AzureCogsImageAnalysisTool,

@ -1,6 +1,7 @@
from typing import Dict, List from typing import Dict, List
from langchain_community.agent_toolkits.base import BaseToolkit from langchain_core.tools import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.clickup.prompt import ( from langchain_community.tools.clickup.prompt import (
CLICKUP_FOLDER_CREATE_PROMPT, CLICKUP_FOLDER_CREATE_PROMPT,

@ -1,6 +1,7 @@
from typing import List from typing import List
from langchain_community.agent_toolkits.base import BaseToolkit from langchain_core.tools import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.cogniswitch.tool import ( from langchain_community.tools.cogniswitch.tool import (
CogniswitchKnowledgeRequest, CogniswitchKnowledgeRequest,

@ -1,9 +1,8 @@
from typing import List from typing import List
from langchain_core.pydantic_v1 import root_validator from langchain_core.pydantic_v1 import root_validator
from langchain_core.tools import BaseTool from langchain_core.tools import BaseTool, BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools.connery import ConneryService from langchain_community.tools.connery import ConneryService

@ -3,8 +3,8 @@ from __future__ import annotations
from typing import Dict, List, Optional, Type from typing import Dict, List, Optional, Type
from langchain_core.pydantic_v1 import root_validator from langchain_core.pydantic_v1 import root_validator
from langchain_core.tools import BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.file_management.copy import CopyFileTool from langchain_community.tools.file_management.copy import CopyFileTool
from langchain_community.tools.file_management.delete import DeleteFileTool from langchain_community.tools.file_management.delete import DeleteFileTool

@ -2,8 +2,8 @@
from typing import Dict, List from typing import Dict, List
from langchain_core.pydantic_v1 import BaseModel, Field from langchain_core.pydantic_v1 import BaseModel, Field
from langchain_core.tools import BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.github.prompt import ( from langchain_community.tools.github.prompt import (
COMMENT_ON_ISSUE_PROMPT, COMMENT_ON_ISSUE_PROMPT,

@ -1,7 +1,8 @@
"""GitHub Toolkit.""" """GitHub Toolkit."""
from typing import Dict, List from typing import Dict, List
from langchain_community.agent_toolkits.base import BaseToolkit from langchain_core.tools import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.gitlab.prompt import ( from langchain_community.tools.gitlab.prompt import (
COMMENT_ON_ISSUE_PROMPT, COMMENT_ON_ISSUE_PROMPT,

@ -3,8 +3,8 @@ from __future__ import annotations
from typing import TYPE_CHECKING, List from typing import TYPE_CHECKING, List
from langchain_core.pydantic_v1 import Field from langchain_core.pydantic_v1 import Field
from langchain_core.tools import BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.gmail.create_draft import GmailCreateDraft from langchain_community.tools.gmail.create_draft import GmailCreateDraft
from langchain_community.tools.gmail.get_message import GmailGetMessage from langchain_community.tools.gmail.get_message import GmailGetMessage

@ -1,6 +1,7 @@
from typing import Dict, List from typing import Dict, List
from langchain_community.agent_toolkits.base import BaseToolkit from langchain_core.tools import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.jira.prompt import ( from langchain_community.tools.jira.prompt import (
JIRA_CATCH_ALL_PROMPT, JIRA_CATCH_ALL_PROMPT,

@ -2,7 +2,8 @@ from __future__ import annotations
from typing import List from typing import List
from langchain_community.agent_toolkits.base import BaseToolkit from langchain_core.tools import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.json.tool import ( from langchain_community.tools.json.tool import (
JsonGetValueTool, JsonGetValueTool,

@ -3,7 +3,8 @@ from __future__ import annotations
from typing import List from typing import List
from langchain_community.agent_toolkits.base import BaseToolkit from langchain_core.tools import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.multion.close_session import MultionCloseSession from langchain_community.tools.multion.close_session import MultionCloseSession
from langchain_community.tools.multion.create_session import MultionCreateSession from langchain_community.tools.multion.create_session import MultionCreateSession

@ -1,6 +1,7 @@
from typing import Dict, List from typing import Dict, List
from langchain_community.agent_toolkits.base import BaseToolkit from langchain_core.tools import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.nasa.prompt import ( from langchain_community.tools.nasa.prompt import (
NASA_CAPTIONS_PROMPT, NASA_CAPTIONS_PROMPT,

@ -4,9 +4,8 @@ from typing import Any, List, Optional, Sequence
from langchain_core.language_models import BaseLanguageModel from langchain_core.language_models import BaseLanguageModel
from langchain_core.pydantic_v1 import Field from langchain_core.pydantic_v1 import Field
from langchain_core.tools import BaseTool from langchain_core.tools import BaseTool, BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.agent_toolkits.nla.tool import NLATool from langchain_community.agent_toolkits.nla.tool import NLATool
from langchain_community.tools.openapi.utils.openapi_utils import OpenAPISpec from langchain_community.tools.openapi.utils.openapi_utils import OpenAPISpec
from langchain_community.tools.plugin import AIPlugin from langchain_community.tools.plugin import AIPlugin

@ -3,8 +3,8 @@ from __future__ import annotations
from typing import TYPE_CHECKING, List from typing import TYPE_CHECKING, List
from langchain_core.pydantic_v1 import Field from langchain_core.pydantic_v1 import Field
from langchain_core.tools import BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.office365.create_draft_message import ( from langchain_community.tools.office365.create_draft_message import (
O365CreateDraftMessage, O365CreateDraftMessage,

@ -4,9 +4,8 @@ from __future__ import annotations
from typing import Any, List from typing import Any, List
from langchain_core.language_models import BaseLanguageModel from langchain_core.language_models import BaseLanguageModel
from langchain_core.tools import Tool from langchain_core.tools import BaseToolkit, Tool
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.agent_toolkits.json.base import create_json_agent from langchain_community.agent_toolkits.json.base import create_json_agent
from langchain_community.agent_toolkits.json.toolkit import JsonToolkit from langchain_community.agent_toolkits.json.toolkit import JsonToolkit
from langchain_community.agent_toolkits.openapi.prompt import DESCRIPTION from langchain_community.agent_toolkits.openapi.prompt import DESCRIPTION

@ -4,9 +4,8 @@ from __future__ import annotations
from typing import TYPE_CHECKING, List, Optional, Type, cast from typing import TYPE_CHECKING, List, Optional, Type, cast
from langchain_core.pydantic_v1 import Extra, root_validator from langchain_core.pydantic_v1 import Extra, root_validator
from langchain_core.tools import BaseTool from langchain_core.tools import BaseTool, BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools.playwright.base import ( from langchain_community.tools.playwright.base import (
BaseBrowserTool, BaseBrowserTool,
lazy_import_playwright_browsers, lazy_import_playwright_browsers,

@ -1,6 +1,7 @@
from typing import List from typing import List
from langchain_community.agent_toolkits.base import BaseToolkit from langchain_core.tools import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.polygon import ( from langchain_community.tools.polygon import (
PolygonAggregates, PolygonAggregates,

@ -13,8 +13,8 @@ from langchain_core.prompts.chat import (
SystemMessagePromptTemplate, SystemMessagePromptTemplate,
) )
from langchain_core.pydantic_v1 import Field from langchain_core.pydantic_v1 import Field
from langchain_core.tools import BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.powerbi.prompt import ( from langchain_community.tools.powerbi.prompt import (
QUESTION_TO_QUERY_BASE, QUESTION_TO_QUERY_BASE,

@ -3,8 +3,8 @@ from __future__ import annotations
from typing import TYPE_CHECKING, List from typing import TYPE_CHECKING, List
from langchain_core.pydantic_v1 import Field from langchain_core.pydantic_v1 import Field
from langchain_core.tools import BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.slack.get_channel import SlackGetChannel from langchain_community.tools.slack.get_channel import SlackGetChannel
from langchain_community.tools.slack.get_message import SlackGetMessage from langchain_community.tools.slack.get_message import SlackGetMessage

@ -3,8 +3,8 @@ from typing import List
from langchain_core.language_models import BaseLanguageModel from langchain_core.language_models import BaseLanguageModel
from langchain_core.pydantic_v1 import Field from langchain_core.pydantic_v1 import Field
from langchain_core.tools import BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.spark_sql.tool import ( from langchain_community.tools.spark_sql.tool import (
InfoSparkSQLTool, InfoSparkSQLTool,

@ -3,8 +3,8 @@ from typing import List
from langchain_core.language_models import BaseLanguageModel from langchain_core.language_models import BaseLanguageModel
from langchain_core.pydantic_v1 import Field from langchain_core.pydantic_v1 import Field
from langchain_core.tools import BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.sql_database.tool import ( from langchain_community.tools.sql_database.tool import (
InfoSQLDatabaseTool, InfoSQLDatabaseTool,

@ -1,7 +1,8 @@
"""Steam Toolkit.""" """Steam Toolkit."""
from typing import List from typing import List
from langchain_community.agent_toolkits.base import BaseToolkit from langchain_core.tools import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.steam.prompt import ( from langchain_community.tools.steam.prompt import (
STEAM_GET_GAMES_DETAILS, STEAM_GET_GAMES_DETAILS,

@ -2,8 +2,8 @@
from typing import List from typing import List
from langchain_core._api import warn_deprecated from langchain_core._api import warn_deprecated
from langchain_core.tools import BaseToolkit
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools import BaseTool from langchain_community.tools import BaseTool
from langchain_community.tools.zapier.tool import ZapierNLARunAction from langchain_community.tools.zapier.tool import ZapierNLARunAction
from langchain_community.utilities.zapier import ZapierNLAWrapper from langchain_community.utilities.zapier import ZapierNLAWrapper

@ -63,7 +63,7 @@ __all__ = [
] ]
_module_lookup = { _module_lookup = {
"BaseChatLoader": "langchain_community.chat_loaders.base", "BaseChatLoader": "langchain_core.chat_loaders",
"FolderFacebookMessengerChatLoader": "langchain_community.chat_loaders.facebook_messenger", # noqa: E501 "FolderFacebookMessengerChatLoader": "langchain_community.chat_loaders.facebook_messenger", # noqa: E501
"GMailLoader": "langchain_community.chat_loaders.gmail", "GMailLoader": "langchain_community.chat_loaders.gmail",
"IMessageChatLoader": "langchain_community.chat_loaders.imessage", "IMessageChatLoader": "langchain_community.chat_loaders.imessage",

@ -1,16 +1,3 @@
from abc import ABC, abstractmethod from langchain_core.chat_loaders import BaseChatLoader
from typing import Iterator, List
from langchain_core.chat_sessions import ChatSession __all__ = ["BaseChatLoader"]
class BaseChatLoader(ABC):
"""Base class for chat loaders."""
@abstractmethod
def lazy_load(self) -> Iterator[ChatSession]:
"""Lazy load the chat sessions."""
def load(self) -> List[ChatSession]:
"""Eagerly load the chat sessions into memory."""
return list(self.lazy_load())

@ -3,11 +3,10 @@ import logging
from pathlib import Path from pathlib import Path
from typing import Iterator, Union from typing import Iterator, Union
from langchain_core.chat_loaders import BaseChatLoader
from langchain_core.chat_sessions import ChatSession from langchain_core.chat_sessions import ChatSession
from langchain_core.messages import HumanMessage from langchain_core.messages import HumanMessage
from langchain_community.chat_loaders.base import BaseChatLoader
logger = logging.getLogger(__file__) logger = logging.getLogger(__file__)

@ -3,11 +3,10 @@ import re
from typing import Any, Iterator from typing import Any, Iterator
from langchain_core._api.deprecation import deprecated from langchain_core._api.deprecation import deprecated
from langchain_core.chat_loaders import BaseChatLoader
from langchain_core.chat_sessions import ChatSession from langchain_core.chat_sessions import ChatSession
from langchain_core.messages import HumanMessage from langchain_core.messages import HumanMessage
from langchain_community.chat_loaders.base import BaseChatLoader
def _extract_email_content(msg: Any) -> HumanMessage: def _extract_email_content(msg: Any) -> HumanMessage:
from_email = None from_email = None

@ -4,11 +4,10 @@ from datetime import datetime
from pathlib import Path from pathlib import Path
from typing import TYPE_CHECKING, Iterator, List, Optional, Union from typing import TYPE_CHECKING, Iterator, List, Optional, Union
from langchain_core.chat_loaders import BaseChatLoader
from langchain_core.chat_sessions import ChatSession from langchain_core.chat_sessions import ChatSession
from langchain_core.messages import HumanMessage from langchain_core.messages import HumanMessage
from langchain_community.chat_loaders.base import BaseChatLoader
if TYPE_CHECKING: if TYPE_CHECKING:
import sqlite3 import sqlite3

@ -3,11 +3,10 @@ from __future__ import annotations
import logging import logging
from typing import TYPE_CHECKING, Dict, Iterable, Iterator, List, Optional, Union, cast from typing import TYPE_CHECKING, Dict, Iterable, Iterator, List, Optional, Union, cast
from langchain_core.chat_loaders import BaseChatLoader
from langchain_core.chat_sessions import ChatSession from langchain_core.chat_sessions import ChatSession
from langchain_core.load.load import load from langchain_core.load.load import load
from langchain_community.chat_loaders.base import BaseChatLoader
if TYPE_CHECKING: if TYPE_CHECKING:
from langsmith.client import Client from langsmith.client import Client
from langsmith.schemas import Run from langsmith.schemas import Run

@ -5,11 +5,10 @@ import zipfile
from pathlib import Path from pathlib import Path
from typing import Dict, Iterator, List, Union from typing import Dict, Iterator, List, Union
from langchain_core.chat_loaders import BaseChatLoader
from langchain_core.chat_sessions import ChatSession from langchain_core.chat_sessions import ChatSession
from langchain_core.messages import AIMessage, HumanMessage from langchain_core.messages import AIMessage, HumanMessage
from langchain_community.chat_loaders.base import BaseChatLoader
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)

@ -6,11 +6,10 @@ import zipfile
from pathlib import Path from pathlib import Path
from typing import Iterator, List, Union from typing import Iterator, List, Union
from langchain_core.chat_loaders import BaseChatLoader
from langchain_core.chat_sessions import ChatSession from langchain_core.chat_sessions import ChatSession
from langchain_core.messages import AIMessage, BaseMessage, HumanMessage from langchain_core.messages import AIMessage, BaseMessage, HumanMessage
from langchain_community.chat_loaders.base import BaseChatLoader
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)

@ -4,11 +4,10 @@ import re
import zipfile import zipfile
from typing import Iterator, List, Union from typing import Iterator, List, Union
from langchain_core.chat_loaders import BaseChatLoader
from langchain_core.chat_sessions import ChatSession from langchain_core.chat_sessions import ChatSession
from langchain_core.messages import AIMessage, HumanMessage from langchain_core.messages import AIMessage, HumanMessage
from langchain_community.chat_loaders.base import BaseChatLoader
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)

@ -0,0 +1,16 @@
from abc import ABC, abstractmethod
from typing import Iterator, List
from langchain_core.chat_sessions import ChatSession
class BaseChatLoader(ABC):
"""Base class for chat loaders."""
@abstractmethod
def lazy_load(self) -> Iterator[ChatSession]:
"""Lazy load the chat sessions."""
def load(self) -> List[ChatSession]:
"""Eagerly load the chat sessions into memory."""
return list(self.lazy_load())

@ -1,3 +1,3 @@
from langchain_community.agent_toolkits.base import BaseToolkit from langchain_core.tools import BaseToolkit
__all__ = ["BaseToolkit"] __all__ = ["BaseToolkit"]

@ -1,14 +1,13 @@
"""Toolkit for interacting with a vector store.""" """Toolkit for interacting with a vector store."""
from typing import List from typing import List
from langchain_community.agent_toolkits.base import BaseToolkit
from langchain_community.tools.vectorstore.tool import ( from langchain_community.tools.vectorstore.tool import (
VectorStoreQATool, VectorStoreQATool,
VectorStoreQAWithSourcesTool, VectorStoreQAWithSourcesTool,
) )
from langchain_core.language_models import BaseLanguageModel from langchain_core.language_models import BaseLanguageModel
from langchain_core.pydantic_v1 import BaseModel, Field from langchain_core.pydantic_v1 import BaseModel, Field
from langchain_core.tools import BaseTool from langchain_core.tools import BaseTool, BaseToolkit
from langchain_core.vectorstores import VectorStore from langchain_core.vectorstores import VectorStore

@ -1,3 +1,3 @@
from langchain_community.chat_loaders.base import BaseChatLoader from langchain_core.chat_loaders import BaseChatLoader
__all__ = ["BaseChatLoader"] __all__ = ["BaseChatLoader"]

Loading…
Cancel
Save