Skip to content

Repository files navigation

Kope-Mem

AscendC 算子优化记忆框架。基于 ReMe,为 AscendOpGenAgent 提供双轨记忆管理能力。

架构理念

┌──────────────────────────────────────────┐
│              Kope-Mem CLI                │
│  journal / case / search / compact / ... │
└────────────┬─────────────┬───────────────┘
             │             │
             ▼             ▼
┌─────────────────┐  ┌─────────────────────┐
│  自定义记忆层     │  │  ReMe 引擎层(底座)  │
│                 │  │                     │
│  Journal 轨     │  │  MEMORY.md          │
│  Case 轨        │  │  memory/ (每日摘要)  │
│  Pattern 库     │  │  dialog/ (原始对话)  │
│  Baseline 基线   │  │  tool_result/ (缓存) │
│                 │  │                     │
│  面向:人类+Agent│  │  能力:压缩+检索+摘要 │
└─────────────────┘  └─────────────────────┘

双轨记忆

轨道 形态 面向 用途
Journal Markdown 叙事日志 人类开发者 + LLM Agent 快速理解优化历程、注入上下文
Case JSON 结构化记录(ThoughtKernelCase) 数据分析 / SFT 训练 / 模式挖掘 精确查询、链路分析、语料生成

两轨独立演进,互不派生。Agent 可以只写 Journal、只写 Case、或两者都写。

安装

cd kope-mem

# 安装核心依赖
uv sync

# 如需 ReMe 能力(compact / search)
uv sync --extra reme

快速开始

uv run kope-mem --help

# Journal 轨:追加一条迭代日志
uv run kope-mem journal add \
  --operator LeakyReLU \
  --iteration 1 \
  --strategy "核心分核优化" \
  --change "扩展至 40 核均匀分配" \
  --tflops 1.25 --utilization 90 \
  --status pass \
  --insight "核利用率从 40% 提升至 90%"

# Case 轨:结构化记录一条优化经验
uv run kope-mem case append \
  --operator LeakyReLU \
  --thought-id leaky_core_partitioning \
  --thought-title "LeakyReLU 核心分核优化" \
  --thought-desc "使用全部 40 个核均匀分配数据" \
  --thought-reason "原始实现仅用 16 核,并行度不足" \
  --opt-layer core_partition \
  --step-improvement 1.25 \
  --label effective \
  --session-id sess_LeakyReLU_20260427_01 \
  --step-index 1 \
  --dtype float32 \
  --shape-signature "N=1048576"

# 查看 Journal
uv run kope-mem journal show --operator LeakyReLU --latest 5

# 查看 Case
uv run kope-mem case show --case-id case_LeakyReLU_sess_20260427_01_1

# 按条件搜索 Case
uv run kope-mem case list --operator LeakyReLU --label effective

# 重建优化链路
uv run kope-mem case chain --session-id sess_LeakyReLU_20260427_01

命令参考

命令 说明
journal add 追加一条 Markdown 迭代日志
journal show 查看算子日志
case add 从 JSON 文件导入 Case
case append 扁平参数快速追加 Case
case show 查看指定 Case
case list 按条件过滤 Case
case validate 校验 Case JSON 合法性
case chain 按 session 重建优化链路
compact 压缩对话上下文(需 ReMe)
search 语义检索(需 ReMe)
watch 文件监听守护
baseline add/show/compare 性能基线管理
pattern add/list 优化模式库管理

目录结构

kope-mem/
├── pyproject.toml              # 项目配置 + 依赖
├── thoughts_case_schema.json   # Case 数据格式权威定义
├── skills/opt_memory/          # 核心代码
│   ├── cli.py                  # Cyclopts CLI 入口
│   ├── common.py               # ReMeLight 初始化 + 路径工具
│   ├── journal.py              # Journal 轨
│   ├── case_manager.py         # Case 轨
│   ├── baseline.py             # 基线管理
│   ├── compact.py              # ReMe 压缩封装
│   ├── search.py               # ReMe 检索封装
│   ├── watch.py                # 文件监听
│   └── templates/              # 输出模板
├── agents/shared/              # Agent 约定文档
│   └── _opt_memory_convention.md
├── tests/                      # 测试
└── opt_memory/                 # 运行时数据(gitignore)
    ├── MEMORY.md               # ReMe 长期记忆
    ├── memory/                 # ReMe 每日摘要
    ├── dialog/                 # ReMe 原始对话
    ├── tool_result/            # ReMe 工具输出缓存
    ├── operators/{op}/         # Journal + Case
    │   ├── YYYY-MM-DD.md
    │   └── cases/
    ├── patterns/               # 优化模式库
    └── baselines/              # 性能基线

环境变量

配置 .env 文件(ReMe LLM 调用所需):

LLM_API_KEY=sk-xxx
LLM_BASE_URL=https://api.xxx.com
EMBEDDING_API_KEY=sk-xxx
EMBEDDING_BASE_URL=https://api.xxx.com

与 AscendOpGenAgent 集成

Agent 通过 SKILL.md 和约定文档使用 Kope-Mem:

  1. skills/opt_memory/ 放入 AscendOpGenAgent 的 skills/ 目录
  2. 在 Agent 的 AGENTS.md 中引用共享约定
  3. Agent 在优化循环中通过 bash 调用 uv run kope-mem 命令

详见 agents/shared/_opt_memory_convention.mdskills/opt_memory/SKILL.md

License

MIT

About

Memory Organization for Kernel Optimization via Evolution

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages