Skip to content

obsidian-textgenerator-plugin 插件教程 ​

Text Generator 配置 ​

Text Generator 是 Obsidian 中功能强大的文本生成插件,支持自定义模板和批量处理。

功能特点 ​

核心功能 ​

  • 文本生成:基于提示词生成内容
  • 模板系统:预设和自定义模板
  • 批量处理:一次处理多个文件
  • 多种模型:OpenAI、Anthropic、本地模型
  • 历史记录:保存生成历史

主要优势 ​

优势说明
灵活性强完全自定义提示词和模板
模板丰富社区模板市场
批量处理提高工作效率
开源免费完全免费使用

安装配置 ​

安装插件 ​

  1. 打开设置 → 第三方插件
  2. 关闭安全模式
  3. 浏览社区插件
  4. 搜索 "Text Generator"
  5. 安装并启用

基础配置 ​

1. API 配置 ​

OpenAI 配置:

json
{
  "api_type": "openai",
  "api_key": "sk-xxxxxxxxxxxxx",
  "model": "gpt-4o"
}

Anthropic 配置:

json
{
  "api_type": "anthropic",
  "api_key": "sk-ant-xxxxxxxxxxxxx",
  "model": "claude-3-5-sonnet"
}

Ollama 配置:

json
{
  "api_type": "ollama",
  "base_url": "http://localhost:11434",
  "model": "llama3"
}

2. 通用参数 ​

参数推荐值说明
Temperature0.7创造性程度
Max Tokens2000最大生成长度
Top P1采样范围
Frequency Penalty0重复惩罚

基本使用 ​

快捷键 ​

操作快捷键
打开命令面板Ctrl/Cmd + P
生成文本Ctrl/Cmd + J
使用模板Ctrl/Cmd + Shift + J

文本生成 ​

步骤:

  1. 选中要处理的文本(可选)
  2. 按 Ctrl/Cmd + P 打开命令面板
  3. 输入 "Text Generator: Generate"
  4. 输入提示词
  5. 等待生成

示例:

text
选中文本:人工智能正在改变世界...

提示词:用简洁的语言总结这段文字

生成结果:AI 技术正深刻影响各行业,带来效率提升和模式变革。

使用模板 ​

Text Generator 提供多种预设模板:

内置模板:

  • Continue Writing - 续写
  • Summarize - 总结
  • Rewrite - 改写
  • Translate - 翻译
  • Fix Grammar - 修正语法
  • Make Shorter - 精简
  • Make Longer - 扩展

使用方法:

  1. 选中文本
  2. 按 Ctrl/Cmd + Shift + J
  3. 选择模板
  4. 等待生成

模板系统 ​

创建自定义模板 ​

模板存放在 .obsidian/plugins/textgenerator/templates/ 目录。

模板文件示例:

markdown
---
name: 生成周报
description: 基于笔记内容生成周报
---

请根据以下笔记内容,生成一份简洁的周报:

{{selectedText}}

周报格式:
1. 本周完成事项
2. 遇到的问题
3. 下周计划

要求:
- 每项用项目符号
- 语言简洁
- 总字数不超过 200 字

模板变量 ​

变量说明示例
{{selectedText}}选中文本当前选中的内容
{{noteContent}}当前笔记全文笔记所有内容
{{title}}笔记标题"项目会议记录"
{{date}}当前日期"2024-01-15"
{{time}}当前时间"10:30"
{{tags}}笔记标签["工作", "会议"]
{{folder}}文件夹路径"工作/会议记录"

模板函数 ​

模板支持动态函数:

markdown
---
name: 自动分类笔记
---

请分析以下笔记内容,给出:

1. **适合的分类**:建议文件夹路径
2. **推荐标签**:3-5 个标签
3. **笔记摘要**:一句话概括

笔记内容:
{{noteContent}}

当前日期:{{date}}

批量处理 ​

批量生成 ​

处理多个笔记:

  1. 打开命令面板
  2. 选择 "Text Generator: Batch Process"
  3. 选择文件:
    • 当前文件夹
    • 所有未标记文件
    • 自定义选择
  4. 选择模板
  5. 执行批量处理

应用场景:

场景模板示例
批量总结为所有笔记添加摘要
批量标签自动添加标签
批量翻译翻译多篇笔记
批量重写统一内容风格

批量处理配置 ​

json
{
  "batch_size": 10,
  "delay_between_requests": 1000,
  "save_results": true,
  "result_location": "frontmatter"
}

工作流示例 ​

学习笔记工作流 ​

模板:智能学习笔记

markdown
---
name: 智能学习笔记
---

请对以下学习内容进行处理:

{{selectedText}}

输出格式:

## 核心概念
[提取 3-5 个核心概念]

## 知识要点
[列出关键知识点]

## 思考问题
[生成 3 个深度思考问题]

## 应用场景
[说明知识的应用场景]

## 相关概念
[列出可能相关的其他概念]

写作辅助工作流 ​

模板:写作改进

markdown
---
name: 写作改进
---

请改进以下文字:

{{selectedText}}

改进方向:
1. 提升可读性
2. 增强逻辑性
3. 丰富表达方式
4. 保持原意

输出改进后的版本,并简要说明改动点。

会议记录工作流 ​

模板:会议记录整理

markdown
---
name: 会议记录整理
---

请整理以下会议记录:

{{selectedText}}

整理为以下格式:

## 会议信息
- 时间:
- 参与人:
- 主题:

## 讨论要点
1.
2.
3.

## 决策事项
- [ ]
- [ ]

## 待办任务
- [ ]

## 后续安排

高级技巧 ​

提示词工程 ​

好的提示词结构:

text
1. 角色定义
2. 任务说明
3. 输入内容
4. 输出格式
5. 约束条件

示例:

markdown
你是一位专业的技术文档编辑。

请将以下技术内容改写为适合初学者理解的版本:

{{selectedText}}

改写要求:
1. 使用简单易懂的语言
2. 添加必要的解释说明
3. 使用类比帮助理解
4. 保持技术准确性
5. 字数控制在原文的 1.5 倍以内

输出格式:
直接输出改写后的内容,不需要额外说明。

多步骤工作流 ​

使用多个模板串联:

mermaid
graph LR
    A[原始内容] --> B[模板1: 总结]
    B --> C[模板2: 生成问答]
    C --> D[模板3: 创建卡片]

实现方式:

  1. 创建组合模板
  2. 使用 Templater 调用
  3. 或手动分步执行

与其他插件集成 ​

Dataview 集成 ​

markdown
---
name: Dataview 查询生成
---

请根据以下需求生成 Dataview 查询语句:

{{selectedText}}

可用的 Properties:
- created: 创建日期
- tags: 标签
- status: 状态
- priority: 优先级

输出完整的 Dataview 查询语句。

Templater 集成 ​

在 Templater 模板中调用 Text Generator:

markdown
<%*
// 调用 Text Generator API
const result = await app.plugins.plugins['textgenerator'].generateText({
  prompt: "总结当前笔记",
  context: tp.file.content
});
tR += result;
%>

成本优化 ​

Token 计算规则 ​

模型输入价格输出价格
GPT-4o$5/1M tokens$15/1M tokens
GPT-3.5-Turbo$0.5/1M tokens$1.5/1M tokens
Claude 3.5 Sonnet$3/1M tokens$15/1M tokens

优化策略 ​

  1. 使用缓存

    json
    {
      "enable_cache": true,
      "cache_ttl": 86400
    }
  2. 选择合适模型

    • 简单任务:GPT-3.5
    • 复杂任务:GPT-4 或 Claude
  3. 优化提示词

    • 精简提示词
    • 避免重复内容
  4. 批量处理优化

    json
    {
      "batch_delay": 2000,
      "max_concurrent": 3
    }

常见问题 ​

生成结果不稳定? ​

解决方案:

  1. 降低 Temperature(如 0.5)
  2. 提供更明确的指令
  3. 使用更强的模型

响应时间过长? ​

解决方案:

  1. 减少 Max Tokens
  2. 使用更快的模型
  3. 检查网络连接

模板不生效? ​

排查步骤:

  1. 检查模板文件位置
  2. 检查 YAML 格式
  3. 查看控制台错误日志

如何处理大量文本? ​

解决方案:

  1. 分段处理
  2. 使用批量处理功能
  3. 设置合理的延迟

相关资源 ​


最后更新:2024-01-15