mirror of
https://github.com/agentscope-ai/ReMe.git
synced 2026-10-08 03:10:24 +00:00
docs(readme): replace design philosophy text with visual diagram
- Replace textual design philosophy sections in README.md and README_ZH.md - Add centered SVG image displaying ReMe design philosophy - Include new design-philosophy.svg file with comprehensive visual overview - Maintain use cases section in collapsible details format - Update documentation structure for better visual representation - Preserve core content while improving presentation clarity
This commit is contained in:
parent
f5a98f40d3
commit
1581c27a8e
3 changed files with 104 additions and 21 deletions
10
README.md
10
README.md
|
|
@ -35,13 +35,9 @@
|
|||
- **Progressive hybrid search**: ReMe combines wikilinks, BM25, and embeddings for hybrid retrieval across keyword matching, semantic recall, and relationship expansion.
|
||||
- **Agent-friendly integration**: SKILL.md + CLI integration makes it easy for different agents to read, write, maintain, and reuse memory.
|
||||
|
||||
## 🧭 Design Philosophy
|
||||
|
||||
ReMe is built around three principles: store memory in readable and writable files, progressively abstract knowledge from raw materials into long-term memory, and organize knowledge with explicit links so agents can expand and reason over a relationship graph.
|
||||
|
||||
- **Foundation: Memory as File**. ReMe does not lock long-term memory inside a black-box database or implicit prompt. It uses Markdown, JSONL, YAML, and resource files as the memory substrate. Files are knowledge assets that users can inspect, edit, and migrate, and they are also an operational interface that agents can read, write, index, and link.
|
||||
- **Core: progressive knowledge abstraction**. Raw conversations and resources are first stored in `session/` and `resource/`. `auto_memory` and `auto_resource` process them into shallow memories under `daily/`, and `auto_dream` then extracts, merges, and corrects them into long-term knowledge under `digest/`. This is not a one-shot summary; it is continuous accumulation from raw material, to lightly processed memory, to deeper knowledge.
|
||||
- **Innovation: from semantic similarity to relationship graphs**. ReMe uses wikilinks to express explicit knowledge relationships, so memories no longer depend only on embedding-based semantic similarity. They can also represent structured relationships such as causality, upstream/downstream links, sources, dependencies, and competition. For example, in financial scenarios, companies, industries, commodities, and events can be connected into upstream, downstream, impact, and risk chains, allowing agents to expand context from one matched node through the graph.
|
||||
<p align="center">
|
||||
<img src="docs/figure/design-philosophy.svg" alt="ReMe Design Philosophy" width="92%">
|
||||
</p>
|
||||
|
||||
<details>
|
||||
<summary><b>Use Cases</b></summary>
|
||||
|
|
|
|||
18
README_ZH.md
18
README_ZH.md
|
|
@ -31,23 +31,13 @@
|
|||
## ✨ 核心创新
|
||||
|
||||
- **Memory as File**:以带 frontmatter 和 wikilink 的 Markdown 作为记忆节点,让用户和 Agent 都能直接读写。
|
||||
- **自进化知识库**:通过 Auto Memory、Auto Resource 和 Auto Dream,把对话与资料逐步加工为长期 Markdown
|
||||
记忆,并自动建立 wikilink 关系。
|
||||
- **自进化知识库**:通过 Auto Memory、Auto Resource 和 Auto Dream,把对话与资料逐步加工为长期 Markdown 记忆,并自动建立 wikilink 关系。
|
||||
- **渐进式混合搜索**:融合 wikilink、BM25 和 embedding,支持从关键词匹配到语义召回、关系扩展的混合检索。
|
||||
- **Agent 友好集成**:通过 SKILL.md + CLI 接入,方便不同 Agent 读写、维护与复用记忆。
|
||||
|
||||
## 🧭 设计理念
|
||||
|
||||
ReMe 的设计围绕三件事展开:把记忆落到可读写的文件中,把知识从原始材料渐进抽象为长期记忆,再用显式链接把知识组织成可供 Agent
|
||||
展开和推理的关系图。
|
||||
|
||||
- **基础:Memory as File**。ReMe 不把长期记忆锁在黑盒数据库或隐式 prompt 中,而是使用 Markdown、JSONL、YAML
|
||||
和资源文件承载记忆。文件既是用户可直接检查、修改和迁移的知识资产,也是 Agent 可读写、可索引、可链接的操作界面。
|
||||
- **核心:渐进式知识抽象**。原始对话和资料先保存在 `session/` 与 `resource/` 中,`auto_memory` 和 `auto_resource` 将它们加工为
|
||||
`daily/` 中的浅层记忆,再由 `auto_dream` 抽取、合并和修正为 `digest/` 中的长期知识。这个过程不是一次性总结,而是从原始材料到浅加工记忆、再到深加工知识的持续沉淀。
|
||||
- **创新:从语义相似到关系图谱**。ReMe 使用 wikilink 表达显式知识关系,让记忆之间不再只依赖 embedding
|
||||
的语义相似性,还能表达因果、上下游、来源、依赖、竞争等结构化关系。例如在金融场景中,可以把企业、行业、商品和事件连接成上游、下游、影响和风险链路,支持
|
||||
Agent 从一个命中节点沿图谱渐进展开上下文。
|
||||
<p align="center">
|
||||
<img src="docs/figure/design-philosophy.svg" alt="ReMe 设计理念" width="92%">
|
||||
</p>
|
||||
|
||||
<details>
|
||||
<summary><b>适用场景</b></summary>
|
||||
|
|
|
|||
97
docs/figure/design-philosophy.svg
Normal file
97
docs/figure/design-philosophy.svg
Normal file
|
|
@ -0,0 +1,97 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="520" viewBox="0 0 1200 520" role="img" aria-labelledby="title desc">
|
||||
<title id="title">ReMe design philosophy</title>
|
||||
<desc id="desc">A simple diagram showing ReMe's design philosophy: file-native memory, progressive abstraction, and explicit relationship graph for agents.</desc>
|
||||
<defs>
|
||||
<style>
|
||||
.bg { fill: #f7f8fb; }
|
||||
.title { font: 700 30px -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; fill: #172033; }
|
||||
.subtitle { font: 14px -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; fill: #607086; }
|
||||
.panel { fill: #ffffff; stroke: #d8dee8; stroke-width: 1.2; }
|
||||
.panel-blue { fill: #eef7ff; stroke: #bfd8f2; stroke-width: 1.2; }
|
||||
.panel-green { fill: #effaf4; stroke: #bfdcc9; stroke-width: 1.2; }
|
||||
.panel-yellow { fill: #fff7e5; stroke: #ead59a; stroke-width: 1.2; }
|
||||
.label { font: 700 18px -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; fill: #172033; }
|
||||
.small { font: 13px -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; fill: #607086; }
|
||||
.tiny { font: 12px -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; fill: #66758a; }
|
||||
.chip { fill: #ffffff; stroke: #dfe5ee; stroke-width: 1; }
|
||||
.chip-text { font: 700 13px -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; fill: #334155; }
|
||||
.arrow { stroke: #8996aa; stroke-width: 2.2; fill: none; marker-end: url(#arrow); }
|
||||
.soft-arrow { stroke: #a8b2c2; stroke-width: 1.8; fill: none; stroke-dasharray: 6 6; marker-end: url(#arrow-soft); }
|
||||
.node { fill: #ffffff; stroke: #64748b; stroke-width: 1.7; }
|
||||
.link { stroke: #93a0b2; stroke-width: 1.5; fill: none; }
|
||||
.file-line { stroke: #c9d3df; stroke-width: 1.4; }
|
||||
</style>
|
||||
<marker id="arrow" markerWidth="10" markerHeight="10" refX="8" refY="3" orient="auto" markerUnits="strokeWidth">
|
||||
<path d="M0,0 L0,6 L8,3 z" fill="#8996aa"/>
|
||||
</marker>
|
||||
<marker id="arrow-soft" markerWidth="10" markerHeight="10" refX="8" refY="3" orient="auto" markerUnits="strokeWidth">
|
||||
<path d="M0,0 L0,6 L8,3 z" fill="#a8b2c2"/>
|
||||
</marker>
|
||||
</defs>
|
||||
|
||||
<rect class="bg" x="0" y="0" width="1200" height="520"/>
|
||||
<text class="title" x="600" y="54" text-anchor="middle">ReMe Design Philosophy</text>
|
||||
<text class="subtitle" x="600" y="80" text-anchor="middle">File-native memory, progressive abstraction, and explicit links for reusable agent context.</text>
|
||||
|
||||
<rect class="panel-blue" x="64" y="134" width="304" height="220" rx="14"/>
|
||||
<text class="label" x="216" y="170" text-anchor="middle">Foundation: Memory as File</text>
|
||||
<text class="small" x="216" y="196" text-anchor="middle">Readable, editable knowledge assets</text>
|
||||
<g transform="translate(126 224)">
|
||||
<rect class="panel" x="0" y="0" width="120" height="82" rx="8"/>
|
||||
<path class="file-line" d="M22 26 H98"/>
|
||||
<path class="file-line" d="M22 43 H86"/>
|
||||
<path class="file-line" d="M22 60 H72"/>
|
||||
<rect class="chip" x="136" y="6" width="96" height="28" rx="8"/>
|
||||
<text class="chip-text" x="184" y="25" text-anchor="middle">Markdown</text>
|
||||
<rect class="chip" x="136" y="48" width="96" height="28" rx="8"/>
|
||||
<text class="chip-text" x="184" y="67" text-anchor="middle">YAML/JSONL</text>
|
||||
</g>
|
||||
<text class="tiny" x="216" y="332" text-anchor="middle">Human-readable. Agent-operable.</text>
|
||||
|
||||
<rect class="panel-yellow" x="448" y="134" width="304" height="220" rx="14"/>
|
||||
<text class="label" x="600" y="170" text-anchor="middle">Core: Progressive Abstraction</text>
|
||||
<text class="small" x="600" y="196" text-anchor="middle">From raw material to durable memory</text>
|
||||
<g transform="translate(472 235)">
|
||||
<rect class="chip" x="0" y="0" width="66" height="42" rx="10"/>
|
||||
<text class="chip-text" x="33" y="26" text-anchor="middle">Raw</text>
|
||||
<rect class="chip" x="95" y="0" width="66" height="42" rx="10"/>
|
||||
<text class="chip-text" x="128" y="26" text-anchor="middle">Daily</text>
|
||||
<rect class="chip" x="190" y="0" width="66" height="42" rx="10"/>
|
||||
<text class="chip-text" x="223" y="26" text-anchor="middle">Digest</text>
|
||||
<path class="arrow" d="M68 21 H89"/>
|
||||
<path class="arrow" d="M163 21 H184"/>
|
||||
</g>
|
||||
<text class="tiny" x="600" y="310" text-anchor="middle">session/ + resource/ -> daily/ -> digest/</text>
|
||||
<text class="tiny" x="600" y="332" text-anchor="middle">Continuous consolidation, not one-shot summary.</text>
|
||||
|
||||
<rect class="panel-green" x="832" y="134" width="304" height="220" rx="14"/>
|
||||
<text class="label" x="984" y="170" text-anchor="middle">Innovation: Link Graph</text>
|
||||
<text class="small" x="984" y="196" text-anchor="middle">Explicit links expand context</text>
|
||||
<g transform="translate(930 207) scale(0.74)">
|
||||
<path class="link" d="M74 40 L26 90"/>
|
||||
<path class="link" d="M74 40 L130 84"/>
|
||||
<path class="link" d="M26 90 L130 84"/>
|
||||
<path class="link" d="M74 40 L152 26"/>
|
||||
<circle class="node" cx="74" cy="40" r="24"/>
|
||||
<circle class="node" cx="26" cy="90" r="20"/>
|
||||
<circle class="node" cx="130" cy="84" r="20"/>
|
||||
<circle class="node" cx="152" cy="26" r="18"/>
|
||||
<text class="chip-text" x="74" y="38" text-anchor="middle">[[ ]]</text>
|
||||
<text class="tiny" x="74" y="55" text-anchor="middle">Node</text>
|
||||
<text class="tiny" x="26" y="95" text-anchor="middle">Src</text>
|
||||
<text class="tiny" x="130" y="89" text-anchor="middle">Risk</text>
|
||||
<text class="tiny" x="152" y="31" text-anchor="middle">Dep</text>
|
||||
</g>
|
||||
<text class="tiny" x="984" y="318" text-anchor="middle">Beyond similarity: source, cause, dependency, risk.</text>
|
||||
<text class="tiny" x="984" y="338" text-anchor="middle">Wikilinks guide expansion across nodes.</text>
|
||||
|
||||
<path class="arrow" d="M368 244 H448"/>
|
||||
<path class="arrow" d="M752 244 H832"/>
|
||||
|
||||
<rect class="panel" x="220" y="414" width="760" height="56" rx="14"/>
|
||||
<text class="small" x="600" y="438" text-anchor="middle">One shared file tree acts as both memory store and operating surface.</text>
|
||||
<text class="chip-text" x="600" y="460" text-anchor="middle">capture -> refine -> link -> retrieve -> expand</text>
|
||||
<path class="soft-arrow" d="M216 354 C216 392 428 392 454 414"/>
|
||||
<path class="soft-arrow" d="M600 354 V414"/>
|
||||
<path class="soft-arrow" d="M984 354 C984 392 772 392 746 414"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 6.2 KiB |
Loading…
Add table
Reference in a new issue