微信扫码
与创始人交个朋友
我要投稿
FastAPI 和 Uvicorn 通过 HTTP 提供客户端请求服务
UnstructuredFileLoader 将 PDF 文档解析为原始文本
RecursiveCharacterTextSplitter 将文本分割成较小的块
来自 HuggingFace 的 'all-MiniLM-L6-v2' 句子转换器,将文本块嵌入到向量中
Redis 作为向量数据库,用于实时上下文检索
OpenAI 的 'gpt-3.5-turbo-16k' LLM 生成对用户查询的答案
一个运行中的 Redis 实例(Redis Cloud 或本地 Redis Stack)
一个 OpenAI API 密钥
环境设置:设置 OpenAI API 密钥和 Redis 环境变量:或者设置 REDIS_URL 环境变量而不是各个组件。
export OPENAI_API_KEY=<your_openai_api_key>export REDIS_HOST=<your_redis_host>export REDIS_PORT=<your_redis_port>export REDIS_USER=<your_redis_user>export REDIS_PASSWORD=<your_redis_password>
创建并激活 Python3.9 虚拟环境:
python3.9 -m venv lc-templatesource lc-template/bin/activate
安装 LangChain CLI 和 Pydantic:
pip install -U langchain-cli pydantic==1.10.13
创建一个新的 LangChain 项目:
运行下面的 LangChain CLI 命令创建一个名为 test-rag 的新目录。
当提示安装模板时,选择是选项:y 。 这一步将在 ./test-rag/packages 目录下下载 rag-redis 模板内容,并尝试安装 Python 需求。
langchain app new test-rag --package rag-redis
提取源数据:
这可能需要几分钟。ingest.py 脚本执行一个管道,如下所示,该管道加载源 PDF 文档,将文本转换为较小的块,使用 HuggingFace 句子转换器模型创建文本嵌入,并将数据加载到 Redis 中。
cd test-rag/packages/rag-redispython ingest.py
使用 LangServe 服务 FastAPI 应用程序:
cd../ &&cd..langchain serve
在端口 8000 上访问 API。
启动后,您应该看到以下输出:
导航到 http://127.0.0.1:8000/docs 查看文档。
访问 http://127.0.0.1:8000/rag-redis/playground 以使用测试程序,如下所示:
也可以测试 API 的交互,LangChain 应用程序以从 Redis 检索的 Nike 公司 PDF 的丰富上下文结合 OpenAI LLM 的生成能力做出回应。
LangChain 和 Redis 一起推进 AI 创新
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-07-18
2024-05-05
2024-07-09
2024-05-19
2024-07-09
2024-06-20
2024-07-07
2024-07-07
2024-07-08
2024-07-09
2024-11-25
2024-11-06
2024-11-06
2024-11-05
2024-11-04
2024-10-27
2024-10-25
2024-10-21