langchain_community.chat_message_histories.zep_cloud.ZepCloudChatMessageHistory

class langchain_community.chat_message_histories.zep_cloud.ZepCloudChatMessageHistory(session_id: str, api_key: str, *, memory_type: Optional[MemoryGetRequestMemoryType] = None, lastn: Optional[int] = None, ai_prefix: Optional[str] = None, human_prefix: Optional[str] = None, summary_instruction: Optional[str] = None)[source]

使用 Zep Cloud 作为后端存储的聊天消息历史。

推荐用法

# Set up Zep Chat History
zep_chat_history = ZepChatMessageHistory(
    session_id=session_id,
    api_key=<your_api_key>,
)

# Use a standard ConversationBufferMemory to encapsulate the Zep chat history
memory = ConversationBufferMemory(
    memory_key="chat_history", chat_memory=zep_chat_history
)

使用 Zep 回忆、理解和提取聊天历史中的数据。赋予个性化 AI 体验。

Zep 是 AI 助手应用的长期记忆服务。通过 Zep,您可以提供给 AI 助理回忆过去对话的能力,无论多远,同时还能减少幻觉、延迟和成本。

请参阅 Zep Cloud 文档:https://help.getzep.com

此类是对 zep-python 包的轻量级封装。通过 zep_summaryzep_messageszep_facts 属性,暴露了额外的 Zep 功能。

有关 zep-python 包的更多信息,请参阅:https://github.com/getzep/zep-python

属性

messages

从 Zep 内存中检索消息

zep_facts

从 Zep 内存中检索对话事实

zep_messages

从 Zep 内存中检索摘要

zep_summary

从 Zep 内存中检索摘要

方法

__init__(session_id, api_key, *[, ...])

aadd_messages(messages)

异步将消息添加到Zep内存历史记录

aclear()

异步清除Zep的会话内存。

add_ai_message(message[, metadata])

将AI消息字符串添加到存储的便捷方法。

add_message(message[, metadata])

将消息添加到Zep内存历史记录

add_messages(messages)

将消息添加到Zep内存历史记录

add_user_message(message[, metadata])

将人类消息字符串添加到存储的便捷方法。

aget_messages()

获取消息的异步版本。

clear()

从Zep中清除会话内存。

search(query[, metadata, search_scope, ...])

在Zep内存中搜索与查询匹配的消息

参数
  • session_id (str) –

  • api_key (str) –

  • memory_type (Optional[MemoryGetRequestMemoryType]) –

  • lastn (Optional[int]) –

  • ai_prefix (Optional[str]) –

  • human_prefix (Optional[str]) –

  • summary_instruction (Optional[str]) –

__init__(session_id: str, api_key: str, ..., memory_type: Optional[MemoryGetRequestMemoryType] = None, lastn: Optional[int] = None, ai_prefix: Optional[str] = None, human_prefix: Optional[str] = None, summary_instruction: Optional[str] = None) None[source]
参数
  • session_id (str) –

  • api_key (str) –

  • memory_type (Optional[MemoryGetRequestMemoryType]) –

  • lastn (Optional[int]) –

  • ai_prefix (Optional[str]) –

  • human_prefix (Optional[str]) –

  • summary_instruction (Optional[str]) –

返回类型

None

async aadd_messages(messages: Sequence[BaseMessage]) None[source]

异步将消息添加到Zep内存历史记录

参数

messages (Sequence[BaseMessage]) –

返回类型

None

async aclear() None[source]

异步清除Zep会话内存。请注意,Zep是内存的长期存储,除非您有特定的数据保留需求,否则不建议这样做。

返回类型

None

add_ai_message(message: str, metadata: Optional[Dict[str, Any]] = None) None[source]

将AI消息字符串添加到存储的便捷方法。

参数
  • message (str) – 人工智能消息的字符串内容。

  • metadata (Optional[Dict[str, Any]]) – 消息中附加的可选元数据。

返回类型

None

add_message(message: BaseMessage, metadata: Optional[Dict[str, Any]] = None) None[source]

将消息添加到Zep内存历史记录

参数
  • message (BaseMessage) –

  • metadata (Optional[Dict[str, Any]]) –

返回类型

None

add_messages(messages: Sequence[BaseMessage]) None[source]

将消息添加到Zep内存历史记录

参数

messages (Sequence[BaseMessage]) –

返回类型

None

add_user_message(message: str, metadata: Optional[Dict[str, Any]] = None) None[source]

将人类消息字符串添加到存储的便捷方法。

参数
  • message (str) – 人类消息的字符串内容。

  • metadata (Optional[Dict[str, Any]]) – 消息中附加的可选元数据。

返回类型

None

async aget_messages() List[BaseMessage]

获取消息的异步版本。

可重写此方法提供高效的异步实现。

通常,获取消息可能涉及到对底层持久化层的IO操作。

返回类型

BaseMessage]

clear() None[source]

从Zep清除会话内存。请注意,Zep是内存的长期存储,除非有特定的数据保留需求,否则不建议这样做。

返回类型

None

search(query: str, metadata: Optional[Dict] = None, search_scope: SearchScope = 'messages', search_type: SearchType = 'similarity', mmr_lambda: Optional[float] = None, limit: Optional[int] = None) List[MemorySearchResult][source]

在Zep内存中搜索与查询匹配的消息

参数
  • query (str) –

  • metadata (Optional[Dict]) –

  • search_scope (SearchScope) –

  • search_type (SearchType) –

  • mmr_lambda (Optional[float]) –

  • limit (Optional[int]) –

返回类型

MemorySearchResult 列表

使用 ZepCloudChatMessageHistory 的示例