
Edward
https://appstore.lazycat.cloud/#/shop/detail/dev.libr.dify
今天我们就用Dify来复刻一下吴恩达翻译神器,并且调用算力仓Ollama开源模型来解决一下token燃烧的焦虑。
> 注意,调取算力仓模型需要购买一台算力仓才能配合使用哦!!!如无,可以使用其他模型供应商进行测试。
## 1. 先在Dify里安装Ollama模型插件,进行配置,这里我就直接演示如何配置算力仓模型,点击选择模型,按照要求对应填写,可参考下图。

## 2. 回到Dify主页,点击**工作室**,点击**创建空白应用**,见下图。

## 3. 选择**工作流**,应用名称和描述可按需自定义填写,点击**创建**

## 4. 点击**开始**,在右侧选择加号,进行输入变量配置

## 5. 在变量对话框里,选择**文本**,按照下面的内容对应添加进去,需要配置4个。除了Souce_text是选择段落外,其余都是文本。
> 输入变量配置:
> - source_text: 需要翻译的具体文本内容
> 作用:接收用户要翻译的原文,支持长文本
>
> - source_lang: 源语言
> 作用:指定原文的语言,如"English"、"Chinese"等
>
> - target_lang: 目标语言
> 作用:指定要翻译成的目标语言
>
> - country: 国家地区偏好(可选)
> 作用:用于调整翻译风格,使其符合特定地区的语言习惯

下图是添加之后的效果

## 6. 点击右上角加号,选择**LLM**,进行添加模型供应商

## 7. 名称改成“**初始翻译**”,右侧SYSTEM里,输入下面的系统提示词,**{source_lang}** 和 **{target_lang}** 请点击“**x**“对应选择替换变量。然后再点击下方**添加消息**
> 你是一位专业的语言学家,专门从事{source_lang}到{target_lang}的翻译工作。

## 8. 在User里添加以下用户提示词,跟上面系统提示词一样,点击”**x**“对应替换变量
> 这是一个从到{source_lang}到{target_lang}翻译任务,请提供这段文本的{target_lang}翻译。
>
> 请只提供翻译内容,不要提供任何解释或其他文本。
>
> {source_lang}: {source_text}
>
> {target_lang}:

## 9. 点击**初始翻译**右上角加号,选择**条件分支**

点击**添加条件**,选择**country**

后面选择**不为空**

下面两个节点也都分别点击**选择下一个节点**

名称改一下,一个为**反思优化-地区偏好**,另一个为**反思优化**。

> 判断逻辑:
> - 如果提供了 country 参数:
> → 走地区优化的反思优化路径
> - 如果未提供 country 参数:
> → 走标准反思优化路径
## 10. 反思优化节点配置
### 带地区偏好的反思优化
还是按照上述配置系统提示词和用户提示词,按照下图对应填写,记得对应修改变量
**系统提示词**
> 你是一位专业的语言学家,专门从事到{source_lang}的{target_lang}翻译工作。你将获得一段源文本及其翻译,你的目标是改进这个翻译。

**用户提示词**
> 你的任务是仔细阅读一段源文本及其从{source_lang}到{target_lang}的翻译,然后给出建设性的批评和有助于改进翻译的建议。
>
> 最终的翻译风格和语气应该符合{target_lang}地区的口语表达方式。
>
> 源文本和初始翻译用XML标签和标记如下:
>
>
> {source_text}
>
>
>
> {初始翻译的结果}
>
>
> 在写建议时,请注意是否有以下方面可以改进:
> (i) 准确性(通过纠正添加错误、误译、遗漏或未翻译的文本)
> (ii) 流畅性(通过应用的语法、拼写和标点规则,确保没有不必要的重复)
> (iii) 风格(通过确保翻译反映源文本的风格并考虑文化背景)
> (iv) 术语(通过确保术语使用的一致性并反映源文本领域;确保只使用中对等的习语)
>
>
> 请列出具体的、有帮助的和建设性的建议来改进翻译。
> 每个建议应针对翻译的一个具体部分。
> 只输出建议,不要输出其他内容。
```
复制粘贴时,把和前面的空格删掉哦!这里是因为md语法问题不去掉的话无法显示
```

### 标准反思优化
跟上面一样进行设置
**系统提示词**
> 你是一位专业的语言学家,专门从事到{source_lang}的{target_lang}翻译工作。你将获得一段源文本及其翻译,你的目标是改进这个翻译。

**用户提示词**
> 你的任务是仔细阅读一段源文本及其从{source_lang}到{target_lang}的翻译,然后给出建设性的批评和有助于改进翻译的建议。
>
> 源文本和初始翻译用XML标签和标记如下:
>
>
> {source_text}
>
>
>
> {初始翻译的结果}
>
>
> 在写建议时,请注意是否有以下方面可以改进:
> (i) 准确性(通过纠正添加错误、误译、遗漏或未翻译的文本)
> (ii) 流畅性(通过应用的语法、拼写和标点规则,确保没有不必要的重复)
> (iii) 风格(通过确保翻译反映源文本的风格并考虑文化背景)
> (iv) 术语(通过确保术语使用的一致性并反映源文本领域;确保只使用中对等的习语)
>
>
> 请列出具体的、有帮助的和建设性的建议来改进翻译。
> 每个建议应针对翻译的一个具体部分。
> 只输出建议,不要输出其他内容。
```
复制粘贴时,把和前面的空格删掉哦!这里是因为md语法问题不去掉的话无法显示
```
相比较**带地区偏好的反思优化**少了“**最终的翻译风格和语气应该符合{target_lang}地区的口语表达方式。**”

## 11. 配置变量聚合器
点击下方加号,选择**变量聚合器**

然后点击了两个反思优化右上角加号,拖拽到**变量聚合器**上

**变量赋值**右侧,点击加号,把**反思优化-地区偏好**和**反思优化**增加进去

点击**选择下一个节点**,选择**LLM**

新节点名称改为**优化翻译**

## 12. 配置优化翻译
还是按照上述配置系统提示词和用户提示词,按照下图对应填写,记得对应修改变量
**系统提示词**
> 你是一位专业的语言学家,专门从事{source_lang}到{target_lang}的翻译编辑工作。

**用户提示词**
> 你的任务是仔细阅读并编辑一个从{source_lang}到{target_lang}的翻译,同时考虑专家建议和建设性的批评。
>
> 源文本、初始翻译和专家语言学家的建议分别用XML标签、和标记如下:
>
>
> {source_text}
>
>
>
> {初始翻译的结果}
>
>
>
> {反思大模型的输出结果}
>
>
> 请在编辑翻译时考虑专家建议。编辑翻译时请确保:
> (i) 准确性(通过纠正添加错误、误译、遗漏或未翻译的文本)
> (ii) 流畅性(通过应用{target_lang}的语法、拼写和标点规则,确保没有不必要的重复)
> (iii) 风格(通过确保翻译反映源文本的风格)
> (iv) 术语(不适合上下文的术语、使用不一致)
> (v) 其他错误
>
> 输出:
> 只输出新的翻译结果,不要输出其他内容。
```
复制粘贴时,把和前面的空格删掉哦!这里是因为md语法问题不去掉的话无法显示
```

## 12. 结束进程
点击**优化翻译**右上角加号,选择**结束**节点

点击**输出变量**右侧加号,选择**优化翻译**即可

> 至此,这个翻译工作流就基本上配置成功了,下面我们就来测试一下实际效果。
# 实际演示
点击**运行**,对应填写相关内容,点击**开始运行**

可以点击**追踪**,查看进度

原文:
> In the flood of darkness, hope is the light. It brings comfort, faith, and confidence. It gives us guidance when we are lost, and gives support when we are afraid. And the moment we give up hope, we give up our lives. The world we live in is disintegrating into a place of malice and hatred, where we need hope and find it harder. In this world of fear, hope to find better, but easier said than done, the more meaningful life of faith will make life meaningful.
结束后,点击**结果**,即可看到最终翻译内容

最终翻译:
> 在黑暗的洪流中,希望是光。它带来安慰、信仰和信心,当我们迷失时给予指引,恐惧时给予支持。一旦我们放弃希望,就是放弃了生命。我们生活的世界正在崩溃成一个充满恶意和仇恨的地方,我们需要希望,但找到它却比说起来难得多。在这个充满恐惧的世界里,我们渴望找到更好的生活,但信仰赋予生活更深层的意义。
你可以查看**已深度思考**来看看思考过程

至此,整套翻译工作流已正常运行了。点右上角的**发布**就可以在探索里直接使用了。

> 我把这个工作流上传到了网盘里,链接如下。如果失效了,可以在群里找我要。
> https://transfer.it/t/K7Y4EvpTyDbQ
评论
0暂无评论