开源项目安装与配置指南
1. 项目基础介绍
本项目是一个开源示例,展示了如何使用Retrieval Augmented Generation (RAG) 方法,结合Amazon Bedrock和Amazon OpenSearch来实现文本嵌入和增强型生成。它主要用于辅助提示工程任务,以从大型语言模型(LLM)获得更准确的响应。该项目主要使用Python编程语言。
2. 关键技术和框架
- Retrieval Augmented Generation (RAG): 一种结合检索和生成的方法,用于增强自然语言处理模型的能力。
- Amazon Bedrock: 提供基础模型服务的平台,本项目使用它来生成文本嵌入。
- Amazon OpenSearch: 用于存储和检索文本嵌入的搜索和分析引擎。
- LangChain: 一个用于连接LLM和向量数据库的工具链。
- Terraform: 用于创建和管理云基础设施的开源工具。
3. 准备工作与安装步骤
准备工作
- 确保系统中已安装Python 3.11.4版本。
- 安装virtualenv来创建一个干净的环境:
pip install virtualenv
- 创建并激活虚拟环境:
python -m virtualenv venv
和source ./venv/bin/activate
- 安装所需依赖:
pip install -r requirements.txt
- 安装Terraform:
brew tap hashicorp/tap
和brew install hashicorp/tap/terraform
- 在模型访问页面启用你想要使用的基础模型。
安装步骤
-
初始化Terraform
- 切换到
terraform
目录下:cd ./terraform
- 初始化Terraform配置:
terraform init
- 切换到
-
创建OpenSearch集群
- 应用Terraform配置来创建OpenSearch集群:
terraform apply -auto-approve
- 注意:这个集群仅用于测试,其端点是公开的。
- 应用Terraform配置来创建OpenSearch集群:
-
加载数据到OpenSearch
- 使用脚本将数据加载到OpenSearch中:
python load-data-to-opensearch.py --recreate 1 --early-stop 1
- 可选参数:
--recreate
:重建OpenSearch中的索引。--early-stop
:仅加载100个嵌入文档到OpenSearch中。--index
:使用不同于默认的索引名。--region
:如果你不在默认的us-east-1
区域,可以指定其他区域。--multi-tenant
:使用多租户模式,将数据加载到带有租户ID的索引中。
- 使用脚本将数据加载到OpenSearch中:
-
使用RAG查询LLM
- 执行脚本查询LLM模型:
python ask-bedrock-with-rag.py --ask "你的问题在这里"
- 可选参数:
--index
:使用不同的索引名。--region
:指定不同的区域。--bedrock-model-id
:选择不同于默认的模型。--tenant-id
:仅过滤特定的租户ID。
- 执行脚本查询LLM模型:
-
清理资源
- 删除Terraform创建的资源:
cd ./terraform
和terraform destroy
- 当提示确认时,输入
yes
并按回车确认。
- 删除Terraform创建的资源:
通过以上步骤,你可以成功安装和配置该项目,开始使用RAG方法与Amazon Bedrock和OpenSearch进行文本嵌入和增强型生成。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考