该存储库在此处为联合Redis/Microsoft博客文章提供了材料。它包含一个jupyter笔记本电脑,演示了如何使用redis作为矢量数据库存储和检索文档向量。该笔记本还显示了如何使用LlamainDex在文档中对上下文进行语义搜索,并使用OpenAI提供类似聊天机器人的体验。
LLM文档聊天教程旨在在Dockerized Jupyter Lab环境上运行,以确保理想的体验和最小的Python环境杂志。至少,您需要安装Docker桌面(随附Docker Compose )来运行此示例。
该项目维护一个.env.template ,并具有以下变量预先定义:
# General OpenAI Env Vars
OPENAI_TEXT_MODEL=gpt-35-turbo
OPENAI_EMBEDDING_MODEL=text-embedding-ada-002
OPENAI_TEMPERATURE=0.7
OPENAI_MAX_TOKENS=50
# OpenAI Direct Env Vars
OPENAI_API_KEY= < your key here >
OPENAI_API_BASE=https://api.openai.com/v1/
# Azure OpenAI Env Vars
# OPENAI_API_VERSION=2023-05-15 # use OPENAI_API_VERSION only with Azure OpenAI
AZURE_EMBED_MODEL_DEPLOYMENT_NAME= < your deployment name here >
AZURE_TEXT_MODEL_DEPLOYMENT_NAME= < your deployment name here >
AZURE_OPENAI_API_BASE=https:// < your deployment name > .openai.azure.com/
# General Env Vars
CHUNK_SIZE=500
CHUNK_OVERLAP=0.2
# Redis Env Vars
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_PASSWORD=制作此文件以创建.env如下:
$ cp .env.template .env根据您的选择更新Env文件的部分:
请注意,如果您将此示例托管在Azure上,则可以通过运行以下命令来快速部署带有正确配置的Redis Enterprise实例的Azure OpenAI和Azure Cache:
az group create -n LLMDocChatRG -l eastus
az deployment group create --template-file infra b icep m ain.bicep -g LLMDocChatRG要删除所有Azure资源,只需使用以下方式删除资源组
az group delete -n LLMDocChatRG
您可以在Azure OpenAi服务(由Azure完全托管和管理)和OpenAI Direct之间进行选择。
要使用Azure Openai,您需要遵循以下说明
.env文件添加了您的部署的特定值。 AZURE_EMBED_MODEL_DEPLOYMENT_NAME= < your deployment name here >
AZURE_TEXT_MODEL_DEPLOYMENT_NAME= < your deployment name here >
AZURE_OPENAI_API_BASE=https:// < your deployment name > .openai.azure.com/要使用OpenAI,您需要遵循以下说明
.env文件添加了您的部署的特定值。 OPENAI_API_KEY= < your key here >本教程将需要使用REDIS搜索和查询功能,包括对向量相似性搜索的支持。运行Redis有三个选项:
对于每个,都需要以下选项,并且必须在您的本地.env文件中进行更新:
REDIS_PASSWORD= < your password here >
REDIS_HOST= < your redis host address here >
REDIS_PORT= < your redis port here > docker目录中有一些docker-compose.yml文件,在使用远程redis的情况下(如Acre),将有助于本地旋转Redis-stack and Redis-stack。
要通过Docker打开Jupyter环境,请执行以下步骤:
将此存储库克隆到您的本地计算机。
将.env.template复制到.env并配置上述概述的值。
与Docker合作运行:
对于云或Azure Redis Enterprise
docker compose -f docker/cloud/docker-compose.yml up对于本地(Docker)Redis堆栈
docker compose -f docker/local/docker-compose.yml up在您的浏览器中打开Jupyter Lab会话,网址为http://127.0.0.1:8888/lab?token={YOUR GENERATED TOKEN} 。检查令牌字符串的终端日志。