定义
允许借助Jinja2的Python模板语言灵活地进行数据转换、文本处理等。
前置条件
什么是Jinja?
Jinja是一种快速、表达力强、可扩展的Python模板引擎,它能让你灵活地进行数据转换和文本处理。
场景
模板节点让你能够在工作流中利用 Jinja2(一种强大的 Python 模板语言)实现轻量且灵活的数据转换。这非常适用于文本处理、JSON 转换等多种场景。例如,你可以灵活地格式化并合并来自前序步骤的变量,从而生成单一的文本输出。这对于将多个数据源的信息汇总成特定格式以满足后续步骤需求的情况特别有用。
示例1: 将多个输入(文章标题、介绍、内容)拼接为完整文本
示例2: 将知识检索节点获取的信息及其相关的元数据,整理成一个结构化的 Markdown 格式
{% for item in chunks %}
### Chunk {{ loop.index }}.
### Similarity: {{ item.metadata.score | default('N/A') }}
#### {{ item.title }}
##### Content
{{ item.content | replace('\n', '\n\n') }}
---
{% endfor %}
示例 3: 支持渲染HTML的表单
<form data-format="json"> // Default to text
<label for="username">Username:</label>
<input type="text" name="username" />
<label for="password">Password:</label>
<input type="password" name="password" />
<label for="content">Content:</label>
<textarea name="content"></textarea>
<label for="date">Date:</label>
<input type="date" name="date" />
<label for="time">Time:</label>
<input type="time" name="time" />
<label for="datetime">Datetime:</label>
<input type="datetime" name="datetime" />
<label for="select">Select:</label>
<input type="select" name="select" data-options='["hello","world"]'/>
<input type="checkbox" name="check" data-tip="By checking this means you agreed"/>
<button data-size="small" data-variant="primary">Login</button>
</form>
该文章对您有帮助吗?