codekingpro/portable-devtools
114k
1"""**Memory** maintains Chain state, incorporating context from past runs."""2 3from typing import TYPE_CHECKING, Any4 5from langchain_classic._api import create_importer6from langchain_classic.memory.buffer import (7 ConversationBufferMemory,8 ConversationStringBufferMemory,9)10from langchain_classic.memory.buffer_window import ConversationBufferWindowMemory11from langchain_classic.memory.combined import CombinedMemory12from langchain_classic.memory.entity import (13 ConversationEntityMemory,14 InMemoryEntityStore,15 RedisEntityStore,16 SQLiteEntityStore,17 UpstashRedisEntityStore,18)19from langchain_classic.memory.readonly import ReadOnlySharedMemory20from langchain_classic.memory.simple import SimpleMemory21from langchain_classic.memory.summary import ConversationSummaryMemory22from langchain_classic.memory.summary_buffer import ConversationSummaryBufferMemory23from langchain_classic.memory.token_buffer import ConversationTokenBufferMemory24from langchain_classic.memory.vectorstore import VectorStoreRetrieverMemory25from langchain_classic.memory.vectorstore_token_buffer_memory import (26 ConversationVectorStoreTokenBufferMemory, # avoid circular import27)28 29if TYPE_CHECKING:30 from langchain_community.chat_message_histories import (31 AstraDBChatMessageHistory,32 CassandraChatMessageHistory,33 ChatMessageHistory,34 CosmosDBChatMessageHistory,35 DynamoDBChatMessageHistory,36 ElasticsearchChatMessageHistory,37 FileChatMessageHistory,38 MomentoChatMessageHistory,39 MongoDBChatMessageHistory,40 PostgresChatMessageHistory,41 RedisChatMessageHistory,42 SingleStoreDBChatMessageHistory,43 SQLChatMessageHistory,44 StreamlitChatMessageHistory,45 UpstashRedisChatMessageHistory,46 XataChatMessageHistory,47 ZepChatMessageHistory,48 )49 from langchain_community.memory.kg import ConversationKGMemory50 from langchain_community.memory.motorhead_memory import MotorheadMemory51 from langchain_community.memory.zep_memory import ZepMemory52 53 54# Create a way to dynamically look up deprecated imports.55# Used to consolidate logic for raising deprecation warnings and56# handling optional imports.57DEPRECATED_LOOKUP = {58 "MotorheadMemory": "langchain_community.memory.motorhead_memory",59 "ConversationKGMemory": "langchain_community.memory.kg",60 "ZepMemory": "langchain_community.memory.zep_memory",61 "AstraDBChatMessageHistory": "langchain_community.chat_message_histories",62 "CassandraChatMessageHistory": "langchain_community.chat_message_histories",63 "ChatMessageHistory": "langchain_community.chat_message_histories",64 "CosmosDBChatMessageHistory": "langchain_community.chat_message_histories",65 "DynamoDBChatMessageHistory": "langchain_community.chat_message_histories",66 "ElasticsearchChatMessageHistory": "langchain_community.chat_message_histories",67 "FileChatMessageHistory": "langchain_community.chat_message_histories",68 "MomentoChatMessageHistory": "langchain_community.chat_message_histories",69 "MongoDBChatMessageHistory": "langchain_community.chat_message_histories",70 "PostgresChatMessageHistory": "langchain_community.chat_message_histories",71 "RedisChatMessageHistory": "langchain_community.chat_message_histories",72 "SingleStoreDBChatMessageHistory": "langchain_community.chat_message_histories",73 "SQLChatMessageHistory": "langchain_community.chat_message_histories",74 "StreamlitChatMessageHistory": "langchain_community.chat_message_histories",75 "UpstashRedisChatMessageHistory": "langchain_community.chat_message_histories",76 "XataChatMessageHistory": "langchain_community.chat_message_histories",77 "ZepChatMessageHistory": "langchain_community.chat_message_histories",78}79 80 81_import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)82 83 84def __getattr__(name: str) -> Any:85 """Look up attributes dynamically."""86 return _import_attribute(name)87 88 89__all__ = [90 "AstraDBChatMessageHistory",91 "CassandraChatMessageHistory",92 "ChatMessageHistory",93 "CombinedMemory",94 "ConversationBufferMemory",95 "ConversationBufferWindowMemory",96 "ConversationEntityMemory",97 "ConversationKGMemory",98 "ConversationStringBufferMemory",99 "ConversationSummaryBufferMemory",100 "ConversationSummaryMemory",101 "ConversationTokenBufferMemory",102 "ConversationVectorStoreTokenBufferMemory",103 "CosmosDBChatMessageHistory",104 "DynamoDBChatMessageHistory",105 "ElasticsearchChatMessageHistory",106 "FileChatMessageHistory",107 "InMemoryEntityStore",108 "MomentoChatMessageHistory",109 "MongoDBChatMessageHistory",110 "MotorheadMemory",111 "PostgresChatMessageHistory",112 "ReadOnlySharedMemory",113 "RedisChatMessageHistory",114 "RedisEntityStore",115 "SQLChatMessageHistory",116 "SQLiteEntityStore",117 "SimpleMemory",118 "SingleStoreDBChatMessageHistory",119 "StreamlitChatMessageHistory",120 "UpstashRedisChatMessageHistory",121 "UpstashRedisEntityStore",122 "VectorStoreRetrieverMemory",123 "XataChatMessageHistory",124 "ZepChatMessageHistory",125 "ZepMemory",126]127 