打造智能写作工作流:n8n + 蓝耘MaaS平台完整实战指南

打造智能写作工作流:n8n + 蓝耘MaaS平台完整实战指南

文章目录

一、前言

随着AI技术的快速发展,越来越多的开发者和内容创作者开始探索如何将AI能力集成到自己的工作流中。今天,我们将通过蓝耘平台的MaaS模型服务,结合强大的工作流自动化工具n8n,打造一个智能写文工作流。更令人兴奋的是,蓝耘平台正在推出"送千万Token资源包"福利活动,让更多用户能够免费体验AI的强大能力!

二、环境准备

2.1 注册蓝耘平台并获取API凭证

2.1.1 注册蓝耘MaaS平台

首先访问蓝耘MaaS平台官网进行注册。平台为新用户提供大量免费token,可以充分测试各种模型。

蓝耘注册页面

2.1.2 获取API密钥

登录后,进入MaaS平台选项卡,您将看到多种可调用的AI模型:

在左侧菜单中找到"API KEY管理",点击"创建API KEY",系统会生成API密钥。请妥善保存这个密钥,它是连接AI模型的关键。

创建新的API KEY

2.1.3 获取模型信息和接口地址

在MaaS模型广场中,选择您想使用的模型。点击查看详情后,您可以看到模型路径/maas/deepseek-ai/DeepSeek-V3.1,所有AI模型获取模型路径的方式一致。

模型详情页面

蓝耘提供了OpenAI兼容接口,可在MaaS平台文档中找到。

OpenAI兼容接口
💡 福利提醒:现在注册即可获得千万Token资源包,足够支撑大量的AI创作任务!

2.2 安装Docker环境

2.2.1 下载并安装Docker Desktop

首先进入Docker官网下载Docker桌面版:Docker官网

进入到Docker官网后点击Download Docker Desktop去下载Docker桌面版

Docker官网

找到适合我们的版本去下载,这里选择Windows-AMD64

下载Windows-AMD64的Docker

2.2.2 配置Docker环境

运行Docker的安装程序后,点击OK

Docker安装Configuration


Docker Desktop安装完成

启动Docker Desktop后使用谷歌账号或者Github账号进行登录。

登录Docker Desktop

2.2.3 配置国内镜像源

需要配置Docker的国内镜像源,在Settings中配置Docker Engine,配置完毕后点击Apply&restart应用并重启:

{"builder":{"gc":{"defaultKeepStorage":"20GB","enabled":true}},"experimental":false,"registry-mirrors":["https://registry.cn-hangzhou.aliyuncs.com","https://docker.mirrors.ustc.edu.cn","https://registry.docker-cn.com","http://hub-mirror.c.163.com"]}
配置Docker国内镜像源

2.3 部署n8n工作流平台

2.3.1 拉取n8n镜像

在Images中点击Search images to run搜索镜像并运行。

搜索镜像

Docker Hub中搜索n8n,然后找到n8nio/n8n点击Pull

搜索n8n镜像


点击Pull拉取n8n

2.3.2 创建并运行n8n容器

拉取成功后点击运行n8n镜像

运行n8n镜像

创建n8n容器配置:

配置项
Container namen8n
Host port5678
Host pathn8n_data
Container path/home/node/.n8n
创建一个n8n容器

看到打印http://localhost:5678说明运行成功

运行容器

2.3.3 初始化n8n账户

在浏览器中访问http://localhost:5678进入n8n创建账户页面

创建n8n账户

登录后进入到n8n的主页面。至此,我们已经成功部署n8n了。

n8n主页面

三、构建智能写文工作流

现在让我们在n8n中构建一个智能写文工作流,该工作流将能够:

  • 接收写作主题和要求
  • 调用蓝耘平台MaaS模型生成内容
  • 对生成的内容进行优化和格式化
  • 输出最终的文章

3.1 创建工作流基础架构

3.1.1 创建新工作流

在n8n界面中点击 Create Workflow

在n8n中创建工作流

为工作流命名:智能写文助手

给工作流命名为智能写文助手

3.1.2 添加触发器节点

添加Manual Trigger节点作为工作流的起点

添加Manual Trigger节点作为工作流的起点

双击Manual Trigger节点进行配置

双击Manual Trigger节点

点击编辑按钮,配置输入参数:

  • topic: 文章主题
  • style: 写作风格(如:正式、轻松、技术性等)
  • length: 文章长度要求
  • keywords: 关键词(可选)
[{"topic":"请输入文章主题","style":"通用","length":"1000-2000字","keywords":"请输入关键词,用逗号分隔"}]
配置输入参数

3.2 配置AI模型调用

3.2.1 添加HTTP请求节点

添加HTTP Request节点用于调用蓝耘MaaS API

添加Http Request节点

3.2.2 配置请求参数

双击HTTP Request节点进行配置:

基础配置:

  • 请求方式(Method):POST
  • 请求地址URL:https://maas-api.lanyun.net/v1/chat/completions
配置请求方式和URL

配置Headers(请求头):

  • 请求头1:Name(Content-Type),Value(application/json
  • 请求头2:Name(Authorization),Value(Bearer 蓝耘MaaS平台的APIKEY
启动并配置请求头

配置Body(请求体):
点击"Send Body"开关后,选择JSON格式,然后输入:

注意:/maas/deepseek-ai/DeepSeek-V3.1这个是蓝耘MaaS平台的模型名称,可以切换成蓝耘MaaS平台中的任意模型。
{"model":"/maas/deepseek-ai/DeepSeek-V3.1","messages":[{"role":"system","content":"你是一个专业的内容创作助手,擅长根据用户需求创作高质量文章。"},{"role":"user","content":"请根据以下要求创作文章:\n主题:{{ $json.topic }}\n写作风格:{{ $json.style }}\n文章长度:{{ $json.length }}\n关键词:{{ $json.keywords }}\n\n请创作一篇结构清晰、内容丰富的文章。"}],"max_tokens":2000,"temperature":0.7}
启动并配置请求体

3.2.3 测试API连接

配置完成后,点击Execute step测试是否能够调通蓝耘MaaS平台的模型

测试是否能够调用蓝耘MaaS平台的模型

3.3 内容处理与优化

3.3.1 添加内容处理节点

添加Code节点进行内容处理

添加Code节点进行内容处理

3.3.2 配置内容处理逻辑

双击Code节点进行配置,语言选择JavaScript:

// 提取AI生成的内容const aiResponse = items[0].json.choices[0].message.content;// 基本的内容格式化let formattedContent = aiResponse .replace(/\n\n/g,'\n\n')// 规范化段落间距.replace(/^\s+|\s+$/g,'')// 去除首尾空白.trim();// 添加文章元信息const metadata ={title: items[0].json.topic ||'未命名文章',createdAt:newDate().toISOString(),wordCount: formattedContent.length,style: items[0].json.style ||'通用'};return[{json:{content: formattedContent,metadata: metadata,originalResponse: aiResponse }}];

点击Execute step测试是否配置成功。

测试Code节点是否有效

3.4 生成Markdown文档

3.4.1 添加文档生成节点

在内容处理节点后,添加一个 Code 节点用于生成 Markdown 格式并下载

添加一个Code节点用于生成Markdown格式并下载

3.4.2 配置Markdown生成逻辑

配置Code节点,实现Markdown文档生成:

// 获取处理后的数据const items = $input.all();const processedData = items[0].json;// 生成 Markdown 内容const markdownContent =`# ${processedData.metadata.title} --- **创建时间:** ${newDate(processedData.metadata.createdAt).toLocaleString('zh-CN')} **字数统计:** ${processedData.metadata.wordCount} 字符 **文章风格:** ${processedData.metadata.style} --- ## 正文内容 ${processedData.content} --- ## 文档信息 - **生成时间:** ${newDate().toLocaleString('zh-CN')} - **文件格式:** Markdown (.md) - **处理状态:** 已完成内容格式化和优化 --- *本文档由 n8n 工作流自动生成* `;// 生成文件名(使用时间戳避免重复)const timestamp =newDate().toISOString().replace(/[:.]/g,'-').slice(0,19);const fileName =`${processedData.metadata.title.replace(/[^\w\u4e00-\u9fa5]/g,'_')}_${timestamp}.md`;// 打印下载信息 console.log(`📁 Markdown 文件已准备完成`); console.log(`📄 文件名:${fileName}`); console.log(`📊 文件大小:${markdownContent.length} 字符`);// 返回可下载的文件数据return[{json:{...processedData,markdown:{content: markdownContent,fileName: fileName,mimeType:'text/markdown',size: markdownContent.length }},binary:{data:{data: Buffer.from(markdownContent,'utf8').toString('base64'),mimeType:'text/markdown',fileName: fileName,fileExtension:'md'}}}];

点击Execute step进行执行,执行完成后,点击Download下载Markdown文件

测试markdown文件是否成功下载

查看Markdown文档内容

正确下载

四、工作流测试与验证

4.1 完整流程测试

首先编辑起点节点,topic主题设置为如何制作排骨当归汤?,点击Save保存

点击Execute workflow执行工作流

执行工作流

4.2 验证输出结果

执行完毕后,下载并查看Markdown文件,验证生成的内容质量

查看markdown

五、总结

通过本教程,我们成功构建了一个基于蓝耘MaaS平台和n8n的智能写文工作流。这个工作流具有以下优势:

部署便捷

  • 使用Docker可以快速在本地搭建n8n环境,无需复杂配置
  • 一键式容器部署,环境隔离性好

高度自定义

  • 可以根据需要调整模型参数、输出格式和处理逻辑
  • 支持多种写作风格和内容类型定制

可扩展性强

  • n8n的节点化设计使工作流可以轻松扩展
  • 可添加更多功能如文本翻译、图片生成、内容审核等

成本效益高

  • 利用蓝耘平台提供的千万Token资源包,可以免费进行大量AI创作实验
  • 相比其他AI服务,性价比更高

自动化程度高

  • 从输入主题到生成格式化文档,整个过程完全自动化
  • 大幅提高内容创作效率,释放创作者时间

Read more

二分算法自我总结与反思(上)

一.二分查找 1.含义:二分查找(Binary Search)是一种高效的查找算法,核心是每次将查找范围减半,仅适用于已排序的数组或区间,时间复杂度为O(log n)。 2.操作过程:以在一个升序数组中查找一个数为例。它每次考察数组当前部分的中间元素,如果中间元素刚好是要找的,就结束搜索过程;如果中间元素小于所查找的值,那么左侧的只会更小,不会有所查找的元素,只需到右侧查找;如果中间元素大于所查找的值,只需要到左侧查找。 3.前提:有序 注:当中间位置的数不是我们所查找的数时,注意接下来应该往那边找 4.以下是基础二分查找代码示例: int bs(vector<int>& a, int n, int target) { int l = 0, r = n

By Ne0inhk
【动态规划】01背包与完全背包问题详解,LeetCode零钱兑换II秒解,轻松解力扣

【动态规划】01背包与完全背包问题详解,LeetCode零钱兑换II秒解,轻松解力扣

👨‍💻程序员三明治:个人主页 🔥 个人专栏: 《设计模式精解》《重学数据结构》 🤞先做到 再看见! 目录 * 01背包题目分析 * 01背包解决方法 * 完全背包题目分析 * 完全背包解决方法 * LeetCode 518.零钱兑换II * 思路 * 代码实现 01背包题目分析 有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大。 每一件物品其实只有两个状态,取或者不取,所以可以使用回溯法搜索出所有的情况,那么时间复杂度就是O(2^n),这里的n表示物品数量。 所以暴力的解法是指数级别的时间复杂度。进而才需要动态规划的解法来进行优化! 在下面的讲解,我举一个例子: 物品为: 重量价值物品0115物品1320物品2430 01背包解决方法 递归五部曲: 1. 确定dp数组以及下标的含义:dp[i][j] 表示从下标为[0-i]的物品里任意取,放进容量为j的背包,

By Ne0inhk
❿⁄₁₂ ⟦ OSCP ⬖ 研记 ⟧ 密码攻击实践 ➱ 获取并破解Net-NTLMv2哈希(上)

❿⁄₁₂ ⟦ OSCP ⬖ 研记 ⟧ 密码攻击实践 ➱ 获取并破解Net-NTLMv2哈希(上)

郑重声明:本文所涉安全技术仅限用于合法研究与学习目的,严禁任何形式的非法利用。因不当使用所导致的一切法律与经济责任,本人概不负责。任何形式的转载均须明确标注原文出处,且不得用于商业目的。 🔋 点赞 | 能量注入 ❤️ 关注 | 信号锁定 🔔 收藏 | 数据归档 ⭐️ 评论 | 保持连接💬 🌌 立即前往 👉晖度丨安全视界🚀 ▶ 信息收集  ▶ 漏洞检测 ▶ 初始立足点  ▶ 权限提升 ▶ 横向移动 ➢ 密码攻击 ➢  获取并破解Net-NTLMv2哈希(上)🔥🔥🔥 ▶ 报告/分析 ▶ 教训/修复 目录 1.密码破解 1.1 破解Windows哈希实践 1.1.1 Net-NTLMv2 协议概述 1.1.1.1 身份验证流程(以访问 SMB 共享为例) 1.1.

By Ne0inhk
《算法闯关指南:优选算法--二分查找》--23.寻找旋转排序数组中的最小值,24.点名

《算法闯关指南:优选算法--二分查找》--23.寻找旋转排序数组中的最小值,24.点名

🔥草莓熊Lotso:个人主页 ❄️个人专栏: 《C++知识分享》《Linux 入门到实践:零基础也能懂》 ✨生活是默默的坚持,毅力是永久的享受! 🎬 博主简介: 文章目录 * 前言: * 23. 寻找旋转排序数组中的最小值 * 解法(二分查找): * 算法思路: * C++算法代码: * 算法总结&&笔记展示: * 24 .点名 * 解法(二分查找): * 算法思路: * C++算法代码: * 算法总结&&笔记展示: * 结尾: 前言: 聚焦算法题实战,系统讲解三大核心板块:优选算法:剖析动态规划、二分法等高效策略,学会寻找“最优解”。 递归与回溯:掌握问题分解与状态回退,攻克组合、排列等难题。 贪心算法:理解“

By Ne0inhk