myspace134v / modules /retriever.py
rdune71's picture
new1
ab6d29f
raw
history blame
885 Bytes
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"""
try:
if not os.getenv("TAVILY_API_KEY"):
return "Web search unavailable (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(f"Direct Answer: {response['answer']}")
for result in response.get('results', []):
results.append(f"Source: {result['content']}")
return "\n\n".join(results) if results else "No relevant results found."
except Exception as e:
return f"Search failed: {str(e)}"