Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: Add MongoDBChatMessageHistory docstrings #24608

Merged
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 57 additions & 11 deletions libs/partners/mongodb/langchain_mongodb/chat_message_histories.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,17 +21,42 @@
class MongoDBChatMessageHistory(BaseChatMessageHistory):
"""Chat message history that stores history in MongoDB.

Args:
connection_string: connection string to connect to MongoDB
session_id: arbitrary key that is used to store the messages
of a single chat session.
database_name: name of the database to use
collection_name: name of the collection to use
session_id_key: name of the field that stores the session id
history_key: name of the field that stores the chat history
create_index: whether to create an index on the session id field
index_kwargs: additional keyword arguments to pass to the index creation
"""
Setup:
Install ``langchain-mongodb`` python package.

.. code-block:: bash

pip install langchain-mongodb

Instantiate:
.. code-block:: python

from langchain_mongodb import MongoDBChatMessageHistory


history = MongoDBChatMessageHistory(
connection_string="mongodb://your-host:your-port/", # mongodb://localhost:27017/
session_id = "your-session-id",
)

Add and retrieve messages:
.. code-block:: python

# Add single message
history.add_message(message)

# Add batch messages
history.add_messages([message1, message2, message3, ...])

# Add human message
history.add_user_message(human_message)

# Add ai message
history.add_ai_message(ai_message)

# Retrieve messages
messages = history.messages
""" # noqa: E501

def __init__(
self,
Expand All @@ -45,6 +70,27 @@ def __init__(
create_index: bool = True,
index_kwargs: Optional[Dict] = None,
):
"""Initialize with a MongoDBChatMessageHistory instance.

Args:
connection_string: str
connection string to connect to MongoDB.
session_id: str
arbitrary key that is used to store the messages of
a single chat session.
database_name: Optional[str]
name of the database to use.
collection_name: Optional[str]
name of the collection to use.
session_id_key: Optional[str]
name of the field that stores the session id.
history_key: Optional[str]
name of the field that stores the chat history.
create_index: Optional[bool]
whether to create an index on the session id field.
index_kwargs: Optional[Dict]
additional keyword arguments to pass to the index creation.
"""
self.connection_string = connection_string
self.session_id = session_id
self.database_name = database_name
Expand Down
Loading