大模型节点
大模型节点主要分为5部分:
- 处理类型
- 单次
- 批处理
- 模型类型:目前可以选择的模型有 豆包、通义千问、智谱、MinMax和Kimi
- 输入:此时的参数可以被下面的提示词所用
- 提示词:给大模型使用的提示词
- 输出:经过此大模型处理后的输出
提示词的使用
提示词是核心,他关系到大模型输出结果的好坏,我们先从最简单的提示词开始,直接在提示词中输入“帮我写一篇有关情感故事的文章”,运行之后看到的结果为:
在上面的例子中有一个问题——它只能写有关“情感”方面的文章,假如我想写“儿童”、“老年人”、“教师”等其他方面的文章怎么办?难道我需要每一个类型都单独制作一个工作流?
其实也是有解决办法的,就是将写哪方面文章类型的权利交给用户——用户输入。
在提示词的上面,是“输入”参数,这个参数的作用就是来接收用户输入的——在此处我们是使用input变量来接收的,所以我们只需稍微修改下提示词就可以了
帮我写一篇有关{{input}}故事的文章
在上图中,大模型提示词模块中的直接饮用了用户传来的参数input,这样就可以动态生成多种类型的文章了。
批处理
在上文中我们说过,大模型可以选择“单次”和“批处理”,在什么情况下我们应该选择“批处理”呢?当大模型的输出是一个数组的时候。
举个例子:比如我们写文章的时候都是有大纲的,
大纲1:内容1
大纲2:内容2
大纲3:内容3
- 用户输入的是“教师”
- 大模型根据教师生成了3个大纲,分别为:
-
- 教师的角色与职责
-
- 教学方法与策略
-
- 教育技术在教学中的应用
-
- 里一个大模型接收到3个大纲后,根据大纲分别生成一段文章
- 最终将所有的大纲内容生成一篇完整的文章
代码节点
在扣子中,不仅支持大模型节点,还支持代码节点,代码顾名思义就是在智能体编写代码,目前扣子支持的代码有两种:Python和JavaScript。
点击新增代码节点后,会看到代码节点的弹框,然后在点解**“在IDE中编辑”**就可以编辑代码了。
获取输入的参数方式:
params.input
key0、key1、key2这几个的输出在后续节点是能够使用的
假如我们给大模型的提示词是这样的:如何学习Java,并推荐相关书籍链接
大模型节点返回的内容是下面这样的,我们如何提取到书名和链接地址呢?
在代码节点中我们使用正则表达式匹配
import reasync def main(args):params = args.paramscontent = str(params["input"])pattern = r'《(.*?)》.*?(https?://[^\s;]+)' matches = re.findall(pattern, content)urls = [ match[1] for match in matches]names = [ match[0] for match in matches]ret = {"key0": content,"key1": str(urls),"key2": str(names)}return ret
选择器节点
扣子本质上是一个低代码平台,是低代码平台肯定会用到条件判断。
在扣子中是用选择器节点实现的。
选择器中的引用变量来自上一节点。
选择条件有:等于、不等于、长度大于、长度小于…………
比较值可以来自其他节点,也可以手动输入
选择器中也可以有多个条件,多个条件的关系有两种:1、且 2、或
- 且:表示只有所有条件全部合格时才往下执行
- 或:多个条件有一个合格就可以往下执行
小伙伴们,学会了吗?如有问题欢迎评论区讨论!
AI的列车已经加速,坐上去的是未来,站台上观望的,终将被落下。
如有疑问评论区讨论,创作不易,欢迎点赞收藏转发!