Skip to content

Obsidian tars plugin that supports text generation based on tag suggestions, using services like DeepSeek, Claude, OpenAI, Gemini, Ollama, Kimi, Doubao, Qwen, Zhipu, QianFan & more. 插件基于标签建议进行文本生成,支持 DeepSeek、Claude、OpenAI、Gemini、Ollama、Kimi、豆包、阿里千问、智谱、百度千帆等

License

Notifications You must be signed in to change notification settings

TarsLab/obsidian-tars

Repository files navigation

English | 中文

简介

Tars 是一个 Obsidian 插件,基于标签建议进行文本生成,支持 Claude、OpenAI、Gemini、Ollama、Kimi、豆包、阿里千问、智谱、🔥DeepSeek、🔥SiliconFlow、百度千帆等。Tars 这个名字来源于电影《星际穿越》中的机器人 Tars(塔斯)。插件支持桌面端和移动端。

2.x 版本重大更新

  • 🔥加入标签命令,所有标签都在命令列表里。标签命令基于选中/光标处的段落,插入相应的标签。
    快速回答:把光标移到该行(或者选择多个段落),从命令列表中选择助手标签(比如#DeepSeek :),进行回答。

deepseek

  • 🔥自定义提示词模板, 首次使用请执行”加载模板文件”命令
  • 🔥状态栏,实时显示生成的字符数量, 轮次,耗时。
  • 🔥标签建议,重新设计的触发逻辑更符合软件设计,性能优化显著。
    输入#,借用obsidian自身的标签补全后,再输入空格触发。
    移动端如果不方便输入#,输入完整的标签(不带#),来触发。
    助手标签在触发后,会进行AI助手回答。

tagSuggest

特性

  • 支持内部链接

内部链接支持

AI 服务提供商

如果上面列表没有你想要的 AI 服务提供商,可以在 issue 中提出具体方案。

助手特色

  • Azure: 支持 o1,deepseek-r1,gpt-4o 等等
  • 🔥DeepSeek:推理模型 deepseek-reasoner 的思维链以 callout 格式输出
  • 🔥SiliconFlow:支持 DeepSeek V3/R1 等等众多模型
  • Zhipu:网络搜索选项

如何使用

  • 在设置页面添加 AI 助手,设置 API 密钥,设置模型。
  • 输入问题,比如“1+1=?”,然后在命令列表选择“#我 :”, 转为“#我 : 1+1=?”
  • 在命令列表选择助手,比如“#DeepSeek :”,触发 AI 助手回答问题。
  • 还可以直接输入#,输入标签后再输入空格,来触发 AI 助手。
  • 请遵循大模型的对话顺序规则,系统消息总是最先出现(也可以忽略),然后用户消息和助手消息像打乒乓球一样轮流发言。

一个简单的对话例子如下:

#我 : 1+1=?(用户消息)
(隔开一个空行)
#DeepSeek : (触发)

对话顺序规则如下:

graph LR
    A[系统消息] --> B[用户消息] --> C[助手消息] --> B
Loading

如果觉得 AI 助手回答不满意,想要重试。使用插件命令“选择光标处的消息”,选中 AI 助手的回答内容进行删除,修改下你的提问,再次触发 AI 助手。或者选中回答内容,使用命令比如“#DeepSeek :”,重新触发 AI 助手,会删除之前的回答内容,重新生成。

对话语法

一个段落不能包含多条消息。多条消息应该通过空行分隔开来。

Conversations syntax

  • 对话消息将发送到配置的 AI 服务提供商。
  • 标注部分 (callout) 将被忽略。你可以在标注里写内容,不将其发送到 AI 助手。callout 不是 markdown 语法,是 obsidian 的扩展语法。
  • 开始新对话,使用 新对话 标签。

标签命令都是基于选中/光标处的段落,一个 Markdown 段落可以是:

  • 没有空行隔开的多行普通文本
  • 代码块

在正确的语法情况下,在输入过程中,#标签后输入空格,会触发标签补全。例如:

#新对话

#系统 :

#我 :

#新对话 #系统 :

#新对话 #我 :

#助手 : (AI生成)

外观美化

建议使用 colored tags 插件.

Colored tags plugin

常见问题

设置页面没有想要的模型?

可以在设置中的“覆盖输入参数”进行配置,输入 JSON 格式,例如 {"model":"你想要的model"}

如何查看开发者控制台?

  • WindowsCTRL + SHIFT + i
  • MacOSCMD + OPTION + i
  • LinuxCTRL + SHIFT + i

获取控制台日志

在使用第三方服务商时如何输入地址?

修改设置中的 baseURL,从服务商的文档复制对应的地址粘贴过去,最后检查下网址是否完整。

第三方服务商选择哪个助手类型?

LLM的协议是有区别的,openAI,claude,gemini 差别很大,注意要选对。deepseek-r1 的思维链也和 openAI 不同。

错误提示中的 404,400,4xx数字是什么意思?

这些是 HTTP 状态码:

  • 401表示“未授权”(Unauthorized),可能是 API 密钥错误。
  • 402表示“需要付款”(Payment Required)。
  • 404表示“未找到”(Not Found),通常是 baseURL 配置错误,或者模型名称错误。
  • 400表示“错误请求”(Bad Request),可能是 API 密钥错误,缺失用户消息,标签解析失败导致消息缺失,模型错误等等。
  • 429表示“太多请求”(Too Many Requests),可能是请求频率过高,或者是服务商限制了请求频率。

About

Obsidian tars plugin that supports text generation based on tag suggestions, using services like DeepSeek, Claude, OpenAI, Gemini, Ollama, Kimi, Doubao, Qwen, Zhipu, QianFan & more. 插件基于标签建议进行文本生成,支持 DeepSeek、Claude、OpenAI、Gemini、Ollama、Kimi、豆包、阿里千问、智谱、百度千帆等

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •