Skip to content

智能阅读笔记

将 AI 融入阅读工作流,快速将阅读材料转化为结构化笔记,提升阅读效率。

适用场景

  • 技术文章阅读
  • 学术论文处理
  • 书籍阅读笔记
  • 网页内容收藏

前置准备

必需插件

插件用途安装方式
Text GeneratorAI 内容提取社区插件市场
Readwise阅读高亮同步(可选)社区插件市场

推荐插件

插件用途
Web Clipper网页剪藏
PDF++PDF 标注

工作流程

text
阅读材料 → 高亮标注 → AI 提取 → 结构化笔记 → 关联知识

实现步骤

1. 准备 Prompt 模板

创建 Templates/AI/reading-summary.md

markdown
---
title: 阅读笔记摘要
description: 从阅读材料中提取关键信息
---

## 任务
请从以下内容中提取关键信息,生成结构化笔记。

## 内容
{{selection}}

## 输出格式

### 核心观点
- 观点1
- 观点2
- 观点3

### 关键概念
| 概念 | 定义 |
|------|------|
| 概念1 | 定义1 |
| 概念2 | 定义2 |

### 实践要点
- [ ] 要点1
- [ ] 要点2

### 我的思考空间
<!-- 预留个人思考区域 -->

2. 配置快捷键

在 Text Generator 或类似插件中配置:

  • 快捷键:Ctrl+Shift+S
  • 关联模板:reading-summary.md

3. 实际操作

markdown
# 步骤演示

1. 在 Obsidian 中打开阅读材料(PDF 或网页剪藏)
2. 选中关键段落
3. 按 Ctrl+Shift+S 触发 AI 处理
4. 在弹出的笔记中添加个人思考
5. 使用 [[]] 链接到相关笔记

效果对比

原始阅读时间:30分钟 → AI 辅助后:10分钟

笔记质量:从碎片化 → 结构化、可检索

进阶技巧

javascript
<%*
// 使用 Templater 自动调用 AI
const selection = tp.file.selection();
if (selection) {
  const prompt = `请用中文总结以下内容的核心观点:
  
${selection}

要求:
1. 3-5个要点
2. 每个要点不超过30字
3. 保留关键数据`;
  
  // 这里可以集成 AI API 调用
  tR += await aiGenerate(prompt);
}
%>

相关案例

详细操作步骤

步骤一:创建阅读笔记模板

markdown
<!-- Templates/Reading-Note.md -->
---
title: {{title}}
source: {{url}}
author: {{author}}
date: {{date}}
tags: [reading]
---

# {{title}}

## 📖 基本信息
- **来源**
- **作者**
- **阅读日期**

## 🎯 阅读目的
<!-- 为什么要读这篇文章 -->

## 📝 原文摘要
<!-- AI 自动生成 -->

## 💡 核心观点
1.
2.
3.

## 📊 关键信息
<!-- 数据、案例、引用 -->

## 🤔 我的思考
<!-- 个人见解和批判性思考 -->

## 🔗 知识关联
- 相关笔记:[[]]
- 延伸阅读:[[]]

步骤二:配置 AI 提取工作流

javascript
// QuickAdd 宏:智能阅读笔记
async function createReadingNote(content, source) {
  const analysis = await textGenerator.generate(`
    分析以下阅读内容,提取关键信息:

    ${content}

    请提供:
    1. **一句话概括**:核心主题
    2. **核心观点**:3-5 个要点
    3. **关键概念**:定义表格
    4. **重要数据**:数字和统计
    5. **实践要点**:可执行的建议
    6. **延伸思考**:值得深入的问题
  `);

  await createNote({
    template: 'Reading-Note',
    content: analysis,
    frontmatter: { source }
  });
}

步骤三:设置快捷键

yaml
# 快捷键配置
命令:AI 提取阅读笔记
快捷键:Ctrl+Shift+R

使用方式:
1. 选中阅读内容
2. 按快捷键
3. 自动生成结构化笔记

高级技巧

1. 批量处理网页剪藏

javascript
// 批量处理剪藏内容
async function batchProcessClippings() {
  const clippings = await getClippings();

  for (const clip of clippings) {
    const note = await textGenerator.generate(`
      将以下网页内容整理为结构化笔记:

      标题:${clip.title}
      内容:${clip.content}

      输出格式:
      - 摘要(100字)
      - 核心观点(3-5点)
      - 关键信息
      - 行动建议
    `);

    await saveNote(clip.title, note);
  }
}

2. 对比阅读

javascript
// 多篇文章对比分析
async function compareArticles(articles) {
  return await textGenerator.generate(`
    对比分析以下几篇文章的观点:

    ${articles.map(a => `
    ## ${a.title}
    ${a.summary}
    `).join('\n')}

    请分析:
    1. 共识观点
    2. 分歧观点
    3. 各自的独特视角
    4. 我的判断
  `);
}

3. 阅读进度追踪

dataview
TABLE
  file.name as "笔记",
  date as "日期",
  tags as "标签"
FROM "Reading"
WHERE date >= date(today) - dur(30 days)
SORT date DESC
LIMIT 10

常见问题

Q1: 阅读内容太长怎么办?

解决方案:

javascript
// 分段处理长文
async function processLongContent(content) {
  // 分段
  const chunks = splitContent(content, 2000);

  const summaries = [];
  for (const chunk of chunks) {
    summaries.push(await textGenerator.generate(`
      总结这段内容的关键点:
      ${chunk}
    `));
  }

  // 合并摘要
  return await textGenerator.generate(`
    整合以下分段摘要:
    ${summaries.join('\n')}
  `);
}

Q2: 如何处理专业术语?

markdown
# 术语处理 Prompt

## 内容
{{content}}

## 请识别专业术语并:
1. 列出所有专业术语
2. 提供通俗解释
3. 给出应用场景
4. 标注重要程度

## 输出格式
| 术语 | 解释 | 重要性 |
|------|------|--------|

Q3: 如何建立知识关联?

javascript
// 自动发现关联
async function findConnections(newNote) {
  const existingNotes = await getAllNotes();

  return await textGenerator.generate(`
    新笔记内容:
    ${newNote}

    现有笔记主题:
    ${existingNotes.map(n => n.title).join(', ')}

    请找出:
    1. 相关的现有笔记
    2. 可以建立的链接
    3. 共同的主题
  `);
}

实际案例

案例:技术文章阅读

markdown
## 原始内容
一篇关于 React Hooks 的技术文章,约 3000 字

## AI 处理结果

### 一句话概括
React Hooks 让函数组件拥有状态管理能力,简化组件逻辑复用。

### 核心观点
1. Hooks 解决了类组件逻辑复用困难的问题
2. useState 和 useEffect 是最常用的两个 Hook
3. 自定义 Hook 可以封装复杂逻辑
4. 需要注意 Hook 的使用规则

### 关键概念
| 概念 | 定义 | 示例 |
|------|------|------|
| useState | 状态管理 Hook | const [count, setCount] = useState(0) |
| useEffect | 副作用 Hook | useEffect(() => {}, []) |

### 实践要点
- [ ] 使用 ESLint 插件检查 Hook 规则
- [ ] 将复杂逻辑封装为自定义 Hook
- [ ] 注意依赖数组的正确设置

### 延伸阅读
- React 官方文档
- [[我的 React 学习笔记]]

效率提升

任务传统方式AI 辅助
阅读理解30分钟10分钟
笔记整理15分钟2分钟
知识关联手动自动提示
最后更新:2026年4月3日编辑此页反馈问题