LlamaIndex自定义检索器:简单混合搜索教程
在本教程中,我们将展示如何定义一个非常简单的混合搜索版本!结合关键词查找检索和向量检索,使用“AND”和“OR”条件。
设置
如果你在Colab上打开此笔记本,你可能需要安装LlamaIndex。
!pip install llama-index
设置OpenAI API密钥:
import os
os.environ["OPENAI_API_KEY"] = "sk-..."
下载数据
!mkdir -p 'data/paul_graham/'
!wget 'https://raw.githubusercontent.com/run-llama/llama_index/main/docs/docs/examples/data/paul_graham/paul_graham_essay.txt' -O 'data/paul_graham/paul_graham_essay.txt'
加载数据
首先展示如何将文档转换为一组节点,并插入到文档存储中。
from llama_index.core import SimpleDirectoryReader
# 加载文档
documents = SimpleDirectoryReader("./data/paul_graham").load_data()
from llama_index.core import Settings
nodes = Settings.node_parser.get_nodes_from_documents(documents)
from llama_index.core import StorageContext
# 初始化存储上下文(默认是内存中)
storage_context = StorageContext.from_defaults()
storage_context.docstore.add_documents(nodes)
定义向量索引和关键词表索引
我们在相同的文档存储上构建向量索引和关键词索引。
from llama_index.core