from tavily import TavilyClient import os tavily = TavilyClient(api_key=os.getenv("TAVILY_API_KEY")) def perform_search(query): """Perform web search using Tavily API and return structured results""" try: if not os.getenv("TAVILY_API_KEY"): return [{"error": "API key not configured"}] response = tavily.search( query=query, max_results=5, include_answer=True, include_raw_content=False ) results = [] if response.get('answer'): results.append({"type": "answer", "content": response['answer']}) for result in response.get('results', []): results.append({ "type": "source", "title": result.get("title"), "url": result.get("url"), "content": result.get("content") }) return results except Exception as e: return [{"error": f"Search failed: {str(e)}"}]