Quiz_Solver_Agent / tools /download_file.py
Niloy
Initial commit: LLM Analysis Quiz Solver Agent
df532e4
raw
history blame contribute delete
925 Bytes
from langchain_core.tools import tool
import requests
import os
@tool
def download_file(url: str, filename: str) -> str:
"""
Download a file from a URL and save it with the given filename
in the current working directory.
Args:
url (str): Direct URL to the file.
filename (str): The filename to save the downloaded content as.
Returns:
str: Full path to the saved file.
"""
try:
response = requests.get(url, stream=True)
response.raise_for_status()
directory_name = "LLMFiles"
os.makedirs(directory_name, exist_ok=True)
path = os.path.join(directory_name, filename)
with open(path, "wb") as f:
for chunk in response.iter_content(chunk_size=8192):
if chunk:
f.write(chunk)
return filename
except Exception as e:
return f"Error downloading file: {str(e)}"