Spaces:
Runtime error
Runtime error
| 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)}"}] | |