网易首页 > 网易号 > 正文 申请入驻

Obsidian插件-auto3.0,AI快速生成文本和图片,支持知识库检索和定时任务

0
分享至

项目概述

Obsidian AI 智能助手插件是一个功能强大的 Obsidian 第三方插件,集成了多种 AI 模型和智能功能,支持:

  • 内容生成 :基于模板和上下文的智能内容生成

  • 图片生成 :支持多种 AI 图片生成模型

  • 知识库管理 :智能向量化知识库,支持语义搜索

  • 定时任务 :自动化内容生成和处理

  • 快速生成 :自定义快捷键快速生成内容

技术特性

  • 多 AI 模型支持 :OpenRouter、Deepseek、Gemini、Imagen 等

  • 向量化搜索 :基于 embedding 的语义搜索

  • 实时文件监控 :自动更新知识库向量

  • 模块化架构 :清晰的代码结构,易于扩展

目录结构

obsidian-yuhanbo-ai-auto2.0/ ├── main.js                    # 插件核心代码(3909行) ├── manifest.json              # 插件配置清单 ├── styles.css                 # UI样式定义(363行) ├── data.json                  # 用户数据存储 ├── 知识库自动更新说明.md        # 知识库功能说明 ├── OB插件:AI插件与Templater集成实现笔记自动化处理指南.md ├── 图片生成测试说明.md          # 图片生成功能说明 ├── 插件图片生成功能升级总结.md   # 图片功能升级记录 └── Imagen模型修复总结.md        # 模型修复记录
️ 核心功能模块 1. 主插件类 (OpenRouterPlugin)

文件位置: main.js:45-240

核心职责:

  • ● 插件生命周期管理

  • ● 设置加载和保存

  • ● 命令注册和事件监听

  • ● HTTP 服务器启动


关键方法:

  • onload() : 插件初始化

  • onunload() : 插件卸载清理

  • loadSettings() : 加载用户设置

  • saveSettings() : 保存用户设置

2. AI 内容生成模块

文件位置: main.js:445-585

支持的 AI 提供商:

  • Gemini : Google 的生成式 AI 模型

  • Deepseek : 深度求索 AI 模型

  • OpenRouter : 多模型 API 聚合平台


核心方法:

  • generateAIContent(prompt, model) : 统一内容生成接口

  • generateWithGemini(prompt, modelName) : Gemini 模型调用

  • generateWithDeepseek(prompt, model) : Deepseek 模型调用

3. 图片生成模块

文件位置: main.js:500-797

支持的图片模型:

  • Imagen 4.0 : Google 的图片生成模型

  • Gemini Image : Gemini 的图片生成功能

  • Veo : 视频生成模型


核心方法:

  • generateImage(prompt, model, options) : 统一图片生成接口

  • generateWithImagen(prompt, config, model) : Imagen 模型调用

  • generateWithGeminiImage(prompt, config, model) : Gemini 图片生成

  • saveGeneratedImages(images, baseName) : 图片保存处理

4. 知识库管理模块

文件位置: main.js:851-1498

核心功能:

  • 向量化处理 : 将文档转换为向量表示

  • 语义搜索 : 基于向量相似度的内容检索

  • 自动更新 : 监控文件变化,自动更新向量

  • 增量处理 : 只处理变更的文件,节省 API 调用


关键方法:

  • createKnowledgeBase(config) : 创建知识库

  • updateKnowledgeBase(id, forceUpdate) : 更新知识库

  • searchKnowledgeBase(query, id, topK) : 语义搜索

  • processFileForKnowledgeBase(file, kb) : 文件向量化处理

5. 定时任务模块

文件位置: main.js:254-443

功能特性:

  • 多种调度类型 : 一次性、每日定时

  • 模板支持 : 基于模板生成内容

  • 文件路径解析 : 支持 Dataview 查询和文件链接

  • 自动文件命名 : 支持时间戳和自定义命名


核心方法:

  • startAllScheduledTasks() : 启动所有定时任务

  • startScheduledTask(task) : 启动单个任务

  • stopAllScheduledTasks() : 停止所有任务

6. UI 界面模块

文件位置: main.js:1822-3909

主要界面组件:

  • PromptModal : 内容生成对话框

  • ImageGenerationModal : 图片生成对话框

  • KnowledgeBaseModal : 知识库配置对话框

  • ScheduledTaskModal : 定时任务配置对话框

  • OpenRouterSettingTab : 插件设置页面

运行环境 必需环境

  • Obsidian : 版本 0.15.0 或更高

  • 操作系统 : Windows/macOS/Linux

  • 网络连接 : 用于 API 调用

可选环境

  • Ollama : 本地 AI 模型服务(默认端口 11434)

  • Templater 插件 : 增强模板功能

安装步骤 方法 1: 手动安装

  1. 1. 下载插件文件

    # 下载必需的3个文件    - main.js    - manifest.json      - styles.css
  2. 2. 创建插件目录

    # 在Obsidian库中创建插件目录    .obsidian/plugins/obsidian-yuhanbo-ai-auto2.0/
  3. 3. 复制文件

    # 将下载的文件复制到插件目录    cp main.js manifest.json styles.css .obsidian/plugins/obsidian-yuhanbo-ai-auto2.0/
  4. 4. 启用插件

  • ● 重启 Obsidian

  • ● 进入 设置 → 第三方插件

  • ● 找到 "yuhanbo-ai-auto" 并启用

方法 2: 开发者安装

  1. 1. 克隆仓库

    git clone [repository-url]    cd obsidian-yuhanbo-ai-auto2.0
  2. 2. 链接到 Obsidian

    # 创建符号链接到Obsidian插件目录    ln -s $(pwd) /path/to/your/vault/.obsidian/plugins/obsidian-yuhanbo-ai-auto2.0

⚙️ 配置说明 1. API 密钥配置

在插件设置中配置以下 API 密钥:

// 必需的API密钥 {   "openrouterApiKey": "your-openrouter-api-key",   "geminiApiKey": "your-gemini-api-key",    "deepseekApiKey": "your-deepseek-api-key" }
2. 知识库配置

// 知识库配置示例 {   "knowledgeBases": [{     "id": "kb-001",     "name": "我的知识库",     "path": "知识库",     "embeddingProvider": "gemini",     "embeddingModel": "text-embedding-004",     "vectorPath": "知识库/.vectors",     "autoUpdate": true,     "updateFrequency": 10   }] }
3. 图片生成配置

// 图片生成设置 {   "imageGenerationPath": "images",   "defaultImageModel": "imagen-4.0-generate-001",   "imageSize": "1K",   "aspectRatio": "1:1",    "numberOfImages": 1 }
使用方法 1. 内容生成 快速生成

  1. 1. 选中文本

  2. 2. 使用快捷键 Ctrl+Shift+G

  3. 3. 选择 AI 模型

  4. 4. 输入提示词

  5. 5. 点击生成

模板生成

  1. 1. 创建模板文件

  2. 2. 在设置中配置模板路径

  3. 3. 使用命令面板调用 "AI 生成内容"

  4. 4. 选择模板和模型

2. 图片生成

  1. 1. 使用命令 "生成图片"

  2. 2. 输入图片描述

  3. 3. 选择图片模型和参数

  4. 4. 点击生成

  5. 5. 图片自动保存到指定目录

3. 知识库管理 创建知识库

  1. 1. 进入插件设置

  2. 2. 点击 "添加知识库"

  3. 3. 配置知识库参数

  4. 4. 点击创建

使用语义搜索

  1. 1. 在内容生成时选择知识库

  2. 2. 系统自动检索相关内容

  3. 3. 基于检索结果生成内容

4. 定时任务 创建定时任务

  1. 1. 进入插件设置

  2. 2. 点击 "添加定时任务"

  3. 3. 配置源文件、目标路径、模型

  4. 4. 设置执行时间

  5. 5. 保存任务

任务类型

  • 一次性任务 : 指定时间执行一次

  • 每日任务 : 每天定时执行

API 接口说明 1. 外部 API 调用 Gemini API

// 内容生成 POST https://generativelanguage.googleapis.com/v1beta/models/{model}:generateContent?key={apiKey} // 向量生成   POST https://generativelanguage.googleapis.com/v1beta/models/{model}:embedContent?key={apiKey} // 图片生成 POST https://generativelanguage.googleapis.com/v1beta/models/{model}:predict?key={apiKey}
OpenRouter API

// 内容生成 POST https://openrouter.ai/api/v1/chat/completions // 向量生成 POST https://openrouter.ai/api/v1/embeddings
Deepseek API

// 内容生成 POST https://api.deepseek.com/v1/chat/completions
Ollama API (本地)

// 向量生成 POST http://localhost:11434/api/embeddings
2. 内部 HTTP 服务

插件启动本地 HTTP 服务器(端口 27123)用于模板管理:

// 获取模板列表 POST http://localhost:27123 {   "action": "getTemplates",   "path": "templates",   "searchText": "" } // 获取模板内容 POST http://localhost:27123   {   "action": "getTemplateContent",   "path": "templates/example.md" }
样式系统 CSS 变量使用

插件使用 Obsidian 的 CSS 变量系统,确保与主题兼容:

/* 主要颜色变量 */ --background-primary: 主背景色 --background-modifier-border: 边框色 --text-normal: 普通文本色 --text-muted: 次要文本色 --interactive-accent: 强调色 --interactive-hover: 悬停色
主要样式类
  • .prompt-modal : 对话框样式

  • .setting-item-description : 设置项描述

  • .kb-list-item : 知识库列表项

  • .task-item : 任务列表项

❓ 常见问题解答 Q: 如何获取 API 密钥?

A: API 密钥获取方法

  • Gemini : 访问 Google AI Studio

  • OpenRouter : 访问 OpenRouter

  • Deepseek : 访问 Deepseek

Q: 知识库向量化失败怎么办?

A: 检查以下项目

  1. 1. 确认 API 密钥正确

  2. 2. 检查网络连接

  3. 3. 确认文件路径存在

  4. 4. 查看控制台错误信息

Q: 图片生成失败怎么办?

A: 常见解决方案

  1. 1. 检查 Gemini API 密钥

  2. 2. 确认图片保存路径存在

  3. 3. 检查提示词是否符合内容政策

  4. 4. 尝试更换图片模型

Q: 定时任务不执行怎么办?

A: 排查步骤

  1. 1. 检查任务配置是否正确

  2. 2. 确认源文件路径存在

  3. 3. 检查目标路径权限

  4. 4. 查看任务状态指示器

Q: 如何自定义模型?

A: 添加自定义模型

  1. 1. 进入插件设置

  2. 2. 点击 "添加自定义模型"

  3. 3. 输入模型标识和显示名称

  4. 4. 选择对应的提供商

  5. 5. 保存配置

Q: 如何备份插件数据?

A: 备份方法

  1. 1. 复制 data.json 文件

  2. 2. 备份知识库向量文件夹

  3. 3. 导出插件设置

  4. 4. 保存自定义模板

Q: 插件更新后设置丢失怎么办?

A: 恢复设置

  1. 1. 检查 data.json 文件是否存在

  2. 2. 重新导入备份的设置

  3. 3. 重新配置 API 密钥

  4. 4. 重建知识库索引

Q: 如何优化 API 调用成本?

A: 成本优化建议

  1. 1. 使用增量更新而非强制更新

  2. 2. 合理设置知识库更新频率

  3. 3. 选择成本较低的模型

  4. 4. 避免重复处理相同内容

开发说明 代码结构

  • 模块化设计 : 功能模块相对独立

  • 事件驱动 : 基于 Obsidian 事件系统

  • 异步处理 : 大量使用 async/await

  • 错误处理 : 完善的错误捕获和提示

扩展指南

  1. 1. 添加新的 AI 提供商 : 在生成方法中添加新的 case

  2. 2. 自定义 UI 组件 : 继承 Obsidian 的 Modal 类

  3. 3. 新增配置项 : 在 DEFAULT_SETTINGS 中添加

  4. 4. 添加新命令 : 在 onload 中注册新命令


特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
运城市人民代表大会常务委员会任免名单

运城市人民代表大会常务委员会任免名单

新浪财经
2026-09-19 12:09:55
硫磺熏笋已失控!市监局证实:已发往全国多地,二氧化硫超标百倍

硫磺熏笋已失控!市监局证实:已发往全国多地,二氧化硫超标百倍

行者聊官
2026-09-18 19:32:09
河南一数学老师花300多万拍院线电影,上映三天票房不到3万,本人回应:已无力回天

河南一数学老师花300多万拍院线电影,上映三天票房不到3万,本人回应:已无力回天

互联网大观
2026-09-18 17:44:42
9月18日,菲律宾船撞上我船

9月18日,菲律宾船撞上我船

新民周刊
2026-09-19 09:10:32
疯狂?拜仁携7-0登顶德甲!1.7亿巨星戴帽+独造5球 凯恩百球里程碑

疯狂?拜仁携7-0登顶德甲!1.7亿巨星戴帽+独造5球 凯恩百球里程碑

我爱英超
2026-09-19 06:07:14
国企副总被留置不到40天,董事长任上被查

国企副总被留置不到40天,董事长任上被查

大风新闻
2026-09-19 11:47:07
小学生弄湿课本怕挨骂,花3天“手搓”语文书:抄课文,画插图,连条形码都复刻;父亲:字差了点,别的没毛病

小学生弄湿课本怕挨骂,花3天“手搓”语文书:抄课文,画插图,连条形码都复刻;父亲:字差了点,别的没毛病

蓬勃新闻
2026-09-18 16:34:44
解气!法国籍女子在韩商场大喊:全世界都讨厌中国人!中国女子果断出手

解气!法国籍女子在韩商场大喊:全世界都讨厌中国人!中国女子果断出手

小鋭有话说
2026-09-18 23:26:06
匪夷所思啊!上海龙华寺捐200元,账单标注“消费”而非捐赠,账单收单机构竟是深圳建行,一张账单引发全网热议

匪夷所思啊!上海龙华寺捐200元,账单标注“消费”而非捐赠,账单收单机构竟是深圳建行,一张账单引发全网热议

火山詩话
2026-09-19 11:46:25
炸裂!女网红和男子开房,因动作太猛导致女网红腰部骨折,告上法庭索赔50万

炸裂!女网红和男子开房,因动作太猛导致女网红腰部骨折,告上法庭索赔50万

小徐讲八卦
2026-09-17 09:49:48
错怪郭士强,中国男篮输日本,揪出第一混子球员,必须要淘汰

错怪郭士强,中国男篮输日本,揪出第一混子球员,必须要淘汰

宗介说体育
2026-09-19 10:15:11
毛东东随团访朝 向毛岸英铜像祭酒 背后释放的信号不简单

毛东东随团访朝 向毛岸英铜像祭酒 背后释放的信号不简单

军武咖
2026-09-19 08:59:52
局势已经全面反转!菲律宾前大法官公开表示:总统与副总统不得参与任何商业活动

局势已经全面反转!菲律宾前大法官公开表示:总统与副总统不得参与任何商业活动

坠入二次元的海洋
2026-09-19 10:36:53
王力宏探视陈建州拿尿壶拍照被炮轰!台大医院发声回应

王力宏探视陈建州拿尿壶拍照被炮轰!台大医院发声回应

小椰的奶奶
2026-09-19 11:27:00
这么离谱?美媒:F-35零部件被转运至香港后丢失,中国可能获取关键技术

这么离谱?美媒:F-35零部件被转运至香港后丢失,中国可能获取关键技术

爱迷彩的老虎
2026-09-19 10:22:22
手搓动画《牛来》票房6300万 母子二人基本财富自由

手搓动画《牛来》票房6300万 母子二人基本财富自由

3DM游戏
2026-09-17 12:00:04
美媒:与伊朗战事期间,美军被AI生成的不实军情报告误导,险些派兵全副武装冲上一艘中国船只

美媒:与伊朗战事期间,美军被AI生成的不实军情报告误导,险些派兵全副武装冲上一艘中国船只

鲁中晨报
2026-09-19 11:39:02
重磅数据来了!财政部公布:事关证券印花税!下周A股行情预测

重磅数据来了!财政部公布:事关证券印花税!下周A股行情预测

云鹏叙事
2026-09-19 11:41:48
贵州毕节一中学老师给女学生发“其实我从未停止过爱你”“好想去你家玩”等骚扰信息,警方和纪委已介入,校方回应:涉事老师已被调岗

贵州毕节一中学老师给女学生发“其实我从未停止过爱你”“好想去你家玩”等骚扰信息,警方和纪委已介入,校方回应:涉事老师已被调岗

大风新闻
2026-09-19 14:58:06
梅毒,又杀回来

梅毒,又杀回来

南风窗
2026-09-18 15:39:49
2026-09-19 15:48:49
余汉波 incentive-icons
余汉波
三人行,我们是财经的搬运工
1961文章数 2561关注度
往期回顾 全部

科技要闻

要走650亿,智谱的理想越来越贵

头条要闻

和中美竞争都不想买单 德国西班牙为2万亿欧元预算吵翻

头条要闻

和中美竞争都不想买单 德国西班牙为2万亿欧元预算吵翻

体育要闻

好吧,中国男篮辛苦了

娱乐要闻

蔡卓妍小腹凸起疑怀孕?本人没回应

财经要闻

江西首富破产:一张927万商票压垮千亿帝国

汽车要闻

纯电/插混双动力+五座/六座双布局 海狮08应该怎么选?

态度原创

家居
艺术
旅游
数码
健康

家居要闻

2026建博会(广州) 公装联探展交流活动

艺术要闻

重庆南山最大烂尾别墅群!5折才卖掉一栋,荒成“空城”

旅游要闻

从南极游热潮看高端极地旅行新趋势

数码要闻

HKC隐刃L1拉伸手机游戏手柄新增“冰川蓝”配色,169元

脑动脉瘤的治疗方法,该选哪一种?

无障碍浏览 进入关怀版