技术背景介绍
Yellowbrick 是一种弹性、高度并行处理的SQL数据库,能够在云端和本地运行,利用Kubernetes实现规模化、弹性和云可移植性。它专为处理最大和最复杂的业务关键型数据仓库用例而设计。在大规模下的高效性使得Yellowbrick也可以作为高性能、可扩展的向量数据库,用于使用SQL存储和搜索向量。
在此教程中,我们将展示如何创建一个由ChatGPT支持并使用Yellowbrick作为向量存储的简单聊天机器人,以支持检索增强生成(RAG)。
核心原理解析
检索增强生成(RAG)通过在生成的文本中引入外部知识来增强模型的生成能力。我们将使用Yellowbrick作为向量存储库,使ChatGPT能够从中检索相关的文档片段以增加回答的准确性和信息量。
代码实现演示
安装所需的库
首先,我们需要安装一些Python库:
%pip install --upgrade --quiet langchain
%pip install --upgrade --quiet langchain-openai langchain-community
%pip install --upgrade --quiet psycopg2-binary
%pip install --upgrade --quiet tiktoken
设置连接信息
配置Yellowbrick和OpenAI API连接信息:
import os
import psycopg2
from langchain.chains import LLMChain
from langchain_community.vectorstores import Yellowbrick
from langchain_openai import ChatOpenAI, OpenAIEmbeddings
# 替换为您的Yellowbrick Sandbox和OpenAI API Key
YBUSER = "[SANDBOX USER]"
YBPASSWORD = "[SANDBOX PASSWORD]"
YBDATABASE = "[SANDBOX_DATABASE]"
YBHOST = "trialsandbox.sandbox.aws.yellowbrickcloud.com"
OPENAI_API_KEY = "[OPENAI API KEY]"
# 设置环境变量
os.environ["OPENAI_API_KEY"] = OPENAI_API_KEY
# Yellowbrick连接字符串
yellowbrick_connection_string = (
f"postgres://{
YBUSER}:{
YBPASSWORD}@{
YBHOST}:5432/{
YBDATABASE}"
)
Part 1: 创建基于ChatGPT的基础聊天机器人
from langchain_core.prompts.chat import (
ChatPromptTemplate,
HumanMessagePromptTemplate,
SystemMessagePromptTemplate,
)
# 系统提示模板
system_template = """If you don't know the answer, Make up your best guess."""
messages = [
SystemMessagePromptTemplate.from_template(system_template),
HumanMessagePromptTemplate.from_template("{question}")

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



