使用 Streamlit 构建交互式聊天应用:存储和管理消息历史

引言

在数据科学和机器学习领域,创建交互式应用程序是展示模型和算法的重要方式。Streamlit 是一个开源的 Python 库,可以轻松地创建和共享优美的自定义 Web 应用。本篇文章将带你了解如何在 Streamlit 应用中存储和使用聊天消息历史。

主要内容

1. 安装与环境配置

首先,我们需要安装 langchain-communitystreamlit。运行以下命令来确保安装最新版本:

pip install -U langchain-community streamlit

2. 在 Streamlit 中管理聊天历史

StreamlitChatMessageHistory 类允许我们将消息存储在 Streamlit 会话状态中,并且可以指定键。默认键为 "langchain_messages"

from langchain_community.chat_message_histories import StreamlitChatMessageHistory

history = StreamlitChatMessageHistory(key="chat_messages")

history.add_user_message("hi!")
history.add_ai_message("whats up?")

这些历史记录会在每次应用重新运行时保留,确保用户体验的一致性。

3. 与 LangChain 的结合

我们可以将消息历史与 LCEL Runnables 结合使用。这使得应用在不同用户会话中不会共享历史记录。

from langchain_core.prompts import ChatPromptTemplate, MessagesPlaceholder
from langchain_core.runnables.history import
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值