Skip to content

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. 等待生成

示例

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

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

生成结果: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 字

模板变量

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

模板函数

模板支持动态函数:

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.

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

## 待办任务
- [ ]

## 后续安排

高级技巧

提示词工程

好的提示词结构

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

最后更新:2026年4月7日编辑此页反馈问题