Spaces:
Sleeping
Sleeping
File size: 925 Bytes
df532e4 |
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 |
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)}" |