{"_id":"@difyz/n8n-nodes-volcengine","_rev":"2-930b36f7b5077a906ca4164cfe705984","name":"@difyz/n8n-nodes-volcengine","dist-tags":{"latest":"1.0.18"},"versions":{"1.0.17":{"name":"@difyz/n8n-nodes-volcengine","version":"1.0.17","keywords":["n8n-community-node-package","n8n","volcengine","ark","doubao","seedream","seedance","image","video","generation","langchain","ai","llm","file","upload","files"],"author":{"name":"difyz9","email":"difyz.com@gmail.com"},"license":"MIT","_id":"@difyz/n8n-nodes-volcengine@1.0.17","maintainers":[{"name":"difyz","email":"difyz.com@gmail.com"}],"homepage":"https://github.com/difyz9/n8n-nodes-volcengine#readme","bugs":{"url":"https://github.com/difyz9/n8n-nodes-volcengine/issues"},"n8n":{"nodes":["dist/nodes/VolcengineArkNextChatModel/VolcengineArkNextChatModel.node.js","dist/nodes/VolcengineArkNextImageModel/VolcengineArkNextImageModel.node.js","dist/nodes/VolcengineArkNextVideoModel/VolcengineArkNextVideoModel.node.js","dist/nodes/VolcengineArkNextFileModel/VolcengineArkNextFileModel.node.js"],"credentials":["dist/credentials/VolcengineArkNextApi.credentials.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"c58c1bf3b36ddebda2b36adeec492d4dcac32091","tarball":"https://registry.npmjs.org/@difyz/n8n-nodes-volcengine/-/n8n-nodes-volcengine-1.0.17.tgz","fileCount":28300,"integrity":"sha512-7z9iO1H83Wvgy0xhHm5Fwmsi4xSM9TEtD59wVpO0DTomf8bOAh/g7JlDZwUfV+Qkxq526pZQBPFLkD58E+t66Q==","signatures":[{"sig":"MEUCIE/r+lKsuisZMG5UEYjcY6O8kL7cwWZLrMGuaH0CS6xuAiEA1SNtwrHDBHhItbXu55xG4/Rm5h5CxLfvOsOx7C9/onM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":150465916},"main":"dist/nodes/VolcengineArkNextChatModel/VolcengineArkNextChatModel.node.js","engines":{"node":">=22.16"},"gitHead":"eb02172511d021f8235e03a822e39017fc262b17","scripts":{"dev":"n8n-node dev","lint":"n8n-node lint","build":"n8n-node build","clean":"rm -rf dist","release":"node scripts/release.mjs","lint:fix":"n8n-node lint --fix","pack:check":"npm pack --dry-run","build:watch":"tsc --watch","release:check":"node scripts/release-check.mjs","prepublishOnly":"node scripts/prepublish-only.mjs"},"_npmUser":{"name":"difyz","email":"difyz.com@gmail.com"},"repository":{"url":"git+https://github.com/difyz9/n8n-nodes-volcengine.git","type":"git"},"_npmVersion":"11.6.2","description":"n8n community node — Volcengine Ark (火山方舟) Doubao Chat Model, Seedream Image Generation, Seedance Video Generation (OpenAI-compatible API, thinking mode).","directories":{},"_nodeVersion":"24.6.0","dependencies":{"undici":"6.25.0","@langchain/core":"1.1.42","@langchain/openai":"1.4.5","@n8n/ai-utilities":"0.14.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.29.0","copyfiles":"^2.4.1","typescript":"~5.7.0","@types/node":"^22.0.0","n8n-workflow":">=1.82.0","@n8n/eslint-plugin-community-nodes":"^0.15.0"},"peerDependencies":{"n8n-workflow":">=1.82.0"},"bundleDependencies":["@langchain/core","@langchain/openai","@n8n/ai-utilities","undici"],"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-volcengine_1.0.17_1784355628518_0.1993278490894954","host":"s3://npm-registry-packages-npm-production"}},"1.0.18":{"name":"@difyz/n8n-nodes-volcengine","version":"1.0.18","description":"n8n community node — Volcengine Ark (火山方舟) Doubao Chat Model, Seedream Image Generation, Seedance Video Generation (OpenAI-compatible API, thinking mode).","keywords":["n8n-community-node-package","n8n","volcengine","ark","doubao","seedream","seedance","image","video","generation","langchain","ai","llm","file","upload","files"],"license":"MIT","author":{"name":"difyz9","email":"difyz.com@gmail.com"},"publishConfig":{"access":"public"},"homepage":"https://github.com/difyz9/n8n-nodes-volcengine#readme","repository":{"type":"git","url":"git+https://github.com/difyz9/n8n-nodes-volcengine.git"},"bugs":{"url":"https://github.com/difyz9/n8n-nodes-volcengine/issues"},"main":"dist/nodes/VolcengineArkNextChatModel/VolcengineArkNextChatModel.node.js","scripts":{"build":"n8n-node build","build:watch":"tsc --watch","dev":"n8n-node dev","lint":"n8n-node lint","test":"npm run build && node --test tests/*.test.mjs","clean":"rm -rf dist","lint:fix":"n8n-node lint --fix","pack:check":"npm pack --dry-run","release:check":"node scripts/release-check.mjs","release":"node scripts/release.mjs","prepublishOnly":"node scripts/prepublish-only.mjs"},"n8n":{"n8nNodesApiVersion":1,"credentials":["dist/credentials/VolcengineArkNextApi.credentials.js"],"nodes":["dist/nodes/VolcengineArkNextChatModel/VolcengineArkNextChatModel.node.js","dist/nodes/VolcengineArkNextImageModel/VolcengineArkNextImageModel.node.js","dist/nodes/VolcengineArkNextVideoModel/VolcengineArkNextVideoModel.node.js","dist/nodes/VolcengineArkNextFileModel/VolcengineArkNextFileModel.node.js"]},"dependencies":{"@langchain/core":"1.1.42","@langchain/openai":"1.4.5","@n8n/ai-utilities":"0.14.1","undici":"6.25.0"},"devDependencies":{"@n8n/eslint-plugin-community-nodes":"^0.15.0","@types/node":"^22.0.0","copyfiles":"^2.4.1","eslint":"^9.29.0","n8n-workflow":">=1.82.0","typescript":"~5.7.0"},"peerDependencies":{"n8n-workflow":">=1.82.0"},"engines":{"node":">=22.16"},"gitHead":"3f5eb9f129f4f6322061546ef2a4eb37f30da3ee","_id":"@difyz/n8n-nodes-volcengine@1.0.18","bundleDependencies":["@langchain/core","@langchain/openai","@n8n/ai-utilities","undici"],"_nodeVersion":"24.6.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-OWWXpegCysjkBg62NoABlyFAVQXqXFn4BcVKd73tgb+ip2MuHa+U/fmIf05bzxhPA/5BEENlWAYH/TbynyEyjw==","shasum":"f0772f20407faa8094f4f687d8c4f20f5ac8a5c3","tarball":"https://registry.npmjs.org/@difyz/n8n-nodes-volcengine/-/n8n-nodes-volcengine-1.0.18.tgz","fileCount":28302,"unpackedSize":150474187,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDBVjzMY154uBWnQUz5497Xemt/tHYAxh00c7ETLunAYAiAsHiPOztOiME8LKZUVUZIcC9HAWS0qrh1E/mn8aT+jsQ=="}]},"_npmUser":{"name":"difyz","email":"difyz.com@gmail.com"},"directories":{},"maintainers":[{"name":"difyz","email":"difyz.com@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/n8n-nodes-volcengine_1.0.18_1784356476797_0.7411631516400496"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-18T06:20:28.379Z","modified":"2026-07-18T06:34:37.775Z","1.0.17":"2026-07-18T06:20:29.186Z","1.0.18":"2026-07-18T06:34:37.473Z"},"bugs":{"url":"https://github.com/difyz9/n8n-nodes-volcengine/issues"},"author":{"name":"difyz9","email":"difyz.com@gmail.com"},"license":"MIT","homepage":"https://github.com/difyz9/n8n-nodes-volcengine#readme","keywords":["n8n-community-node-package","n8n","volcengine","ark","doubao","seedream","seedance","image","video","generation","langchain","ai","llm","file","upload","files"],"repository":{"type":"git","url":"git+https://github.com/difyz9/n8n-nodes-volcengine.git"},"description":"n8n community node — Volcengine Ark (火山方舟) Doubao Chat Model, Seedream Image Generation, Seedance Video Generation (OpenAI-compatible API, thinking mode).","maintainers":[{"name":"difyz","email":"difyz.com@gmail.com"}],"readme":"# @difyz/n8n-nodes-volcengine\n\n[![npm version](https://img.shields.io/npm/v/@difyz/n8n-nodes-volcengine)](https://www.npmjs.com/package/@difyz/n8n-nodes-volcengine)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](./LICENSE)\n\n火山方舟（Volcengine Ark）的 n8n 社区节点，提供豆包 Chat、Seedream 图片生成、Seedance 视频生成和 Files API 文件管理。\n\n## 环境要求\n\n- n8n `>= 1.82.0`\n- Node.js `>= 22.16`\n- 火山方舟 API Key，以及相应模型或推理接入点的访问权限\n\n## 安装\n\n在 n8n 的 **Settings → Community Nodes** 中安装：\n\n```text\n@difyz/n8n-nodes-volcengine\n```\n\n自托管环境也可以执行：\n\n```bash\nnpm install @difyz/n8n-nodes-volcengine\n```\n\n## 凭据配置\n\n新建 **Volcengine Ark API (Next)** 凭据：\n\n| 字段     | 说明                                                                  |\n| -------- | --------------------------------------------------------------------- |\n| API Key  | 在火山方舟控制台的 API Key 管理页面获取                               |\n| Base URL | 默认 `https://ark.cn-beijing.volces.com/api/v3`；代理或其他区域可修改 |\n\n凭据测试会请求 `GET /models`。Base URL 不要包含末尾 `/`。\n\n## 节点概览\n\n| 节点                              | 类型              | 用途                                      |\n| --------------------------------- | ----------------- | ----------------------------------------- |\n| Volcengine Ark Chat Model (Next)  | AI Language Model | 连接 n8n AI Agent 或 AI Chain             |\n| Volcengine Ark Image Model (Next) | Regular Node      | Seedream 文生图、参考图生图和组图         |\n| Volcengine Ark Video Model (Next) | Regular Node      | Seedance 文生视频、关键帧和多模态参考视频 |\n| Volcengine Ark File (Next)        | Regular Node      | 上传、列出、读取、下载和删除文件          |\n\n模型选项从 `/models` 动态加载，并按节点类型过滤已知模型名称。`ep-*` 等无法判断能力的自定义 Endpoint 会保留；也可以直接填写自定义模型或 Endpoint ID。接口不可达时使用内置列表。\n\n## Chat Model\n\n将节点的 **Model** 输出连接到 AI Agent 或 AI Chain。主要选项：\n\n| 选项                       |      默认值 | 说明                                             |\n| -------------------------- | ----------: | ------------------------------------------------ |\n| Thinking Mode              |    Disabled | 为支持的模型发送 `thinking: { type: \"enabled\" }` |\n| Stream                     |      `true` | AI Agent 场景建议保持开启                        |\n| Parallel Tool Calls        |     `false` | 是否允许模型在单轮并行调用工具                   |\n| Temperature                |       `0.7` | 采样温度，范围 0–2                               |\n| Top P                      |         `1` | 核采样阈值，范围 0–1                             |\n| Maximum Number of Tokens   |        `-1` | `-1` 表示不发送限制，使用服务端默认值            |\n| Response Format            |        Text | JSON Object 模式通常要求 Prompt 包含 `json`      |\n| Timeout                    | `360000` ms | 单次请求超时                                     |\n| Max Retries                |         `2` | LangChain 请求重试次数                           |\n| Additional Model Arguments |          空 | 浅合并到 Ark 请求的额外模型参数                  |\n\nThinking 模式下，多轮工具调用会尝试把上一轮 `reasoning_content` 注入后续请求。Thinking 关闭时，节点会将只有 `reasoning_content` 的流式增量映射为普通 assistant text，以便 n8n AI Agent 聚合输出。\n\n## Image Model\n\n输入每个 n8n item，节点生成一个或多个输出 item。成功下载时，图片写入 binary；JSON 中同时保留临时 URL、索引和 `revised_prompt`。下载失败时仍返回 URL，并设置 `downloadFailed: true`。\n\n### 输入方式\n\n- **No Image**：文生图。\n- **Image URL**：公开可访问的参考图 URL。\n- **Binary Data**：读取输入 item 的 binary 属性，并使用该属性的真实 MIME 类型生成 Data URL。\n\n### 常用选项\n\n- Size：`2K`、`3K`、`4K` 或自定义 `宽x高`。\n- Output Format：JPEG；PNG 仅适用于服务端支持的模型版本。\n- Watermark：是否添加水印。\n- Sequential Image Generation：`auto` 允许模型根据提示生成组图，`disabled` 关闭组图。\n- Number of Images：仅文生图时发送；具体上限仍受所选模型约束。\n- Output Property Name：默认 `image`。\n\n不同 Seedream 版本支持的尺寸、格式、组图和参数并不完全相同。遇到 400 参数错误时，请先核对所选模型的官方文档。\n\n## Video Model\n\n节点调用 `POST /contents/generations/tasks` 创建异步任务，随后轮询任务状态。成功后下载 `content.video_url` 到 binary 属性，同时保留 task ID 和 URL。\n\n| 模式                        | 必需输入                                                  |\n| --------------------------- | --------------------------------------------------------- |\n| Text to Video               | Prompt                                                    |\n| First Frame to Video        | Prompt + 一张首帧图片                                     |\n| First + Last Frame to Video | Prompt + 首帧图片 + 尾帧图片                              |\n| Multi-Modal Reference       | Prompt 或参考媒体；仅音频无效，音频必须搭配参考图片或视频 |\n\n图片、视频和音频均支持 URL 或输入 item 的 binary 属性。多模态模式最多读取 9 张图片、3 个视频和 3 个音频；超出的输入不会发送。\n\n主要输出选项包括宽高比、分辨率、时长、水印、生成音轨、轮询间隔和总超时。默认每 5 秒轮询，最多等待 10 分钟。超时错误中会保留 task ID，可使用官方任务查询接口继续查询；节点当前不提供独立的“恢复已有任务”操作。\n\n## File\n\n| Operation        | 输入                             | 输出                                             |\n| ---------------- | -------------------------------- | ------------------------------------------------ |\n| Upload           | binary 属性、可选文件名、purpose | 文件元数据和 file ID                             |\n| List             | 可选 purpose                     | 每个文件一个输出 item；空列表返回 `{ data: [] }` |\n| Get Info         | file ID                          | 文件元数据                                       |\n| Download Content | file ID、输出 binary 属性名      | 文件 metadata 和 binary 内容                     |\n| Delete           | file ID                          | 删除结果                                         |\n\nUpload 默认读取 binary 属性 `data`，Download Content 默认写入 `file`。文件有效期由火山方舟服务端策略决定，节点不声明或发送自定义有效期。\n\n## 常见问题\n\n### 下拉列表中没有我的 Endpoint\n\n确认凭据测试可访问 `/models`，也可以在 Model 字段直接输入 Endpoint ID。请确保 Endpoint 的能力与节点类型一致。\n\n### 图片或视频任务返回参数错误\n\nSeedream/Seedance 不同版本的尺寸、时长、分辨率、音频和参考媒体限制不同。节点提供通用参数集合，但不能让服务端不支持的参数变为可用。\n\n### 生成成功但下载失败\n\n节点仍会返回临时资源 URL 和 `downloadFailed: true`。检查 n8n 所在网络能否访问该 URL，并在 URL 过期前下载。\n\n### 二进制属性不存在\n\n确认上游节点确实输出 binary 数据，并让属性名与本节点配置一致。n8n 中 JSON 字段和 binary 属性是两套数据。\n\n## 开发验证\n\n```bash\nnpm run lint\nnpm test\nnpm run pack:check\nnpm run release:check\n```\n\n## 官方文档\n\n- [火山方舟文档](https://www.volcengine.com/docs/82379/1099475)\n- [Chat OpenAI 兼容接口](https://www.volcengine.com/docs/82379/1330626)\n- [图片生成 API](https://www.volcengine.com/docs/82379/1541523)\n- [视频生成 API](https://www.volcengine.com/docs/82379/1520757)\n- [Files API](https://www.volcengine.com/docs/82379/1885708)\n- [API Key 管理](https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey)\n\n## License\n\nMIT\n","readmeFilename":"README.md"}