[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-princeton-nlp--WebShop":3,"tool-princeton-nlp--WebShop":61},[4,18,28,37,45,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":24,"last_commit_at":25,"category_tags":26,"status":17},9989,"n8n","n8n-io\u002Fn8n","n8n 是一款面向技术团队的公平代码（fair-code）工作流自动化平台，旨在让用户在享受低代码快速构建便利的同时，保留编写自定义代码的灵活性。它主要解决了传统自动化工具要么过于封闭难以扩展、要么完全依赖手写代码效率低下的痛点，帮助用户轻松连接 400 多种应用与服务，实现复杂业务流程的自动化。\n\nn8n 特别适合开发者、工程师以及具备一定技术背景的业务人员使用。其核心亮点在于“按需编码”：既可以通过直观的可视化界面拖拽节点搭建流程，也能随时插入 JavaScript 或 Python 代码、调用 npm 包来处理复杂逻辑。此外，n8n 原生集成了基于 LangChain 的 AI 能力，支持用户利用自有数据和模型构建智能体工作流。在部署方面，n8n 提供极高的自由度，支持完全自托管以保障数据隐私和控制权，也提供云端服务选项。凭借活跃的社区生态和数百个现成模板，n8n 让构建强大且可控的自动化系统变得简单高效。",184740,2,"2026-04-19T23:22:26",[16,14,13,15,27],"插件",{"id":29,"name":30,"github_repo":31,"description_zh":32,"stars":33,"difficulty_score":10,"last_commit_at":34,"category_tags":35,"status":17},10095,"AutoGPT","Significant-Gravitas\u002FAutoGPT","AutoGPT 是一个旨在让每个人都能轻松使用和构建 AI 的强大平台，核心功能是帮助用户创建、部署和管理能够自动执行复杂任务的连续型 AI 智能体。它解决了传统 AI 应用中需要频繁人工干预、难以自动化长流程工作的痛点，让用户只需设定目标，AI 即可自主规划步骤、调用工具并持续运行直至完成任务。\n\n无论是开发者、研究人员，还是希望提升工作效率的普通用户，都能从 AutoGPT 中受益。开发者可利用其低代码界面快速定制专属智能体；研究人员能基于开源架构探索多智能体协作机制；而非技术背景用户也可直接选用预置的智能体模板，立即投入实际工作场景。\n\nAutoGPT 的技术亮点在于其模块化“积木式”工作流设计——用户通过连接功能块即可构建复杂逻辑，每个块负责单一动作，灵活且易于调试。同时，平台支持本地自托管与云端部署两种模式，兼顾数据隐私与使用便捷性。配合完善的文档和一键安装脚本，即使是初次接触的用户也能在几分钟内启动自己的第一个 AI 智能体。AutoGPT 正致力于降低 AI 应用门槛，让人人都能成为 AI 的创造者与受益者。",183572,"2026-04-20T04:47:55",[13,36,27,14,15],"语言模型",{"id":38,"name":39,"github_repo":40,"description_zh":41,"stars":42,"difficulty_score":10,"last_commit_at":43,"category_tags":44,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":46,"name":47,"github_repo":48,"description_zh":49,"stars":50,"difficulty_score":24,"last_commit_at":51,"category_tags":52,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",161692,"2026-04-20T11:33:57",[14,13,36],{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":24,"last_commit_at":59,"category_tags":60,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",109154,"2026-04-18T11:18:24",[14,15,13],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":67,"readme_en":68,"readme_zh":69,"quickstart_zh":70,"use_case_zh":71,"hero_image_url":72,"owner_login":73,"owner_name":74,"owner_avatar_url":75,"owner_bio":76,"owner_company":77,"owner_location":77,"owner_email":77,"owner_twitter":77,"owner_website":78,"owner_url":79,"languages":80,"stars":97,"forks":98,"last_commit_at":99,"license":100,"difficulty_score":101,"env_os":102,"env_gpu":102,"env_ram":102,"env_deps":103,"category_tags":111,"github_topics":112,"view_count":24,"oss_zip_url":77,"oss_zip_packed_at":77,"status":17,"created_at":123,"updated_at":124,"faqs":125,"releases":161},10180,"princeton-nlp\u002FWebShop","WebShop","[NeurIPS 2022] 🛒WebShop: Towards Scalable Real-World Web Interaction with Grounded Language Agents","WebShop 是一个由普林斯顿大学推出的开源仿真环境，旨在训练和评估能够像人类一样在真实电商网站上进行交互的智能体。它构建了一个包含 118 万种真实商品和超过 1.2 万条众包指令的虚拟购物网站，让 AI 智能体能够根据自然语言指令（如“找一双适合跑步的红色运动鞋”），自主完成浏览、搜索、筛选属性乃至最终购买的全流程操作。\n\n这一工具主要解决了当前语言模型在复杂现实场景中“落地难”的问题。传统模型往往缺乏在动态网页中进行多步推理、处理噪声信息以及灵活调整搜索策略的能力。WebShop 通过提供高保真的模拟环境，帮助研究者攻克组合指令理解、查询重构及战略性探索等技术挑战。\n\nWebShop 特别适合从事自然语言处理、强化学习及人机交互领域的研究人员与开发者使用。如果你正在探索如何让 AI 具备更强大的实际操作能力，或者需要大规模数据来训练网页交互代理，这是一个理想的实验平台。其独特亮点在于不仅提供了海量真实商品数据，还配套了完整的搜索代理实现代码，并支持部署为 Hugging Face 演示，让用户能直观看到训练后的智能体如何在亚马逊或 eBay 等平台上执行任务，极大地降低了相关研","WebShop 是一个由普林斯顿大学推出的开源仿真环境，旨在训练和评估能够像人类一样在真实电商网站上进行交互的智能体。它构建了一个包含 118 万种真实商品和超过 1.2 万条众包指令的虚拟购物网站，让 AI 智能体能够根据自然语言指令（如“找一双适合跑步的红色运动鞋”），自主完成浏览、搜索、筛选属性乃至最终购买的全流程操作。\n\n这一工具主要解决了当前语言模型在复杂现实场景中“落地难”的问题。传统模型往往缺乏在动态网页中进行多步推理、处理噪声信息以及灵活调整搜索策略的能力。WebShop 通过提供高保真的模拟环境，帮助研究者攻克组合指令理解、查询重构及战略性探索等技术挑战。\n\nWebShop 特别适合从事自然语言处理、强化学习及人机交互领域的研究人员与开发者使用。如果你正在探索如何让 AI 具备更强大的实际操作能力，或者需要大规模数据来训练网页交互代理，这是一个理想的实验平台。其独特亮点在于不仅提供了海量真实商品数据，还配套了完整的搜索代理实现代码，并支持部署为 Hugging Face 演示，让用户能直观看到训练后的智能体如何在亚马逊或 eBay 等平台上执行任务，极大地降低了相关研究的复现门槛。","# 🛒 WebShop\n\n[![Python version](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fpython-3.8%2B-blue)](https:\u002F\u002Fwww.python.org\u002Fdownloads\u002Frelease\u002Fpython-3813\u002F)\n[![License](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-Princeton-orange)](https:\u002F\u002Fcopyright.princeton.edu\u002Fpolicy)\n[![PyPI version](https:\u002F\u002Fbadge.fury.io\u002Fpy\u002Fwebshop.svg)](https:\u002F\u002Fbadge.fury.io\u002Fpy\u002Fwebshop)\n![Pytest workflow](https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002Fwebshop\u002Factions\u002Fworkflows\u002Fpytest.yml\u002Fbadge.svg)\n\nImplementation of the WebShop environment and search agents for the paper:\n\n**[WebShop: Towards Scalable Real-World Web Interaction with Grounded Language Agents](https:\u002F\u002Fwebshop-pnlp.github.io\u002F)**  \n[Shunyu Yao*](https:\u002F\u002Fysymyth.github.io\u002F), [Howard Chen*](https:\u002F\u002Fhoward50b.github.io\u002F), [John Yang](https:\u002F\u002Fjohn-b-yang.github.io\u002F), [Karthik Narasimhan](https:\u002F\u002Fwww.cs.princeton.edu\u002F~karthikn\u002F)\n\n\u003Cp float=\"left\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fprinceton-nlp_WebShop_readme_a6519f4e78fc.gif\">\n\u003C\u002Fp>\n\nThis repository contains code for reproducing results. If you find this work useful in your research, please cite:\n\n```\n@inproceedings{yao2022webshop,\n  bibtex_show = {true},\n  title = {WebShop: Towards Scalable Real-World Web Interaction with Grounded Language Agents},\n  author = {Yao, Shunyu and Chen, Howard and Yang, John and Narasimhan, Karthik},\n  booktitle = {ArXiv},\n  year = {preprint},\n  html = {https:\u002F\u002Farxiv.org\u002Fabs\u002F2207.01206},\n  tag = {NLP}\n}\n```\n## 📖 Table of Contents \u003C!-- omit in toc -->\n* [👋 Overview](#-overview)\n* [🚀 Setup](#-setup)\n* [🛠️ Usage](#-usage)\n* [💫 Contributions](#-contributions)\n* [🪪 License](#-license)\n## 👋 Overview\nWebShop is a simulated e-commerce website environment with 1.18 million real-world products and 12,087 crowd-sourced text instructions. In this environment, an agent needs to navigate multiple types of webpages and issue diverse actions to find, customize, and purchase a product given an instruction. WebShop provides several challenges including understanding compositional instructions, query (re-)formulation, dealing with noisy text in webpages, and performing strategic exploration.\n\n**Hugging Face Demo**: Devise your own natural language query for a product and ask for an agent trained with WebShop to find it on Amazon or eBay, deployed as a 🤗 Hugging Face space [here](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002Fwebshop\u002Famazon_shop)!\n\n## 🚀 Setup\nOur code is implemented in Python. To setup, do the following:\n1. Install [Python 3.8.13](https:\u002F\u002Fwww.python.org\u002Fdownloads\u002Frelease\u002Fpython-3813\u002F)\n2. Install [Java](https:\u002F\u002Fwww.java.com\u002Fen\u002Fdownload\u002F)\n3. Download the source code:\n```sh\n> git clone https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002Fwebshop.git webshop\n```\n4. Create a virtual environment using [Anaconda](https:\u002F\u002Fanaconda.org\u002Fanaconda\u002Fpython) and activate it\n```sh\n> conda create -n webshop python=3.8.13\n> conda activate webshop\n```\n5. Install requirements into the `webshop` virtual environment via the `setup.sh` script\n```sh\n> .\u002Fsetup.sh [-d small|all]\n```\nThe setup script performs several actions in the following order:\n* Installs Python dependencies listed in `requirements.txt`\n* Downloads product and instruction data for populating WebShop\n* Downloads `spaCy en_core_web_lg` model\n* Construct search engine index from product, instruction data\n* Downloads 50 randomly chosen trajectories generated by MTurk workers\nThe `-d` flag argument allows you to specify whether you would like to pull the entire product + instruction data set (`-d all`) or a subset of 1000 random products (`-d small`).\n\n6. By default the WebShop only loads 1,000 products for a faster environment preview. To load all products, change `web_agent_site\u002Futils.py`:\n```python\n# DEFAULT_ATTR_PATH = join(BASE_DIR, '..\u002Fdata\u002Fitems_ins_v2_1000.json')\n# DEFAULT_FILE_PATH = join(BASE_DIR, '..\u002Fdata\u002Fitems_shuffle_1000.json')\nDEFAULT_ATTR_PATH = join(BASE_DIR, '..\u002Fdata\u002Fitems_ins_v2.json')\nDEFAULT_FILE_PATH = join(BASE_DIR, '..\u002Fdata\u002Fitems_shuffle.json')\n```\n\n7. (Optional) Download ResNet image feature files [here](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Ffolders\u002F1jglJDqNV2ryrlZzrS0yOEk-aRAcLAhNw?usp=sharing) and put into `data\u002F` for running models that require image features.\n\n8. (Optional) Human demonstration data and be downloaded [here](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F1GWC8UlUzfT9PRTRxgYOwuKSJp4hyV1dp\u002Fview?usp=sharing).\n\n## 🛠️ Usage\nThe WebShop environment can be rendered in two modes - `html` and `simple` - each of which offer a different observation space. The `simple` mode strips away the extraneous meta-data that the `html` mode includes to make model training and evaluation easier.\n### Webpage Environment (`html` mode)\nLaunch the `WebShop` webpage:\n```sh\n> .\u002Frun_dev.sh\n```\nThe site should then be viewable in the browser. Go to http:\u002F\u002Flocalhost:3000\u002FABC, where you should land on the search home page with a random instruction.\n\nNavigating the website will automatically generate a corresponding trajectory file in the `user_session_logs\u002Fmturk` folder. Each file corresponds to a single instruction\u002Fweb session, and each step of the file corresponds to a single action (i.e. `search[...]`, `click[...]`).\n\nThe current WebShop build comes with two flags:\n* `--log`: Include this flag to create a trajectory `.jsonl` log file of actions on WebShop\n* `--attrs`: Include this flag to display an `Attributes` tab on the `item_page` of WebShop\n\n### Text Environment (`simple` mode)\nThe `simple` mode of the WebShop environment is packaged and readily available as an OpenAI environment. The OpenAI gym definitions of the text environment can be found in the `web_agent_site\u002Fenvs` folder.\n\nTo start using the gym and building agents that interact with the WebShop environment, include the following statements in your Python file:\n```python\nimport gym\nfrom web_agent_site.envs import WebAgentTextEnv\n\nenv = gym.make('WebAgentTextEnv-v0', observation_mode='text', num_products=...)\n```\nNow, you can write your own agent that interacts with the environment via the standard OpenAI gym [interface](https:\u002F\u002Fwww.gymlibrary.ml\u002Fcontent\u002Fapi\u002F).\n\nExamples of a `RandomPolicy` agent interacting with the WebShop environment in both `html` and `simple` mode can be found in the `run_envs` folder. To run these examples locally, run the `run_web_agent_text_env.sh` or `run_web_agent_site_env.sh` script:\n```sh\n> .\u002Frun_web_agent_text_env.sh\nProducts loaded.\nKeys Cleaned.\nAttributes Loaded.\n100%|██████████████████| 1000\u002F1000\nLoaded 6910 goals.\nAmazon Shopping Game [SEP] Instruction: [SEP] Find me slim f...\nAvailable actions: {'has_search_bar': True, 'clickables': ['search']}\nTaking action \"search[shoes]\" -> Reward = 0.0\n...\n```\nIn order to run the `run_web_agent_site_env.sh` script, you must download a version of [ChromeDriver](https:\u002F\u002Fchromedriver.chromium.org\u002Fdownloads) compatible with your Chrome browser version. Once you have downloaded and unzipped the executable, rename it `chromedriver` and place it in the `webshop\u002Fenvs` folder.\n\n### Baseline Models\nTo run baseline models (rule, IL, RL, IL+RL) from the paper, please refer to the `README.md` in the [baseline_models](https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002Fwebshop\u002Ftree\u002Fmaster\u002Fbaseline_models) folder.\n\n### Sim-to-real Transfer\nTo read more about how the sim-to-real transfer of agents trained on WebShop to other environments works, please refer to the `README.md` in the [transfer](https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002Fwebshop\u002Ftree\u002Fmaster\u002Ftransfer) folder.\n\n## 💫 Contributions\nWe would love to hear from the broader NLP and Machine Learning community, and we welcome any contributions, pull requests, or issues! To do so, please either file a new pull request or issue and fill in the corresponding templates accordingly. We'll be sure to follow up shortly!\n\n## 🪪 License\nCheck `LICENSE.md`\n","# 🛒 WebShop\n\n[![Python版本](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fpython-3.8%2B-blue)](https:\u002F\u002Fwww.python.org\u002Fdownloads\u002Frelease\u002Fpython-3813\u002F)\n[![许可证](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-Princeton-orange)](https:\u002F\u002Fcopyright.princeton.edu\u002Fpolicy)\n[![PyPI版本](https:\u002F\u002Fbadge.fury.io\u002Fpy\u002Fwebshop.svg)](https:\u002F\u002Fbadge.fury.io\u002Fpy\u002Fwebshop)\n![Pytest工作流](https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002Fwebshop\u002Factions\u002Fworkflows\u002Fpytest.yml\u002Fbadge.svg)\n\nWebShop环境及搜索智能体的实现，用于以下论文：\n\n**[WebShop：迈向可扩展的真实世界网络交互——基于 grounded 语言代理](https:\u002F\u002Fwebshop-pnlp.github.io\u002F)**  \n[姚顺宇*](https:\u002F\u002Fysymyth.github.io\u002F)、[霍华德·陈*](https:\u002F\u002Fhoward50b.github.io\u002F)、[约翰·杨](https:\u002F\u002Fjohn-b-yang.github.io\u002F)、[卡尔蒂克·纳拉西曼](https:\u002F\u002Fwww.cs.princeton.edu\u002F~karthikn\u002F)\n\n\u003Cp float=\"left\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fprinceton-nlp_WebShop_readme_a6519f4e78fc.gif\">\n\u003C\u002Fp>\n\n本仓库包含用于复现实验结果的代码。如果您在研究中使用了本工作，请引用如下：\n\n```\n@inproceedings{yao2022webshop,\n  bibtex_show = {true},\n  title = {WebShop: Towards Scalable Real-World Web Interaction with Grounded Language Agents},\n  author = {Yao, Shunyu and Chen, Howard and Yang, John and Narasimhan, Karthik},\n  booktitle = {ArXiv},\n  year = {preprint},\n  html = {https:\u002F\u002Farxiv.org\u002Fabs\u002F2207.01206},\n  tag = {NLP}\n}\n```\n## 📖 目录 \u003C!-- omit in toc -->\n* [👋 概述](#-overview)\n* [🚀 设置](#-setup)\n* [🛠️ 使用](#-usage)\n* [💫 贡献](#-contributions)\n* [🪪 许可证](#-license)\n## 👋 概述\nWebShop是一个模拟的电子商务网站环境，包含118万件真实商品和12,087条众包文本指令。在这个环境中，智能体需要导航多种类型的网页，并执行多样化的操作，以根据给定的指令找到、定制并购买商品。WebShop带来了多项挑战，包括理解复合指令、查询（重新）构建、处理网页中的噪声文本以及进行策略性探索。\n\n**Hugging Face演示**：您可以为某件商品设计自己的自然语言查询，并让经过WebShop训练的智能体在亚马逊或eBay上为您找到它。该演示已部署为一个🤗 Hugging Face空间，[点击此处](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002Fwebshop\u002Famazon_shop)！\n\n## 🚀 设置\n我们的代码使用Python编写。设置步骤如下：\n1. 安装[Python 3.8.13](https:\u002F\u002Fwww.python.org\u002Fdownloads\u002Frelease\u002Fpython-3813\u002F)\n2. 安装[Java](https:\u002F\u002Fwww.java.com\u002Fen\u002Fdownload\u002F)\n3. 克隆源代码：\n```sh\n> git clone https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002Fwebshop.git webshop\n```\n4. 使用[Anaconda](https:\u002F\u002Fanaconda.org\u002Fanaconda\u002Fpython)创建虚拟环境并激活：\n```sh\n> conda create -n webshop python=3.8.13\n> conda activate webshop\n```\n5. 通过`setup.sh`脚本将依赖项安装到`webshop`虚拟环境中：\n```sh\n> .\u002Fsetup.sh [-d small|all]\n```\n该脚本会按顺序执行以下操作：\n* 安装`requirements.txt`中列出的Python依赖包\n* 下载用于填充WebShop的商品和指令数据\n* 下载`spaCy en_core_web_lg`模型\n* 根据商品和指令数据构建搜索引擎索引\n* 下载由MTurk众包工作者生成的50条随机轨迹\n`-d`参数可用于指定是下载完整商品+指令数据集（`-d all`）还是仅下载1000个随机商品（`-d small`）。\n\n6. 默认情况下，WebShop仅加载1,000件商品以加快环境预览速度。如需加载全部商品，请修改`web_agent_site\u002Futils.py`文件：\n```python\n# DEFAULT_ATTR_PATH = join(BASE_DIR, '..\u002Fdata\u002Fitems_ins_v2_1000.json')\n# DEFAULT_FILE_PATH = join(BASE_DIR, '..\u002Fdata\u002Fitems_shuffle_1000.json')\nDEFAULT_ATTR_PATH = join(BASE_DIR, '..\u002Fdata\u002Fitems_ins_v2.json')\nDEFAULT_FILE_PATH = join(BASE_DIR, '..\u002Fdata\u002Fitems_shuffle.json')\n```\n\n7. （可选）从[这里](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Ffolders\u002F1jglJDqNV2ryrlZzrS0yOEk-aRAcLAhNw?usp=sharing)下载ResNet图像特征文件，并将其放入`data\u002F`目录中，以便运行需要图像特征的模型。\n\n8. （可选）人类示范数据可从[这里](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F1GWC8UlUzfT9PRTRxgYOwuKSJp4hyV1dp\u002Fview?usp=sharing)下载。\n\n## 🛠️ 使用\nWebShop环境有两种渲染模式——`html`和`simple`——每种模式提供不同的观测空间。`simple`模式去除了`html`模式中包含的冗余元数据，从而简化了模型的训练和评估。\n### 网页环境（`html`模式）\n启动WebShop网页：\n```sh\n> .\u002Frun_dev.sh\n```\n随后您可以在浏览器中访问该站点。前往http:\u002F\u002Flocalhost:3000\u002FABC，您将进入带有随机指令的搜索首页。\n\n在网站上浏览时，系统会自动在`user_session_logs\u002Fmturk`文件夹中生成相应的轨迹文件。每个文件对应一次指令\u002F会话，而文件中的每一步则对应一个动作（如`search[...]`、`click[...]`）。\n\n当前的WebShop版本支持两个标志：\n* `--log`：启用此标志可在WebShop上记录动作轨迹的`.jsonl`日志文件\n* `--attrs`：启用此标志可在WebShop的`item_page`上显示“Attributes”选项卡\n\n### 文本环境（`simple`模式）\nWebShop环境的`simple`模式被打包成OpenAI环境，可以直接使用。文本环境的OpenAI gym定义位于`web_agent_site\u002Fenvs`文件夹中。\n\n要开始使用gym并构建与WebShop环境交互的智能体，请在您的Python文件中加入以下语句：\n```python\nimport gym\nfrom web_agent_site.envs import WebAgentTextEnv\n\nenv = gym.make('WebAgentTextEnv-v0', observation_mode='text', num_products=...)\n```\n现在，您可以通过标准的OpenAI gym [接口](https:\u002F\u002Fwww.gymlibrary.ml\u002Fcontent\u002Fapi\u002F)编写自己的智能体来与环境互动。\n\n`run_envs`文件夹中提供了`RandomPolicy`智能体在`html`和`simple`模式下与WebShop环境交互的示例。要在本地运行这些示例，请执行`run_web_agent_text_env.sh`或`run_web_agent_site_env.sh`脚本：\n```sh\n> .\u002Frun_web_agent_text_env.sh\nProducts loaded.\nKeys Cleaned.\nAttributes Loaded.\n100%|██████████████████| 1000\u002F1000\nLoaded 6910 goals.\nAmazon Shopping Game [SEP] Instruction: [SEP] Find me slim f...\nAvailable actions: {'has_search_bar': True, 'clickables': ['search']}\nTaking action \"search[shoes]\" -> Reward = 0.0\n...\n```\n要运行`run_web_agent_site_env.sh`脚本，您需要下载与您的Chrome浏览器版本兼容的[ChromeDriver](https:\u002F\u002Fchromedriver.chromium.org\u002Fdownloads)。下载并解压可执行文件后，将其重命名为`chromedriver`，并放置在`webshop\u002Fenvs`文件夹中。\n\n### 基线模型\n如需运行论文中的基线模型（规则、IL、RL、IL+RL），请参阅 [baseline_models](https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002Fwebshop\u002Ftree\u002Fmaster\u002Fbaseline_models) 文件夹中的 `README.md`。\n\n### 仿真到现实的迁移\n如需了解在 WebShop 上训练的智能体如何迁移到其他环境，请参阅 [transfer](https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002Fwebshop\u002Ftree\u002Fmaster\u002Ftransfer) 文件夹中的 `README.md`。\n\n## 💫 贡献\n我们非常期待来自更广泛的自然语言处理和机器学习社区的反馈，并欢迎任何形式的贡献、拉取请求或问题！如需参与，请提交新的拉取请求或问题，并按照相应的模板填写。我们会尽快跟进！\n\n## 🪪 许可证\n请查看 `LICENSE.md`。","# WebShop 快速上手指南\n\nWebShop 是一个模拟电子商务网站环境，包含 118 万种真实商品和 1.2 万条众包文本指令。在该环境中，智能体（Agent）需要根据自然语言指令导航网页、执行搜索、定制并购买商品。本项目提供了基于 Python 的环境实现及搜索智能体代码。\n\n## 环境准备\n\n在开始之前，请确保您的系统满足以下要求：\n\n*   **操作系统**: Linux 或 macOS (Windows 用户建议使用 WSL2)\n*   **Python**: 3.8.13 (版本需严格匹配)\n*   **Java**: 已安装并配置环境变量\n*   **Git**: 用于克隆代码库\n*   **Conda**: 推荐使用 Anaconda 或 Miniconda 管理虚拟环境\n*   **浏览器驱动 (可选)**: 若需运行 `html` 模式，需下载与本地 Chrome 版本匹配的 [ChromeDriver](https:\u002F\u002Fchromedriver.chromium.org\u002Fdownloads)。\n\n> **国内开发者提示**：\n> *   安装 Python 依赖时，建议临时切换至清华或阿里镜像源以加速下载：\n>     `pip install -r requirements.txt -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple`\n> *   若无法访问 Hugging Face 或 Google Drive，需自行配置网络代理或寻找国内镜像资源下载 `spaCy` 模型及数据文件。\n\n## 安装步骤\n\n请依次执行以下命令完成环境搭建：\n\n1.  **克隆项目代码**\n    ```sh\n    git clone https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002Fwebshop.git webshop\n    cd webshop\n    ```\n\n2.  **创建并激活 Conda 虚拟环境**\n    ```sh\n    conda create -n webshop python=3.8.13\n    conda activate webshop\n    ```\n\n3.  **运行安装脚本**\n    执行 `setup.sh` 脚本将自动安装依赖、下载数据（默认下载 1000 个商品的精简版以便快速预览）、构建搜索引擎索引及下载 SpaCy 模型。\n    \n    *   下载精简数据集（推荐快速开始）：\n        ```sh\n        .\u002Fsetup.sh -d small\n        ```\n    *   下载完整数据集（118 万商品，耗时较长）：\n        ```sh\n        .\u002Fsetup.sh -d all\n        ```\n\n4.  **加载全量数据（可选）**\n    默认情况下环境仅加载 1000 个商品。若需加载全部商品，请编辑 `web_agent_site\u002Futils.py` 文件，注释掉前两条路径配置，启用后两条：\n    ```python\n    # DEFAULT_ATTR_PATH = join(BASE_DIR, '..\u002Fdata\u002Fitems_ins_v2_1000.json')\n    # DEFAULT_FILE_PATH = join(BASE_DIR, '..\u002Fdata\u002Fitems_shuffle_1000.json')\n    DEFAULT_ATTR_PATH = join(BASE_DIR, '..\u002Fdata\u002Fitems_ins_v2.json')\n    DEFAULT_FILE_PATH = join(BASE_DIR, '..\u002Fdata\u002Fitems_shuffle.json')\n    ```\n\n5.  **配置 ChromeDriver (仅 html 模式需要)**\n    下载对应版本的 ChromeDriver，重命名为 `chromedriver` 并放入 `webshop\u002Fenvs` 目录下。\n\n## 基本使用\n\nWebShop 提供两种运行模式：**HTML 模式**（可视化网页）和 **Simple 模式**（纯文本 Gym 环境）。\n\n### 模式一：可视化网页环境 (HTML Mode)\n\n此模式会启动一个本地 Web 服务器，您可以在浏览器中观察智能体的交互过程。\n\n1.  启动服务：\n    ```sh\n    .\u002Frun_dev.sh\n    ```\n2.  打开浏览器访问：`http:\u002F\u002Flocalhost:3000\u002FABC`\n3.  页面将显示随机指令，您在网页上的操作（搜索、点击）会自动记录到 `user_session_logs\u002Fmturk` 文件夹下的轨迹文件中。\n\n    *   添加 `--log` 参数可生成 `.jsonl` 轨迹日志。\n    *   添加 `--attrs` 参数可在商品页显示属性标签。\n\n### 模式二：文本训练环境 (Simple Mode)\n\n此模式基于 OpenAI Gym 接口封装，适合用于训练和评估强化学习或语言模型智能体。\n\n1.  在 Python 代码中初始化环境：\n    ```python\n    import gym\n    from web_agent_site.envs import WebAgentTextEnv\n\n    # 初始化环境，observation_mode 设为 'text'\n    env = gym.make('WebAgentTextEnv-v0', observation_mode='text', num_products=1000)\n    \n    # 重置环境获取初始状态\n    obs = env.reset()\n    print(obs)\n    ```\n\n2.  运行官方提供的随机策略示例：\n    ```sh\n    .\u002Frun_web_agent_text_env.sh\n    ```\n    输出示例：\n    ```text\n    Products loaded.\n    Keys Cleaned.\n    Attributes Loaded.\n    Loaded 6910 goals.\n    Amazon Shopping Game [SEP] Instruction: [SEP] Find me slim f...\n    Available actions: {'has_search_bar': True, 'clickables': ['search']}\n    Taking action \"search[shoes]\" -> Reward = 0.0\n    ...\n    ```\n\n3.  若需运行 HTML 模式的 Gym 示例：\n    ```sh\n    .\u002Frun_web_agent_site_env.sh\n    ```\n\n完成上述步骤后，您即可基于 `gym` 接口编写自定义 Agent，或在 `baseline_models` 目录中参考论文中的基线模型（规则、模仿学习、强化学习等）进行进一步开发。","某电商数据团队需要训练一个能理解复杂自然语言指令（如“找一款适合敏感肌的红色保湿面霜，价格低于 200 元”）的智能购物助手，以替代传统的关键词搜索系统。\n\n### 没有 WebShop 时\n- 开发人员难以构建包含百万级真实商品和多样化人类指令的高质量训练环境，只能依赖少量合成数据，导致模型泛化能力差。\n- 智能体无法在模拟环境中练习“搜索 - 筛选 - 对比 - 购买”的多步决策流程，面对用户复杂的组合指令时经常迷失或执行错误操作。\n- 缺乏对网页噪声文本（如广告、无关评论）的干扰测试，模型上线后极易被页面杂乱信息误导，提取关键属性准确率低下。\n- 验证策略探索能力成本高昂，必须通过昂贵的人工众包或真实的线上 A\u002FB 测试来收集反馈，迭代周期长达数周。\n\n### 使用 WebShop 后\n- 团队直接利用 WebShop 预置的 118 万真实商品库和 1.2 万条众包指令，瞬间获得大规模、高保真的训练场景，显著提升了模型对长尾需求的理解力。\n- 智能体在仿真环境中反复演练多步导航与动作发出，学会了如何处理“重新表述查询”和“自定义选项”，能精准完成复杂的组合购物任务。\n- 借助环境中内置的网页噪声干扰机制，模型经过强化学习后具备了强大的抗噪能力，能从混杂的页面文本中准确锁定价格、颜色等关键属性。\n- 研究人员可在本地快速复现并评估不同算法的策略探索效率，无需等待线上流量，将模型迭代优化周期从数周缩短至数小时。\n\nWebShop 通过提供可扩展的真实世界交互沙箱，让语言智能体在低成本仿真中掌握了处理复杂电商任务的核心能力。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fprinceton-nlp_WebShop_af67ba95.png","princeton-nlp","Princeton Natural Language Processing","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fprinceton-nlp_9459cd72.png","",null,"http:\u002F\u002Fnlp.cs.princeton.edu","https:\u002F\u002Fgithub.com\u002Fprinceton-nlp",[81,85,89,93],{"name":82,"color":83,"percentage":84},"Python","#3572A5",88.8,{"name":86,"color":87,"percentage":88},"HTML","#e34c26",8.1,{"name":90,"color":91,"percentage":92},"Shell","#89e051",1.9,{"name":94,"color":95,"percentage":96},"CSS","#663399",1.3,520,99,"2026-04-14T21:47:34","MIT",4,"未说明",{"notes":104,"python":105,"dependencies":106},"1. 必须安装 Java 运行环境。\n2. 提供 setup.sh 脚本自动安装 Python 依赖、下载产品\u002F指令数据、构建搜索引擎索引及下载 spaCy 模型。\n3. 默认仅加载 1000 个产品用于快速预览，若需加载全部 118 万产品需修改代码配置。\n4. 若使用 'html' 模式运行环境，需下载与本地 Chrome 浏览器版本匹配的 ChromeDriver 并放置指定目录。\n5. 可选下载 ResNet 图像特征文件以支持需要图像特征的模型。","3.8.13",[107,108,109,110],"requirements.txt 中列出的依赖","spaCy (en_core_web_lg 模型)","Java","ChromeDriver (用于 html 模式)",[14,36],[113,114,115,116,117,118,119,120,121,122],"decision-making","language","language-grounding","ml","nlp","rl","rl-environment","shopping","sim-to-real","web-based","2026-03-27T02:49:30.150509","2026-04-20T20:24:04.026135",[126,131,136,141,146,151,156],{"id":127,"question_zh":128,"answer_zh":129,"source_url":130},45685,"为什么无法访问在线演示网站（Live Site）？","由于成本问题，项目方目前不再托管在线演示网站。如果未来情况有变，会在项目中更新通知。","https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002FWebShop\u002Fissues\u002F20",{"id":132,"question_zh":133,"answer_zh":134,"source_url":135},45686,"通过 pip 安装 webshop 包后，导入时提示 \"ModuleNotFoundError: No module named 'web_agent_site'\" 怎么办？","PyPI 上的 pip 包可能已过时或未维护。建议不要使用 pip 安装，而是按照 README 中的说明从源代码进行本地安装（local install），这样可以确保依赖项正确配置。","https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002FWebShop\u002Fissues\u002F39",{"id":137,"question_zh":138,"answer_zh":139,"source_url":140},45687,"运行搜索操作（如 search[shoes]）时，为什么总是返回 \"Total results: 0\" 找不到任何商品？","这通常是因为搜索引擎的索引文件尚未构建完成。请确保已执行了所有设置步骤，特别是运行了 `convert_product_file_format.py` 脚本来生成必要的索引数据。完整的设置命令通常为 `.\u002Fsetup.sh [-d small|all]`。","https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002FWebShop\u002Fissues\u002F29",{"id":142,"question_zh":143,"answer_zh":144,"source_url":145},45688,"运行环境时出现 \"list out of range\" 错误，特别是在使用小规模数据集时，如何解决？","该错误通常是因为加载的数据集过小（如仅加载了部分数据），导致某些固定的测试索引（fixed_index）超出范围。建议尝试切换并使用完整数据集（all dataset）来运行环境，这通常能解决索引越界的问题。","https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002FWebShop\u002Fissues\u002F25",{"id":147,"question_zh":148,"answer_zh":149,"source_url":150},45689,"提供的预训练模型能否直接复现论文中的实验结果？","目前仓库中提供的预训练模型可能无法直接复现论文中的确切结果，且使用最新的 OpenAI 模型运行 ReAct 等方法的表现可能与论文不同。维护者建议如果遇到复现问题，可以开启新的 Issue 具体讨论，目前的结论是暂时关闭此类通用复现问题。","https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002FWebShop\u002Fissues\u002F26",{"id":152,"question_zh":153,"answer_zh":154,"source_url":155},45690,"指令数据集中是否存在重复项？","是的，经过检查确认 `human_goals.json` 文件中确实存在重复的指令条目。维护者正在调查重复数据产生的根源，用户在使用原始文件时需注意去重处理。","https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002FWebShop\u002Fissues\u002F2",{"id":157,"question_zh":158,"answer_zh":159,"source_url":160},45691,"如何获取 1600 条人类演示（Human Demonstration）数据及其解析方法？","人类演示数据包含在项目的 jsonl 文件中。需要注意的是，其格式与 ReAct 代码日志中的格式不同（例如缺少对应的 \"action\" 字段）。目前项目方尚未公开专门的解析器将演示数据转换为 ReAct 日志格式，用户可能需要自行编写解析逻辑。","https:\u002F\u002Fgithub.com\u002Fprinceton-nlp\u002FWebShop\u002Fissues\u002F21",[]]