Project report / GitHub evidence

CoML (原 MLCopilot): 交互式 ML 编程助手

这是可索引项目报告证据页:它保留 CoML (原 MLCopilot): 交互式 ML 编程助手 的源材料入口、机制线索和限制提醒;正文仍需 reader/editor 与 academic public-copy review 后才能当作最终结论引用。

CoML (原 MLCopilot): 交互式 ML 编程助手

基本信息

字段内容
GitHubhttps://github.com/microsoft/CoML
开发者Microsoft Research
论文MLCopilot: Unleashing the Power of Large Language Models in Machine Learning (arXiv: 2304.14979)
技术栈Python, OpenAI GPT-3.5-turbo-16k, Jupyter Lab/Notebook, TypeScript
许可证MIT
安装pip install mlcopilot

项目简介

CoML (原 MLCopilot) 是微软研究院开发的交互式 ML 编程助手,通过 LLM 帮助数据科学家在 Jupyter 环境中编写、修复和优化 ML 代码。

核心功能:

  1. 自然语言编程:用自然语言描述任务,自动生成代码
  2. 代码修复%comlfix 自动修复错误
  3. 灵感建议%comlinspire 推荐下一步操作
  4. 配置建议:Config Agent 为新任务推荐 ML 超参数配置

目录结构

CoML/
├── coml/
│   ├── __init__.py
│   ├── configagent/        # Config Agent(MLCopilot 核心)
│   │   ├── suggest.py      # 配置推荐引擎
│   │   ├── knowledge/      # ML 知识库
│   │   └── ...
│   ├── magic.py            # Jupyter Magic 命令
│   └── ...
├── assets/
│   └── coml.db             # ML 知识库数据库
├── src/                    # Jupyter 扩展前端 (TypeScript)
├── test/                   # 测试
├── examples/               # 示例脚本
├── package.json            # Jupyter 扩展包
├── pyproject.toml          # Python 包配置
└── tsconfig.json           # TypeScript 配置

核心模块分析

1. 知识库驱动的配置推荐

Config Agent 是 CoML 的核心创新,实现了基于知识库的 ML 配置迁移

输入: 任务描述 + 搜索空间

知识库检索: 找到最相似的历史任务

LLM 推理: 基于历史配置生成新配置建议

输出: 推荐的 ML 配置 + 置信度

知识库结构coml.db):

2. Jupyter Magic 命令

CoML 提供三个核心 Jupyter Magic:

# 1. 生成代码
%coml 对香蕉质量数据集进行分类

# 2. 修复错误
%comlfix  # 自动修复上一个 cell 的错误
%comlfix 分割数据时列数不匹配

# 3. 灵感建议
%comlinspire  # 推荐下一步操作

3. Prompt 工程模式

Config Agent Prompt

from coml.configagent.suggest import suggest

space = import_space("YOUR_SPACE_ID")  # 导入搜索空间
task_desc = "YOUR_TASK_DESCRIPTION"     # 新任务描述
suggest_configs, knowledge = suggest(space, task_desc)

模式

4. 评估框架

技术亮点

  1. 知识库驱动:ML 知识的持续积累和迁移
  2. Jupyter 原生集成:无缝融入数据科学家工作流
  3. 三合一交互:代码生成 + 修复 + 灵感建议
  4. 配置迁移:将历史 ML 经验迁移到新任务
  5. 微软出品:工业级质量

与 Self-Evolve 关联

维度CoML 贡献
知识积累ML 知识库的持续积累和迁移机制可参考
交互式Jupyter 原生集成的交互模式
配置优化基于历史经验的配置推荐,是一种经验驱动的自我改进
启示”知识库 + LLM 推理” 的模式适用于 Agent 系统的经验积累

参考资料

GitNexus 深度架构分析