保姆级教程!字节全家桶秒搭扣子开源版,附赠实用 AI 智能体开发实战

大家好,我是安仔,一个想做产品经理的程序员。

最近,大家估计都知道字节的扣子平台开源了,这时候有些小伙伴可能就想,coze.cn 官方平台不香吗?点开即用,为啥还要费劲自己部署一个开源版?

我举个比较形象的例子吧,官方平台就像一个"精装修的拎包入住公寓"。优点是方便、快捷,功能齐全。但缺点是"邻居"太多,你无法决定房子的构造,最重要的是,你的所有"家具和私人物品"(数据)都放在房东那里。

而开源版就相当于是你"自己买地盖别墅"。优点是:

  1. 数据私有化:所有数据、模型调用记录、用户交互都在你自己的服务器里,安全感拉满,尤其适合处理敏感数据的企业。
  2. 深度定制化:你可以修改源代码,"砸墙、改水电",把它和公司的内部系统(如飞书、钉钉、企业微信)深度集成,打造真正符合业务流程的 AI 工具。
  3. 无限制,更自由:不用担心平台的规则限制,可以自由接入任何模型,任意扩展功能。

这个对于一些企业来说,尤其是需要处理敏感数据和定制化 AI 能力的企业来说,是非常有必要的。

想通了这点,问题就来了:"别墅"盖在哪最好?

所以这时候就有不少大佬直接出了本地部署的教程,虽然都是保姆级,跟着做也挺友好,但是都有个问题,那就是都需要比较繁琐复杂的操作步骤。

那我就在想,有没有可以一键部署的方案呢?

这不,昨天字节的火山引擎举行了新品发布会,小弟也有幸现场参与到了,而就在字节刚发布的新品里,火山引擎 ECS 现在居然就直接提供了一键部署扣子开源版的模板

"亲爹"给的福利,那必须得用上啊!

这里,我就来手把手教学下,在火山引擎上部署扣子开源版到底有多丝滑。

首先,大家如果没有火山引擎账号的,可以先去火山引擎官网注册一个账号,然后登录进去,官网地址如下:

console.volcengine.com/

注册完后,我先给大家一个官方指导"一键部署 Coze Studio"的文档地址:

www.volcengine.com/docs/6662/1...

这里"Coze Studio"就是扣子开源版平台,这个文档是主要给大家参考的,但仅供参考就好了,动手步骤看我下面的就可以了。

我本来以为会有一堆复杂的选项,结果整个过程就像安装普通软件一样简单,选好配置,点个授权,然后泡杯咖啡的功夫,我的 Coze Studio 就部署好了!网址和账号直接发给我,这'亲爹'般的体验,太贴心了。

以下是具体的步骤:

  1. 访问如下地址: www.volcengine.com/activity/de...

  2. 在下图所示的地方,直接点击立即部署

  3. 之后你会跳转到一个部署配置页面:

  4. 在这个一键部署模板过程中,你就直接点击一键添加策略开通授权,以用于创建扣子开源版应用时提供权限开放。

  5. 然后再设置个管理员邮箱,这是用于登录扣子开源版平台的初始管理员账号,填自己个人邮箱就可以了,这里我就填写了自己的一个个人邮箱地址。

  6. 接下来就是等它自动部署完成了,可以去喝个咖啡,等它部署完成。

  7. 当你看到状态部署成功后,就可以直接复制Web UI 访问入口地址来直接访问属于你自己的扣子开源版平台了!这个地址一般的格式是http://xxx.xxx.xxx.xxx:8888

  8. 熟悉的画面出现了,接下来就是填写你的管理员邮箱,输入自己想好的密码,那个"注册"按钮就会变成可点击的状态,然后点击它,就可以开始使用扣子开源版平台了。

  9. 平台默认是英文界面,可以点击左下角的本身人形图标,然后点击Account,会弹出一个弹窗,在弹窗中点击Language,选择Chinese,然后点击Save,就可以切换到中文界面了。

  10. 就这样,你的第一个扣子开源版平台就部署好了,是不是很简单?

而且这里有个不起眼的重点是什么?

在这个一键部署的模板中,它会基于你当前的账号自动创建一个火山方舟 API Key,并为你的这个 Coze Studio 应用直接内嵌了 Doubao-Seed-1.6 和 Embedding 模型,这省下你申请和调用模型 API Key 的麻烦。

接下来我们可以快速试试创建个智能体玩玩。

直接在主界面创建一个测试智能体,随便起个名字,然后按步骤指引创建:

又是一个熟悉的画面,智能体创建成功了:

我们直接加一个插件,看看效果,我这里选了一个搜狐热闻插件,然后也看到这个智能体已经默认选择了 Doubao-Seed-1.6 模型,我们来提个简单问题:

text 复制代码
今天有什么AI新闻?

可以看到,这个智能体已经可以正常工作了,不错,这跟官方平台使用起来没啥区别!

部署好的扣子开源版自带了模型,但我昨天听火山方舟就上了豆包 1.6 thinking 和 flash 0715 最新版模型,尤其是 flash 版的,主打一个超低延迟和超强理解力,做问答助手再合适不过了。

但是,在扣子开源版中,换模型会很'硬核'吗?

别怕,实际操作下来发现,其实倒还好,接下来我也来手把手教教大家。

具体步骤如下:

  1. 首先,我们去到火山方舟的控制台,地址如下: console.volcengine.com/ark/region:...

  2. 然后我们开通以下两个最新的模型,我拿其中一个来演示,另外一个也是类似的操作,如下:

  3. 这里我们演示点击Doubao-Seed-1.6-thinking,然后会跳进它的详情页面,点击下图中的推理按钮:

  4. 然后去到下图的STEP 2配置这里,点击"开通模型"即可,这样我们才能使用对应的模型:

  5. 接下来,我们回到刚刚应用市场中"我的应用"界面,你会看到你刚刚创建的 Coze Studio 应用,地址如下:

  6. 然后点击你应用的名字进入配置界面,然后可以看到下图中有个一键部署个边有个跳转按钮,点击它,如下:

  7. 这时候,你就会在一个新页面看到以下类似的 ECS 配置界面:

  8. 然后我们点击右上角的配置选项,最后点击"发送指令":

  9. 接下来,我们按照下图的提示,为了让大家更简单、傻瓜式去更新模型,我专门写了个自动化脚本,直接复制粘贴进去就行,然后修改对应执行路径: 脚本详情如下:

    bash 复制代码
    #!/bin/bash
    
    # 配置文件路径
    ENV_FILE=".env"
    
    # 检查 .env 文件是否存在
    if [ ! -f "$ENV_FILE" ]; then
        echo "❌ 错误: 找不到 .env 文件"
        exit 1
    fi
    
    echo "🚀 开始更新模型配置..."
    
    # 步骤1: 提取第一个 API Key
    echo "🔍 步骤1: 提取第一个 API Key..."
    # 提取第一個 API Key,使用更簡單的方法
    SHARED_API_KEY=""
    while IFS= read -r line; do
        if [[ $line =~ MODEL_API_KEY_[0-9]+=\"([^\"]*)\" ]]; then
            SHARED_API_KEY="${BASH_REMATCH[1]}"
            break
        fi
    done < "$ENV_FILE"
    
    if [ -z "$SHARED_API_KEY" ]; then
        echo "⚠️  警告: 未找到现有的 API Key,请手动设置"
        SHARED_API_KEY="YOUR_API_KEY_HERE"
    else
        MASKED_KEY="${SHARED_API_KEY:0:8}..."
        echo "  找到 API Key: $MASKED_KEY"
    fi
    
    # 步骤2: 删除原有模型配置
    echo "🗑️  步骤2: 删除原有模型配置..."
    
    # 使用 sed 删除从 "# Settings for Model" 开始的所有模型配置
    # 创建临时文件
    TEMP_FILE=$(mktemp)
    
    # 标记是否在模型配置区域内
    IN_MODEL_SECTION=false
    
    while IFS= read -r line; do
        # 检测模型配置区域开始
        if [[ "$line" == *"# Settings for Model"* ]]; then
            IN_MODEL_SECTION=true
            # echo "  删除模型配置区域开始: $line"
            continue
        fi
    
        # 如果在模型配置区域内
        if [ "$IN_MODEL_SECTION" = true ]; then
            # 跳过模型相关的注释和配置
            if [[ "$line" =~ ^[[:space:]]*#.*[Mm]odel.* ]] || \
               [[ "$line" =~ ^export[[:space:]]+MODEL_.* ]] || \
               [[ -z "${line// }" ]]; then
                continue
            else
                # 遇到非模型相关内容,结束模型区域
                IN_MODEL_SECTION=false
            fi
        fi
    
        # 保留其他所有内容
        echo "$line" >> "$TEMP_FILE"
    done < "$ENV_FILE"
    
    echo "  已删除原有模型配置"
    
    # 步骤3: 添加新的模型配置
    echo "➕ 步骤3: 在文件末尾添加新的模型配置..."
    
    # 定义新的模型配置
    cat >> "$TEMP_FILE" << EOF
    
    # Settings for Model
    # Model for agent & workflow
    # add suffix number to add different models
    
    export MODEL_PROTOCOL_0="ark"       # protocol
    export MODEL_OPENCOZE_ID_0="100001" # id for record
    export MODEL_NAME_0="doubao-seed-1-6-250615"
    export MODEL_ID_0="doubao-seed-1-6-250615"
    export MODEL_API_KEY_0="$SHARED_API_KEY"
    export MODEL_BASE_URL_0=""           # model base url
    
    export MODEL_PROTOCOL_1="ark"       # protocol
    export MODEL_OPENCOZE_ID_1="100002" # id for record
    export MODEL_NAME_1="doubao-seed-1-6-thinking-250715"
    export MODEL_ID_1="doubao-seed-1-6-thinking-250715"
    export MODEL_API_KEY_1="$SHARED_API_KEY"
    export MODEL_BASE_URL_1=""           # model base url
    
    export MODEL_PROTOCOL_2="ark"       # protocol
    export MODEL_OPENCOZE_ID_2="100003" # id for record
    export MODEL_NAME_2="doubao-seed-1-6-flash-250715"
    export MODEL_ID_2="doubao-seed-1-6-flash-250715"
    export MODEL_API_KEY_2="$SHARED_API_KEY"
    export MODEL_BASE_URL_2=""           # model base url
    EOF
    
    echo "  已添加 3 个模型的配置"
    
    # 步骤4: 备份原文件并替换
    echo "💾 步骤4: 备份原文件并保存更新后的配置..."
    echo "  创建备份文件: .env.backup"
    cp "$ENV_FILE" ".env.backup"
    mv "$TEMP_FILE" "$ENV_FILE"
    
    echo "✅ 模型配置更新完成!"
    echo ""
    echo "📋 新增的模型:"
    echo "  - doubao-seed-1-6-250615 (ID: 100001)"
    echo "  - doubao-seed-1-6-thinking-250715 (ID: 100002)"
    echo "  - doubao-seed-1-6-flash-250715 (ID: 100003)"
    echo ""
    echo "💾 备份文件已保存为: .env.backup"
    echo "🔧 提示: 如需修改 API Key,请手动编辑 .env 文件"
    
    docker compose --profile "*" restart coze-server

    执行路径如下:

    text 复制代码
    /root/workspace/opencoze
  10. 然后下面都是默认选项即可,点击"确定",然后就会跳到一个运维编排界面去执行配置更改,等待它运行知道成功为止即可,如下:

  11. 然后你的模型更新就完成了!直接去回扣子平台的页面刷新一下,你就能看到你刚刚更新的模型了,如下:

还是多亏了上面的脚本配置,不然要大家去手动进去 ECS 服务器重置密码,在命令行上改配置,执行上述命令,对于新手来说,这个有点太难了...

好了,现在万事俱备,只欠东风了,这次我打算直接基于最新的 doubao-seed-1-6-flash-250715 模型来写一个新闻推送的智能体,毕竟谁不想第一次时间知道最新的 AI 动态呢?

所以首先,我在扣子的资源库直接创建了一个获取新闻的工作流,如下:

其实自己原意是通过这个工作流,写的第一个代码节点 - 获取当天 AI新闻就是为了自动抓取网络上最新的 AI 资讯,以保证信息是最新的。

拿到原始新闻数据后,再通过第二个格式化新闻的代码节点 - 格式化新闻内容,将新闻内容按我们需要可以生成多种格式的新闻,比如:

  • Markdown 格式
  • 纯文本格式
  • JSON 格式

这样,除了自己可以第一时间了解到最新的 AI 资讯,还可以将这些新闻推送一直复制粘贴到自己的飞书、钉钉、微信等渠道,实用方便不少。

接下来,我们来试试效果,新建一个智能体,选择对应的大模型,这里我选择的是 doubao-seed-1-6-flash-250715 模型,然后添加这个工作流到这个智能体中,如下:

接下来,我们直接提个问题 - 获取今天的新闻推送,看看效果:

新版 flash 模型的回答反应果然很快,不一会,整个新闻消息的结果就出来了。

好,我们继续问它,我要 JSON 格式的新闻内容,再看看效果:

你看,也是一下子全部出来了,我们再来试试让他输出普通文本的格式 - 我要纯文本格式的新闻内容

再来进阶一点,试试 Markdown 格式 - 我要你分类好对应新闻后以 Markdown 格式输出,可以适当加些合适的表情符号

这个效果就更好了,不仅分类清晰,而且还有表情符号,阅读起来更加友好了。

我这里演示的智能体只是一个雏形,里面其实还有很多可以迭代和想象的空间,剩下的留给你们去探索了~

说真的,以前私有化部署门槛高,现在火山引擎直接帮你打好地基、备好装修队,你只管"挑窗帘颜色"。低门槛的掌控感,对于新手来说,真的越来越友好了。

最后,我这里也顺便给大家分享下火山引擎官方的活动,只要注册就可以每天免费获得大额使用大模型的 token:

下面的详情的介绍链接,这羊毛不薅亏了:

www.volcengine.com/docs/82379/...

我是安仔,今天学到的产品思维又+1,希望上面的教程能帮到你从零开始部署一个扣子开源版平台。

如果希望喜欢我的内容,可以关注我的公众号,我会持续分享更多实用和有趣的内容给大家

相关推荐
重铸码农荣光2 天前
用AI把猫主子变成冰球猛将?我搞了个“宠物拟人化”神器,结果……它真敢打!
vue.js·低代码·coze
后端小肥肠3 天前
从图文到视频,如何用Coze跑通“小红书儿童绘本”的商业闭环?
人工智能·aigc·coze
DevYK5 天前
Coze Studio 二次开发(二)支持 MCP Server 动态配置
后端·agent·coze
DevYK7 天前
Coze Studio 二次开发(一)支持 MCP Server 静态配置
coze
TextIn智能文档云平台7 天前
从散乱资料到智能知识库:基于TextIn与Coze的RAG实战
人工智能·pdf·知识库·rag·coze·文档解析
后端小肥肠10 天前
小红书儿童绘本这样做!Coze+Nano Banana Pro批量生产挂橱窗
人工智能·aigc·coze
小码农叔叔12 天前
【AI智能体】Coze 获取对标行业新闻转视频文案写入飞书多维表实战详解
coze·coze获取行业对标新闻·coze将新闻转短视频文案·coze对接飞书多维表·coze打转新闻转视频文案应用
DevYK13 天前
coze-studio源码分析(二)后端插件架构深度剖析与二次开发实战准备
coze
dingzhihui01413714 天前
扣子工作流中飞书多维表格插件参数介绍
飞书·coze·扣子
测试开发技术14 天前
Agent自动化工作流:n8n、dify、coze,谁更强?
ai·自动化·agent·dify·智能体·coze·n8n