Skip to content

Index

BaseMemory #

Bases: BaseComponent

所有内存类型的基类。

注意:内存接口尚未最终确定,可能会发生变化。

Source code in llama_index/core/memory/types.py
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
class BaseMemory(BaseComponent):
    """所有内存类型的基类。

注意:内存接口尚未最终确定,可能会发生变化。"""

    @classmethod
    def class_name(cls) -> str:
        """获取类名。"""
        return "BaseMemory"

    @classmethod
    @abstractmethod
    def from_defaults(
        cls,
        chat_history: Optional[List[ChatMessage]] = None,
        llm: Optional[LLM] = None,
    ) -> "BaseMemory":
        """从默认值创建一个聊天内存。"""

    @abstractmethod
    def get(self, input: Optional[str] = None, **kwargs: Any) -> List[ChatMessage]:
        """获取聊天记录。"""

    @abstractmethod
    def get_all(self) -> List[ChatMessage]:
        """获取所有聊天记录。"""

    @abstractmethod
    def put(self, message: ChatMessage) -> None:
        """放置聊天记录。"""

    def put_messages(self, messages: List[ChatMessage]) -> None:
        """放置聊天记录。"""
        for message in messages:
            self.put(message)

    @abstractmethod
    def set(self, messages: List[ChatMessage]) -> None:
        """设置聊天记录。"""

    @abstractmethod
    def reset(self) -> None:
        """重置聊天记录。"""

class_name classmethod #

class_name() -> str

获取类名。

Source code in llama_index/core/memory/types.py
18
19
20
21
@classmethod
def class_name(cls) -> str:
    """获取类名。"""
    return "BaseMemory"

from_defaults abstractmethod classmethod #

from_defaults(
    chat_history: Optional[List[ChatMessage]] = None,
    llm: Optional[LLM] = None,
) -> BaseMemory

从默认值创建一个聊天内存。

Source code in llama_index/core/memory/types.py
23
24
25
26
27
28
29
30
@classmethod
@abstractmethod
def from_defaults(
    cls,
    chat_history: Optional[List[ChatMessage]] = None,
    llm: Optional[LLM] = None,
) -> "BaseMemory":
    """从默认值创建一个聊天内存。"""

get abstractmethod #

get(
    input: Optional[str] = None, **kwargs: Any
) -> List[ChatMessage]

获取聊天记录。

Source code in llama_index/core/memory/types.py
32
33
34
@abstractmethod
def get(self, input: Optional[str] = None, **kwargs: Any) -> List[ChatMessage]:
    """获取聊天记录。"""

get_all abstractmethod #

get_all() -> List[ChatMessage]

获取所有聊天记录。

Source code in llama_index/core/memory/types.py
36
37
38
@abstractmethod
def get_all(self) -> List[ChatMessage]:
    """获取所有聊天记录。"""

put abstractmethod #

put(message: ChatMessage) -> None

放置聊天记录。

Source code in llama_index/core/memory/types.py
40
41
42
@abstractmethod
def put(self, message: ChatMessage) -> None:
    """放置聊天记录。"""

put_messages #

put_messages(messages: List[ChatMessage]) -> None

放置聊天记录。

Source code in llama_index/core/memory/types.py
44
45
46
47
def put_messages(self, messages: List[ChatMessage]) -> None:
    """放置聊天记录。"""
    for message in messages:
        self.put(message)

set abstractmethod #

set(messages: List[ChatMessage]) -> None

设置聊天记录。

Source code in llama_index/core/memory/types.py
49
50
51
@abstractmethod
def set(self, messages: List[ChatMessage]) -> None:
    """设置聊天记录。"""

reset abstractmethod #

reset() -> None

重置聊天记录。

Source code in llama_index/core/memory/types.py
53
54
55
@abstractmethod
def reset(self) -> None:
    """重置聊天记录。"""

BaseChatStoreMemory #

Bases: BaseMemory

任何的基类。

注意:内存的接口尚未最终确定,可能会发生变化。

Source code in llama_index/core/memory/types.py
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
class BaseChatStoreMemory(BaseMemory):
    """任何的基类。

    注意:内存的接口尚未最终确定,可能会发生变化。"""

    chat_store: BaseChatStore = Field(default_factory=SimpleChatStore)
    chat_store_key: str = Field(default=DEFAULT_CHAT_STORE_KEY)

    @classmethod
    def class_name(cls) -> str:
        """获取类名。"""
        return "BaseChatStoreMemory"

    @classmethod
    @abstractmethod
    def from_defaults(
        cls,
        chat_history: Optional[List[ChatMessage]] = None,
        llm: Optional[LLM] = None,
    ) -> "BaseChatStoreMemory":
        """从默认值创建一个聊天内存。"""

    def get_all(self) -> List[ChatMessage]:
        """获取所有聊天记录。"""
        return self.chat_store.get_messages(self.chat_store_key)

    def put(self, message: ChatMessage) -> None:
        """放置聊天记录。"""
        # ensure everything is serialized
        self.chat_store.add_message(self.chat_store_key, message)

    def set(self, messages: List[ChatMessage]) -> None:
        """设置聊天记录。"""
        self.chat_store.set_messages(self.chat_store_key, messages)

    def reset(self) -> None:
        """重置聊天记录。"""
        self.chat_store.delete_messages(self.chat_store_key)

class_name classmethod #

class_name() -> str

获取类名。

Source code in llama_index/core/memory/types.py
66
67
68
69
@classmethod
def class_name(cls) -> str:
    """获取类名。"""
    return "BaseChatStoreMemory"

from_defaults abstractmethod classmethod #

from_defaults(
    chat_history: Optional[List[ChatMessage]] = None,
    llm: Optional[LLM] = None,
) -> BaseChatStoreMemory

从默认值创建一个聊天内存。

Source code in llama_index/core/memory/types.py
71
72
73
74
75
76
77
78
@classmethod
@abstractmethod
def from_defaults(
    cls,
    chat_history: Optional[List[ChatMessage]] = None,
    llm: Optional[LLM] = None,
) -> "BaseChatStoreMemory":
    """从默认值创建一个聊天内存。"""

get_all #

get_all() -> List[ChatMessage]

获取所有聊天记录。

Source code in llama_index/core/memory/types.py
80
81
82
def get_all(self) -> List[ChatMessage]:
    """获取所有聊天记录。"""
    return self.chat_store.get_messages(self.chat_store_key)

put #

put(message: ChatMessage) -> None

放置聊天记录。

Source code in llama_index/core/memory/types.py
84
85
86
87
def put(self, message: ChatMessage) -> None:
    """放置聊天记录。"""
    # ensure everything is serialized
    self.chat_store.add_message(self.chat_store_key, message)

set #

set(messages: List[ChatMessage]) -> None

设置聊天记录。

Source code in llama_index/core/memory/types.py
89
90
91
def set(self, messages: List[ChatMessage]) -> None:
    """设置聊天记录。"""
    self.chat_store.set_messages(self.chat_store_key, messages)

reset #

reset() -> None

重置聊天记录。

Source code in llama_index/core/memory/types.py
93
94
95
def reset(self) -> None:
    """重置聊天记录。"""
    self.chat_store.delete_messages(self.chat_store_key)