Arcee
Arcee 帮助开发 SLM——小型、专用、安全、可扩展的语言模型。
本 Notebook 演示如何使用 ArceeRetriever 类来检索 Arcee 的相关文档,用于其 领域自适应语言模型 (DALM)。
设置
在使用 ArceeRetriever 之前,请确保已将 Arcee API 密钥设置为 ARCEE_API_KEY 环境变量。您也可以将 API 密钥作为命名参数传递。
from langchain_community.retrievers import ArceeRetriever
retriever = ArceeRetriever(
    model="DALM-PubMed",
    # arcee_api_key="ARCEE-API-KEY" # if not already set in the environment
)
API 参考:ArceeRetriever
额外配置
您还可以根据需要配置 ArceeRetriever 的参数,例如 arcee_api_url、arcee_app_url 和 model_kwargs。在对象初始化时设置 model_kwargs 会将过滤器和大小用作所有后续检索的默认值。
retriever = ArceeRetriever(
    model="DALM-PubMed",
    # arcee_api_key="ARCEE-API-KEY", # if not already set in the environment
    arcee_api_url="https://custom-api.arcee.ai",  # default is https://api.arcee.ai
    arcee_app_url="https://custom-app.arcee.ai",  # default is https://app.arcee.ai
    model_kwargs={
        "size": 5,
        "filters": [
            {
                "field_name": "document",
                "filter_type": "fuzzy_search",
                "value": "Einstein",
            }
        ],
    },
)
检索文档
您可以通过提供查询从已上传的上下文中检索相关文档。这是一个示例
query = "Can AI-driven music therapy contribute to the rehabilitation of patients with disorders of consciousness?"
documents = retriever.invoke(query)
额外参数
Arcee 允许您应用 过滤器 并设置检索到的文档的 大小(按数量)。过滤器有助于缩小结果范围。以下是使用这些参数的方法
# Define filters
filters = [
    {"field_name": "document", "filter_type": "fuzzy_search", "value": "Music"},
    {"field_name": "year", "filter_type": "strict_search", "value": "1905"},
]
# Retrieve documents with filters and size params
documents = retriever.invoke(query, size=5, filters=filters)