基于多专家协作和大语言模型的智能标题优化工具,现已集成 OxyGent 多智能体框架,帮助提升微信公众号文章的点击率和传播效果。
- OxyGent 多智能体系统 - 最新的多智能体协作框架
- ModelScope GLM-4.5 - 支持最新的大语言模型
- OpenAI 兼容接口 - 标准化 API 调用
- 多专家协作 - 8位 AI 专家从不同角度分析优化
- 智能体团队 - 专业分工,协同工作
- 任务自动分解 - 复杂任务智能拆分
- 实时协作 - 智能体间实时通信
- 结果整合 - 自动汇总分析结果
- 用户心理分析 - 情感触发和心理需求识别
- 数据驱动洞察 - 点击率预测和趋势分析
- 营销价值评估 - 商业转化和受众匹配
- 语言文字优化 - 表达力和可读性提升
- 命令行工具 - 快速批量处理
- 交互式模式 - 实时对话优化
- Web 界面 - 可视化操作体验
- API 接口 - 集成到现有系统
# 推荐使用 Python 3.10+
conda create -n oxy_env python==3.10
conda activate oxy_envpip install oxygentgit clone <repository-url>
cd wechat-title-optimizer
python setup_oxygent.py # 自动安装依赖和配置环境编辑 .env 文件:
DEFAULT_LLM_API_KEY="your_api_key"
DEFAULT_LLM_BASE_URL="https://api-inference.modelscope.cn/v1"
DEFAULT_LLM_MODEL_NAME="ZhipuAI/GLM-4.5"# 5分钟快速开始
python quick_start.py
# 多智能体标题优化
python oxygent_agent_demo.py
# Web 服务模式
python quick_start.py webgit clone <repository-url>
cd wechat-title-optimizer
pip install -r requirements.txt编辑 config.py 文件,设置你的 ModelScope API Key:
MODELSCOPE_CONFIG = {
"base_url": "https://api-inference.modelscope.cn/v1",
"model": "ZhipuAI/GLM-4.5",
"api_key": "your-api-key-here", # 替换为实际的 API Key
"temperature": 0.7,
"max_tokens": 2000,
"timeout": 30
}# 主菜单模式
python demo.py
# AI 演示模式
python demo.py ai
# 交互式 AI 模式
python demo.py ai-interactive
# 测试连接
python demo.py testimport asyncio
from oxygent_agent_demo import OxyGentTitleOptimizer
async def main():
optimizer = OxyGentTitleOptimizer()
result = await optimizer.optimize_title_with_agents(
title="如何提高工作效率",
content_summary="介绍10个提升工作效率的实用方法"
)
if result["success"]:
print("✅ 多智能体分析完成!")
print(f"📁 详细结果已保存到文件")
else:
print(f"❌ 分析失败: {result['error']}")
asyncio.run(main())import asyncio
from wechat_title_optimizer import optimize_title_quick
async def main():
result = await optimize_title_quick(
title="如何提高工作效率",
content_summary="介绍10个提升工作效率的实用方法",
provider="modelscope"
)
# 获取最佳推荐
best_title = result['final_recommendations'][0]
print(f"最佳标题: {best_title['title']}")
print(f"评分: {best_title['score']}/10")
print(f"理由: {best_title['reasoning']}")
asyncio.run(main())按照 OxyGent 官方文档的基础示例:
import os
from oxygent import MAS, Config, oxy, preset_tools
Config.set_agent_llm_model("default_llm")
oxy_space = [
oxy.HttpLLM(
name="default_llm",
api_key=os.getenv("DEFAULT_LLM_API_KEY"),
base_url=os.getenv("DEFAULT_LLM_BASE_URL"),
model_name=os.getenv("DEFAULT_LLM_MODEL_NAME"),
),
preset_tools.time_tools,
oxy.ReActAgent(
name="time_agent",
desc="A tool that can query the time",
tools=["time_tools"],
),
preset_tools.file_tools,
oxy.ReActAgent(
name="file_agent",
desc="A tool that can operate the file system",
tools=["file_tools"],
),
preset_tools.math_tools,
oxy.ReActAgent(
name="math_agent",
desc="A tool that can perform mathematical calculations.",
tools=["math_tools"],
),
oxy.ReActAgent(
is_master=True,
name="master_agent",
sub_agents=["time_agent", "file_agent", "math_agent"],
),
]
async def main():
async with MAS(oxy_space=oxy_space) as mas:
await mas.start_web_service(first_query="What time is it now? Please save it into time.txt.")
if __name__ == "__main__":
import asyncio
asyncio.run(main())import asyncio
from openai_client import llm_client
async def batch_optimize():
titles = [
"Python编程入门",
"投资理财指南",
"健康生活方式"
]
prompts = [f"请优化这个微信公众号标题:{title}" for title in titles]
results = await llm_client.batch_completion(
prompts,
provider="modelscope"
)
for i, result in enumerate(results):
if result["success"]:
print(f"原标题: {titles[i]}")
print(f"优化建议: {result['content'][:100]}...")
print("-" * 40)
asyncio.run(batch_optimize())| 专家类型 | 分析重点 | 优化方向 |
|---|---|---|
| 用户心理专家 | 情感触发、心理需求 | 好奇心、恐惧感、成就感 |
| 数据分析专家 | 点击率、搜索热度 | 关键词优化、数据驱动 |
| 内容营销专家 | 目标受众、价值主张 | 转化率、商业价值 |
| 语言文字专家 | 表达力、可读性 | 语言技巧、修辞手法 |
| 社交媒体专家 | 传播性、话题性 | 分享动机、病毒传播 |
| 行业趋势专家 | 热点结合、时效性 | 趋势把握、前瞻性 |
| 用户体验专家 | 认知负荷、理解度 | 易读性、用户友好 |
| 创意策略专家 | 独特性、记忆点 | 差异化、创新表达 |
- 后端: Python 3.8+
- AI 模型: ModelScope GLM-4.5
- 异步处理: asyncio
- Web 框架: Flask (可选)
- 文本分析: jieba 分词
- API 客户端: OpenAI 兼容接口
- 吸引力 (25%) - 标题的视觉和心理吸引力
- 准确性 (20%) - 与内容的匹配度
- 传播性 (20%) - 社交媒体传播潜力
- 实用性 (15%) - 对用户的实际价值
- 创新性 (10%) - 表达方式的独特性
- 合规性 (10%) - 平台规则符合度
- 心理触发 - 利用好奇心、恐惧、成就感等心理机制
- 数字化表达 - 使用具体数字增强可信度
- 价值明确 - 清晰表达用户能获得的价值
- 情感共鸣 - 与目标受众产生情感连接
- 视觉优化 - 合理使用 emoji 和标点符号
- 长度控制 - 保持在最佳长度范围内
# ModelScope 配置
MODELSCOPE_CONFIG = {
"base_url": "https://api-inference.modelscope.cn/v1",
"model": "ZhipuAI/GLM-4.5",
"api_key": "your-api-key",
"temperature": 0.7, # 创意度 (0-1)
"max_tokens": 2000, # 最大输出长度
"timeout": 30 # 请求超时时间
}
# 默认提供商
DEFAULT_PROVIDER = "modelscope" # 可选: "oxygent" 或 "modelscope"TITLE_RULES = {
"max_length": 30, # 最大长度
"min_length": 8, # 最小长度
"forbidden_words": [ # 禁用词汇
"点击", "震惊", "不看后悔"
],
"recommended_patterns": [ # 推荐模式
"如何...", "为什么...", "...的N个方法"
]
}启动 Web 服务:
python web_interface.py访问 http://localhost:5000 使用可视化界面。
功能包括:
- 实时标题优化
- 专家分析展示
- 历史记录管理
- 批量处理工具
# 测试 ModelScope 连接
python test_modelscope.py
# 测试基础功能
python -m pytest tests/
# 性能测试
python benchmark.py项目包含多个测试用例:
- 连接测试
- 功能测试
- 性能测试
- 错误处理测试
- 异步 API 调用
- 批量请求支持
- 连接池管理
- 结果缓存
- 模型响应缓存
- 智能缓存失效
- 自动重试机制
- 降级策略
- 详细错误日志
欢迎贡献代码!请遵循以下步骤:
- Fork 项目
- 创建功能分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启 Pull Request
- 遵循 PEP 8 代码风格
- 添加适当的注释和文档
- 编写单元测试
- 更新相关文档
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
Q: 如何获取 ModelScope API Key? A: 访问 ModelScope 官网,注册账户后在 API 管理页面创建。
Q: 支持其他语言模型吗? A: 目前支持 ModelScope GLM-4.5,未来会添加更多模型支持。
Q: 可以本地部署吗? A: 是的,项目支持完全本地部署,无需外部依赖。
- 支持更多 AI 模型
- 增加批量导入功能
- 优化 Web 界面
- 添加 API 文档
- 移动端应用
- 插件系统
- 多语言支持
- 企业版功能
⭐ 如果这个项目对你有帮助,请给个 Star!
🚀 让我们一起打造更好的内容标题!