mirror of
https://github.com/labring/FastGPT.git
synced 2026-02-28 01:02:28 +08:00
83 lines
3.2 KiB
Plaintext
83 lines
3.2 KiB
Plaintext
---
|
||
title: 如何提交应用模板
|
||
description: 指南:如何向 FastGPT 提交应用模板
|
||
---
|
||
|
||
## 什么模板可以合并
|
||
|
||
目前合并进仓库的应用模板,会在「模板市场」中全部展示给用户。
|
||
|
||
为了控制模板的质量以及避免数量过多带来的繁琐,并不是所有的模板都会被合并到开源仓库中,你可以提前 PR 与我们沟通模板的内容。
|
||
|
||
预估最后总体的数量不会很多,控制在 50 个左右,一半来自 FastGPT Team,一半来自社区用户。
|
||
|
||
## 如何写一个应用模板
|
||
|
||
### 1. 跑通 FastGPT 开发环境和 FastGPT-plugin 开发环境
|
||
|
||
需要在 dev 环境下执行下面的操作。
|
||
|
||
可参照下面两篇文档在本地运行 FastGPT 开发环境和 FastGPT-plugin 开发环境
|
||
- [FastGPT|快速开始本地开发](/docs/introduction/development/intro/)
|
||
- [如何开发系统插件](/docs/introduction/guide/plugins/dev_system_tool/)
|
||
|
||
### 2. 创建应用模版
|
||
|
||
在 FastGPT-plugin 项目中,应用模版都在 `modules/workflow/templates` 目录下。
|
||
1. 创建一个新的 `.json` 文件
|
||
2. 复制如下内容并粘贴在刚刚创建的 `.json` 文件中
|
||
|
||
```json
|
||
{
|
||
"name": "模板名",
|
||
"intro": "模板描述,会展示在模板市场的展示页",
|
||
"author": "填写你的名字",
|
||
"avatar": "模板头像,可以将图片文件放在同一个文件夹中,然后填写相应路径",
|
||
|
||
"tags": ["模板标签"], // writing(文本创作),image-generation(图片生成),web-search(联网搜索),
|
||
// roleplay(角色扮演), office-services(办公服务) 暂时分为 5 类,从中选择相应的标签
|
||
|
||
"type": "模板类别", // simple(简易应用), advanced(工作流), plugin(插件)
|
||
|
||
"workflow": {
|
||
// 这个对象先不管,待会直接粘贴导出的工作流即可
|
||
"nodes": [],
|
||
"edges": [],
|
||
"chatConfig": {}
|
||
}
|
||
}
|
||
```
|
||
|
||
|
||
### 3. 完成模版的编排和测试
|
||
|
||
1. 在 FastGPT 中(可以在云服务版或本地部署的版本中进行)编排工作流。
|
||
|
||
### 4. 复制配置到 template.json
|
||
|
||
鼠标放置在左上角应用的头像和名称上,会出现对于下拉框操作,可以导出工作流配置。
|
||
|
||
导出的配置,会自动复制到剪切板,可以直接到 template.json 文件中粘贴使用,替换步骤 2 中,**workflow** 的值。
|
||
|
||

|
||
|
||
### 5. 验证模板是否加载成功
|
||
|
||
刷新页面,打开模板市场,看其是否成功加载,并点击「使用」测试其功能。
|
||
|
||

|
||
|
||
### 6. 部署使用
|
||
|
||
完成上述操作后,可以打包 fastgpt-plugin 镜像使用 目前模版不支持热更新机制,所有模版都会打包在镜像内。
|
||
|
||
如果您不希望每次更新模版都要重新打包 fastgpt-plugin 镜像,可以选择通过 docker 存储卷挂载的方式将 .json 文件挂载到容器内的 `/app/workflows/` 目录下。
|
||
|
||
### 7. 提交 PR
|
||
|
||
如果你觉得你的模板需要提交到开源仓库,可以通过 PR 形式向我们提交。
|
||
|
||
- 写清楚模板的介绍和功能
|
||
- 配上模板运行的效果图
|
||
- 模板参数填写说明,需要在 PR 中写清楚。例如,有些模板需要去某个提供商申请 key,需要附上对应的地址和教程,后续我们会加入到文档中。
|