基于千帆和BES的RAG实现
本示例是使用百度千帆平台结合百度ElasticSearch实现的检索增强生成(RAG),其中原始数据位于BOS上。
百度千帆
百度智能云千帆大模型平台是面向企业开发者的一站式大模型开发和服务运营平台。千帆不仅提供包括文心一言(ERNIE-Bot)在内的模型和第三方开源模型,还提供各种AI开发工具和完整的开发环境,便于客户轻松使用和开发大模型应用。
百度ElasticSearch
百度云向量检索是一个全托管的、企业级分布式搜索和分析服务,与开源100%兼容。百度云向量检索为结构化/非结构化数据提供低成本、高性能和可靠的检索和分析平台级产品服务。作为向量数据库,它支持多种索引类型和相似度距离方法。
安装和设置
#!pip install qianfan
#!pip install bce-python-sdk
#!pip install elasticsearch == 7.11.0
#!pip install sentence-transformers
# 中文注释:
# 安装所需的Python库
# qianfan: 百度千帆平台的Python SDK
# bce-python-sdk: 百度云引擎的Python SDK
# elasticsearch: ElasticSearch的Python客户端
# sentence-transformers: 用于生成句子嵌入的库
导入
import sentence_transformers
from baidubce.auth.bce_credentials import BceCredentials
from baidubce.bce_client_configuration import BceClientConfiguration
from langchain.chains.retrieval_qa import RetrievalQA
from langchain_community.document_loaders.baiducloud_bos_directory import (
BaiduBOSDirectoryLoader