Solved nitpick comments

This commit is contained in:
Geoff-Robin 2025-10-06 19:44:54 +05:30
parent 54f2580f2d
commit 1f36dd3d71
2 changed files with 14 additions and 5 deletions

View file

@ -1,12 +1,13 @@
from pydantic import BaseModel, Field
from typing import Any, Dict, Optional
from typing import Any, Dict, Optional, Literal
import os
class TavilyConfig(BaseModel):
api_key: str = os.getenv("TAVILY_API_KEY")
extract_depth: str = "basic"
timeout: Optional[int] = Field(default=None, ge=1, le=60)
extract_depth: Literal["basic","advanced"] = "basic"
proxies: Optional[Dict[str,str]] = None
timeout: Optional[int] = Field(default=10, ge=1, le=60)
class SoupCrawlerConfig(BaseModel):

View file

@ -105,8 +105,16 @@ async def fetch_with_tavily(
"Failed to import tavily, make sure to install using pip install tavily-python>=0.7.0"
)
raise
client = AsyncTavilyClient(api_key=tavily_config.api_key if tavily_config else None)
results = await client.extract(urls, format="text")
client = AsyncTavilyClient(
api_key=tavily_config.api_key if tavily_config else None,
proxies=tavily_config.proxies if tavily_config else None
)
results = await client.extract(
urls,
format="text",
extract_depth=tavily_config.extract_depth if tavily_config else "basic",
timeout=tavily_config.timeout if tavily_config else 10
)
for failed_result in results.get("failed_results", []):
logger.warning(f"Failed to fetch {failed_result}")
return_results = {}