使用Weaviate与生成式OpenAI模块进行生成式搜索
本笔记本适用于以下场景: - 您的数据已经存储在Weaviate中 - 您希望将Weaviate与生成式OpenAI模块(generative-openai)一起使用。
先决条件
本手册仅涵盖生成式搜索示例,但不涵盖配置和数据导入。
为了充分利用本手册,请先完成入门手册,在那里您将学习如何使用Weaviate并导入演示数据。
检查清单: *
完成了入门手册, *
创建了一个Weaviate
实例, * 将数据导入到您的Weaviate
实例中, *
拥有OpenAI API密钥。
=========================================================== ## 准备您的OpenAI API密钥
OpenAI API密钥
用于在导入数据时对数据进行向量化,并用于运行查询。
如果您还没有OpenAI API密钥,可以从https://beta.openai.com/account/api-keys获取。
获取到密钥后,请将其添加到您的环境变量中,命名为 OPENAI_API_KEY
。
# 导出 OpenAI API 密钥
!export OPENAI_API_KEY="your key"
# 确保你的 OpenAI API 密钥已正确设置为环境变量。
# 注意:如果你在本地运行这个笔记本,你需要重新加载终端和笔记本,以便环境变量生效。
import os
# 注意:或者,您也可以像这样设置一个临时的环境变量:
# os.environ["OPENAI_API_KEY"] = 'your-key-goes-here'
if os.getenv("OPENAI_API_KEY") is not None:
print ("OPENAI_API_KEY is ready")
else:
print ("OPENAI_API_KEY environment variable not found")
连接到您的Weaviate实例
在本节中,我们将:
- 测试环境变量
OPENAI_API_KEY
- 确保您已完成#准备您的OpenAI API密钥中的步骤 - 使用您的
OpenAI API密钥
连接到您的Weaviate - 并测试客户端连接
客户端
完成这一步之后,client
对象将被用于执行所有与Weaviate相关的操作。
import weaviate
from datasets import load_dataset
import os
# 连接到您的 Weaviate 实例
client = weaviate.Client(
url="https://your-wcs-instance-name.weaviate.network/",
# url="http://localhost:8080/",
auth_client_secret=weaviate.auth.AuthApiKey(api_key="<YOUR-WEAVIATE-API-KEY>"), # 如果您没有为您的 Weaviate 实例使用身份验证(例如,对于本地部署的实例),请注释掉这一行。
additional_headers={
"X-OpenAI-Api-Key": os.getenv("OPENAI_API_KEY")
}
)
# 检查您的实例是否已上线并准备就绪
# 这应该返回 `True`
client.is_ready()