langchain_community.chat_message_histories.elasticsearch.ElasticsearchChatMessageHistory

class langchain_community.chat_message_histories.elasticsearch.ElasticsearchChatMessageHistory(index: str, session_id: str, *, es_connection: Optional[Elasticsearch] = None, es_url: Optional[str] = None, es_cloud_id: Optional[str] = None, es_user: Optional[str] = None, es_api_key: Optional[str] = None, es_password: Optional[str] = None, esnsure_ascii: Optional[bool] = True)[source]

[Deprecated] 聊天消息历史记录,将历史记录存储在Elasticsearch中。

Parameters
  • es_url (Optional[str]) – 要连接的Elasticsearch实例的URL。

  • es_cloud_id (Optional[str]) – 要连接的Elasticsearch实例的云ID。

  • es_user (Optional[str]) – 连接到Elasticsearch时要使用的用户名。

  • es_password (Optional[str]) – 连接到Elasticsearch时要使用的密码。

  • es_api_key (Optional[str]) – 连接到Elasticsearch时要使用的API密钥。

  • es_connection (Optional[Elasticsearch]) – 可选的现有Elasticsearch连接。

  • esnsure_ascii (Optional[bool]) – 用于在json.dumps中转义ASCII符号。默认为True。

  • index (str) – 要使用的索引名称。

  • session_id (str) – 用于存储单个聊天会话的消息的任意键。

Notes

Deprecated since version 0.0.27: Use Use langchain-elasticsearch package instead.

Attributes

messages

从Elasticsearch检索消息

Methods

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

aadd_messages(messages)

添加一个消息列表。

aclear()

从存储中删除所有消息。

add_ai_message(message)

便利方法,用于将AI消息字符串添加到存储中。

add_message(message)

在Elasticsearch中向聊天会话添加一条消息

add_messages(messages)

添加消息列表。

add_user_message(message)

方便的方法,用于向存储添加人类消息字符串。

aget_messages()

异步版本的获取消息。

clear()

清除Elasticsearch中的会话内存

connect_to_elasticsearch(*[, es_url, ...])

get_user_agent()

__init__(index: str, session_id: str, *, es_connection: Optional[Elasticsearch] = None, es_url: Optional[str] = None, es_cloud_id: Optional[str] = None, es_user: Optional[str] = None, es_api_key: Optional[str] = None, es_password: Optional[str] = None, esnsure_ascii: Optional[bool] = True)[source]
Parameters
  • index (str) –

  • session_id (str) –

  • es_connection (Optional[Elasticsearch]) –

  • es_url (Optional[str]) –

  • es_cloud_id (Optional[str]) –

  • es_user (Optional[str]) –

  • es_api_key (Optional[str]) –

  • es_password (Optional[str]) –

  • esnsure_ascii (Optional[bool]) –

async aadd_messages(messages: Sequence[BaseMessage]) None

添加一个消息列表。

参数:

messages: 要存储的BaseMessage对象列表。

Parameters

messages (Sequence[BaseMessage]) –

Return type

None

async aclear() None

从存储中删除所有消息。

Return type

None

add_ai_message(message: Union[AIMessage, str]) None

便利方法,用于将AI消息字符串添加到存储中。

请注意,这是一个便利方法。 代码应该更倾向于使用bulk add_messages接口,以节省对底层持久性层的往返次数。

这种方法可能在将来的版本中被弃用。

参数:

message: 要添加的AI消息。

Parameters

message (Union[AIMessage, str]) –

Return type

None

add_message(message: BaseMessage) None[source]

在Elasticsearch中向聊天会话添加一条消息

Parameters

message (BaseMessage) –

Return type

None

add_messages(messages: Sequence[BaseMessage]) None

添加消息列表。

实现应该重写此方法,以有效地处理消息的批量添加,以避免不必要地往基础存储中进行往返。

参数:

messages: 要存储的 BaseMessage 对象列表。

Parameters

messages (Sequence[BaseMessage]) –

Return type

None

add_user_message(message: Union[HumanMessage, str]) None

方便的方法,用于向存储添加人类消息字符串。

请注意,这是一个方便的方法。代码应该更倾向于使用批量add_messages接口,以节省对底层持久性层的往返次数。

这种方法可能在将来的版本中被弃用。

参数:

message: 要添加的人类消息

Parameters

message (Union[HumanMessage, str]) –

Return type

None

async aget_messages() List[BaseMessage]

异步版本的获取消息。

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

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

Return type

List[BaseMessage]

clear() None[source]

清除Elasticsearch中的会话内存

Return type

None

static connect_to_elasticsearch(*, es_url: Optional[str] = None, cloud_id: Optional[str] = None, api_key: Optional[str] = None, username: Optional[str] = None, password: Optional[str] = None) Elasticsearch[source]
Parameters
  • es_url (Optional[str]) –

  • cloud_id (Optional[str]) –

  • api_key (Optional[str]) –

  • username (Optional[str]) –

  • password (Optional[str]) –

Return type

Elasticsearch

static get_user_agent() str[source]
Return type

str

Examples using ElasticsearchChatMessageHistory