Files
chengshishouce/CLI_USAGE.md
maoshen e105b573da feat: 添加命令行接口 (CLI) 工具
- 新增 cli.py 命令行工具
- 支持所有核心功能操作
- 新增 CLI_USAGE.md 使用文档
- 所有命令测试通过 

功能列表:
- login: 登录认证
- provinces: 获取省份
- article: 文章管理
- service: 服务管理
- audit: AI 审核
2026-04-14 03:06:40 +00:00

336 lines
6.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 城市手册 - 命令行接口使用指南
## 概述
城市手册提供完整的命令行接口 (CLI),可以通过命令行操作所有核心功能。
## 运行方式
### 在服务器上运行
```bash
cd /home/ubuntu/city-manual
docker compose exec -T backend python /app/cli.py <命令> [参数]
```
### 本地运行(需要访问服务器数据库)
```bash
cd /path/to/project
python cli.py <命令> [参数]
```
---
## 命令列表
### 认证命令
#### login - 登录获取 Token
```bash
docker compose exec -T backend python /app/cli.py login <用户名> <密码>
```
**示例:**
```bash
docker compose exec -T backend python /app/cli.py login admin Admin123!
```
**输出:**
```
✅ 登录成功
Token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
```
---
### 省份命令
#### provinces - 获取所有省份
```bash
docker compose exec -T backend python /app/cli.py provinces
```
**输出:**
```
✅ 共 34 个省份:
1. 北京市 (ID: 1)
2. 天津市 (ID: 2)
3. 上海市 (ID: 3)
...
```
#### region - 获取省份详情
```bash
docker compose exec -T backend python /app/cli.py region <省份 ID>
```
**示例:**
```bash
docker compose exec -T backend python /app/cli.py region 1
```
---
### 文章命令
#### article list - 获取文章列表
```bash
docker compose exec -T backend python /app/cli.py article list [数量]
```
**示例:**
```bash
docker compose exec -T backend python /app/cli.py article list 10
```
#### article create - 创建文章
```bash
docker compose exec -T backend python /app/cli.py article create <标题> <内容> <省份 ID> [类型]
```
**类型选项:** `basic`, `history`, `culture`, `practical`, `life`
**示例:**
```bash
docker compose exec -T backend python /app/cli.py article create "北京攻略" "北京是中国的首都..." 1 basic
```
#### article submit - 提交文章审核
```bash
docker compose exec -T backend python /app/cli.py article submit <文章 ID>
```
**示例:**
```bash
docker compose exec -T backend python /app/cli.py article submit 1
```
---
### 服务命令
#### service list - 获取服务列表
```bash
docker compose exec -T backend python /app/cli.py service list [数量]
```
**示例:**
```bash
docker compose exec -T backend python /app/cli.py service list 10
```
#### service create - 创建特色服务
```bash
docker compose exec -T backend python /app/cli.py service create <名称> <描述> <省份 ID> [分类]
```
**分类选项:** `clothing`, `food`, `accommodation`, `transport`, `entertainment`, `tourism`, `culture`
**示例:**
```bash
docker compose exec -T backend python /app/cli.py service create "老北京烤鸭" "正宗北京烤鸭" 1 food
```
---
### AI 审核命令 🔥
#### audit status - AI 审核服务状态
```bash
docker compose exec -T backend python /app/cli.py audit status
```
**输出:**
```
✅ AI 审核服务状态active
版本1.0.0
功能:敏感词检测, 广告检测, 内容质量评估
```
#### audit article - AI 审核文章
```bash
docker compose exec -T backend python /app/cli.py audit article <标题> <内容>
```
**示例 1 (正常内容):**
```bash
docker compose exec -T backend python /app/cli.py audit article "北京攻略" "北京是中国的首都,有很多著名景点"
```
**输出:**
```
AI 审核结果:✅ 通过
原因:审核通过
详情:{
"quality_score": 100
}
```
**示例 2 (敏感词):**
```bash
docker compose exec -T backend python /app/cli.py audit article "测试" "这是一个包含暴力内容的文章"
```
**输出:**
```
AI 审核结果:❌ 拒绝
原因:内容包含敏感词:暴力
详情:{
"sensitive_words": [
"暴力"
]
}
```
#### audit comment - AI 审核评论
```bash
docker compose exec -T backend python /app/cli.py audit comment <内容>
```
**示例 1 (正常):**
```bash
docker compose exec -T backend python /app/cli.py audit comment "写得很好!"
```
**示例 2 (广告):**
```bash
docker compose exec -T backend python /app/cli.py audit comment "加微信 123456 了解更多"
```
**输出:**
```
AI 审核结果:❌ 拒绝
原因:疑似广告:加微信
```
#### audit service - AI 审核服务
```bash
docker compose exec -T backend python /app/cli.py audit service <名称> <描述>
```
**示例:**
```bash
docker compose exec -T backend python /app/cli.py audit service "老北京烤鸭" "正宗北京烤鸭,皮脆肉嫩"
```
---
## 快速测试脚本
### 测试所有 AI 审核功能
```bash
cd /home/ubuntu/city-manual
echo '=== AI 审核测试套件 ==='
echo '1. 测试正常文章'
docker compose exec -T backend python /app/cli.py audit article '北京攻略' '北京是中国的首都'
echo ''
echo '2. 测试敏感词文章'
docker compose exec -T backend python /app/cli.py audit article '测试' '包含暴力内容'
echo ''
echo '3. 测试广告评论'
docker compose exec -T backend python /app/cli.py audit comment '加微信 123456'
echo ''
echo '4. 测试正常服务'
docker compose exec -T backend python /app/cli.py audit service '烤鸭店' '正宗北京烤鸭'
echo ''
echo '=== 测试完成 ==='
```
---
## 完整工作流程示例
### 1. 创建并审核文章
```bash
# 查看省份列表
docker compose exec -T backend python /app/cli.py provinces
# 创建文章(使用北京市 ID=1
docker compose exec -T backend python /app/cli.py article create "北京旅游攻略" "北京是中国的首都..." 1
# AI 预审
docker compose exec -T backend python /app/cli.py audit article "北京旅游攻略" "北京是中国的首都..."
# 提交审核
docker compose exec -T backend python /app/cli.py article submit 1
```
### 2. 创建并审核服务
```bash
# 创建服务
docker compose exec -T backend python /app/cli.py service create "老北京烤鸭" "正宗北京烤鸭" 1 food
# AI 预审
docker compose exec -T backend python /app/cli.py audit service "老北京烤鸭" "正宗北京烤鸭"
```
---
## 错误处理
### 常见错误
1. **认证失败**
```
❌ 错误Authentication credentials were not provided.
```
解决:确保使用正确的用户名密码登录
2. **网络错误**
```
❌ 错误network - <urlopen error...>
```
解决:检查 Docker 容器是否正常运行
3. **内容被拒绝**
```
AI 审核结果:❌ 拒绝
原因:内容包含敏感词:暴力
```
解决:修改内容,移除敏感词
---
## 系统状态检查
```bash
# 检查容器状态
docker compose ps
# 检查数据库
docker compose exec -T backend python /app/cli.py provinces
# 检查 AI 审核服务
docker compose exec -T backend python /app/cli.py audit status
```
---
## 文档版本
- **版本**: 1.0.0
- **更新日期**: 2026-04-14
- **测试状态**: ✅ 所有命令测试通过