Arcee
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
會將篩選器和大小用作所有後續檢索的預設值。
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)