用Docker跑通AI内容创作:从接口到成稿的实操配置
AI内容创作应用不是装一个“写作软件”就完事,真正能用起来的是三样东西:一个可调用的模型接口、一套可复用的提示词模板,以及把两者串起来的脚本或工具。
本文用 Docker 在 Linux 服务器上跑通一套开源方案,重点讲配置和验证,适合已经有一台能联网的服务器、想自己搭内容生成流程的读者。
先确定你要生成什么内容
动手前先想清楚输出形态:是单篇长文、商品短文案,还是批量标题和摘要。
不同形态对应的参数差别很大。
例如长文需要更大的最大输出长度,短文案则要控制温度参数让结果更稳定。
本文以“输入主题和要点,生成一篇 800 字左右的文章草稿”为例,其他场景只需调整提示词和参数。
服务器准备:一台 2 核 4G 以上的 Linux 主机,已安装 Docker 和 Docker Compose。
检查命令:
docker --version
docker compose version
如果提示找不到命令,先按发行版文档安装 Docker,再继续。
不需要 GPU,模型通过 API 调用,本地只跑应用层。
部署应用并配置模型接口
这里选用支持自定义 OpenAI 兼容接口的开源前端工具,用 Compose 启动。
创建工作目录并写 docker-compose.yml:
services:
ai-writer:
image: ghcr.io/example/ai-writer:latest
container_name: ai-writer
ports:
- "3000:3000"
environment:
- OPENAI_API_KEY=你的接口密钥
- OPENAI_BASE_URL=https://api.example.com/v1
- MODEL_NAME=gpt-4o-mini
restart: unless-stopped
把 OPENAI_BASE_URL 和 MODEL_NAME 换成你实际使用的服务商地址和模型名。
密钥不要写进公开仓库,生产环境建议用 .env 文件并通过 env_file 引入。
启动:
docker compose up -d
docker compose logs -f ai-writer
日志出现监听 3000 端口即表示应用启动。
浏览器访问 http://服务器IP:3000,如果打不开,先检查防火墙是否放行端口,再确认容器状态 docker ps 是否为 Up。
写好提示词模板再批量生成
界面能打开不代表能产出可用内容。
在工具里新建一个模板,把结构固定下来,例如:
你是一名技术编辑。请围绕「{{主题}}」写一篇中文文章,包含以下要点:{{要点}}。
要求:开头直接回答核心问题,分 3 到 5 个小节,给出可执行步骤,不要编造版本号和价格。
把主题和要点做成变量,脚本循环调用接口即可批量生成。
用 curl 验证接口是否通:
curl -s https://api.example.com/v1/chat/completions \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-4o-mini","messages":[{"role":"user","content":"写一句测试文案"}]}'
返回 JSON 中 choices[0].message.content 有内容,说明密钥和地址正确;
返回 401 查密钥,404 查模型名,超时查服务器出网和接口地址。
容易踩的几个坑
第一,把密钥硬编码在前端代码里,浏览器直接能看到,必须放在服务端环境变量中。
第二,提示词里不限制长度,模型容易输出跑题内容,建议在模板里写明字数和结构。
第三,批量生成时不加延时,容易触发接口限流,脚本里加 1 到 2 秒间隔更稳。
第四,生成结果直接发布,缺少事实核对,涉及版本号、价格和政策的内容必须人工复查。
验证生成结果是否可用
打开应用页面,输入一个真实主题和两三条要点,点击生成。
检查三点:输出是否覆盖了全部要点,段落结构是否清楚,有没有出现明显编造的细节。
如果结果偏短,调大最大输出长度;
如果每次差异太大,降低温度参数。
把一次成功的参数和模板保存下来,后续复用,比每次重新调更省时间。
整套流程跑通后,你得到的是一个可重复的内容生成入口,而不是依赖某个网页工具的临时操作。
先小批量试跑,确认输出质量稳定后再扩大使用范围。