54 lines
1.2 KiB
Python
54 lines
1.2 KiB
Python
"""
|
|
RAG 检索与生成模块
|
|
|
|
提供在线检索与生成功能,包括:
|
|
- 基础向量检索
|
|
- 重排序
|
|
- RAG-Fusion
|
|
- Agentic RAG
|
|
|
|
示例用法:
|
|
>>> from app.rag import RAGPipeline, search_knowledge_base
|
|
>>> from rag_core import LlamaCppEmbedder
|
|
>>>
|
|
>>> embeddings = LlamaCppEmbedder()
|
|
>>> pipeline = RAGPipeline(embeddings=embeddings)
|
|
>>>
|
|
>>> documents = pipeline.retrieve("戏耍貂蝉美女")
|
|
>>> context = pipeline.format_context(documents)
|
|
"""
|
|
|
|
from .retriever import (
|
|
create_base_retriever,
|
|
create_hybrid_retriever,
|
|
# create_ensemble_retriever,
|
|
create_qdrant_client,
|
|
)
|
|
from .reranker import CrossEncoderReranker
|
|
from .query_transform import MultiQueryTransformer
|
|
from .pipeline import RAGPipeline, RAGLevel
|
|
from .tools import search_knowledge_base, search_knowledge_base_sync
|
|
|
|
|
|
__all__ = [
|
|
# 检索器
|
|
"create_base_retriever",
|
|
"create_hybrid_retriever",
|
|
# "create_ensemble_retriever",
|
|
"create_qdrant_client",
|
|
|
|
# 重排序器
|
|
"CrossEncoderReranker",
|
|
|
|
# 查询转换器
|
|
"MultiQueryTransformer",
|
|
|
|
# 流水线
|
|
"RAGPipeline",
|
|
"RAGLevel",
|
|
|
|
# 工具
|
|
"search_knowledge_base",
|
|
"search_knowledge_base_sync",
|
|
]
|