Files
ai-agent-book/book-ta/images/fig3-3.svg
T
liqiang b119135836
Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
ai-agent-book 精选快照(<2MB 代码与文档,来自 github.com/bojieli/ai-agent-book)
2026-08-20 13:12:50 +00:00

62 lines
3.9 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 920 340" width="920" height="340" style="background:#ffffff">
<defs>
<marker id="arrow" markerWidth="10" markerHeight="8" refX="10" refY="4" orient="auto">
<polygon points="0 0, 10 4, 0 8" fill="#555"/>
</marker>
<style>
text { font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif; fill: #333; }
.title { font-size: 18px; font-weight: 700; }
.label { font-size: 15px; font-weight: 700; }
.detail { font-size: 13px; fill: #666; }
.box { fill: #f4f4f4; stroke: #555; stroke-width: 1.6; }
.new { fill: #e8f3ec; stroke: #39734f; }
.flow { stroke: #555; stroke-width: 1.8; marker-end: url(#arrow); }
</style>
</defs>
<text x="28" y="32" class="title">v2 (2025 paper)</text>
<rect x="28" y="50" width="125" height="58" rx="6" class="box"/>
<text x="90" y="84" text-anchor="middle" class="label">Dialogue</text>
<line x1="153" y1="79" x2="180" y2="79" class="flow"/>
<rect x="180" y="50" width="135" height="58" rx="6" class="box"/>
<text x="248" y="76" text-anchor="middle" class="label">LLM extract</text>
<text x="248" y="96" text-anchor="middle" class="detail">candidate facts</text>
<line x1="315" y1="79" x2="342" y2="79" class="flow"/>
<rect x="342" y="50" width="135" height="58" rx="6" class="box"/>
<text x="410" y="76" text-anchor="middle" class="label">Vector search</text>
<text x="410" y="96" text-anchor="middle" class="detail">existing memory</text>
<line x1="477" y1="79" x2="504" y2="79" class="flow"/>
<rect x="504" y="50" width="135" height="58" rx="6" class="box"/>
<text x="572" y="76" text-anchor="middle" class="label">LLM decide</text>
<text x="572" y="96" text-anchor="middle" class="detail">compare facts</text>
<line x1="639" y1="79" x2="666" y2="79" class="flow"/>
<rect x="666" y="50" width="226" height="58" rx="6" class="box"/>
<text x="779" y="76" text-anchor="middle" class="label">ADD · UPDATE</text>
<text x="779" y="98" text-anchor="middle" class="label">DELETE · NOOP</text>
<text x="460" y="133" text-anchor="middle" class="detail">Conflicts resolved at write time; old facts may be overwritten or deleted</text>
<line x1="28" y1="158" x2="892" y2="158" stroke="#bbb" stroke-width="1"/>
<text x="28" y="194" class="title">v3 (April 2026)</text>
<rect x="28" y="212" width="125" height="58" rx="6" class="box new"/>
<text x="90" y="246" text-anchor="middle" class="label">Dialogue</text>
<line x1="153" y1="241" x2="180" y2="241" class="flow"/>
<rect x="180" y="212" width="150" height="58" rx="6" class="box new"/>
<text x="255" y="238" text-anchor="middle" class="label">1× LLM extract</text>
<text x="255" y="258" text-anchor="middle" class="detail">single pass</text>
<line x1="330" y1="241" x2="357" y2="241" class="flow"/>
<rect x="357" y="212" width="150" height="58" rx="6" class="box new"/>
<text x="432" y="238" text-anchor="middle" class="label">ADD-only store</text>
<text x="432" y="258" text-anchor="middle" class="detail">preserve history</text>
<line x1="507" y1="241" x2="534" y2="241" class="flow"/>
<rect x="534" y="212" width="218" height="58" rx="6" class="box new"/>
<text x="643" y="236" text-anchor="middle" class="label">Hybrid retrieval</text>
<text x="643" y="258" text-anchor="middle" class="detail">semantic · BM25 · entity · time</text>
<line x1="752" y1="241" x2="779" y2="241" class="flow"/>
<rect x="779" y="212" width="113" height="58" rx="6" class="box new"/>
<text x="835" y="238" text-anchor="middle" class="label">Top-k</text>
<text x="835" y="258" text-anchor="middle" class="detail">ranked facts</text>
<text x="460" y="299" text-anchor="middle" class="detail">LoCoMo 71.4 → 92.5 (+21.1) · LongMemEval 67.8 → 94.4 (+26.6)</text>
<text x="460" y="323" text-anchor="middle" class="detail">History is preserved; relevance and time resolve conflicts during retrieval</text>
</svg>