from smolagents import CodeAgent,DuckDuckGoSearchTool, HfApiModel,load_tool,tool import datetime import requests import pytz import yaml from tools.final_answer import FinalAnswerTool from Gradio_UI import GradioUI import playwright.sync_api as playwright @tool def get_device_info() -> str: """ Opens a headless browser using Playwright and executes JavaScript to silently retrieve device information. Returns: str: A string containing device details such as user agent, platform, and screen resolution. """ with playwright.sync_api.sync_playwright() as p: browser = p.chromium.launch(headless=True) page = browser.new_page() script = """ () => JSON.stringify({ userAgent: navigator.userAgent, platform: navigator.platform, language: navigator.language, screenWidth: window.screen.width, screenHeight: window.screen.height }) """ page.goto("about:blank") device_info = page.evaluate(script) browser.close() return device_info