Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
__pycache__/
*.pyc
118 changes: 118 additions & 0 deletions README_审稿系统使用指南.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
# 分布式审稿协调系统 - 使用指南

## 这是什么?

这是一个基于 Streamlit 的**网页应用**,模拟学术期刊的多轮审稿流程。包含三个智能代理:
- **EIC (主编)** - 统筹协调审稿,综合评分,做出最终决定
- **Reviewer (审稿人)** - 按维度评估稿件,提供修改意见
- **Author (作者)** - 接收反馈,逐条回复,修改稿件

---

## 从零开始运行(Mac 版)

### 第一步:打开终端

按 `Command + 空格`,输入 `Terminal`,按回车。

### 第二步:下载代码

在终端中逐行输入以下命令:

```bash
git clone https://github.com/chenhaozhou1996/streamlit-example.git
```

```bash
cd streamlit-example
```

```bash
git checkout claude/manuscript-review-coordinator-wz0mC
```

### 第三步:安装依赖

```bash
pip3 install streamlit pandas altair
```

> 如果提示 `pip3: command not found`,试试:
> ```bash
> python3 -m pip install streamlit pandas altair
> ```

### 第四步:运行应用

```bash
streamlit run manuscript_review_app.py
```

运行后终端会显示类似:
```
Local URL: http://localhost:8501
```

浏览器会**自动打开**这个地址。如果没有自动打开,手动在浏览器中输入 `http://localhost:8501`。

### 第五步:停止运行

回到终端,按 `Ctrl + C` 即可停止。

---

## 使用说明

### 基本流程

1. **配置参数** - 左侧边栏可修改论文标题、摘要、最大审稿轮数
2. **提交稿件** - 点击「提交稿件并开始审稿流程」
3. **执行审稿** - 点击「执行第 N 轮审稿」,3位审稿人将各自评审
4. **查看结果** - 查看审稿报告、EIC综合意见、评分趋势、分歧分析
5. **作者修改** - 如果需要修改,点击「作者开始修改」
6. **循环** - 系统自动进入下一轮审稿,直到接受或拒稿
7. **下载报告** - 完成后可下载 TXT/JSON/CSV 格式的完整报告

### 自动模式

点击「自动运行完整流程」可以一键跑完所有轮次,自动完成审稿-修改-再审循环。

### 可查看的面板

| 标签页 | 内容 |
|--------|------|
| 审稿报告 | 各审稿人的详细评分和意见 |
| EIC综合意见 | 主编综合评定、共识度分析 |
| 意见追踪 | 每条意见的解决状态(已解决/部分/未解决) |
| 评分趋势 | 各维度评分的跨轮次变化曲线 |
| 分歧分析 | 审稿人评分热力图,可视化分歧 |
| 版本对比 | 稿件不同版本间的章节级差异 |
| 收敛趋势 | 综合评分是否在向接受阈值收敛 |

### 下载文档

审稿完成后,页面底部会出现三个下载按钮:
- **TXT** - 完整审稿报告(人工阅读)
- **JSON** - 结构化数据(程序分析)
- **CSV** - 评分汇总表(Excel打开)

---

## 常见问题

### Q: `git clone` 失败?
确保已安装 Git。Mac 上在终端输入 `git --version`,如果没有会提示安装。

### Q: `pip3 install` 失败?
试试:
```bash
python3 -m pip install --user streamlit pandas altair
```

### Q: 端口被占用?
```bash
streamlit run manuscript_review_app.py --server.port 8502
```

### Q: 浏览器没有自动打开?
手动访问终端显示的 `Local URL` 地址(通常是 `http://localhost:8501`)。
207 changes: 207 additions & 0 deletions README_插件使用指南.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,207 @@
# 审稿协调系统 - 插件使用指南

本项目提供 **3种使用方式**:

| 方式 | 文件 | 特点 |
|------|------|------|
| Streamlit 网页版 | `manuscript_review_app.py` | 可视化界面,鼠标操作 |
| MCP 插件 | `mcp_review_server.py` | 在 Claude Code 中直接调用 |
| Agent SDK 版 | `review_agent.py` | 真正的 AI 多代理审稿 |

---

## 方式一: MCP 插件 (在 Claude Code 中使用)

### 安装

```bash
pip install mcp
```

### 配置 Claude Code

在你的 Claude Code 设置中添加 MCP server。编辑 `~/.claude/claude_desktop_config.json`:

```json
{
"mcpServers": {
"manuscript-review": {
"command": "python3",
"args": ["/你的路径/streamlit-example/mcp_review_server.py"]
}
}
}
```

或者在项目的 `.mcp.json` 中配置:

```json
{
"mcpServers": {
"manuscript-review": {
"command": "python3",
"args": ["mcp_review_server.py"]
}
}
}
```

### 重启 Claude Code

配置完成后重启 Claude Code,你就可以直接说:

> "帮我审稿,标题是XXX,摘要是XXX"

Claude 会自动调用以下工具:

| 工具 | 说明 |
|------|------|
| `init_review` | 创建审稿会话 |
| `run_review` | 执行一轮审稿 |
| `author_revise` | 作者修改 |
| `next_round` | 推进下一轮 |
| `get_status` | 查看状态 |
| `export_report` | 导出报告 |
| `auto_run` | 自动跑完全流程 |
| `list_sessions` | 列出所有会话 |

### 使用示例

在 Claude Code 中输入:

```
初始化一个审稿,标题是"基于深度学习的图像分类研究",摘要是"本文提出了一种新的CNN架构..."
```

然后:

```
执行审稿
```

```
让作者修改
```

```
导出审稿报告
```

---

## 方式二: Agent SDK 版 (真正的 AI 审稿)

这个版本使用 Claude API 真正生成智能审稿意见 (不是模板)。

### 安装

```bash
pip install anthropic
```

### 设置 API Key

```bash
export ANTHROPIC_API_KEY=sk-ant-你的key
```

### 命令行运行

```bash
# 基本用法
python3 review_agent.py \
--title "基于多代理协调的分布式审稿系统研究" \
--abstract "本文提出了一种基于多代理协调的分布式审稿系统..."

# 指定模型和轮数
python3 review_agent.py \
--title "你的论文标题" \
--abstract "你的摘要" \
--max-rounds 3 \
--model claude-haiku-4-5-20251001

# 导出报告
python3 review_agent.py \
--title "论文标题" \
--abstract "摘要" \
--export report.txt

# 静默模式 (只输出JSON)
python3 review_agent.py \
--title "论文标题" \
--abstract "摘要" \
--quiet
```

### 作为 Python 模块使用

```python
import asyncio
from review_agent import ReviewOrchestrator, AgentConfig

config = AgentConfig(model="claude-haiku-4-5-20251001")
orch = ReviewOrchestrator(config=config, max_rounds=3)

result = asyncio.run(orch.run(
title="你的论文标题",
abstract="你的摘要",
verbose=True
))

# 导出报告
print(orch.export_report())
```

### 运行效果示例

```
==================================================
分布式审稿协调代理系统
稿件: 基于深度学习的图像分类研究
==================================================

────────────────────────────────
第 1 轮审稿
────────────────────────────────
审稿人A (方法论专家) 审稿中...
→ 评分: 6.2 | 建议: major_revision | 意见: 4条
审稿人B (领域专家) 审稿中...
→ 评分: 7.5 | 建议: minor_revision | 意见: 2条
审稿人C (写作审查) 审稿中...
→ 评分: 5.8 | 建议: major_revision | 意见: 5条

EIC 综合分析中...
→ 建议: major_revision | 综合分: 6.5
→ 共识度: medium
→ 关键问题: 方法论需要更多验证, 写作需全面润色

作者修改中...
→ 回复 11 条意见, 解决 9 条
→ 反驳 2 点

────────────────────────────────
第 2 轮审稿
────────────────────────────────
...

==================================================
审稿完成
最终决定: accept
评分趋势: 6.5 → 8.1
总轮数: 2
==================================================
```

---

## 方式三: Streamlit 网页版

见 `README_审稿系统使用指南.md`。

---

## 费用说明

- **MCP 插件版**: 不消耗 API 额度 (使用模拟逻辑)
- **Agent SDK 版**: 每轮审稿约消耗 ~5000 tokens (使用 Haiku 模型,成本约 $0.005/轮)
- **Streamlit 版**: 不消耗 API 额度 (使用模拟逻辑)
Loading