Generate PPT with Baidu AI. Smart template selection based on content.
Scanned 9/6/2026
Install to Claude Code
npx -y skills add LeoYeAI/openclaw-master-skills --skill ai-ppt-generator --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Ai Ppt Generator?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/leoyeai-ai-ppt-generator)More formats (shields.io, HTML) on the badges page.
---
name: ai-ppt-generator
description: Generate PPT with Baidu AI. Smart template selection based on content.
metadata: { "openclaw": { "emoji": "📑", "requires": { "bins": ["python3"], "env":["BAIDU_API_KEY"]},"primaryEnv":"BAIDU_API_KEY" } }
---
# AI PPT Generator
Generate PPT using Baidu AI with intelligent template selection.
## Smart Workflow
1. **User provides PPT topic**
2. **Agent asks**: "Want to choose a template style?"
3. **If yes** → Show styles from `ppt_theme_list.py` → User picks → Use `generate_ppt.py` with chosen `tpl_id` and real `style_id`
4. **If no** → Use `random_ppt_theme.py` (auto-selects appropriate template based on topic content)
## Intelligent Template Selection
`random_ppt_theme.py` analyzes the topic and suggests appropriate template:
- **Business topics** → 企业商务 style
- **Technology topics** → 未来科技 style
- **Education topics** → 卡通手绘 style
- **Creative topics** → 创意趣味 style
- **Cultural topics** → 中国风 or 文化艺术 style
- **Year-end reports** → 年终总结 style
- **Minimalist design** → 扁平简约 style
- **Artistic content** → 文艺清新 style
## Scripts
- `scripts/ppt_theme_list.py` - List all available templates with style_id and tpl_id
- `scripts/random_ppt_theme.py` - Smart template selection + generate PPT
- `scripts/generate_ppt.py` - Generate PPT with specific template (uses real style_id and tpl_id from API)
## Key Features
- **Smart categorization**: Analyzes topic content to suggest appropriate style
- **Fallback logic**: If template not found, automatically uses random selection
- **Complete parameters**: Properly passes both style_id and tpl_id to API
## Usage Examples
```bash
# List all templates with IDs
python3 scripts/ppt_theme_list.py
# Smart automatic selection (recommended for most users)
python3 scripts/random_ppt_theme.py --query "人工智能发展趋势报告"
# Specific template with proper style_id
python3 scripts/generate_ppt.py --query "儿童英语课件" --tpl_id 106
# Specific template with auto-suggested category
python3 scripts/random_ppt_theme.py --query "企业年度总结" --category "企业商务"
```
## Agent Steps
1. Get PPT topic from user
2. Ask: "Want to choose a template style?"
3. **If user says YES**:
- Run `ppt_theme_list.py` to show available templates
- User selects a template (note the tpl_id)
- Run `generate_ppt.py --query "TOPIC" --tpl_id ID`
4. **If user says NO**:
- Run `random_ppt_theme.py --query "TOPIC"`
- Script will auto-select appropriate template based on topic
5. Set timeout to 300 seconds (PPT generation takes 2-5 minutes)
6. Monitor output, wait for `is_end: true` to get final PPT URL
## Output Examples
**During generation:**
```json
{"status": "PPT生成中", "run_time": 45}
```
**Final result:**
```json
{
"status": "PPT导出结束",
"is_end": true,
"data": {"ppt_url": "https://image0.bj.bcebos.com/...ppt"}
}
```
## Technical Notes
- **API integration**: Fetches real style_id from Baidu API for each template
- **Error handling**: If template not found, falls back to random selection
- **Timeout**: Generation takes 2-5 minutes, set sufficient timeout
- **Streaming**: Uses streaming API, wait for `is_end: true` before considering completeIs this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!