微信扫码
添加专属顾问
我要投稿
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+中大型企业
2025-03-28
Ragflow技术栈分析及二次开发指南
2025-03-28
RagFlow和Dify如何选择
2025-03-28
RAG太折磨人啦,试一下pip install rankify,检索、重排序、RAG三合一,完美。| 独家
2025-03-28
深度长文|DeepSeek R1 的 RAG 检索之谜:为何“推理大师”不擅长 Embedding?
2025-03-28
RAG检索增强之ReRank(重新排序)模型
2025-03-27
为什么说Agentic RAG是RAG领域的王者?
2025-03-27
为什么RAG系统"一看就会,一做就废"?
2025-03-27
做完RAG图片搜索后,才明白过去对RAG的理解完全不够
2024-10-27
2024-09-04
2024-07-18
2024-05-05
2024-06-20
2024-06-13
2024-07-09
2024-07-09
2024-05-19
2024-07-07
2025-03-28
2025-03-27
2025-03-27
2025-03-25
2025-03-19
2025-03-18
2025-03-18
2025-03-15