- Introduced Atomic Message Grouping to prevent tool-calling corruption (Issue #56) - Implemented Tail Boundary Alignment for deterministic context truncation - Added per-chat asynchronous session locking to prevent duplicate background tasks - Enhanced summarization traceability with message IDs and names - Synchronized version and changelog across all documentation files - Optimized release-prep skill to remove redundant H1 titles Closes #56
114 lines
2.8 KiB
Markdown
114 lines
2.8 KiB
Markdown
# ⚡ 快速部署参考 (Quick Deployment Reference)
|
||
|
||
## 一行命令部署
|
||
|
||
```bash
|
||
# 部署 async_context_compression Filter(默认)
|
||
cd scripts && python deploy_filter.py
|
||
|
||
# 列出所有可用 Filter
|
||
cd scripts && python deploy_filter.py --list
|
||
```
|
||
|
||
## 前置步骤(仅需一次)
|
||
|
||
```bash
|
||
# 1. 进入 scripts 目录
|
||
cd scripts
|
||
|
||
# 2. 创建 .env 文件,包含 OpenWebUI API 密钥
|
||
echo "api_key=sk-your-api-key-here" > .env
|
||
|
||
# 3. 确保 OpenWebUI 运行在 localhost:3003
|
||
```
|
||
|
||
## 获取 API 密钥
|
||
|
||
1. 打开 OpenWebUI → 用户头像 → Settings
|
||
2. 找到 "API Keys" 部分
|
||
3. 复制密钥(sk-开头)
|
||
4. 粘贴到 `.env` 文件
|
||
|
||
## 部署流程
|
||
|
||
```bash
|
||
# 1. 编辑插件代码
|
||
vim ../plugins/filters/async-context-compression/async_context_compression.py
|
||
|
||
# 2. 部署到本地
|
||
python deploy_filter.py
|
||
|
||
# 3. 在 OpenWebUI 测试(无需重启)
|
||
|
||
# 4. 重复部署(自动覆盖)
|
||
python deploy_filter.py
|
||
```
|
||
|
||
## 常见命令
|
||
|
||
| 命令 | 说明 |
|
||
|------|------|
|
||
| `python deploy_filter.py` | 部署 async_context_compression |
|
||
| `python deploy_filter.py filter-name` | 部署指定 Filter |
|
||
| `python deploy_filter.py --list` | 列出所有可用 Filter |
|
||
| `python deploy_pipe.py` | 部署 GitHub Copilot SDK Pipe |
|
||
|
||
## 故障诊断
|
||
|
||
| 错误 | 原因 | 解决方案 |
|
||
|------|------|----------|
|
||
| Connection error | OpenWebUI 未运行 | 启动 OpenWebUI 或检查端口 |
|
||
| .env not found | 未创建配置文件 | `echo "api_key=sk-..." > .env` |
|
||
| Filter not found | Filter 名称错误 | 运行 `python deploy_filter.py --list` |
|
||
| Status 401 | API 密钥无效 | 更新 `.env` 中的密钥 |
|
||
|
||
## 文件位置
|
||
|
||
```
|
||
openwebui-extensions/
|
||
├── scripts/
|
||
│ ├── deploy_filter.py ← Filter 部署工具
|
||
│ ├── deploy_pipe.py ← Pipe 部署工具
|
||
│ ├── .env ← API 密钥(不提交)
|
||
│ └── DEPLOYMENT_GUIDE.md ← 完整指南
|
||
│
|
||
└── plugins/
|
||
└── filters/
|
||
└── async-context-compression/
|
||
├── async_context_compression.py
|
||
├── README.md
|
||
└── README_CN.md
|
||
```
|
||
|
||
## 工作流建议
|
||
|
||
### 快速迭代开发
|
||
|
||
```bash
|
||
# Terminal 1: 启动 OpenWebUI(如果未运行)
|
||
docker run -d -p 3003:8080 ghcr.io/open-webui/open-webui:latest
|
||
|
||
# Terminal 2: 开发环节(重复执行)
|
||
cd scripts
|
||
code ../plugins/filters/async-context-compression/ # 编辑代码
|
||
python deploy_filter.py # 部署
|
||
# → 在 OpenWebUI 测试
|
||
# → 返回编辑,重复
|
||
```
|
||
|
||
### CI/CD 集成
|
||
|
||
```bash
|
||
# 在 GitHub Actions 中
|
||
- name: Deploy filter to staging
|
||
run: |
|
||
cd scripts
|
||
python deploy_filter.py async-context-compression
|
||
env:
|
||
api_key: ${{ secrets.OPENWEBUI_API_KEY }}
|
||
```
|
||
|
||
---
|
||
|
||
📚 **更多帮助**: 查看 `DEPLOYMENT_GUIDE.md`
|