{"id":32386061,"url":"https://github.com/tiger-ai-lab/browseragent","last_synced_at":"2025-10-25T02:56:55.582Z","repository":{"id":319295103,"uuid":"1074834035","full_name":"TIGER-AI-Lab/BrowserAgent","owner":"TIGER-AI-Lab","description":"An agent that can interact with browser to complete tasks","archived":false,"fork":false,"pushed_at":"2025-10-18T13:33:25.000Z","size":15390,"stargazers_count":11,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-10-18T16:20:56.050Z","etag":null,"topics":["agent","browser","llm"],"latest_commit_sha":null,"homepage":"https://tiger-ai-lab.github.io/BrowserAgent/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TIGER-AI-Lab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-12T15:10:52.000Z","updated_at":"2025-10-18T13:33:28.000Z","dependencies_parsed_at":null,"dependency_job_id":"e801b812-7465-420a-9e4c-e875e6e4ac99","html_url":"https://github.com/TIGER-AI-Lab/BrowserAgent","commit_stats":null,"previous_names":["tiger-ai-lab/browseragent"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/TIGER-AI-Lab/BrowserAgent","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TIGER-AI-Lab%2FBrowserAgent","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TIGER-AI-Lab%2FBrowserAgent/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TIGER-AI-Lab%2FBrowserAgent/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TIGER-AI-Lab%2FBrowserAgent/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TIGER-AI-Lab","download_url":"https://codeload.github.com/TIGER-AI-Lab/BrowserAgent/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TIGER-AI-Lab%2FBrowserAgent/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280897679,"owners_count":26409960,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-25T02:00:06.499Z","response_time":81,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent","browser","llm"],"created_at":"2025-10-25T02:55:13.280Z","updated_at":"2025-10-25T02:56:55.574Z","avatar_url":"https://github.com/TIGER-AI-Lab.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BrowserAgent\nAn agent that can interact with browser to complete tasks\n\n### Installation\n\n\n#### 1. **Clone this repository and navigate to the folder:**\n```bash\ngit clone https://github.com/TIGER-AI-Lab/BrowserAgent.git\ncd BrowserAgent\n```\n\n\n**Install the inference package:**\n```bash\nconda create -n browseragent python=3.10\nconda activate browseragent\npip install -r requirement.txt\ncd verl-tool\npip install -e .\npip install -e verl\npip install vllm==0.8.4\npip install flash-attn --no-build-isolation\npip install -e \".[acecoder,torl]\"\npip uninstall uvloop\n```\n\n\n#### 2. Data preparation\n\nDownload [📊 BrowserAgent-Data](https://huggingface.co/datasets/TIGER-Lab/BrowserAgent-Data) and place it in the data folder, the final structure should look like this:\n\n```\nbenchmark\n-- | nq\n-- | hotpot\n-- | 2wiki\n-- | popqa\n-- | musique\n-- | bamboogle\n```\n\n\n#### 3. **Deploy the wiki webpage:**\n\nWe adopt the WikiPedia from [WebArena](https://github.com/web-arena-x/webarena/tree/main/environment_docker#wikipedia-website).\n\nTo deploy the Wiki webpage locally, run the following Docker command and open http://localhost:22015.\n```bash\ndocker run -d --name=wikipedia --volume=\u003cyour-path-to-downloaded-folder\u003e/:/data -p 22015:80 ghcr.io/kiwix/kiwix-serve:3.3.0 wikipedia_en_all_maxi_2022-05.zim\n```\n\nFor public deployment, see our live example at [tigerai.ca/wiki/.../Landing](https://tigerai.ca/wiki/wikipedia_en_all_maxi_2022-05/A/User:The_other_Kiwix_guy/Landing) and apply the Nginx template in this repo, updating `proxy_pass` to match your Docker port.\n\n\n```conf\nlocation = /search {\n    return 301 /wiki/search?$args;\n}\n\nlocation = /random {\n    return 301 /wiki/random?$args;\n}\n\nlocation ~ ^/wikipedia_en_all_maxi_2022-05 {\n    return 301 /wiki$request_uri;\n}\n\n\nlocation /wiki/ {\n    proxy_pass http://localhost:22015/;\n    proxy_buffering off;\n    proxy_http_version 1.1;\n    proxy_set_header Upgrade $http_upgrade;\n    proxy_set_header Connection \"upgrade\";\n    proxy_set_header Host $host;\n\n    sub_filter_once off;\n\n    sub_filter '\u003ca href=\"/' '\u003ca href=\"/wiki/';\n    sub_filter '\u003clink href=\"/' '\u003clink href=\"/wiki/';\n    sub_filter '\u003cscript src=\"/' '\u003cscript src=\"/wiki/';\n    sub_filter '\u003cimg src=\"/' '\u003cimg src=\"/wiki/';\n\n    sub_filter 'href=\"/search/' 'href=\"/wiki/search/';\n    sub_filter 'href=\"/random/' 'href=\"/wiki/random/';\n    sub_filter 'href=\"/wikipedia_en_all_maxi_2022-05/' 'href=\"/wiki/wikipedia_en_all_maxi_2022-05/';\n    sub_filter 'action=\"/search' 'action=\"/wiki/search';\n    sub_filter 'src=\"/wikipedia_en_all_maxi_2022-05/' 'src=\"/wiki/wikipedia_en_all_maxi_2022-05/';\n```\n\n\n#### 4. **SFT and RFT model:**\n\nDownload [📊 BroswerAgent-SFT](https://huggingface.co/TIGER-Lab/BrowserAgent-SFT) or [📊 BroswerAgent-RFT](https://huggingface.co/TIGER-Lab/BrowserAgent-RFT), and deploy using vllm.\n\n```bash\nTerminal 1:\nconda activate browseragent\ncd Browseragent\nbash deploy_vllm.sh /path/to/your/model\n```\n\n\n\n#### 5. **Data generation and model evaluation:**\n\n(1) For SFT data generation\n\n```bash\nTerminal 2:\nconda activate browseragent\ncd Browseragent\nbash verl-tool\\examples\\train\\wikiRL\\wikiRL_server.sh\n\nTerminal 3:\nconda activate browseragent\ncd Browseragent\npython data_generate.py /path/to/your/output_file /path/to/your/sft_data_path\n```\n\nThen you can run the following code to convert the generated data into the ms-swift training format.\n\n```bash\nconda activate browseragent\ncd Browseragent\npython judge_sft.py /path/to/your/sft_data_path /path/to/your/previous_step_output_file /path/to/your/output_file\npython swift_switch.py /path/to/your/previous_step_output_file /path/to/your/output_file\n```\n\n\n(2) For RFT data generation\n\n```bash\nTerminal 2:\nconda activate browseragent\ncd Browseragent\nbash verl-tool\\examples\\train\\wikiRL\\wikiRL_server.sh\n\nTerminal 3:\nconda activate browseragent\ncd Browseragent\npython data_generate_rft.py /path/to/your/output_file /path/to/your/rft_data_path\n```\n\nThen you can run the following code to convert the generated data into the ms-swift training format.\n\n```bash\nconda activate browseragent\ncd Browseragent\npython judge_rft.py /path/to/your/sft_data_path /path/to/your/previous_step_output_file /path/to/your/output_file\npython swift_switch.py /path/to/your/previous_step_output_file /path/to/your/output_file\n```\n\n(3) For model evaluation\n\n```bash\nTerminal 2:\nconda activate browseragent\ncd Browseragent\nbash verl-tool\\examples\\train\\wikiRL\\wikiRL_server.sh\n\nTerminal 3:\nconda activate browseragent\ncd Browseragent\npython run_model.py /path/to/your/benchmark_path\n```\n\nThen you can run the following code to calculate the rule-based accuracy.\n\n```bash\nconda activate browseragent\ncd Browseragent\npython val_answer.py /path/to/your/benchmark_path /path/to/your/previous_step_output_file\n```\n\nThen you can run the following code to calculate the model-based accuracy.\n```bash\nconda activate browseragent\ncd Browseragent\npython val_answer_model_based.py /path/to/your/benchmark_path /path/to/your/previous_step_output_file /path/to/your/output_file\n```\n\n\n### Citation\n\nIf you find it useful for your research and applications, please cite related papers/blogs using this BibTeX:\n```bibtex\n@misc{yu2025browseragentbuildingwebagents,\n      title={BrowserAgent: Building Web Agents with Human-Inspired Web Browsing Actions}, \n      author={Tao Yu and Zhengbo Zhang and Zhiheng Lyu and Junhao Gong and Hongzhu Yi and Xinming Wang and Yuxuan Zhou and Jiabing Yang and Ping Nie and Yan Huang and Wenhu Chen},\n      year={2025},\n      eprint={2510.10666},\n      archivePrefix={arXiv},\n      primaryClass={cs.CL},\n      url={https://arxiv.org/abs/2510.10666}, \n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftiger-ai-lab%2Fbrowseragent","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftiger-ai-lab%2Fbrowseragent","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftiger-ai-lab%2Fbrowseragent/lists"}