Files

1 line
15 KiB
JSON
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.
{"repo": "cbdt-jwt/pag", "files": {"README.md": {"9d1b0f5c945319052f1af530fad4c587032ca957": {"t": 1785746654.5606422, "n": 2541, "h": "dda6d603eae12bfd", "c": "# 公众号论文写作工具\n\n把论文 URL 或 PDF 转成可直接粘贴到微信公众号后台的中文富文本。工具会下载/展示 PDF,调用 OpenAI 兼容接口生成论文解读文章,并支持在 PDF 上框选高清截图替换正文图片占位符。\n\n<img width=\"1512\" height=\"836\" alt=\"image\" src=\"https://github.com/user-attachments/assets/74930148-472e-4b6b-acc8-3304cc6e500e\" />\n\n## 功能亮点\n\n- 三栏工作台:左侧输入与进度,中间 PDF,右侧微信富文本预览。\n- 支持论文 URL、arXiv `abs` 链接、直接 PDF 链接和本地 PDF 上传。\n- 通过 OpenAI 兼容接口生成公众号风格论文解读。\n- Agent 可按需使用联网工具检索项目地址、开源仓库、作者和相关网页。\n- SSE 流式生成进度:最终富文本阶段按预计 5000 字估算进度。\n- 图片占位符可点击,然后在 PDF 当前页框选高清截图替换。\n- 复制按钮同时写入 `text/html` 和 `text/plain`,适合粘贴到微信公众平台。\n- 每次生成结果会落盘到 `public/runs/<run_id>/`,便于回看和补图。\n\n## 快速开始\n\n```bash\ncd /Users/weitaojiang/Documents/projects/vibe-wechat\npython3.12 -m venv .venv-flask\n.venv-flask/bin/pip install -r requirements.txt\n.venv-flask/bin/python app.py\n```\n\n打开浏览器:\n\n```text\nhttp://127.0.0.1:5001\n```\n\n## 环境配置\n\n在项目根目录创建 `.env`:\n\n```text\nAPI_KEY=\"你的 API Key\"\nAPI_URL=\"https://api.deepseek.com\"\nMODEL=\"deepseek-v4-pro\"\n```\n\n也兼容 OpenAI 风格变量:\n\n```text\nOPENAI_API_KEY=\"你的 API Key\"\nOPENAI_BASE_URL=\"https://api.example.com/v1\"\nOPENAI_MODEL=\"deepseek-v4-pro\"\n```\n\n如果希望复制到微信后台后的图片能被其他机器访问,建议配置公网或局域网地址:\n\n```text\nPUBLIC_BASE_URL=\"http://你的公网IP或局域网IP:5001\"\n```\n\n未配置时,应用会尽量推断本机局域网地址。\n\n## 可选依赖\n\nPDF 文本提取优先使用 `pdftotext`。macOS 可安装 Poppler:\n\n```bash\nbrew install poppler\n```\n\n未安装时应用仍可下载和展示 PDF,但模型主要依赖论文 URL、联网检索结果和可用上下文生成文章。\n\n## 使用流程\n\n1. 输入论文 URL,或切换到 PDF 上传模式。\n2. 可选上传头图、尾图,并填写重点关注作者。\n3. 点击「开始生成」,左侧会显示阶段日志和进度条。\n4. 生成完成后,在右侧预览富文本。\n5. 点击红色图片占位符,在中间 PDF 上拖拽框选图片区域。\n6. 点击「保存截图」,截图会保存并替换到富文本中。\n7. 点击「复制」,粘贴到微信公众号后台。\n\n## 项目结构\n\n```text\n.\n├── app.py # Flask 入口\n├── templates/index.html # 三栏工作台页面\n├── static/app.js # 前端交互、SSE、PDF 渲染、截图\n├── static/app.css # 页面样式\n├── assets/head-banner.png # 默认头图\n├── public/runs/ # 每次生成的输出目录\n└── wechat_writer/\n ├── __init__.py # create_app\n ├── agent.py # Agent、prompt、工具调用、流式生成\n ├── config.py # 路径、端口、环境变量\n ├── files.py # PDF 下载、文本提取、公开 URL\n ├── generation.py # 生成流程编排\n ├── http_client.py # HTTP / JSON / SSE 客户端\n ├── routes.py # Flask 路由\n └── wechat_html.py # 微信富文本 HTML 渲染\n```\n\n## 输出文件\n\n每次生成会写入:\n\n```text\npublic/runs/<run_id>/\n├── paper.pdf\n├── paper_text.txt\n├── metadata.json\n├── article.html\n├── head...\n├── tail...\n└── screenshot-...\n```\n\n## 说明\n\n- 正文中的 `**加粗**` 会渲染为蓝色 `rgb(67, 117, 185)`。\n- Markdown 二级标题会保持黑色。\n- `[[PAPER_INFO]]` 下方会固定插入一张「论文开头部分截图」占位图。\n- 截图会映射到高倍率 PDF 渲染画布上裁剪,以提升清晰度。\n"}, "ce99808fdb84b3fe9d97662927e1d23aa5620f1c": {"t": 1785766601.8641121, "n": 2541, "h": "dda6d603eae12bfd", "c": "# 公众号论文写作工具\n\n把论文 URL 或 PDF 转成可直接粘贴到微信公众号后台的中文富文本。工具会下载/展示 PDF,调用 OpenAI 兼容接口生成论文解读文章,并支持在 PDF 上框选高清截图替换正文图片占位符。\n\n<img width=\"1512\" height=\"836\" alt=\"image\" src=\"https://github.com/user-attachments/assets/74930148-472e-4b6b-acc8-3304cc6e500e\" />\n\n## 功能亮点\n\n- 三栏工作台:左侧输入与进度,中间 PDF,右侧微信富文本预览。\n- 支持论文 URL、arXiv `abs` 链接、直接 PDF 链接和本地 PDF 上传。\n- 通过 OpenAI 兼容接口生成公众号风格论文解读。\n- Agent 可按需使用联网工具检索项目地址、开源仓库、作者和相关网页。\n- SSE 流式生成进度:最终富文本阶段按预计 5000 字估算进度。\n- 图片占位符可点击,然后在 PDF 当前页框选高清截图替换。\n- 复制按钮同时写入 `text/html` 和 `text/plain`,适合粘贴到微信公众平台。\n- 每次生成结果会落盘到 `public/runs/<run_id>/`,便于回看和补图。\n\n## 快速开始\n\n```bash\ncd /Users/weitaojiang/Documents/projects/vibe-wechat\npython3.12 -m venv .venv-flask\n.venv-flask/bin/pip install -r requirements.txt\n.venv-flask/bin/python app.py\n```\n\n打开浏览器:\n\n```text\nhttp://127.0.0.1:5001\n```\n\n## 环境配置\n\n在项目根目录创建 `.env`:\n\n```text\nAPI_KEY=\"你的 API Key\"\nAPI_URL=\"https://api.deepseek.com\"\nMODEL=\"deepseek-v4-pro\"\n```\n\n也兼容 OpenAI 风格变量:\n\n```text\nOPENAI_API_KEY=\"你的 API Key\"\nOPENAI_BASE_URL=\"https://api.example.com/v1\"\nOPENAI_MODEL=\"deepseek-v4-pro\"\n```\n\n如果希望复制到微信后台后的图片能被其他机器访问,建议配置公网或局域网地址:\n\n```text\nPUBLIC_BASE_URL=\"http://你的公网IP或局域网IP:5001\"\n```\n\n未配置时,应用会尽量推断本机局域网地址。\n\n## 可选依赖\n\nPDF 文本提取优先使用 `pdftotext`。macOS 可安装 Poppler:\n\n```bash\nbrew install poppler\n```\n\n未安装时应用仍可下载和展示 PDF,但模型主要依赖论文 URL、联网检索结果和可用上下文生成文章。\n\n## 使用流程\n\n1. 输入论文 URL,或切换到 PDF 上传模式。\n2. 可选上传头图、尾图,并填写重点关注作者。\n3. 点击「开始生成」,左侧会显示阶段日志和进度条。\n4. 生成完成后,在右侧预览富文本。\n5. 点击红色图片占位符,在中间 PDF 上拖拽框选图片区域。\n6. 点击「保存截图」,截图会保存并替换到富文本中。\n7. 点击「复制」,粘贴到微信公众号后台。\n\n## 项目结构\n\n```text\n.\n├── app.py # Flask 入口\n├── templates/index.html # 三栏工作台页面\n├── static/app.js # 前端交互、SSE、PDF 渲染、截图\n├── static/app.css # 页面样式\n├── assets/head-banner.png # 默认头图\n├── public/runs/ # 每次生成的输出目录\n└── wechat_writer/\n ├── __init__.py # create_app\n ├── agent.py # Agent、prompt、工具调用、流式生成\n ├── config.py # 路径、端口、环境变量\n ├── files.py # PDF 下载、文本提取、公开 URL\n ├── generation.py # 生成流程编排\n ├── http_client.py # HTTP / JSON / SSE 客户端\n ├── routes.py # Flask 路由\n └── wechat_html.py # 微信富文本 HTML 渲染\n```\n\n## 输出文件\n\n每次生成会写入:\n\n```text\npublic/runs/<run_id>/\n├── paper.pdf\n├── paper_text.txt\n├── metadata.json\n├── article.html\n├── head...\n├── tail...\n└── screenshot-...\n```\n\n## 说明\n\n- 正文中的 `**加粗**` 会渲染为蓝色 `rgb(67, 117, 185)`。\n- Markdown 二级标题会保持黑色。\n- `[[PAPER_INFO]]` 下方会固定插入一张「论文开头部分截图」占位图。\n- 截图会映射到高倍率 PDF 渲染画布上裁剪,以提升清晰度。\n"}, "bcd7828ad7142e5a413f79c872c3f125c01df7b9": {"t": 1785766603.404758, "n": 2408, "h": "2de74ec44421383c", "c": "# 公众号论文写作工具\n\n把论文 URL 或 PDF 转成可直接粘贴到微信公众号后台的中文富文本。工具会下载/展示 PDF,调用 OpenAI 兼容接口生成论文解读文章,并支持在 PDF 上框选高清截图替换正文图片占位符。\n\n## 功能亮点\n\n- 三栏工作台:左侧输入与进度,中间 PDF,右侧微信富文本预览。\n- 支持论文 URL、arXiv `abs` 链接、直接 PDF 链接和本地 PDF 上传。\n- 通过 OpenAI 兼容接口生成公众号风格论文解读。\n- Agent 可按需使用联网工具检索项目地址、开源仓库、作者和相关网页。\n- SSE 流式生成进度:最终富文本阶段按预计 5000 字估算进度。\n- 图片占位符可点击,然后在 PDF 当前页框选高清截图替换。\n- 复制按钮同时写入 `text/html` 和 `text/plain`,适合粘贴到微信公众平台。\n- 每次生成结果会落盘到 `public/runs/<run_id>/`,便于回看和补图。\n\n## 快速开始\n\n```bash\ncd /Users/weitaojiang/Documents/projects/vibe-wechat\npython3.12 -m venv .venv-flask\n.venv-flask/bin/pip install -r requirements.txt\n.venv-flask/bin/python app.py\n```\n\n打开浏览器:\n\n```text\nhttp://127.0.0.1:5001\n```\n\n## 环境配置\n\n在项目根目录创建 `.env`:\n\n```text\nAPI_KEY=\"你的 API Key\"\nAPI_URL=\"https://api.deepseek.com\"\nMODEL=\"deepseek-v4-pro\"\n```\n\n也兼容 OpenAI 风格变量:\n\n```text\nOPENAI_API_KEY=\"你的 API Key\"\nOPENAI_BASE_URL=\"https://api.example.com/v1\"\nOPENAI_MODEL=\"deepseek-v4-pro\"\n```\n\n如果希望复制到微信后台后的图片能被其他机器访问,建议配置公网或局域网地址:\n\n```text\nPUBLIC_BASE_URL=\"http://你的公网IP或局域网IP:5001\"\n```\n\n未配置时,应用会尽量推断本机局域网地址。\n\n## 可选依赖\n\nPDF 文本提取优先使用 `pdftotext`。macOS 可安装 Poppler:\n\n```bash\nbrew install poppler\n```\n\n未安装时应用仍可下载和展示 PDF,但模型主要依赖论文 URL、联网检索结果和可用上下文生成文章。\n\n## 使用流程\n\n1. 输入论文 URL,或切换到 PDF 上传模式。\n2. 可选上传头图、尾图,并填写重点关注作者。\n3. 点击「开始生成」,左侧会显示阶段日志和进度条。\n4. 生成完成后,在右侧预览富文本。\n5. 点击红色图片占位符,在中间 PDF 上拖拽框选图片区域。\n6. 点击「保存截图」,截图会保存并替换到富文本中。\n7. 点击「复制」,粘贴到微信公众号后台。\n\n## 项目结构\n\n```text\n.\n├── app.py # Flask 入口\n├── templates/index.html # 三栏工作台页面\n├── static/app.js # 前端交互、SSE、PDF 渲染、截图\n├── static/app.css # 页面样式\n├── assets/head-banner.png # 默认头图\n├── public/runs/ # 每次生成的输出目录\n└── wechat_writer/\n ├── __init__.py # create_app\n ├── agent.py # Agent、prompt、工具调用、流式生成\n ├── config.py # 路径、端口、环境变量\n ├── files.py # PDF 下载、文本提取、公开 URL\n ├── generation.py # 生成流程编排\n ├── http_client.py # HTTP / JSON / SSE 客户端\n ├── routes.py # Flask 路由\n └── wechat_html.py # 微信富文本 HTML 渲染\n```\n\n## 输出文件\n\n每次生成会写入:\n\n```text\npublic/runs/<run_id>/\n├── paper.pdf\n├── paper_text.txt\n├── metadata.json\n├── article.html\n├── head...\n├── tail...\n└── screenshot-...\n```\n\n## 说明\n\n- 正文中的 `**加粗**` 会渲染为蓝色 `rgb(67, 117, 185)`。\n- Markdown 二级标题会保持黑色。\n- `[[PAPER_INFO]]` 下方会固定插入一张「论文开头部分截图」占位图。\n- 截图会映射到高倍率 PDF 渲染画布上裁剪,以提升清晰度。\n"}, "b952036eafaa96e1fb3063138c2cd007d0866531": {"t": 1785766605.1885796, "n": 1019, "h": "1a63233b076d5e05", "c": "# 公众号论文写作工具\n\nFlask Web 工具,用 `.env` 中的 OpenAI 兼容接口生成微信公众号论文解读富文本。\n\n## 启动\n\n```bash\ncd /Users/weitaojiang/Documents/projects/vibe-wechat\npython3.12 -m venv .venv-flask\n.venv-flask/bin/pip install -r requirements.txt\n.venv-flask/bin/python app.py\n```\n\n打开:\n\n```text\nhttp://127.0.0.1:5001\n```\n\n可选:为了让粘贴到微信公众平台后的图片能被其他机器访问,在 `.env` 中设置公网或局域网地址:\n\n```text\nPUBLIC_BASE_URL=\"http://你的公网IP或局域网IP:5001\"\n```\n\n## `.env`\n\n```text\nAPI_KEY=\"...\"\nAPI_URL=\"https://api.deepseek.com\"\nMODEL=\"deepseek-v4-pro\"\n```\n\n`MODEL` 可省略,默认使用 `deepseek-v4-pro`。\n\n## 可选依赖\n\n本地 PDF 文本提取会优先使用 `pdftotext`:\n\n```bash\nbrew install poppler\n```\n\n未安装时仍可保存和展示 PDF,模型会基于论文 URL、联网搜索结果和可用上下文生成文章。\n\n## 功能\n\n- 输入论文 URL 或上传 PDF。\n- 在 `public/runs/<本次项目>/` 下保存论文、头图、尾图、截图和生成结果。\n- URL 输入时自动下载 PDF,支持 arXiv `abs` 链接和直接 PDF 链接。\n- 左侧展示 PDF,右侧展示微信公众号富文本预览。\n- 通过 OpenAI 兼容接口和 tool call 风格的联网搜索/网页读取提取标题、项目地址、论文地址。\n- 生成类似示例富文本风格的公众号文章。\n- 图片位置使用 `[[IMAGE:图片描述]]` 占位,前端渲染为红色可点击 `[图片描述]`。\n- 点击占位符后可在左侧 PDF 当前页框选截图,图片保存到本次项目目录并替换富文本。\n- 复制按钮写入 `text/html` 和 `text/plain`,可直接粘贴到微信公众平台。\n"}}}}