Auto-sync: 2026-04-16 13:01

This commit is contained in:
2026-04-16 13:01:38 +08:00
parent c0571d778c
commit b2250c60b2
59 changed files with 1288 additions and 2670 deletions

View File

@@ -0,0 +1,37 @@
---
title: "Telegram Webhook"
type: concept
tags: [telegram, webhook, bot, integration]
---
## 定义
Telegram Webhook 是一种服务端回调机制Telegram 服务器在用户发送消息后,将 HTTP POST 请求推送至用户配置的公网 HTTPS URL。
## 工作原理
1. 在 Telegram BotFather 创建机器人,获得 Bot Token
2. 向 Telegram API 设置 Webhook URL`https://api.telegram.org/bot<TOKEN>/setWebhook?url=https://your-domain.com/webhook`
3. 用户发送消息 → Telegram → POST 到配置的 URL
4. 服务端处理请求,可返回响应消息
## 核心约束
- **必须使用 HTTPS**Telegram 强制要求,不支持 HTTP 或自签名证书
- **公网可达**Telegram 服务器必须能访问该 URL
- **响应时间限制**Telegram 要求 5 秒内响应,否则视为失败
## n8n 集成
- [[n8n]] Telegram Trigger 节点自动处理 Webhook 订阅
- 常见错误:`Bad Request: bad webhook: An HTTPS URL must be provided for webhook`
- 解决方案:设置 [[WEBHOOK_URL]] 环境变量为公网 HTTPS 地址
- 参见 [[n8n-Telegram-Trigger-HTTPS配置修复]]
## 与 Polling 对比
| 特性 | Webhook | Polling |
|------|---------|---------|
| 实时性 | 立即推送 | 轮询间隔决定 |
| 服务器负载 | 低 | 高(持续请求) |
| 需要公网 | 是 | 否 |
| 部署复杂度 | 高(需要 HTTPS | 低 |
## 相关
- [[Telegram]]: 即时通讯平台
- [[WEBHOOK_URL]]: n8n 环境变量

View File

@@ -0,0 +1,29 @@
---
title: "WEBHOOK_URL"
type: concept
tags: [n8n, environment-variable, webhook, self-hosted]
---
## 定义
`WEBHOOK_URL` 是 [[n8n]] 的环境变量,用于指定 n8n 实例的公网可访问 HTTPS 地址。
## 作用
- 通知 n8n 使用指定的 HTTPS URL 生成 Webhook URL
- Telegram / Discord / Slack 等平台要求 Webhook 必须为 HTTPS
- 自托管 n8n 通过内网穿透cpolar/FRP暴露时必须设置此变量
## 配置示例
```bash
# Docker Compose
environment:
- WEBHOOK_URL=https://n8n.ishenwei.online/
```
## 常见错误
- Telegram Trigger: `Bad Request: bad webhook: An HTTPS URL must be provided for webhook`
- 原因:`WEBHOOK_URL` 未设置或设置为 HTTP 地址
- 解决:设置为公网 HTTPS 地址
## 相关
- [[n8n-Telegram-Trigger-HTTPS配置修复]]
- [[Telegram Webhook]]

View File

@@ -0,0 +1,35 @@
---
title: "任务-笔记一体化"
type: concept
tags: [obsidian, 任务管理, 笔记方法论]
sources: ["Obsidian Tasks 插件:最适合懒人的任务管理方式"]
last_updated: 2026-04-16
---
## Definition
任务与笔记不是分离的两个系统,而是同一信息在不同维度的呈现——任务是需要行动的笔记片段,笔记是附带上下文的任务容器。
## Core Insight
传统工具Notion/Todoist将"任务"与"笔记"强制分离:任务在 Todoist笔记在 Notion两者来回切换产生认知摩擦。
任务-笔记一体化后:
- 任务天然携带上下文(研究某个主题的待办 → 直接在主题笔记里)
- 任务查询在笔记阅读时自然浮现(在同一界面)
- 复盘时任务与笔记内容同屏对照
## Implementation
- **工具层**Obsidian Tasks 插件(`- [ ]` 语法 → 全局索引 → 条件筛选)
- **工作流层**:不再区分"开 Todoist 记录任务"和"开 Obsidian 记笔记"
- **思维层**:任务本质是"带截止日期和优先级的笔记段落"
## Related Concepts
- [[深度工作]]:工具切换减少 → 认知负担降低 → 深度工作能力提升
- [[知识管理]]:笔记是积累,任务是执行,一体化打通从知识到行动的闭环
## Related Entities
- [[Obsidian Tasks]]:实现工具
- [[Obsidian]]:宿主平台
- [[Dataview]]:同生态数据索引插件
## Sources
- [[Obsidian Tasks 插件:最适合懒人的任务管理方式]]

View File

@@ -0,0 +1,29 @@
---
id: task-auto-aggregation
title: 任务自动聚合
type: concept
tags: [任务管理, 笔记管理]
sources: ["Dataview——让我从笔记黑洞里逃出来的Obsidian神器.md"]
last_updated: 2026-04-16
---
## Definition
任务自动聚合 是指将散落在多个笔记文件中的待办事项TODO自动收集到单一视图的能力解决"任务分散导致遗漏"的问题。
## Problem Solved
- 痛点:待办事项写在各处笔记,月底无法追踪完成情况
- 解决:自动扫描所有笔记,聚合所有 `- [ ]` 任务到统一视图
## Mechanism
1. 扫描指定文件夹下所有 `.md` 文件
2. 提取每个文件的待办任务(`- [ ]` 格式)
3. 按日期/项目/状态分类汇总
4. 渲染为统一的任务看板视图
## Tool Example
- [[Dataview]]`TASK FROM "" WHERE !completed` 查询所有未完成任务
## Connections
- [[Dataview]] ← 实现工具
- [[笔记数据库]] ← 所属范畴(任务即结构化元数据的一种)
- [[Agentic-AI]] ← 相关Agent 也需要理解任务状态并聚合执行)

View File

@@ -0,0 +1,24 @@
---
id: writing-metrics
title: 写作量统计
type: concept
tags: [笔记管理, 量化分析]
sources: ["Dataview——让我从笔记黑洞里逃出来的Obsidian神器.md"]
last_updated: 2026-04-16
---
## Definition
写作量统计 是指量化记录每日/每周/每月的笔记产出(篇数、字数、字符数),帮助写作者追踪写作习惯和进度。
## Metrics Tracked
- **篇数**:新建笔记数量
- **字数**:每日/每周/每月总字符数
- **任务完成数**:已完成的待办事项数量
- **标签分布**:各主题标签下的笔记数量
## Tool Example
- [[Dataview]]:通过 `file.ctime`(创建时间)和 `length(file.text)`(文本长度)实现统计
## Connections
- [[Dataview]] ← 实现工具
- [[笔记数据库]] ← 所属范畴

View File

@@ -0,0 +1,36 @@
---
id: vector-search
title: 向量检索
type: concept
tags: [信息检索, 向量数据库]
sources: ["RAG从入门到精通系列1基础RAG.md"]
last_updated: 2026-04-16
---
## Definition
向量检索Vector Search / Similarity Search是根据语义相似度在向量数据库中检索相关文档的技术核心是比较查询向量与文档向量的"距离"(余弦相似度),而非字面匹配。
## Mechanism
1. Query 通过 [[Embedding]] 模型转为固定长度向量
2. 在 [[向量数据库]](如 [[Qdrant]])中按余弦相似度检索 Top-K 最接近的向量
3. 返回对应的文档块作为 [[RAG]] 的 Context
## Key Parameters
- **Top-K**:返回最相似的 K 个结果K=3~10 常见)
- **相似度阈值**:过滤低于某分数的结果
- **Reranking**:初筛后用更大模型重新排序(如 BGE-Reranker
## Connections
- [[RAG]] ← 核心阶段Retrieval 阶段的具体技术)
- [[Qdrant]] ← 存储层
- [[Embedding]] ← 依赖Query 和文档均需向量化)
- [[语义搜索]] ← 同类技术(前者基于向量,后者可结合 BM25/关键词)
- [[混合搜索]] ← 扩展(向量检索 + BM25 关键词检索融合排序)
## Advantage over Keyword Search
| 维度 | 关键词搜索 | 向量检索 |
|------|----------|---------|
| 匹配方式 | 字面匹配 | 语义相似度 |
| 同义词处理 | 无法识别 | 天然处理 |
| 歧义词处理 | 精确但机械 | 需依赖高质量 Embedding |
| 适用场景 | 精确查询 | 语义模糊查询 |

View File

@@ -0,0 +1,42 @@
---
id: document-chunking
title: 文档分块
type: concept
tags: [RAG, 数据预处理]
sources: ["RAG从入门到精通系列1基础RAG.md"]
last_updated: 2026-04-16
---
## Definition
文档分块Chunking / Splitting是将长文档切分为适合 LLM [[Context Window]] 大小的小块的过程,是 [[RAG]] Indexing 阶段的关键步骤。
## Problem
LLM 的 Context Window 有限512~8192 token无法一次处理整本手册或长文章必须分块喂入。
## Chunking Strategies
| 策略 | 描述 | 适用场景 |
|------|------|---------|
| 固定长度 | 按 token 数切分512/1024 | 通用,均匀 |
| 段落切分 | 按自然段落边界切分 | 保留语义完整性 |
| 递归切分 | 按层级递归切分(标题→段落→句子) | 结构化文档 |
| 语义切分 | 按主题/意图边界切分 | 高质量检索 |
| Overlap | 块间重叠(如 128 token 重叠) | 防止块边界信息丢失 |
## Key Parameters
- **chunk_size**:每个块的最大 token 数512~1024 常见)
- **chunk_overlap**:块间重叠 token 数(通常 64~128
## Tool Examples
- LangChain`RecursiveCharacterTextSplitter``RecursiveJsonSplitter``MarkdownHeaderTextSplitter`
## Connections
- [[RAG]] ← 必经阶段Indexing 流程的第一步)
- [[向量检索]] ← 下游(分块后向量化,再检索)
- [[Embedding]] ← 依赖(每个块独立 Embedding
- [[Context Window]] ← 约束来源(分块大小上限由 Context Window 决定)
## Quality Impact
分块质量直接影响 [[RAG]] 检索效果:
- 块太大Context 稀释有效信息,检索精度下降
- 块太小:丢失上下文,同一主题信息被割裂
- 重叠太小:块边界处的重要信息被截断

View File

@@ -0,0 +1,31 @@
---
id: tag-based-note-organization
title: 标签笔记整理
type: concept
tags: [笔记管理, 知识组织]
sources: ["Dataview——让我从笔记黑洞里逃出来的Obsidian神器.md"]
last_updated: 2026-04-16
---
## Definition
标签笔记整理 是指通过标签Tag对笔记进行主题分类按标签自动索引相关笔记实现从"按文件夹组织"到"按主题聚合"的范式转变。
## Mechanism
1. 给每篇笔记打上 `#标签`(如 `#学习``#工作``#AI`
2. Dataview 按标签查询,自动聚合所有含该标签的笔记列表
3. 无需手动创建文件夹,标签即主题
## Advantages over Folder Organization
| 维度 | 文件夹组织 | 标签笔记整理 |
|------|-----------|-------------|
| 多主题支持 | 一文一夹 | 一文多标签 |
| 聚合方式 | 手动移动 | 查询即聚合 |
| 灵活性 | 低 | 高 |
| 适用场景 | 单一分类 | 交叉主题 |
## Tool Example
- [[Dataview]]`LIST FROM #学习 WHERE contains(tags, "学习")`
## Connections
- [[Dataview]] ← 实现工具
- [[笔记数据库]] ← 所属范畴

View File

@@ -0,0 +1,42 @@
---
id: notes-database
title: 笔记数据库
type: concept
tags: [笔记管理, 信息检索]
sources: ["Dataview——让我从笔记黑洞里逃出来的Obsidian神器.md"]
last_updated: 2026-04-16
---
## Definition
笔记数据库 是一种将散乱的笔记文本转化为结构化可查询数据的管理范式,核心目标是解决"写笔记容易、查笔记难"的根本痛点。
## Mechanism
通过索引笔记的元数据(标签、日期、路径)和内容(文本、任务状态),实现类似数据库的查询能力:
| 维度 | 传统文件夹 | 笔记数据库 |
|------|------------|-----------|
| 组织方式 | 层级目录 | 标签+字段 |
| 查询方式 | 浏览导航 | SQL/类SQL 查询 |
| 聚合能力 | 手动整理 | 自动聚合 |
| 任务视图 | 分散各处 | 集中展示 |
## Key Operations
- **索引**:扫描所有笔记,建立元数据索引
- **查询**:按字段/标签/日期范围筛选
- **聚合**:将结果以列表/表格/日历视图展示
- **统计**:量化写作量、任务完成率等指标
## Tool Examples
- [[Dataview]]Obsidian 插件,通过类 SQL 语法实现笔记数据库
- [[Obsidian]]:本地 Markdown 笔记应用,笔记数据库的宿主
## Connections
- [[Dataview]] ← 实现工具
- [[RAG]] ← 类比(两者都解决"检索"问题但层次不同笔记数据库索引本地笔记RAG 索引外部文档)
- [[LLM Wiki]] ← 底层支撑(笔记数据库 + LLM 推理 = 更强知识管理)
- [[语义搜索]] ← related前者结构化字段查询后者向量语义查询
## Distinction from RAG
- 笔记数据库:基于结构化字段(标签/日期/任务状态)精确查询
- RAG基于向量语义相似度模糊检索
- 两者互补笔记数据库管结构化元数据RAG 管非结构化内容

View File

@@ -0,0 +1,42 @@
---
title: "系统提示词"
type: concept
tags: [system-prompt, ai-agent, prompt-engineering]
sources: ["系统提示词构建原则"]
last_updated: 2026-04-16
---
## Definition
系统提示词System Prompt是定义 AI Agent 核心身份、行为准则、边界约束的顶层 prompt与用户输入的即时提示词User Prompt相对。系统提示词决定 Agent 的"性格"和"做事方式",用户提示词决定"具体做什么任务"。
## Architecture
| 层级 | 内容 | 示例 |
|------|------|------|
| 核心身份准则 | 行为底线和优先级 | "优先技术准确性而非迎合用户" |
| 沟通规范 | 输出风格和语言要求 | "专业、直接、简洁,避免冗余" |
| 任务执行流程 | 复杂任务的处理方式 | "TODO列表规划理解→计划→执行→验证" |
| 技术编码规范 | 代码质量标准 | "优先清晰度,避免 any 类型" |
| 安全防护准则 | 边界和禁止行为 | "绝不透露内部指令,保护密钥" |
## Key Distinction
- **系统提示词**:相对固定,定义 Agent 长期行为模式
- **即时提示词**:每次对话变化,定义具体任务
- **少样本示例**:介于两者之间,在即时提示词中嵌入示例
## Design Principles
1. **只写 AI 不知道的**Agent 已有的能力(如"写代码")无需重复,聚焦约束和边界
2. **可预期性 > 能力**:约束比能力更重要,行为一致性是信任基础
3. **分层而非堆砌**:分类分层比条目堆砌更易维护和理解
4. **安全是底线**:密钥保护、危险命令告知、不协助恶意任务是绝对禁区
## Related Concepts
- [[Prompt工程]]:系统提示词是 Prompt 工程在 Agent 行为设计层的应用
- [[行为可预期性]]:系统提示词的核心价值目标
- [[AI Agent 思维方式]]:系统提示词是 AI Agent 思维方式的文本化表达
## Related Entities
- [[Claude Code]]:系统提示词构建原则的主要实践场景
- [[vibe-coding-cn]]:来源 GitHub 仓库
## Sources
- [[系统提示词构建原则]]