cf7cbd2ad0
PR Test / lint (pull_request) Successful in 2s
- 新增 --type article 参数
- 文章类型生成 300 字摘要 + 完整原文
- 视频类型保持原有时间轴分析逻辑
- 更新相关文档
🤖 Generated by AI
103 lines
2.5 KiB
Markdown
103 lines
2.5 KiB
Markdown
# KB Deep Analyzer Skill
|
||
|
||
**kb-deep-analyzer** - AI 深度内容分析工具。
|
||
|
||
## Features
|
||
|
||
- 多类型分析:视频(video)、文章(article)
|
||
- 模板化输出
|
||
- 质量评分
|
||
- 自动标签
|
||
- **多格式元数据支持**: 支持扁平结构 `{"title":"xxx"}` 和嵌套结构 `{"data":{"metadata":{...}}}`
|
||
|
||
## 内容类型
|
||
|
||
| 类型 | 参数 | 输出格式 |
|
||
|------|------|----------|
|
||
| 视频 | `--type video` | 摘要 + 主题 + 见解 + 时间轴 |
|
||
| 文章 | `--type article` | 300字摘要 + 主题 + 原文 |
|
||
|
||
## Commands
|
||
|
||
```bash
|
||
# 分析视频(默认)
|
||
AI_API_KEY="your-api-key" AI_PROVIDER="zhipu" AI_MODEL="glm-5" \
|
||
python3 -u deep_analyzer.py --metadata meta.json --content content.json --output analysis.md --type video
|
||
|
||
# 分析文章(300字摘要 + 原文)
|
||
AI_API_KEY="your-api-key" AI_PROVIDER="zhipu" AI_MODEL="glm-5" \
|
||
python3 -u deep_analyzer.py --metadata meta.json --content content.json --output analysis.md --type article
|
||
|
||
# 指定 AI 提供商
|
||
python3 -u deep_analyzer.py -m meta.json -c content.json -o out.md --type video --provider zhipu --model glm-5
|
||
```
|
||
|
||
## 环境变量配置
|
||
|
||
**必须设置以下环境变量**:
|
||
|
||
```bash
|
||
export AI_API_KEY="your-api-key"
|
||
export AI_PROVIDER="zhipu" # 或 openai, minimax
|
||
export AI_MODEL="glm-5" # 模型名称
|
||
export AI_BASE_URL="https://..." # 可选,自定义 API 地址
|
||
```
|
||
|
||
### 重要提示
|
||
|
||
**必须使用 `-u` 参数运行 Python**,确保输出实时显示在终端:
|
||
|
||
```bash
|
||
python3 -u deep_analyzer.py ...
|
||
```
|
||
|
||
如果不使用 `-u` 参数,Python 的 stdout 缓冲会导致输出延迟或看不到进度。
|
||
|
||
## 执行方式选择
|
||
|
||
### 方式1: 并发执行(推荐,默认)
|
||
- 使用 `batch_size=3`(默认)
|
||
- 6个分片约 100 秒完成
|
||
- 适合快速分析
|
||
|
||
```bash
|
||
python3 -u deep_analyzer.py --metadata meta.json --content content.json -o out.md
|
||
```
|
||
|
||
### 方式2: 顺序执行
|
||
- 使用 `batch_size=1`
|
||
- 6个分片约 735 秒完成
|
||
- 适合调试和问题排查
|
||
|
||
```bash
|
||
# 在代码中设置 batch_size=1
|
||
# analyzer.analyze(metadata, content, "video", batch_size=1)
|
||
```
|
||
|
||
## Metadata Format
|
||
|
||
支持两种元数据格式:
|
||
|
||
```json
|
||
// 格式1: 扁平结构
|
||
{
|
||
"title": "视频标题",
|
||
"author": "作者名",
|
||
"duration": 619,
|
||
"bvid": "BVxxx"
|
||
}
|
||
|
||
// 格式2: 嵌套结构(kb-bilibili-metadata 输出)
|
||
{
|
||
"data": {
|
||
"metadata": {
|
||
"title": "视频标题",
|
||
"author": "作者名",
|
||
"duration": "10:19"
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
会自动转换为扁平格式进行分析。
|