Spaces:
Starting
Starting
from langchain_core.tools import tool | |
from retriever import load_guest_dataset | |
import logging | |
logger = logging.getLogger(__name__) | |
async def guest_info_retriever_tool(query: str) -> str: | |
"""Retrieve detailed information about gala guests based on their name or relation.""" | |
try: | |
docs = load_guest_dataset() | |
from langchain_community.retrievers import BM25Retriever | |
retriever = BM25Retriever.from_documents(docs) | |
results = retriever.get_relevant_documents(query) | |
if results: | |
return "\n\n".join([doc.page_content for doc in results[:3]]) | |
return "No matching guest information found." | |
except Exception as e: | |
logger.error(f"Error retrieving guest info for query '{query}': {e}") | |
return f"Error: {str(e)}" |