# oneskills **Repository Path**: onescience-ai/oneskills ## Basic Information - **Project Name**: oneskills - **Description**: onescience dev skills and knowledge - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-24 - **Last Updated**: 2026-04-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #
oneskills
###
OneSkills 是基于 OneScience 构建的一个开源知识与 Skills(能力)库,旨在为智能体(Agents)开发提供可复用、可组合、可扩展的能力模块,优化多种智能体AI4S领域代码生成效果。 > 🚀 OneSkills = Knowledge × Skills × Agents > ## 📖 项目简介 在智能体时代,单一模型能力已无法满足复杂任务需求。OneSkills 提供: - 📚 **结构化知识库(Knowledge Units)** - 🧠 **可执行能力模块(Skills)** - 🔗 **面向智能体的标准接口(Agent-ready APIs)** 帮助开发者更好的使用具备专业能力的智能体系统。 ## 🔗 与 OneScience 的关系 - **OneScience**:科学知识与智能体基础框架。用于代码运行环境。 - **OneSkills**:能力层(Skills & Knowledge),基于OneScience构建,用户开发环境。 ## 🎯 设计目标 - **模块化(Modular)**:每个 模块可独立开发、测试和复用; - **标准化(Standardized)**:统一 Skill 接口与描述规范; - **可组合(Composable)**:支持多个 Skills 组合形成复杂能力; - **领域扩展(Domain Scalable)**:覆盖气象、生信、材料、流体等多领域; - **AI 原生(AI-native)**:专为 LLM / Agent 设计; ## ⚙️ 快速开始 1. ### 安装 oneskills 是嵌入在当前项目开发环境中的支持工具。在已有项目目录或者新建一个项目目录,例如 mymodel. ```shell cd mymodel git clone https://github.com/onescience-ai/oneskills.git #若有必要 # git clone https://github.com/onescience-ai/OneScience.git ``` oneskills项目,用于赋能智能体开发,所以需要在开发环境中集成相关智能体,例如Claude code/ Trae等。详细见操作手册。 ### 2. 使用一个 Skill ​ 如下使用trae/task/react_prompt.md 中的skill: ``` 基于./oneskills/trae/task/react_prompt.md中的工作流执行以下任务: 将Pangu-Weather模型中的Swin-Transformer Fuser模块替换为FourCastNet的AFNO(Adaptive Fourier Neural Operator)模块,并将改造完成的完整模型代码保存至当前项目hybrid_pangu_fourcastnet.py文件中。 ``` 将上述的prompt复制到Trae的对话框中,点击执行按钮,即可开始执行任务。 执行完成后,将在当前项目下生成hybrid_pangu_fourcastnet.py文件。 ### 3. 开发一个 Skill 当标准技能无法满足您的需求时,您可以创建自定义技能来扩展 onescience 框架的能力。 自定义技能文件可以放在当前项目目录下(对目录没有强制要求),技能文件内容通常包括以下部分: - 名称(Name) - 描述(Description) - 输入输出定义 - 实现逻辑(代码或调用接口) 以气象模型组合适配的场景为例,编写skills并展示使用过程。 ``` --- name: model_adapter description: 通用气象AI模型组合适配器,用于统一不同模型模块的维度、变量和网格,支持模块组合、替换和特征融合。 tags: - 气象AI - 模型组合 - 适配器 --- # 气象AI模型组合适配器 ## 1. 技能目标 提供一种通用方式,将不同气象AI模型(如 Fuxi、Pangu、FourCastNet、GraphCast)模块进行组合。核心目标: - **维度适配**:统一各模型输入/输出张量维度、变量集合、时间和空间结构。 - **模块连接**:通过可插拔适配器实现异构模块无缝组合。 - **保形与保真**:确保数值稳定性、可微分性及计算效率。 ## 2. 适用场景 - 异构编码器-适配器-解码器组合(如 Fuxi 编码器 + 适配器 + Pangu 解码器)。 - 模块替换(如 FourCastNet 的 AFNO 层替换为 Pangu 的 3D Swin Transformer)。 - 多模型特征融合和预训练模型拼接。 ## 3. 输入与输出 | 参数 | 类型 | 描述 | |------|------|------| | 输入张量 | torch.Tensor | 待组合模块的输出,包含 `(B, T, V, H, W)` 或类似布局 | | 输出张量 | torch.Tensor | 适配器处理后的张量,可直接作为下游模块输入 | ## 4. 通用适配流程 1. **接口分析**:提取输入/输出维度、变量、时间/空间结构及归一化参数。 2. **维度对齐**: - 变量差异 → 特征投影(`nn.Linear` 或 `1x1 Conv`) - 空间网格差异 → 插值(`grid_sample` / `xarray interp`) - 时间步差异 → 重塑或聚合 - 张量顺序不同 → 使用 `einops.rearrange` 或 `torch.permute` 3. **适配器设计**: - 独立 `nn.Module`,支持梯度回传 - 可选可学习参数,用于优化变量映射 - 内部记录每一步变换,便于调试 4. **验证与测试**: - 输出形状检查 - 数值范围检查 - 单元和集成测试(前向传播无误) ## 5. 各模型典型特征 - **Fuxi**:高斯网格 `(H=721, W=1440)`,约 70 个变量。 - **Pangu**:高空+地面变量,使用高斯网格,变量布局略不同。 - **FourCastNet**:规则网格 `(H=720, W=1440)`,20 个变量,无显式垂直维。 - **GraphCast**:基于 GNN,均匀经纬网格,垂直层 L=37。 > 适配要点:统一空间网格、变量维度、张量顺序,并根据目标模块位置编码要求调整。 ## 6. 输出内容 - **接口分析表**:模块名称、输入/输出形状、变量列表、网格类型。 - **适配流程图**:展示数据流、适配器位置和操作。 - **验证清单**:形状检查点、数值测试和单元测试建议。 ``` 如上完成了 ./self_skills/earth_skill.md,下面我们在下述任务中使用该skills ``` 基于 ./oneskills/trae/task/react_prompt.md 中定义的工作流执行以下任务: ## 任务目标 对 Pangu-Weather 模型进行结构改造,将其中的 Swin-Transformer Fuser 模块替换为 FourCastNet 中的 AFNO(Adaptive Fourier Neural Operator)模块,并生成完整模型实现代码。 ## 执行约束 - 必须加载并使用 ./self_skills/earth_skill.md 中定义的技能,以辅助模型结构理解、气象数据处理或模块实现 ``` 和使用skill一样,将上述prompt提交到Trae对话框中,即可提交运行 ## 🌍 应用场景 - 📊 数据分析助手 - 🧑‍💻 开发辅助 Agent - 🧠 AI Copilot 系统 ## 🤝 社区 欢迎加入我们一起构建 AI-native 能力生态: - 提交 Issue - 发起 PR - 分享你的 Skill ------ ## ⭐ Star History 如果这个项目对你有帮助,欢迎 ⭐️ 支持!