Skip to content

hzruo/TypechoAI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Typecho AI 助手插件

Version License

一个强大的 Typecho AI 辅助插件,为你的博客编辑和阅读体验注入 AI 能力。支持任何 OpenAI 兼容格式的 API,包括 GPT、Claude、通义千问、文心一言、GLM、DeepSeek 等。

安装方法:下载插件解压到 usr/plugins 目录,注意:Github Release 包默认会带上版本号,需重命名文件夹为 TypechoAI

✨ 功能特性

📝 编辑器 AI 辅助

在文章编辑页面提供强大的 AI 工具栏,包含以下功能:

内容生成

  • 📋 摘要:一键生成文章摘要并自动保存到摘要字段,无需复制粘贴
  • 🏷️ 标签:智能分析文章内容,自动生成3-8个相关标签并添加到标签字段

内容编辑

  • ✏️ 改写:用不同的表达方式重写选中内容,保持原意但更流畅专业
  • ➕ 续写:根据上下文智能续写内容,延续写作思路
  • ✨ 优化:改进语言表达、修正语法错误、提升可读性
  • 🌐 翻译:支持9种语言互译(中/英/日/韩/法/德/西/俄/阿拉伯)

智能特性

  • 格式保护:自动保留图片链接、URL地址、代码块等重要内容
  • 实时预览:AI生成内容后立即在编辑器中预览,无需保存草稿
  • 灵活操作:支持插入、替换、复制等多种操作方式
  • 美化弹窗:自定义确认对话框,操作体验更友好

🎯 文章页面 AI 摘要

  • 智能按需生成:首次访问自动生成,已生成则瞬间显示
  • 永久缓存:总结保存到数据库,无需重复生成
  • 打字机效果:逐字显示动画,支持点击跳过,让展示更生动
  • 主题适配:多种显示样式,完美融入各种主题设计
  • 用户友好:可展开/收起,记住用户偏好,智能加载提示
  • 样式选择:五种精美样式 + 实时预览,支持一键切换

🔧 灵活配置

  • 支持任何 OpenAI 兼容格式的 API
  • 可配置 API 地址、密钥、模型名称
  • 自定义温度参数、最大 Token 数
  • 自定义总结提示词模板
  • 一键测试 API 配置:配置页面内置测试按钮,快速验证 API 是否可用

📦 支持的 LLM 服务

本插件支持所有兼容 OpenAI API 格式的服务,包括但不限于:

  • OpenAI:GPT-4、GPT-3.5-turbo
  • Anthropic Claude:通过中转服务
  • 阿里云通义千问:qwen-turbo、qwen-plus、qwen-max
  • 百度文心一言:ERNIE-Bot-turbo、ERNIE-Bot
  • 智谱 ChatGLM:glm-4、glm-3-turbo
  • DeepSeek:deepseek-chat、deepseek-coder
  • Moonshot AI:moonshot-v1-8k、moonshot-v1-32k
  • 本地部署:Ollama、LocalAI 等

📍 如何显示 AI 总结

AI 总结需要在主题模板中手动调用。请按照以下步骤操作:

步骤 1:找到主题的 post.php 文件

主题文件位置:/usr/themes/你的主题名称/post.php

例如:

  • 默认主题:/usr/themes/default/post.php
  • 自定义主题:/usr/themes/mytheme/post.php

步骤 2:编辑 post.php 文件

post.php 文件中找到文章内容输出的位置,通常是 <?php $this->content(); ?>

在这行代码之前添加以下代码:

<?php if (class_exists('TypechoPlugin\TypechoAI\Plugin')): ?>
    <?php echo TypechoPlugin\TypechoAI\Plugin::renderSummary(); ?>
<?php endif; ?>

步骤 3:完整示例

假设你的 post.php 原本是这样的:

<article class="post">
    <h1 class="post-title"><?php $this->title(); ?></h1>
    <div class="post-meta">
        <?php $this->date('Y-m-d'); ?>
    </div>
    <div class="post-content">
        <?php $this->content(); ?>
    </div>
</article>

修改后应该是这样:

<article class="post">
    <h1 class="post-title"><?php $this->title(); ?></h1>
    <div class="post-meta">
        <?php $this->date('Y-m-d'); ?>
    </div>
    
    <!-- ========== 在这里添加 AI 总结 ========== -->
    <?php if (class_exists('TypechoPlugin\TypechoAI\Plugin')): ?>
        <?php echo TypechoPlugin\TypechoAI\Plugin::renderSummary(); ?>
    <?php endif; ?>
    <!-- ======================================== -->
    
    <div class="post-content">
        <?php $this->content(); ?>
    </div>
</article>

其他位置选项

你也可以将 AI 总结放在其他位置:

1. 文章内容下方

<div class="post-content">
    <?php $this->content(); ?>
</div>

<!-- AI 总结放在内容后面 -->
<?php if (class_exists('TypechoPlugin\TypechoAI\Plugin')): ?>
    <?php echo TypechoPlugin\TypechoAI\Plugin::renderSummary(); ?>
<?php endif; ?>

2. 侧边栏(如果有)sidebar.php 中添加:

<?php if (class_exists('TypechoPlugin\TypechoAI\Plugin')): ?>
    <?php echo TypechoPlugin\TypechoAI\Plugin::renderSummary(); ?>
<?php endif; ?>

注意事项

  • ✅ 确保在插件配置中启用了"文章总结功能"
  • ✅ 修改主题文件前建议先备份
  • ✅ 如果主题更新,需要重新添加这段代码
  • ✅ 不同主题的文件结构可能不同,请根据实际情况调整位置

🚀 安装步骤

1. 下载插件

cd /path/to/typecho/usr/plugins
git clone https://github.com/yourusername/TypechoAI.git

或者直接下载 ZIP 包并解压到 usr/plugins/TypechoAI 目录。

2. 激活插件

  1. 登录 Typecho 后台
  2. 进入「控制台」→「插件」
  3. 找到「Typecho AI 助手」插件
  4. 点击「启用」按钮

3. 配置插件

  1. 点击插件的「设置」按钮
  2. 填写以下配置信息:
配置项 说明 示例
API 地址 LLM API 的完整地址 https://api.openai.com/v1/chat/completions
API Key 你的 API 密钥 sk-xxx...
模型名称 使用的模型 gpt-3.5-turbo
温度参数 控制输出随机性(0-2) 0.7
最大 Token 数 生成内容的最大长度 2000
文章总结功能 是否启用前台总结 启用/禁用
总结显示样式 选择总结的显示风格(支持实时预览) 🎨主题适配/🔷默认/✨简约/📋卡片/📦紧凑
打字机效果 是否启用逐字显示动画 启用/禁用
总结提示词 自定义总结提示词 可自定义
请求超时时间 API 请求超时(秒) 30

🤝 贡献

欢迎提交 Issue 和 Pull Request!

如果这个插件对你有帮助,请给个 ⭐️ Star 支持一下!

📮 联系方式

📄 开源协议

本项目采用 MIT 协议开源,详见 LICENSE 文件。

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors