类型转换
Type Convert 组件用于在不同数据类型之间做转换。
目前支持 Data、DataFrame 和 Message 三类数据。
- Data
- DataFrame
- Message
Data 是一个结构化对象,通常包含一个主 text 键,以及其他键值对,例如:
_10"data": {_10 "text": "User Profile",_10 "name": "Charlie Lastname",_10 "age": 28,_10 "email": "charlie.lastname@example.com"_10},
与组件相关联的 更大上下文还会标记哪个键是主要的 text_key,并可选提供默认值。
例如:
_10{_10 "text_key": "text",_10 "data": {_10 "text": "User Profile",_10 "name": "Charlie Lastname",_10 "age": 28,_10 "email": "charlie.lastname@example.com"_10 },_10 "default_value": ""_10}
DataFrame 是一种表格型数据结构, 本质上是一个数组,其中每个字典对象表示一行,每个键表示列名。
例如:
_12[_12 {_12 "name": "Charlie Lastname",_12 "age": 28,_12 "email": "charlie.lastname@example.com"_12 },_12 {_12 "name": "Bobby Othername",_12 "age": 25,_12 "email": "bobby.othername@example.com"_12 }_12]
Message 主要用于传递文本内容,例如 "Name: Charlie Lastname, Age: 28, Email: charlie.lastname@example.com"。
不过一个完整的 Message 还可以携带元数据,尤其是在作为聊天输入或输出时。
更多说明请参阅SkillFlaw 数据类型。
在流程中使用 Type Convert
Type Convert 通常用于把数据调整成下游组件需要的格式。
例如,某个组件输出的是 Message,但后一个组件要求输入 Data,这时就可以使用 Type Convert 把 Message 重整为 Data 再继续传递。
下面是一个常见示例:把 Web Search 组件输出的 DataFrame 转成 Message,作为 LLM 的文本上下文:
-
基于 Basic prompting 模板创建一个流程。
-
向流程中添加 Web Search 组件,并输入一个搜索查询,例如
environmental news。 -
在 Prompt Template 组件中,把 Template 替换为以下内容:
_10Answer the user's question using the {context}大括号中的内容定义了一个 Prompt 变量,它会在 Prompt Template 上生成对应输入字段。 在本例中,你将用 context 字段把搜索结果传入模板。
-
添加一个 Type Convert 组件,并将 Output Type 设为 Message。
因为 Web Search 输出的
DataFrame与 context 字段需要的Message类型不兼容,所以必须先通过 Type Convert 把结果转换成Message,才能继续传给 Prompt Template。 -
连接新增组件:
- 将 Web Search 的输出连接到 Type Convert 的输入
- 将 Type Convert 的输出连接到 Prompt Template 的 context 输入

-
在 Language Model 组件中填入 OpenAI API Key。
如果你希望使用其他提供商或模型,也可以继续修改 Model Provider、Model Name 和 API Key。
-
点击 Playground,输入与你的搜索主题相关的问题,例如
latest news或what's the latest research on the environment?。结果
LLM 会结合搜索结果上下文、你的聊天输入和模型已有知识来生成回复,例如:
_10Here are some of the latest news articles related to the environment:_10Ozone Pollution and Global Warming: A recent study highlights that ozone pollution is a significant global environmental concern, threatening human health and crop production while exacerbating global warming. Read more_10...
Type Convert 参数
| Name | Display Name | Info |
|---|---|---|
| input_data | Input Data | 输入参数。待转换的数据,可接收 Data、DataFrame 或 Message。 |
| output_type | Output Type | 输入参数。目标输出类型,可选 Data、DataFrame 或 Message。 |
| output | Output | 输出参数。转换后的结果。输出端口会随 Output Type 变化。 |