feat(article): 更新文章内容并集成CDN图片上传功能
- 将文章中的本地图片路径替换为CDN链接 - 修改文章引子部分,更新案例描述和内容细节 - 添加即梦AI图片生成命令配置文件 - 添加七牛云OSS上传命令配置文件和上传脚本 - 创建七牛云存储凭证文档 - 更新OpenClaw相关内容和图片引用链接
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
# 即梦 AI 图片生成
|
||||
|
||||
使用即梦 AI(火山引擎)生成图片。
|
||||
|
||||
## 使用方式
|
||||
|
||||
用户会提供:
|
||||
1. **prompt**:图片描述(中文)
|
||||
2. **output_path**:输出路径(可选,默认保存到当前工作目录)
|
||||
|
||||
## 执行步骤
|
||||
|
||||
1. 激活项目虚拟环境:`source .venv/bin/activate`
|
||||
2. 调用 `scripts/jimeng_gen.py` 生成图片
|
||||
3. 即梦 API 仅支持 **1024x1024** 正方形尺寸
|
||||
4. 如果用户需要 16:9 比例,先生成 1024x1024,再用 Pillow 居中裁剪为 1024x576
|
||||
5. 展示生成的图片给用户
|
||||
|
||||
## 调用示例
|
||||
|
||||
```bash
|
||||
source .venv/bin/activate && python scripts/jimeng_gen.py "图片描述prompt" "输出路径.png"
|
||||
```
|
||||
|
||||
## 16:9 裁剪(如需要)
|
||||
|
||||
```bash
|
||||
source .venv/bin/activate && python -c "
|
||||
from PIL import Image
|
||||
img = Image.open('输出路径.png')
|
||||
w, h = img.size
|
||||
new_h = int(w * 9 / 16)
|
||||
top = (h - new_h) // 2
|
||||
img.crop((0, top, w, top + new_h)).save('输出路径.png')
|
||||
"
|
||||
```
|
||||
|
||||
## 注意事项
|
||||
|
||||
- 即梦 API **仅支持 1024x1024**,其他尺寸会提交成功但生成失败
|
||||
- 需要非正方形图片时,先生成方形再裁剪
|
||||
- 提交后需要轮询等待结果,通常 5-10 秒完成
|
||||
- 脚本位于 `scripts/jimeng_gen.py`,密钥已内置
|
||||
- 虚拟环境位于 `.venv/`,已安装 `requests` 和 `Pillow`
|
||||
|
||||
## API 凭证(已内置于脚本)
|
||||
|
||||
- Endpoint: `https://visual.volcengineapi.com`
|
||||
- Region: `cn-north-1`
|
||||
- Service: `cv`
|
||||
- 模型: `jimeng_t2i_v40`(即梦图片生成 4.0)
|
||||
- 签名: HMAC-SHA256 V4
|
||||
|
||||
$ARGUMENTS
|
||||
@@ -0,0 +1,99 @@
|
||||
# 七牛云 OSS 上传
|
||||
|
||||
将本地文件上传到七牛云 CDN 存储。
|
||||
|
||||
## 使用方式
|
||||
|
||||
用户会提供:
|
||||
1. **file_path**:要上传的本地文件路径(支持单个文件或目录)
|
||||
2. **prefix**:OSS 存储路径前缀(可选,默认 `self-media/`)
|
||||
|
||||
## 执行步骤
|
||||
|
||||
1. 激活项目虚拟环境:`source .venv/bin/activate`
|
||||
2. 使用七牛 Python SDK 上传文件
|
||||
3. 返回 CDN 访问链接
|
||||
|
||||
## 单文件上传
|
||||
|
||||
```bash
|
||||
source .venv/bin/activate && python -c "
|
||||
from qiniu import Auth, put_file
|
||||
import os
|
||||
|
||||
AK = 't1PIPGcvBY9lJVXFZFb48maTQsGGhvLsR5QQlNq0'
|
||||
SK = 'KGooFdF5eCLdCIMCOD6x5ofMzu4vYE17T5Mvp9qC'
|
||||
BUCKET = 'union-saas'
|
||||
CDN = 'https://cdn.union.jxyunge.com'
|
||||
|
||||
local_path = '本地文件路径'
|
||||
key = 'self-media/远程存储路径'
|
||||
|
||||
q = Auth(AK, SK)
|
||||
token = q.upload_token(BUCKET, key, 3600)
|
||||
ret, info = put_file(token, key, local_path, version='v2')
|
||||
|
||||
if info.status_code == 200:
|
||||
print(f'上传成功: {CDN}/{key}')
|
||||
else:
|
||||
print(f'上传失败: {info}')
|
||||
"
|
||||
```
|
||||
|
||||
## 批量上传目录
|
||||
|
||||
```bash
|
||||
source .venv/bin/activate && python scripts/upload_qiniu.py
|
||||
```
|
||||
|
||||
脚本 `scripts/upload_qiniu.py` 会上传 `articles/001/images/` 下所有 PNG 文件。
|
||||
|
||||
## 自定义批量上传
|
||||
|
||||
```bash
|
||||
source .venv/bin/activate && python -c "
|
||||
from qiniu import Auth, put_file
|
||||
import os, glob
|
||||
|
||||
AK = 't1PIPGcvBY9lJVXFZFb48maTQsGGhvLsR5QQlNq0'
|
||||
SK = 'KGooFdF5eCLdCIMCOD6x5ofMzu4vYE17T5Mvp9qC'
|
||||
BUCKET = 'union-saas'
|
||||
CDN = 'https://cdn.union.jxyunge.com'
|
||||
|
||||
local_dir = '本地目录路径'
|
||||
prefix = 'self-media/自定义前缀/'
|
||||
|
||||
q = Auth(AK, SK)
|
||||
for f in sorted(glob.glob(os.path.join(local_dir, '*'))):
|
||||
name = os.path.basename(f)
|
||||
key = prefix + name
|
||||
token = q.upload_token(BUCKET, key, 3600)
|
||||
ret, info = put_file(token, key, f, version='v2')
|
||||
status = '成功' if info.status_code == 200 else '失败'
|
||||
print(f'[{status}] {name} -> {CDN}/{key}')
|
||||
"
|
||||
```
|
||||
|
||||
## 在 Markdown 中替换图片链接
|
||||
|
||||
上传后,将文章中的本地图片路径替换为 CDN 链接:
|
||||
- 本地路径格式:``
|
||||
- CDN 链接格式:``
|
||||
|
||||
## 七牛凭证
|
||||
|
||||
| 配置项 | 值 |
|
||||
|--------|------|
|
||||
| 上传地址 | `https://up-z0.qiniup.com` |
|
||||
| AK | `t1PIPGcvBY9lJVXFZFb48maTQsGGhvLsR5QQlNq0` |
|
||||
| SK | `KGooFdF5eCLdCIMCOD6x5ofMzu4vYE17T5Mvp9qC` |
|
||||
| CDN 域名 | `https://cdn.union.jxyunge.com` |
|
||||
| 空间名 | `union-saas` |
|
||||
|
||||
## 注意事项
|
||||
|
||||
- 虚拟环境 `.venv/` 已安装 `qiniu` SDK
|
||||
- 上传同名文件会覆盖
|
||||
- CDN 链接格式:`https://cdn.union.jxyunge.com/{key}`
|
||||
|
||||
$ARGUMENTS
|
||||
Reference in New Issue
Block a user