阿尔茜
Arcee 帮助开发 SLM(小型、专用、安全且可扩展的语言模型)。
此笔记本演示了如何使用ArceeRetriever类来检索 Arcee 的Domain Adapted Language Models (DALMs).
设置
使用前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在对象初始化时,使用 filters 和 size 作为所有后续检索的默认值。
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 允许您申请filters并设置size(以计数计)检索到的文档。筛选器有助于缩小结果范围。以下是使用这些参数的方法:
# 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)