[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-2toinf--X-VLA":3,"tool-2toinf--X-VLA":65},[4,18,28,36,44,56],{"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},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 真正成长为懂上",150037,2,"2026-04-10T23:33:47",[14,13,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},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[27,15,13,14],{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":24,"last_commit_at":42,"category_tags":43,"status":17},3704,"NextChat","ChatGPTNextWeb\u002FNextChat","NextChat 是一款轻量且极速的 AI 助手，旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性，以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发，NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。\n\n这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言，它也提供了便捷的自托管方案，支持一键部署到 Vercel 或 Zeabur 等平台。\n\nNextChat 的核心亮点在于其广泛的模型兼容性，原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型，让用户在一个界面即可自由切换不同 AI 能力。此外，它还率先支持 MCP（Model Context Protocol）协议，增强了上下文处理能力。针对企业用户，NextChat 提供专业版解决方案，具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能，满足公司对数据隐私和个性化管理的高标准要求。",87618,"2026-04-05T07:20:52",[14,27],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":24,"last_commit_at":50,"category_tags":51,"status":17},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",85092,"2026-04-10T11:13:16",[15,16,52,53,13,54,27,14,55],"视频","插件","其他","音频",{"id":57,"name":58,"github_repo":59,"description_zh":60,"stars":61,"difficulty_score":62,"last_commit_at":63,"category_tags":64,"status":17},5784,"funNLP","fighting41love\u002FfunNLP","funNLP 是一个专为中文自然语言处理（NLP）打造的超级资源库，被誉为\"NLP 民工的乐园”。它并非单一的软件工具，而是一个汇集了海量开源项目、数据集、预训练模型和实用代码的综合性平台。\n\n面对中文 NLP 领域资源分散、入门门槛高以及特定场景数据匮乏的痛点，funNLP 提供了“一站式”解决方案。这里不仅涵盖了分词、命名实体识别、情感分析、文本摘要等基础任务的标准工具，还独特地收录了丰富的垂直领域资源，如法律、医疗、金融行业的专用词库与数据集，甚至包含古诗词生成、歌词创作等趣味应用。其核心亮点在于极高的全面性与实用性，从基础的字典词典到前沿的 BERT、GPT-2 模型代码，再到高质量的标注数据和竞赛方案，应有尽有。\n\n无论是刚刚踏入 NLP 领域的学生、需要快速验证想法的算法工程师，还是从事人工智能研究的学者，都能在这里找到急需的“武器弹药”。对于开发者而言，它能大幅减少寻找数据和复现模型的时间；对于研究者，它提供了丰富的基准测试资源和前沿技术参考。funNLP 以开放共享的精神，极大地降低了中文自然语言处理的开发与研究成本，是中文 AI 社区不可或缺的宝藏仓库。",79857,1,"2026-04-08T20:11:31",[27,16,54],{"id":66,"github_repo":67,"name":68,"description_en":69,"description_zh":70,"ai_summary_zh":70,"readme_en":71,"readme_zh":72,"quickstart_zh":73,"use_case_zh":74,"hero_image_url":75,"owner_login":76,"owner_name":77,"owner_avatar_url":78,"owner_bio":79,"owner_company":80,"owner_location":81,"owner_email":79,"owner_twitter":79,"owner_website":82,"owner_url":83,"languages":84,"stars":117,"forks":118,"last_commit_at":119,"license":120,"difficulty_score":10,"env_os":121,"env_gpu":122,"env_ram":121,"env_deps":123,"category_tags":131,"github_topics":132,"view_count":24,"oss_zip_url":79,"oss_zip_packed_at":79,"status":17,"created_at":141,"updated_at":142,"faqs":143,"releases":177},4956,"2toinf\u002FX-VLA","X-VLA","[ICLR 2026] The offical Implementation of \"Soft-Prompted Transformer as Scalable Cross-Embodiment Vision-Language-Action Model\"","X-VLA 是一款面向机器人领域的通用视觉 - 语言 - 动作（VLA）模型，旨在让机器人通过统一的架构理解视觉信息、自然语言指令并执行复杂动作。它主要解决了当前机器人模型难以在不同形态设备（如机械臂、人形机器人等）之间通用迁移的难题，打破了以往模型“专机专用”的限制，显著提升了机器人在多场景下的灵活性与适应性。\n\n这款工具特别适合机器人研究人员、AI 开发者以及希望探索具身智能的企业团队使用。无论是进行仿真训练还是真机部署，X-VLA 都能提供强大的基础支持。其核心技术亮点在于引入了“软提示（Soft-Prompt）”机制，即为不同机器人形态学习专属的可嵌入参数，从而引导同一个 Transformer 主干网络高效处理多样化的任务策略。凭借这一设计，X-VLA-0.9B 版本在六个仿真平台和三款真实机器人上均取得了业界领先的泛化性能，并荣获 IROS 2025 AgiBot 挑战赛冠军。此外，X-VLA 已原生集成至 LeRobot 平台，支持服务器 - 客户端架构，便于在集群或边缘设备上分布式推理，大大降低了开发与部署门槛。","\n\n# 🤖 X-VLA: Soft-Prompted Transformer as a Scalable Cross-Embodiment Vision-Language-Action Model\n\n| 📄 **Paper** | 🌐 **Project Page** | 🤗 **Hugging Face** |\n| :---: | :---: | :---: |\n| [Read the Full Research](https:\u002F\u002Farxiv.org\u002Fpdf\u002F2510.10274) | [Explore the Demos](https:\u002F\u002Fthu-air-dream.github.io\u002FX-VLA\u002F) | [Access Models & Datasets](https:\u002F\u002Fhuggingface.co\u002Fcollections\u002F2toINF\u002Fx-vla) |\n\n\n## 🏆 Highlights & News\n\n### 🎉 Exciting News: X-VLA Accepted to ICLR 2026  \nWe are thrilled to announce that **X-VLA has been accepted to ICLR 2026**.\n\n### 🚀 Now Supported in LeRobot  \nX-VLA is now natively integrated into the [LeRobot platform](https:\u002F\u002Fhuggingface.co\u002Fdocs\u002Flerobot\u002Fxvla).  \nGive it a try! We sincerely appreciate the support and collaboration from the Hugging Face team.\n\n### 🥇 Champion Winner at IROS 2025  \nX-VLA won **1st Place (Champion)** at the **AgiBot World Challenge**, held at **IROS 2025**.\n\n\n---\n\n## 🧩 Overview\n\nSuccessful generalist **Vision–Language–Action (VLA)** models depend on scalable, cross-platform training across diverse robotic embodiments.  \nTo leverage the heterogeneity of large-scale robot datasets, **X-VLA** introduces a **soft prompt** mechanism — embodiment-specific learnable embeddings that guide a unified Transformer backbone toward effective multi-domain policy learning.\n\nThe resulting architecture — **X-VLA-0.9B** — achieves **state-of-the-art generalization** across six simulation platforms and three real-world robots, surpassing prior VLA approaches in dexterity, adaptability, and efficiency.\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fc047bac4-17c3-4d66-8036-badfab2b8c41\n\n---\n\n## 🚀 Quick Start: Installation & Deployment\n\n### 1️⃣ Installation\n\n```bash\n# Clone the repository\ngit clone https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA.git\ncd X-VLA\n```\n\n```bash\n# Create and activate Conda environment\nconda create -n XVLA python=3.10 -y\nconda activate XVLA\n\n# Install dependencies\npip install -r requirements.txt\n```\n\nor \n\n```bash\nconda env create -f environment.yml\nconda activate xvla-stable\n```\n\n---\n### 2️⃣ Deploying X-VLA for Inference\n\nX-VLA adopts a **Server–Client** architecture to separate the model environment from simulation or robot-specific dependencies.\nThis design avoids package conflicts and supports distributed inference across GPUs, SLURM clusters, or edge devices.\n\n#### 🧠 Available Pre-trained Models\n\n- [ ] We observed a slight performance drop (around 1% across different datasets) after converting our models to the HF format, and we’re actively investigating the cause.\n\n#### 🧠 About Libero Setup and Evluation\n\n- [x] For questions about converting relative actions to absolute actions and our implementation, please first refer to issue [#2](https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA\u002Fissues\u002F2) and [#15](https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA\u002Fissues\u002F15). We have updated full preprocessing guidance [here](https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA\u002Fblob\u002Fmain\u002Fevaluation\u002Flibero\u002Fpreprocess.md).\n\n#### 🔥 Update: We have released the LoRA fine-tuning code, along with checkpoints and the associated inference code.\n\n| Model ID                                                                                           | Embodiment        | Description                                                                                     |   Performance   | Evaluation Guidance |\n| :------------------------------------------------------------------------------------------------- | :---------------- | :---------------------------------------------------------------------------------------------- | :--------------: | :-----------------: |\n| [`2toINF\u002FX-VLA-Pt`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-Pt)                                        | Foundation        | Pretrained on large-scale heterogeneous robot–vision–language datasets for general transfer.     | —                | —                   |\n| [`2toINF\u002FX-VLA-AgiWorld-Challenge`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-AgiWorld-Challenge)        | Agibot-G1          | Fine-tuned for AgiWorld Challenge.       | **Champion🥇**        | -  |\n| [`2toINF\u002FX-VLA-Calvin-ABC_D`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-Calvin-ABC_D)                    | Franka     | Fine-tuned on CALVIN benchmark (ABC_D subset)              | **4.43**        | [Calvin Eval](evaluation\u002Fcalvin\u002FREADME.md)          |\n| [`2toINF\u002FX-VLA-Google-Robot`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-Google-Robot)                    | Google Robot      |  Fine-tuned on large-scale Google Robot dataset                | **83.5%(VM) 76.4%(VA)**        | [Simpler Eval](evaluation\u002Fsimpler\u002FREADME.md)   |\n| [`2toINF\u002FX-VLA-Libero`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-Libero)                                | Franka            | Fine-tuned on LIBERO benchmark                     | **98.1%**        | [LIBERO Eval](evaluation\u002Flibero\u002FREADME.md)         |\n| [`2toINF\u002FX-VLA-VLABench`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-VLABench)                                | Franka            | Fine-tuned on VLABench benchmark                     | **51.1(score)**        | [VLABench Eval](evaluation\u002Fvlabench\u002FREADME.md)        |\n| [`2toINF\u002FX-VLA-RoboTwin2`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-RoboTwin2)                          | Agilex        | Trained on RoboTwin2 dataset for dual-arm coordinated manipulation(50 demos for each task).                     | **70%**        |   [RoboTwin2.0 Eval](evaluation\u002Frobotwin-2.0\u002FREADME.md)    |\n| [`2toINF\u002FX-VLA-WidowX`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-WidowX)                | WidowX  | Fine-tuned on BridgeDataV2 (Simpler benchmark).                                                  | **95.8%**        | [Simpler Eval](evaluation\u002Fsimpler\u002FREADME.md) |\n| [`2toINF\u002FX-VLA-SoftFold`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-SoftFold)                            | Agilex          | Fine-tuned on Soft-Fold Dataset. Specialized in deformable object manipulation (e.g., folding and cloth control).                 | cloth folding with a 100% success rate in 2 hours.  |  [SoftFold-Agilex](evaluation\u002FSoftFold-Agilex\u002Freadme.md)   |\n| LoRA Adapters | ||  | |\n| [`2toINF\u002FX-VLA-libero-spatial-peft`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-libero-spatial-peft)                                | Franka            | Fine-tuned on LIBERO benchmark                     | **96.2%**        | [LIBERO Eval](evaluation\u002Flibero\u002FREADME.md)         |\n| [`2toINF\u002FX-VLA-libero-object-peft`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-libero-object-peft)                                | Franka            | Fine-tuned on LIBERO benchmark                     | **96%**        | [LIBERO Eval](evaluation\u002Flibero\u002FREADME.md)         |\n| [`2toINF\u002FX-VLA-libero-goal-peft`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-libero-goal-peft)                                | Franka            | Fine-tuned on LIBERO benchmark                     | **94.4%**        | [LIBERO Eval](evaluation\u002Flibero\u002FREADME.md)         |\n| [`2toINF\u002FX-VLA-libero-long-peft`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-libero-long-peft)                                | Franka            | Fine-tuned on LIBERO benchmark                     | **83.2%**        | [LIBERO Eval](evaluation\u002Flibero\u002FREADME.md)         |\n| [`2toINF\u002FX-VLA-simpler-widowx-peft`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-simpler-widowx-peft)                | WidowX  | Fine-tuned on BridgeDataV2 (Simpler benchmark).                                                  | **66.7%**        | [Simpler Eval](evaluation\u002Fsimpler\u002FREADME.md) |\n\n---\n\n## 🧩 Notes\n\n- All models share a consistent architecture: `configuration_xvla.py`, `modeling_xvla.py`, and unified tokenizer (`tokenizer.json`).\n- The **X-VLA-Pt** model is the *foundation checkpoint*, trained across multiple robot domains.\n- Each embodiment is fine-tuned for its respective environment while retaining cross-embodiment alignment.\n- Evaluation scripts (in `evaluation\u002F`) follow a standardized format for reproducible benchmarking.\n\n---\n\n> 📊 Performance metrics follow standard evaluation protocols detailed in the [paper](https:\u002F\u002Farxiv.org\u002Fpdf\u002F2510.10274).\n\n---\n\n### 3️⃣ Launching the Inference Server\n\n```python\nfrom transformers import AutoModel, AutoProcessor\nimport json_numpy\n\n# Load model and processor\nmodel = AutoModel.from_pretrained(\"2toINF\u002FX-VLA-WidowX\", trust_remote_code=True)\nprocessor = AutoProcessor.from_pretrained(\"2toINF\u002FX-VLA-WidowX\", trust_remote_code=True)\n\n# Start the inference server\nprint(\"🚀 Starting X-VLA inference server...\")\nmodel.run(processor, host=\"0.0.0.0\", port=8000)\n```\n\nOnce launched, the API endpoint is available at:\n\n```\nPOST http:\u002F\u002F\u003Cserver_ip>:8000\u002Fact\n```\n\n---\n\n### 4️⃣ Client Interaction & Action Prediction\n\nThe client communicates via HTTP POST, sending multimodal data (vision + language + proprioception) as a JSON payload.\n\n#### Payload Structure\n\n| Key                    | Type                      | Description                                           |\n| :--------------------- | :------------------------ | :---------------------------------------------------- |\n| `proprio`              | `json_numpy.dumps(array)` | Current proprioceptive state (e.g., joint positions). |\n| `language_instruction` | `str`                     | Task instruction (e.g., \"Pick up the red block\").     |\n| `image0`               | `json_numpy.dumps(array)` | Primary camera image (RGB).                           |\n| `image1`, `image2`     | *optional*                | Additional camera views if applicable.                |\n| `domain_id`            | `int`                     | Identifier for the current robotic embodiment\u002Fdomain. |\n| `steps`                | `int`                     | denoising steps for flow-matching based generation (e.g., 10).         |\n\n#### Example Client Code\n\n```python\nimport requests\nimport numpy as np\nimport json_numpy\n\nserver_url = \"http:\u002F\u002Flocalhost:8000\u002Fact\"\ntimeout = 5\n\n# Prepare inputs\nproprio = np.zeros(7, dtype=np.float32)\nimage = np.zeros((256, 256, 3), dtype=np.uint8)\ninstruction = \"Move the gripper to the target position\"\n\npayload = {\n    \"proprio\": json_numpy.dumps(proprio),\n    \"language_instruction\": instruction,\n    \"image0\": json_numpy.dumps(image),\n    \"domain_id\": 0,\n    \"steps\": 10\n}\n\ntry:\n    response = requests.post(server_url, json=payload, timeout=timeout)\n    response.raise_for_status()\n    result = response.json()\n    actions = np.array(result[\"action\"], dtype=np.float32)\n    print(f\"✅ Received {actions.shape[0]} predicted actions.\")\nexcept Exception as e:\n    print(f\"⚠️ Request failed: {e}\")\n    actions = np.zeros((30, 20), dtype=np.float32)\n```\n\n#### Expected Output\n\n```\n[Server] Model loaded successfully on cuda:0\n[Server] Listening on 0.0.0.0:8000\n[Client] Sending observation to server...\n✅ Received 30 predicted actions.\n```\n\n---\n\n### 5️⃣ Standardized Control Interface: EE6D\n\nTo ensure consistency across embodiments, **X-VLA** adopts a unified **EE6D (End-Effector 6D)** control space.\n\n| Component           | Specification                                                              | Notes                                         |\n| :------------------ | :------------------------------------------------------------------------- | :-------------------------------------------- |\n| **Proprio Input**   | Current EE6D pose (position + orientation)                                 | Must align with training-space normalization. |\n| **Action Output**   | Predicted target delta\u002Fabsolute pose (EE6D)                                | Executed by downstream controller.            |\n| **Dimensionality**  | 20-D vector = 3 (EE Pos) + 6 (Rotation in 6D) + 1 (Gripper) + 10 (Padding) |                                               |\n| **Single-arm Case** | If only one arm exists, pad with zeros to maintain 20D vector.             |                                               |\n\n> ⚙️ **Reference Post-processing:**\n>\n> ```python\n> from datasets.utils import rotate6d_to_xyz\n> action_final = np.concatenate([\n>     action_pred[:3],\n>     rotate6d_to_xyz(action_pred[3:9]),\n>     np.array([1.0 if action_pred[9] > 0.5 else 0])\n> ])\n> ```\n>\n> When feeding proprioception to the model, apply the **inverse transformation** accordingly.\n\n---\n\n### 6️⃣ Reference Client Implementations\n\nEach released model includes a corresponding **reference client** under\n[`evaluation\u002F\u003Cdomain>\u002F\u003Crobot>\u002Fclient.py`](evaluation\u002F) for reproducing exact deployment behaviors.\nWe strongly recommend adapting from these clients when connecting to physical or simulated robots.\n\n---\n\n### 7️⃣ SLURM & Cluster Deployment\n\nFor large-scale or distributed training\u002Fdeployment (e.g., HPC clusters, AgiBot nodes):\n\n```bash\npython -m deploy --model_path \u002Fpath\u002Fto\u002Fyour\u002Fmodel\n```\n\nThis script automatically detects SLURM environment variables, launches distributed servers, and writes connection metadata to `info.json`.\n\n---\n\n## ⚙️ Training \u002F Fine-tuning on Custom Data\n\nX-VLA supports fine-tuning on new demonstrations via a modular and extensible dataset interface.\n\n### Data Preparation Workflow\n\n1. **Prepare Meta JSONs** — each domain has a `meta.json` listing trajectory file paths.\n2. **Implement Custom Handler** — write a domain loader class with `iter_episode(traj_idx)` generator.\n3. **Register Domain** — update:\n\n   * `datasets\u002Fdomain_handler\u002Fregistry.py`\n   * `datasets\u002Fdomain_config.py`\n\n### Example Handlers\n\n| Handler       | Dataset               | Description                               |\n| :------------ | :-------------------- | :---------------------------------------- |\n| `\"lerobot\"`   | Agibot-Beta           | Optimized for LEROBOT format              |\n| `\"h5py\"`      | RoboMind \u002F Simulation | Efficient loading from `.h5` trajectories |\n| `\"scattered\"` | AGIWorld              | Handles scattered trajectory storage      |\n\n---\n\n### Launch Training with Accelerate\n\n```bash\naccelerate launch \\\n    --mixed_precision bf16 \\\n    train.py \\\n    --models '2toINF\u002FX-VLA-Pt' \\\n    --train_metas_path \u002Fpath\u002Fto\u002Fmeta_files.json \\\n    --learning_rate 1e-4 \\\n    --learning_coef 0.1 \\\n    --iters 50000 \\\n    --freeze_steps 1000 \\\n    --warmup_steps 2000\n```\n\n| Argument             | Description                            |\n| :------------------- | :------------------------------------- |\n| `--models`           | Base model (e.g., `'2toINF\u002FX-VLA-Pt'`) |\n| `--train_metas_path` | Path to meta JSON file(s)              |\n| `--batch_size`       | Batch size                             |\n| `--learning_rate`    | Base LR                                |\n| `--learning_coef`    | LR multiplier for soft prompts         |\n| `--iters`            | Total training iterations              |\n| `--freeze_steps`     | Steps to freeze backbone               |\n| `--warmup_steps`     | Warmup iterations                      |\n\n---\n\n\n## 📚 Citation\n\nIf you use X-VLA in your research, please cite:\n\n```bibtex\n@article{zheng2025x,\n  title   = {X-VLA: Soft-Prompted Transformer as Scalable Cross-Embodiment Vision-Language-Action Model},\n  author  = {Zheng, Jinliang and Li, Jianxiong and Wang, Zhihao and Liu, Dongxiu and Kang, Xirui\n             and Feng, Yuchun and Zheng, Yinan and Zou, Jiayin and Chen, Yilun and Zeng, Jia and others},\n  journal = {arXiv preprint arXiv:2510.10274},\n  year    = {2025}\n}\n```\n\n---\n\n## 🪪 License\n\nThis repository is licensed under the **Apache License 2.0**.\nYou may freely use, modify, and distribute the code under the terms of the license.\n\n```\nCopyright 2025 2toINF (https:\u002F\u002Fgithub.com\u002F2toinf)\nLicensed under the Apache License, Version 2.0.\n```\n\n---\n\n**Maintained by [2toINF](https:\u002F\u002Fgithub.com\u002F2toinf)**\n💬 Feedback, issues, and contributions are welcome via GitHub Discussions or Pull Requests.\n","# 🤖 X-VLA：基于软提示的Transformer作为可扩展的跨机器人形态视觉-语言-动作模型\n\n| 📄 **论文** | 🌐 **项目页面** | 🤗 **Hugging Face** |\n| :---: | :---: | :---: |\n| [阅读完整研究](https:\u002F\u002Farxiv.org\u002Fpdf\u002F2510.10274) | [探索演示](https:\u002F\u002Fthu-air-dream.github.io\u002FX-VLA\u002F) | [访问模型与数据集](https:\u002F\u002Fhuggingface.co\u002Fcollections\u002F2toINF\u002Fx-vla) |\n\n\n## 🏆 亮点与新闻\n\n### 🎉 热烈喜讯：X-VLA 被 ICLR 2026 接收  \n我们非常高兴地宣布，**X-VLA 已被 ICLR 2026 接收**。\n\n### 🚀 现已在 LeRobot 中支持  \nX-VLA 现已原生集成到 [LeRobot 平台](https:\u002F\u002Fhuggingface.co\u002Fdocs\u002Flerobot\u002Fxvla)。  \n快来试试吧！我们由衷感谢 Hugging Face 团队的支持与合作。\n\n### 🥇 IROS 2025 冠军得主  \nX-VLA 在 **IROS 2025** 举办的 **AgiBot 世界挑战赛** 中荣获 **第一名（冠军）**。\n\n\n---\n\n## 🧩 概述\n\n成功的通用型 **视觉–语言–动作（VLA）** 模型依赖于跨不同机器人形态的大规模、可扩展训练。  \n为充分利用大规模机器人数据集的异构性，**X-VLA** 引入了一种 **软提示** 机制——即特定于机器人形态的可学习嵌入，用以引导统一的 Transformer 主干网络实现高效的多领域策略学习。\n\n由此构建的架构——**X-VLA-0.9B**——在六个仿真平台和三台真实机器人上实现了 **最先进的泛化能力**，其灵巧性、适应性和效率均超越了先前的 VLA 方法。\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fc047bac4-17c3-4d66-8036-badfab2b8c41\n\n---\n\n## 🚀 快速入门：安装与部署\n\n### 1️⃣ 安装\n\n```bash\n# 克隆仓库\ngit clone https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA.git\ncd X-VLA\n```\n\n```bash\n# 创建并激活 Conda 环境\nconda create -n XVLA python=3.10 -y\nconda activate XVLA\n\n# 安装依赖\npip install -r requirements.txt\n```\n\n或者\n\n```bash\nconda env create -f environment.yml\nconda activate xvla-stable\n```\n\n---\n\n### 2️⃣ 部署 X-VLA 进行推理\n\nX-VLA 采用 **服务器–客户端** 架构，将模型环境与仿真或机器人特定依赖项分离。\n这种设计避免了包冲突，并支持在多 GPU、SLURM 集群或边缘设备上进行分布式推理。\n\n#### 🧠 可用的预训练模型\n\n- [ ] 我们发现将模型转换为 HF 格式后，性能略有下降（在不同数据集上约 1%），我们正在积极调查原因。\n\n#### 🧠 关于 Libero 的设置与评估\n\n- [x] 如有关于相对动作到绝对动作的转换及其实现的问题，请先参考 issue [#2](https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA\u002Fissues\u002F2) 和 [#15](https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA\u002Fissues\u002F15)。我们已在 [这里](https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA\u002Fblob\u002Fmain\u002Fevaluation\u002Flibero\u002Fpreprocess.md) 更新了完整的预处理指南。\n\n#### 🔥 更新：我们已发布 LoRA 微调代码，以及检查点和相关的推理代码。\n\n| 模型 ID                                                                                           | 载体        | 描述                                                                                     |   性能   | 评估指南 |\n| :------------------------------------------------------------------------------------------------- | :---------------- | :---------------------------------------------------------------------------------------------- | :--------------: | :-----------------: |\n| [`2toINF\u002FX-VLA-Pt`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-Pt)                                        | 基础模型        | 在大规模异构的机器人–视觉–语言数据集上预训练，用于通用迁移。     | —                | —                   |\n| [`2toINF\u002FX-VLA-AgiWorld-Challenge`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-AgiWorld-Challenge)        | Agibot-G1          | 针对 AgiWorld 挑战赛微调。       | **冠军🥇**        | -  |\n| [`2toINF\u002FX-VLA-Calvin-ABC_D`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-Calvin-ABC_D)                    | Franka     | 在 CALVIN 基准测试（ABC_D 子集）上微调              | **4.43**        | [Calvin 评估](evaluation\u002Fcalvin\u002FREADME.md)          |\n| [`2toINF\u002FX-VLA-Google-Robot`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-Google-Robot)                    | Google Robot      |  在大规模 Google Robot 数据集上微调                | **83.5%(VM) 76.4%(VA)**        | [Simpler 评估](evaluation\u002Fsimpler\u002FREADME.md)   |\n| [`2toINF\u002FX-VLA-Libero`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-Libero)                                | Franka            | 在 LIBERO 基准测试上微调                     | **98.1%**        | [LIBERO 评估](evaluation\u002Flibero\u002FREADME.md)         |\n| [`2toINF\u002FX-VLA-VLABench`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-VLABench)                                | Franka            | 在 VLABench 基准测试上微调                     | **51.1分**        | [VLABench 评估](evaluation\u002Fvlabench\u002FREADME.md)        |\n| [`2toINF\u002FX-VLA-RoboTwin2`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-RoboTwin2)                          | Agilex        | 基于 RoboTwin2 数据集训练，用于双臂协同操作（每项任务 50 次演示）。                     | **70%**        |   [RoboTwin2.0 评估](evaluation\u002Frobotwin-2.0\u002FREADME.md)    |\n| [`2toINF\u002FX-VLA-WidowX`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-WidowX)                | WidowX  | 在 BridgeDataV2（Simpler 基准）上微调。                                                  | **95.8%**        | [Simpler 评估](evaluation\u002Fsimpler\u002FREADME.md) |\n| [`2toINF\u002FX-VLA-SoftFold`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-SoftFold)                            | Agilex          | 在 Soft-Fold 数据集上微调。专门用于可变形物体的操作（如折叠和布料控制）。                 | 2 小时内布料折叠成功率达到 100%。  |  [SoftFold-Agilex](evaluation\u002FSoftFold-Agilex\u002Freadme.md)   |\n| LoRA 适配器 | ||  | |\n| [`2toINF\u002FX-VLA-libero-spatial-peft`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-libero-spatial-peft)                                | Franka            | 在 LIBERO 基准测试上微调                     | **96.2%**        | [LIBERO 评估](evaluation\u002Flibero\u002FREADME.md)         |\n| [`2toINF\u002FX-VLA-libero-object-peft`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-libero-object-peft)                                | Franka            | 在 LIBERO 基准测试上微调                     | **96%**        | [LIBERO 评估](evaluation\u002Flibero\u002FREADME.md)         |\n| [`2toINF\u002FX-VLA-libero-goal-peft`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-libero-goal-peft)                                | Franka            | 在 LIBERO 基准测试上微调                     | **94.4%**        | [LIBERO 评估](evaluation\u002Flibero\u002FREADME.md)         |\n| [`2toINF\u002FX-VLA-libero-long-peft`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-libero-long-peft)                                | Franka            | 在 LIBERO 基准测试上微调                     | **83.2%**        | [LIBERO 评估](evaluation\u002Flibero\u002FREADME.md)         |\n| [`2toINF\u002FX-VLA-simpler-widowx-peft`](https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-simpler-widowx-peft)                | WidowX  | 在 BridgeDataV2（Simpler 基准）上微调。                                                  | **66.7%**        | [Simpler 评估](evaluation\u002Fsimpler\u002FREADME.md) |\n\n---\n\n## 🧩 注意事项\n\n- 所有模型采用一致的架构：`configuration_xvla.py`、`modeling_xvla.py` 和统一的分词器 (`tokenizer.json`)。\n- **X-VLA-Pt** 模型是 *基础检查点*，在多个机器人领域上进行了训练。\n- 每种载体都在其各自环境中进行了微调，同时保持跨载体的一致性。\n- 评估脚本（位于 `evaluation\u002F` 目录下）遵循标准化格式，以实现可重复的基准测试。\n\n---\n\n> 📊 性能指标遵循论文中详述的标准评估协议，详情请参阅 [论文](https:\u002F\u002Farxiv.org\u002Fpdf\u002F2510.10274)。\n\n---\n\n### 3️⃣ 启动推理服务器\n\n```python\nfrom transformers import AutoModel, AutoProcessor\nimport json_numpy\n\n# 加载模型和处理器\nmodel = AutoModel.from_pretrained(\"2toINF\u002FX-VLA-WidowX\", trust_remote_code=True)\nprocessor = AutoProcessor.from_pretrained(\"2toINF\u002FX-VLA-WidowX\", trust_remote_code=True)\n\n# 启动推理服务器\nprint(\"🚀 正在启动 X-VLA 推理服务器...\")\nmodel.run(processor, host=\"0.0.0.0\", port=8000)\n```\n\n启动后，API 端点如下：\n\n```\nPOST http:\u002F\u002F\u003Cserver_ip>:8000\u002Fact\n```\n\n---\n\n### 4️⃣ 客户端交互与动作预测\n\n客户端通过 HTTP POST 方法进行通信，以 JSON 负载的形式发送多模态数据（视觉 + 语言 + 本体感知）。\n\n#### 负载结构\n\n| 键                    | 类型                      | 描述                                           |\n| :--------------------- | :------------------------ | :---------------------------------------------------- |\n| `proprio`              | `json_numpy.dumps(array)` | 当前本体感知状态（例如，关节位置）。             |\n| `language_instruction` | `str`                     | 任务指令（例如，“拿起红色方块”）。             |\n| `image0`               | `json_numpy.dumps(array)` | 主摄像头图像（RGB）。                           |\n| `image1`, `image2`     | *可选*                | 如适用，其他摄像头视图。                        |\n| `domain_id`            | `int`                     | 当前机器人本体\u002F领域的标识符。                   |\n| `steps`                | `int`                     | 基于流匹配生成的去噪步数（例如，10步）。         |\n\n#### 示例客户端代码\n\n```python\nimport requests\nimport numpy as np\nimport json_numpy\n\nserver_url = \"http:\u002F\u002Flocalhost:8000\u002Fact\"\ntimeout = 5\n\n# 准备输入\nproprio = np.zeros(7, dtype=np.float32)\nimage = np.zeros((256, 256, 3), dtype=np.uint8)\ninstruction = \"将夹爪移动到目标位置\"\n\npayload = {\n    \"proprio\": json_numpy.dumps(proprio),\n    \"language_instruction\": instruction,\n    \"image0\": json_numpy.dumps(image),\n    \"domain_id\": 0,\n    \"steps\": 10\n}\n\ntry:\n    response = requests.post(server_url, json=payload, timeout=timeout)\n    response.raise_for_status()\n    result = response.json()\n    actions = np.array(result[\"action\"], dtype=np.float32)\n    print(f\"✅ 收到 {actions.shape[0]} 个预测动作。\")\nexcept Exception as e:\n    print(f\"⚠️ 请求失败：{e}\")\n    actions = np.zeros((30, 20), dtype=np.float32)\n```\n\n#### 预期输出\n\n```\n[服务器] 模型已成功加载至 cuda:0\n[服务器] 正在监听 0.0.0.0:8000\n[客户端] 向服务器发送观测数据...\n✅ 收到 30 个预测动作。\n```\n\n---\n\n### 5️⃣ 标准化控制接口：EE6D\n\n为确保不同本体之间的一致性，**X-VLA** 采用统一的 **EE6D（末端执行器 6D）** 控制空间。\n\n| 组件           | 规格                                                              | 备注                                         |\n| :------------------ | :------------------------------------------------------------------------- | :-------------------------------------------- |\n| **本体输入**   | 当前 EE6D 姿态（位置 + 方向）                                 | 必须与训练空间的归一化一致。                 |\n| **动作输出**   | 预测的目标位移\u002F绝对姿态（EE6D）                                | 由下游控制器执行。                           |\n| **维度**  | 20 维向量 = 3（EE 位置） + 6（6D 旋转） + 1（夹爪） + 10（填充） |                                               |\n| **单臂情况** | 如果仅有一只手臂，则用零填充以保持 20 维向量。             |                                               |\n\n> ⚙️ **参考后处理：**\n>\n> ```python\n> from datasets.utils import rotate6d_to_xyz\n> action_final = np.concatenate([\n>     action_pred[:3],\n>     rotate6d_to_xyz(action_pred[3:9]),\n>     np.array([1.0 如果 action_pred[9] > 0.5 else 0])\n> ])\n> ```\n>\n> 将本体感知输入模型时，应相应地应用 **逆变换**。\n\n---\n\n### 6️⃣ 参考客户端实现\n\n每个发布的模型都包含一个对应的 **参考客户端**，位于 [`evaluation\u002F\u003Cdomain>\u002F\u003Crobot>\u002Fclient.py`](evaluation\u002F) 中，用于复现确切的部署行为。我们强烈建议在连接物理或仿真机器人时，基于这些客户端进行适配。\n\n---\n\n### 7️⃣ SLURM 和集群部署\n\n对于大规模或分布式训练\u002F部署（例如，HPC 集群、AgiBot 节点）：\n\n```bash\npython -m deploy --model_path \u002Fpath\u002Fto\u002Fyour\u002Fmodel\n```\n\n该脚本会自动检测 SLURM 环境变量，启动分布式服务器，并将连接元数据写入 `info.json` 文件中。\n\n---\n\n## ⚙️ 自定义数据上的训练\u002F微调\n\nX-VLA 支持通过模块化且可扩展的数据集接口，对新演示数据进行微调。\n\n### 数据准备流程\n\n1. **准备元 JSON 文件** — 每个领域都有一个 `meta.json` 文件，列出轨迹文件路径。\n2. **实现自定义处理器** — 编写具有 `iter_episode(traj_idx)` 生成器的领域加载类。\n3. **注册领域** — 更新：\n\n   * `datasets\u002Fdomain_handler\u002Fregistry.py`\n   * `datasets\u002Fdomain_config.py`\n\n### 示例处理器\n\n| 处理器       | 数据集               | 描述                               |\n| :------------ | :-------------------- | :---------------------------------------- |\n| `\"lerobot\"`   | Agibot-Beta           | 针对 LEROBOT 格式优化              |\n| `\"h5py\"`      | RoboMind \u002F 模拟     | 从 `.h5` 轨迹高效加载              |\n| `\"scattered\"` | AGIWorld              | 处理分散存储的轨迹                 |\n\n---\n\n### 使用 Accelerate 启动训练\n\n```bash\naccelerate launch \\\n    --mixed_precision bf16 \\\n    train.py \\\n    --models '2toINF\u002FX-VLA-Pt' \\\n    --train_metas_path \u002Fpath\u002Fto\u002Fmeta_files.json \\\n    --learning_rate 1e-4 \\\n    --learning_coef 0.1 \\\n    --iters 50000 \\\n    --freeze_steps 1000 \\\n    --warmup_steps 2000\n```\n\n| 参数             | 描述                            |\n| :------------------- | :------------------------------------- |\n| `--models`           | 基础模型（例如，`'2toINF\u002FX-VLA-Pt'`） |\n| `--train_metas_path` | 元 JSON 文件路径              |\n| `--batch_size`       | 批量大小                             |\n| `--learning_rate`    | 基础学习率                           |\n| `--learning_coef`    | 软提示的学习率乘数                   |\n| `--iters`            | 总训练迭代次数                       |\n| `--freeze_steps`     | 冻结主干网络的步数                   |\n| `--warmup_steps`     | 热身迭代次数                         |\n\n---\n\n\n## 📚 引用\n\n如果您在研究中使用 X-VLA，请引用以下内容：\n\n```bibtex\n@article{zheng2025x,\n  title   = {X-VLA: 基于软提示的 Transformer 作为可扩展的跨本体视觉-语言-动作模型},\n  author  = {Zheng, Jinliang and Li, Jianxiong and Wang, Zhihao and Liu, Dongxiu and Kang, Xirui\n             and Feng, Yuchun and Zheng, Yinan and Zou, Jiayin and Chen, Yilun and Zeng, Jia and others},\n  journal = {arXiv 预印本 arXiv:2510.10274},\n  year    = {2025}\n}\n```\n\n---\n\n## 🪪 许可证\n\n本仓库采用 **Apache 2.0 许可证** 许可。您可以在该许可证的条款下自由地使用、修改和分发代码。\n\n```\n版权所有 2025 2toINF（https:\u002F\u002Fgithub.com\u002F2toinf）\n依照 Apache 许可证第 2.0 版授权。\n```\n\n---\n\n**由 [2toINF](https:\u002F\u002Fgithub.com\u002F2toinf) 维护**\n💬 欢迎通过 GitHub Discussions 或 Pull Requests 提出反馈、报告问题或贡献代码。","# X-VLA 快速上手指南\n\nX-VLA 是一个基于软提示（Soft-Prompt）机制的可扩展跨具身视觉 - 语言 - 动作模型，支持多种机器人平台的通用策略学习。本指南将帮助您快速完成环境搭建与推理部署。\n\n## 1. 环境准备\n\n在开始之前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**: Linux (推荐 Ubuntu 20.04+)\n*   **Python 版本**: 3.10\n*   **硬件要求**: NVIDIA GPU (支持 CUDA)，显存建议 16GB 以上以运行完整模型\n*   **前置依赖**:\n    *   Conda (推荐使用 Miniconda 或 Anaconda)\n    *   Git\n\n> 💡 **国内加速建议**：\n> 若下载依赖或模型较慢，建议配置国内镜像源：\n> *   **Conda**: 使用清华或中科大镜像 (`conda config --add channels https:\u002F\u002Fmirrors.tuna.tsinghua.edu.cn\u002Fanaconda\u002Fpkgs\u002Fmain\u002F`)\n> *   **PyPI**: 使用阿里云或清华镜像 (`pip install -r requirements.txt -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple`)\n> *   **Hugging Face**: 设置环境变量 `export HF_ENDPOINT=https:\u002F\u002Fhf-mirror.com`\n\n## 2. 安装步骤\n\n### 克隆代码库\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA.git\ncd X-VLA\n```\n\n### 创建并激活虚拟环境\n推荐使用 Conda 创建隔离环境：\n```bash\nconda create -n XVLA python=3.10 -y\nconda activate XVLA\n```\n\n### 安装依赖\n您可以选择通过 `requirements.txt` 或 `environment.yml` 进行安装：\n\n**方式 A：使用 requirements.txt**\n```bash\npip install -r requirements.txt\n```\n\n**方式 B：使用 environment.yml (推荐)**\n```bash\nconda env create -f environment.yml\nconda activate xvla-stable\n```\n\n## 3. 基本使用\n\nX-VLA 采用 **Server-Client** 架构，将模型推理环境与机器人具体依赖解耦。以下是启动服务并获取动作预测的最小化示例。\n\n### 第一步：启动推理服务器\n\n以下代码将加载预训练模型（以 WidowX 为例）并启动 HTTP 服务：\n\n```python\nfrom transformers import AutoModel, AutoProcessor\nimport json_numpy\n\n# 加载模型和处理器\n# 注意：首次运行会自动从 Hugging Face 下载模型，请确保网络通畅或配置镜像\nmodel = AutoModel.from_pretrained(\"2toINF\u002FX-VLA-WidowX\", trust_remote_code=True)\nprocessor = AutoProcessor.from_pretrained(\"2toINF\u002FX-VLA-WidowX\", trust_remote_code=True)\n\n# 启动推理服务器\nprint(\"🚀 Starting X-VLA inference server...\")\nmodel.run(processor, host=\"0.0.0.0\", port=8000)\n```\n\n启动成功后，服务端将监听 `http:\u002F\u002F0.0.0.0:8000`。\n\n### 第二步：客户端发送请求并获取动作\n\n客户端通过 HTTP POST 请求发送多模态数据（图像、本体感知、语言指令），并接收预测的动作序列。\n\n```python\nimport requests\nimport numpy as np\nimport json_numpy\n\nserver_url = \"http:\u002F\u002Flocalhost:8000\u002Fact\"\ntimeout = 5\n\n# 准备输入数据 (此处为零占位符，实际使用请替换为真实传感器数据)\nproprio = np.zeros(7, dtype=np.float32)       # 本体感知状态 (如关节位置)\nimage = np.zeros((256, 256, 3), dtype=np.uint8) # 主摄像头 RGB 图像\ninstruction = \"Move the gripper to the target position\" # 语言指令\n\n# 构建 Payload\npayload = {\n    \"proprio\": json_numpy.dumps(proprio),\n    \"language_instruction\": instruction,\n    \"image0\": json_numpy.dumps(image),\n    \"domain_id\": 0,          # 机器人具身标识 ID\n    \"steps\": 10              # 去噪步数 (基于 flow-matching)\n}\n\ntry:\n    response = requests.post(server_url, json=payload, timeout=timeout)\n    response.raise_for_status()\n    result = response.json()\n    \n    # 解析返回的动作 (20 维向量：3 位置 + 6 旋转 + 1 夹爪 + 10 填充)\n    actions = np.array(result[\"action\"], dtype=np.float32)\n    print(f\"✅ Received {actions.shape[0]} predicted actions.\")\n    \nexcept Exception as e:\n    print(f\"⚠️ Request failed: {e}\")\n    actions = np.zeros((30, 20), dtype=np.float32)\n```\n\n### 关键说明\n*   **控制空间**: 模型输出统一为 **EE6D** (末端执行器 6D) 格式，包含位置、6D 旋转表示及夹爪状态。\n*   **后处理**: 实际部署时，需将输出的 6D 旋转转换为欧拉角或四元数以适配底层控制器（参考官方 `rotate6d_to_xyz` 工具函数）。\n*   **模型选择**: 可根据具体机器人型号更换 `from_pretrained` 中的模型 ID（如 `2toINF\u002FX-VLA-Libero`, `2toINF\u002FX-VLA-Google-Robot` 等）。","某具身智能团队正致力于让一台人形机器人（AgiBot-G1）在未经过专门训练的陌生厨房环境中，根据语音指令完成“打开冰箱并取出饮料”的复杂操作。\n\n### 没有 X-VLA 时\n- **泛化能力弱**：机器人在仿真环境中训练的策略难以迁移到真实世界，一旦光照或物体位置微调，任务成功率便断崖式下跌。\n- **多机型适配难**：若需将算法部署到不同形态的机械臂上，必须重新收集数据并从头训练专用模型，研发周期长达数周。\n- **指令理解僵化**：传统模型仅能识别固定的命令关键词，无法理解“把那个蓝色的瓶子拿给我”这类包含指代和属性的自然语言描述。\n- **算力资源浪费**：为每个特定任务维护独立的模型权重，导致显存占用高企，边缘设备难以承载多任务切换。\n\n### 使用 X-VLA 后\n- **跨域泛化卓越**：借助软提示（Soft-Prompt）机制，X-VLA 将在大规模异构数据集上学到的通用策略无缝迁移至新场景，零样本下任务成功率显著提升。\n- **统一架构复用**：无需重新训练，仅需加载针对 AgiBot-G1 的微调检查点，同一套 Transformer 骨干网络即可适配多种机器人形态，部署时间缩短至小时级。\n- **自然语言交互流畅**：模型能精准解析复杂的视觉 - 语言指令，准确锁定目标物体并规划精细动作，真正实现了“所说即所得”。\n- **推理高效灵活**：采用服务端 - 客户端架构分离模型与环境依赖，支持在集群或边缘端分布式推理，大幅降低了多任务并发时的资源开销。\n\nX-VLA 通过统一的软提示架构打破了机器人具身数据的孤岛，让通用具身智能从“单点定制”迈向了“规模化落地”。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002F2toinf_X-VLA_da810a8f.png","2toinf","Jinliang Zheng","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002F2toinf_14331c5a.jpg",null,"Tsinghua University","China","https:\u002F\u002F2toinf.github.io\u002F","https:\u002F\u002Fgithub.com\u002F2toinf",[85,89,93,97,101,105,109,113],{"name":86,"color":87,"percentage":88},"C++","#f34b7d",59.4,{"name":90,"color":91,"percentage":92},"Python","#3572A5",22.1,{"name":94,"color":95,"percentage":96},"Common Lisp","#3fb68b",8.9,{"name":98,"color":99,"percentage":100},"C","#555555",4.9,{"name":102,"color":103,"percentage":104},"JavaScript","#f1e05a",3.2,{"name":106,"color":107,"percentage":108},"CMake","#DA3434",1.1,{"name":110,"color":111,"percentage":112},"EmberScript","#FFF4F3",0.3,{"name":114,"color":115,"percentage":116},"Shell","#89e051",0.1,583,50,"2026-04-05T18:03:04","Apache-2.0","未说明","必需 (基于 Server-Client 架构支持多 GPU\u002FSLURM 集群，日志显示运行在 cuda:0，暗示需要 NVIDIA GPU)",{"notes":124,"python":125,"dependencies":126},"1. 采用 Server-Client 架构部署，将模型环境与仿真\u002F机器人依赖分离以避免冲突。2. 必须安装 requirements.txt 或使用 environment.yml 创建名为 'xvla-stable' 的 Conda 环境。3. 加载模型时需设置 trust_remote_code=True。4. 统一使用 EE6D (末端执行器 6D) 控制空间，输出为 20 维向量。5. 部分模型转换为 Hugging Face 格式后可能存在约 1% 的性能下降。6. 支持 LoRA 微调适配器。","3.10",[127,128,129,130],"transformers","json_numpy","requests","numpy",[27,16,54],[133,134,135,136,137,138,139,140],"pretrained-models","robotics","vision-language-action-model","cloth-folding","florence-2","manipulation","robotics-dataset","vision-language-model","2026-03-27T02:49:30.150509","2026-04-11T16:56:21.789145",[144,149,154,159,164,169,173],{"id":145,"question_zh":146,"answer_zh":147,"source_url":148},22506,"如何为新环境微调 X-VLA 模型？应该收集什么样的数据？","建议针对您自己的环境收集更多数据。可以参考论文中提到的 DAgger 风格数据收集方法：重点关注当前策略的失败模式（而非完整的折叠序列），然后使用这些数据进行持续微调。具体的微调指南请参阅主 README 中的“训练\u002F微调自定义数据”部分。","https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA\u002Fissues\u002F42",{"id":150,"question_zh":151,"answer_zh":152,"source_url":153},22507,"在 CALVIN 基准测试中复现结果时，成功率偏低或分数不一致怎么办？","请检查以下几点以确保复现论文结果：\n1. 模型数据类型 (dtype)：在加载参数或运行推理前，确保模型 dtype 设置为 float32（已在最新的 config.json 和 deploy.py 中更新）。\n2. 评估设置：遵循最新上传的评估脚本，包括部署的动作块 (action chunk) 和开环本体感知读取 (open-loop proprioception reading)。\n注意：不同的评估环境（如 SLURM 与本地、Hugging Face 服务器与 deploy.py 启动的服务器）可能会导致分数在 4.30–4.43 之间波动。","https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA\u002Fissues\u002F20",{"id":155,"question_zh":156,"answer_zh":157,"source_url":158},22508,"X-VLA 的输出维度代表什么？如何将 LIBERO 动作转换为绝对末端执行器 (Abs EEF) 坐标？","X-VLA 输出 10 维绝对末端执行器 (EEF) 动作。要生成这些数据，请参考 Libero 预处理文档：https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA\u002Fblob\u002Fmain\u002Fevaluation\u002Flibero\u002Fpreprocess.md。\n关于代码逻辑：通常是通过在环境中重放原始动作（可能是增量 EEF 动作）来恢复对应的绝对 EEF 位置和方向。SimplerEnv 的代码库已发布修订版以支持此功能。","https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA\u002Fissues\u002F2",{"id":160,"question_zh":161,"answer_zh":162,"source_url":163},22509,"项目使用什么方法进行数据采集？主从机械臂还是遥操作？","数据采集主要依赖主从机械臂 (master-slave arm)。由于布料折叠需要密集的双手机械协调，单人通过遥操作非常困难。要达到专家级的控制水平，操作员通常需要 3 到 14 天的练习（取决于先前经验）。团队已公开数据集和硬件设置详情，可用作起点以减少数据采集工作量。","https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA\u002Fissues\u002F24",{"id":165,"question_zh":166,"answer_zh":167,"source_url":168},22510,"微调后评估轨迹每次都相同，即使物体位置不同，是什么原因？","这通常由以下两个原因导致：\n1. 数据加载问题：检查您的数据加载器 (dataloader)，确认它是否加载了所有的训练数据。\n2. 归一化问题：如果您使用的是增量控制 (delta control)，可能在部署时忘记了对动作进行反归一化 (denormalize) 处理。","https:\u002F\u002Fgithub.com\u002F2toinf\u002FX-VLA\u002Fissues\u002F66",{"id":170,"question_zh":171,"answer_zh":172,"source_url":148},22511,"Softfold 项目中使用的桌子高度和相机参数是多少？","关于硬件规格：水平视场角 (FOV) 约为 70 度。所使用的机械臂类似 AgileX 的 Astra 1 或 Astra 2 系列，具体参数建议咨询 AgileX 官方文档。如果部署后机械臂无法抓取物品，除了调整相机高度外，建议参考项目提供的标准表格高度或通过收集特定环境数据进行微调来解决。",{"id":174,"question_zh":175,"answer_zh":176,"source_url":163},22512,"是否有预训练的 Softfold 检查点和数据集可用？","是的，团队已在 Hugging Face 上发布了相关资源：\n- 数据集和硬件设置详情：https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002FFacebear\u002FXVLA-Soft-Fold\n- 折叠任务检查点：https:\u002F\u002Fhuggingface.co\u002F2toINF\u002FX-VLA-SoftFold\n建议使用这些资源作为起点，可以加快转移到您的机器人设置并减少所需的数据量。",[]]