Coze 开源部署指南:集成 Bocha 搜索插件全流程
本文详细演示了如何私有化部署 Coze Studio 开源 AI 开发平台,并深度集成 Bocha 搜索插件实现智能体联网能力。通过 Docker 容器化方案(2核4G资源),开发者可快速搭建支持 DeepSeek/OpenAI 等多模型的自有开发环境;重点解析了 Bocha 插件的安全配置方案(API Key 隔离+环境变量管理),赋予智能体全网实时信息检索功能。全流程覆盖模型配置、服务启动、插
Coze 开源部署指南:集成 Bocha 搜索插件全流程
扣子(Coze)开发平台是一站式 AI Agent 智能体开发工具,致力于为开发者提供高效、灵活且功能强大的 AI 应用开发环境。平台整合了业界领先的大语言模型(LLM)、丰富的插件工具生态以及可视化开发框架,赋能开发者快速构建、测试和部署智能体(Agent),实现从创意到产品的无缝衔接。
🧠 多模型灵活支持
- 开箱即用:原生集成 DeepSeek、OpenAI、Claude、Gemini 等主流大模型,支持一键配置与切换。
- 扩展自由:开放模型接入接口,开发者可自定义接入 Ollama 等本地模型或企业私有模型。
🛠️ 全功能开发套件
- 可视化编排:通过低代码界面设计智能体的工作流(Workflow),直观配置对话逻辑、工具调用与数据处理链路。
- 插件生态:内置 Bocha 搜索、飞书文档、Wolfram 计算等 20+ 官方插件,支持自定义插件扩展智能体能力边界(联网搜索/数据分析/多模态处理等)。
- 知识库增强:提供知识检索、OCR 文字识别、Embedding 管理等组件,构建具备专业知识的智能体。
🌐 企业级部署能力
- 开源可私有化:支持 Coze Studio 开源版 本地部署,满足数据安全与合规需求。
- 云原生架构:基于 Docker 容器化部署,弹性扩展资源,适配从开发测试到生产级的高并发场景。
🔌 生态与协作
- 团队协作空间:支持多角色权限管理,实现智能体开发、测试、发布的流程协同。
- 应用市场:提供智能体分发平台,开发者可发布作品至 Coze 商店,触达海量终端用户。
一、环境要求
在参考本文安装 Coze Studio 之前,确保您的软硬件环境满足以下要求:
项目 | 说明 |
---|---|
CPU | 2 Core |
RAM | 4 GiB |
Docker | 提前安装 Docker、Docker Compose,并启动 Docker 服务,详细操作请参考 Docker 文档: * macOS:推荐使用 Docker Desktop 安装,参考 Docker Desktop For Mac 安装指南。 * Linux:参考 Docker 安装指南 和 Docker Compose 安装指南。 * Windows:推荐使用 Docker Desktop 安装,参考 Docker Desktop For Windows 安装指南。 |
二、安装 Coze Studio
步骤一:准备工作——获取源码
在本地项目中执行以下命令,获取 Coze Studio 最新版本的源码。
# 克隆代码
git clone https://github.com/coze-dev/coze-studio.git
步骤二:配置模型
Coze Studio 是基于大语言模型的 AI 应用开发平台,首次部署并启动 Coze Studio 开源版之前,你需要先在 Coze Studio 项目里配置模型服务,否则创建智能体或者工作流时,无法正常选择模型。
此外,项目正常运行过程中,也可以随时按需添加新的模型服务、删除不需要的模型服务。
本文档以Deepseek模型为例,演示如何为 Coze Studio 配置模型服务。如果你准备使用 OpenAI 等其他在线模型服务,应参考下述流程正确填写配置模型文件。已完成模型配置则请移步步骤三。
模型列表
Coze Studio 支持的模型服务如下:
-
Ark(火山方舟)
-
OpenAI
-
DeepSeek
-
Claude
-
Ollama
-
Qwen
-
Gemini
配置说明
在 Coze Studio 开源版中,模型配置统一放在 backend/conf/model
目录中,目录下存在多个 yaml 文件,每个文件对应一个可访问的模型。 为方便开发者快速配置,Coze Studio 在 backend/conf/model/template
目录下提供了一些模板文件,覆盖了常见的模型类型,例如Deepseek、OpenAI 等。开发者可以找到对应厂商的模型模板,复制到 backend/conf/model
目录,根据模板注释设置各个参数。
注意事项
在填写模型配置文件之前,请确保你已经了解了以下注意事项:
-
保证每个模型文件 id 唯一,且配置上线后不修改 id。id 是模型配置在系统中流转的标识,修改模型 id 可能导致已有的智能体功能出现问题。
-
在删除模型之前,请确保此模型已无线上流量。
-
智能体或工作流根据模型 ID 来调用模型。对于已上线的模型,请勿修改模型 ID,否则可能导致模型调用失败。
手动配置 Coze Studio 模型
(1)修改模型配置文件
-
复制模板文件。
在
backend/conf/template
目录下,根据要添加的模型名称找到对应的模版 yaml 文件,例如 Deepseek 模型的配置文件模型为 model_template_deepseek.yaml。将模板文件复制到
backend/conf/model
目录下。
-
修改模型配置。
进入目录
backend/conf/model
,打开步骤 1 中复制的文件。修改文件中的
id
、meta.conn_config.api_key
、meta.conn_config.model
字段,保存文件。-
id
:Coze Studio 中的模型 ID,由开发者自行定义,必须是非 0 的整数,且全局唯一。智能体或工作流根据模型 ID 来调用模型。对于已上线的模型,请勿修改模型 ID,否则可能导致模型调用失败。 -
meta.conn_config.api_key
:模型服务的 API Key,获取方式可参考对应的模型服务,例如 获取Deepseek API Key。 -
meta.conn_config.model
:模型服务的 model ID,获取方式可参考对应的模型服务,例如获取Deepseek模型 ID 可参考 Deepseek模型列表。 其他参数可维持默认配置,你也可以按需修改。以Deepseek模型为例,配置方式可参考 Deepseek API指南。-
base_url
: https://api.deepseek.com -
出于与 OpenAI 兼容考虑,您也可以将 base_url 设置为 https://api.deepseek.com/v1 来使用,但注意,此处 v1 与模型版本无关。
-
deepseek-chat 模型指向 DeepSeek-V3-0324, 通过指定 model=‘deepseek-chat’ 调用。
-
deepseek-reasoner 模型指向 DeepSeek-R1-0528, 通过指定 model=‘deepseek-reasoner’ 调用。
-
-
(2)重启服务
若尚未启动服务,直接跳转至步骤三启动服务。若服务已启动,则在修改配置文件之后,执行以下命令重启服务,使配置生效。
docker compose --profile "\*" restart coze-server
服务启动成功之后,打开agent编辑页面,在模型下拉列表里选择已配置的模型。
步骤三:部署与启动服务
首次部署并启动 Coze Studio 需要拉取镜像、构建本地镜像,可能耗时较久,请耐心等待。如果看到提示 “Container coze-server Started”,表示 Coze Studio 服务已成功启动。
# 启动服务
cd docker
cp .env.example .env
docker compose --profile "\*" up -d
服务启动之后,coze-elasticsearch-setup、coze-minio-setup、coze-mysql-setup-init-sql、coze-mysql-setup-schema 这几个容器处于退出状态(exit 0),是正常现象。
步骤四:登录访问
启动服务后,通过浏览器访问 http://localhost:8888/ 即可打开 Coze Studio。其中 8888 为后端监听端口。
- 输入你的邮箱和密码。
- 单击注册按钮,完成注册。
- 注册后页面将自动完成登录,你可以开始体验 Coze Studio 的各项功能与服务。
至此,你已成功部署并登录 Coze Studio。
三、插件配置
成功部署 Coze Studio 后,如需使用插件、知识库等功能,你还需要:
-
配置插件:部分官方插件需要通过第三方服务的密钥鉴权,例如博查搜索、飞书云文档系列组件等。若未配置密钥,插件将显示为”未授权“。
-
配置基础组件:核心组件如下:
-
知识库:如需使用知识库功能,则必须配置 Embedding 组件;对于图片知识库,还需要额外设置 OCR 组件以识别图片中的文字。
-
图片上传:当需要使用大模型多模态输入时,上传组件需要配置公网域名或者 IP 地址,否则在调试台和模型对话时,模型无法读取已上传的图片。
-
-
配置模型:按需增加模型服务,使你的智能体、工作流或应用能使用更多模型。
插件扩展
插件工具可以扩展 LLM 的能力,比如联网搜索、科学计算或绘制图片,赋予并增强了 LLM 连接外部世界的能力。Coze Studio 提供了两种插件工具类型,即官方内置工具和自定义工具。官方内置工具由后台统一配置,支持 Coze Studio 开源版中所有用户使用;自定义工具的使用范围为当前工作空间。 部署 Coze Studio 开源版之后,你可以参考本文档配置官方插件工具,否则这些插件工具可能无法正常运行。
官方插件工具一览
登录 Coze Studio 开源版之后,你可以在左侧导航栏单击探索,并在插件页面查看所有官方插件工具。这些插件可通过 API 的方式调用第三方服务。 插件页面中,如果插件带有未授权的标签,表示此插件需要授权,且尚未配置授权信息。没有此标签的插件可以直接使用。
Coze Studio 开源版提供的官方插件工具列表如下:
插件名称 | 插件描述 |
---|---|
Wolfram Alpha | 强大的数学工具,可计算各种数学表达式。 |
搜狐热闻 | 帮助用户获取搜狐网上的每日热闻。 |
什么值得买 | 帮助用户查询商品优惠信息,提供价格、购买渠道和性价比推荐。 |
板栗看板 | 任务拆解工具,根据用户提问拆解任务,生成任务看板。 |
文库搜索 | 根据文库文档标题关键字,搜索豆柴文库内容和网页URL。 |
高德地图 | 路线规划、位置查询、地理信息转换等功能 |
飞书电子表格 | 对飞书电子表格进行创建、编辑和查询等操作。 |
博查搜索 | 从全网搜索任何网页信息和网页链接,结果准确、摘要完整,更适合AI使用。 |
图片压缩 | 上传图片链接,返回压缩后的base64格式图片。 |
飞书认证及授权 | 提供飞书应用的认证及授权功能。 |
飞书多维表格 | 支持创建和管理飞书多维表格,进行数据操作和搜索。 |
飞书日历 | 在飞书日历上创建、更新、删除、查询日程信息。 |
飞书云文档 | 支持创建文档、添加内容、获取文档信息和搜索文档。 |
飞书消息 | 支持发送飞书消息和获取消息历史记录。 |
飞书任务 | 调用飞书开放平台任务相关API,创建、更新、删除和查询任务。 |
飞书知识库 | 搜索飞书知识库Wiki、获取Wiki全部子节点列表。 |
天眼查 | 利用天眼查API检索企业信息,查询企业基本信息、新闻舆情等。 |
配置官方插件工具
如果你需要直接使用 Coze Studio 提供的官方内置插件工具,在使用前,应参考以下步骤配置相应插件的授权凭证。 此处以“博查搜索”插件为例,请前往博查开放平台提前获取API KEY,其他官方插件请参考对应第三方服务的 API 文档获取授权凭证。
配置步骤
-
进入目录
backend/conf/plugin/pluginproduct
。 -
打开
plugin_meta.yaml
文件。
-
找到你想要使用的内置工具,例如搜索插件名称“博查搜索”,配置工具相应的参数。
-
该插件的授权方式为
service_http
(简单鉴权)。插件鉴权类型可选none
(无鉴权)、oauth
(标准oauth2.0)、service_http
(简单鉴权)。 -
插件鉴权子类型字段为
sub_type
,鉴权类型为none
时无效;鉴权类型为oauth
时,仅支持authorization_code
(授权码模式);鉴权类型为service_http
时,仅支持token/api_key
(APIToken或者APIKey等单字段鉴权信息);因此,该插件我们选用token/api_key
。 -
对于 service_http + token/api_key 类型的插件,payload 需要包含以下字段:
-
字段 | 说明 | 值 |
---|---|---|
key |
鉴权字段名称,HTTP请求中携带认证信息的字段名。一般为"Authorization" ,无需修改。 |
"Authorization" |
service_token |
实际认证令牌,可从博查开放平台申请获取。 | "Bearer sk-***" |
location |
指定认证信息放在HTTP请求的哪个部分。一般位于Header ,无需修改。 |
可选值: "Header" 、"Query" 、"Body"<br> 示例: "Header" |
因此,我们将博查搜索的payload设置为:
payload: '{"key": "Authorization", "service_token": "Bearer sk-****您的博查API-KEY", "location": "Header"}'
- 执行以下命令重新启动服务。
# 重启服务
docker compose --profile '\*' restart coze-server
docker compose restart coze-server
- 服务重新启动后,博查搜索显示“已授权”,在智能体编辑页面,选择博查搜索插件,就可以正常使用了。
安全提醒
由于API密钥是敏感信息,建议使用环境变量存储真实的API密钥,且在生产环境中不要将真实密钥写入配置文件。
-
使用
.env
文件管理项目环境变量,您可以将所有的 API 密钥统一管理在.env
文件中:# .env 文件 # API Keys for plugins BOCHA_API_KEY=Bearer sk-******
在payload里使用BOCHA_API_KEY:
payload: '{"key": "Authorization", "service_token": "${BOCHA_API_KEY}", "location": "Header"}'
-
查看文档如何将Bocha API KEY添加到系统变量,将博查API-Key添加到本地系统变量中,在payload里使用本地系统变量。
payload: '{"key": "Authorization", "service_token": "Bearer ${BOCHA_API_KEY}", "location": "Header"}'
字段参考
auth: #必填,类型object。插件鉴权配置。
type: oauth #必填,类型string。
# 插件鉴权类型,可选none(无鉴权);oauth(标准oauth2.0);service_http(简单鉴权)。
sub_type: authorization_code
#可选,类型string。插件鉴权子类型。鉴权类型为none时无效;
# 鉴权类型为oauth时,仅支持authorization_code(授权码模式);
# 授权类型为service_http时,仅支持token/api_key(APIToken或者APIKey等单字段鉴权信息);
payload: '{"client_id":"","client_secret":"","client_url":"https://accounts.feishu.cn/open-apis/authen/v1/authorize","scope":"drive:drive","authorization_url":"https://open.larkoffice.com/open-apis/authen/v2/oauth/token","authorization_content_type":"application/json"}'
#可选,类型string。鉴权的具体配置,json格式,具体字段根据鉴权类型和子类型而定。
更多技术问题请访问博查官方或联系support@bochaai.com
更多推荐
所有评论(0)