Spaces:
Sleeping
Sleeping
File size: 1,605 Bytes
9741645 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
import os
from tavily import TavilyClient
def search_tavily(query: str, max_results: int = 5) -> str:
"""
Sök på Tavily Search och returnera en sammanfattning av resultaten.
Kräver att TAVILY_API_KEY är satt som en miljövariabel.
"""
tavily_api_key = os.getenv("TAVILY_API_KEY")
if not tavily_api_key:
return "Fel: Tavily API-nyckel är inte konfigurerad (saknar TAVILY_API_KEY i Space Secrets)."
try:
client = TavilyClient(api_key=tavily_api_key)
# Använd Tavilys 'search' metod. include_raw_content=False för att hålla svaret kort.
# Du kan experimentera med search_depth='deep' för mer djupgående sökningar om det behövs.
results = client.search(query=query, max_results=max_results, include_raw_content=False)
summary_parts = []
if 'results' in results and results['results']:
for i, res in enumerate(results['results'], 1):
# Extrahera relevant information från varje sökresultat
title = res.get('title', 'Ingen titel')
url = res.get('url', 'Ingen URL')
content = res.get('content', 'Inget innehåll tillgängligt.')
summary_parts.append(f"Resultat {i}: {title} - {url}\nInnehåll: {content}")
if not summary_parts:
return "Inga sökresultat hittades på Tavily för din fråga."
return "\n\n".join(summary_parts)
except Exception as e:
return f"Ett fel inträffade under Tavily-sökning: {e}"
|