Spaces:
Sleeping
Sleeping
| import logging | |
| from utils.asyncHandler import asyncHandler | |
| from langchain_tavily import TavilySearch | |
| from src.MultiRag.constants import SEARCH_MAX_RESULT, SEARCH_TOPIC | |
| from langchain.tools import tool | |
| # Initialize client globally or inside the tool | |
| tavily_client = TavilySearch(max_results=SEARCH_MAX_RESULT, topic=SEARCH_TOPIC) | |
| async def web_search(query: str): | |
| """Use this tool to search the web for relevant information. Input should be a search query string.""" | |
| logging.info(f"Performing web search for query: {query}") | |
| results = await tavily_client.ainvoke(query) | |
| return results | |
| class WebSearch: | |
| def __init__(self): | |
| self.search = web_search | |