Dify v0.6.9 utilise des flux de travail personnalisés comme outils

Cela peut être fait dans le Dify Les flux de travail d'IA ont été publiés dans la version 0.6.9 en tant qu'outils réutilisables (à utiliser dans un agent ou un flux de travail). Cela permet de les intégrer à de nouveaux agents et à d'autres flux de travail, éliminant ainsi la duplication des efforts. Deux nouveaux nœuds de flux de travail et un nœud amélioré ont été ajoutés :

L'itération :Assurez-vous que l'entrée est un tableau. Le nœud d'itération traitera chaque élément du tableau à tour de rôle jusqu'à ce que tous les éléments aient été traités. Par exemple, si vous avez besoin d'un long article, il vous suffit de saisir quelques titres. L'article généré contiendra un paragraphe pour chaque titre, ce qui élimine la nécessité d'une programmation complexe.

Extracteur de paramètres :L'extraction de paramètres structurés à partir du langage naturel à l'aide de grands modèles de langage (LLM) simplifie le processus d'utilisation des outils dans les flux de travail et les requêtes HTTP.

Agrégateur de variables :L'assignateur de variables amélioré permet une sélection plus souple des variables. En même temps, l'expérience de l'utilisateur est améliorée grâce à des connexions de nœuds plus performantes.

Dans Dify, les flux de travail sont divisés en deux catégories : Chatflow et Flux de travail Deux types :ChatflowApplications conversationnelles pour les scénarios basés sur le dialogue, y compris le service à la clientèle, la recherche sémantique et la logique à plusieurs étapes dans les réponses de construction.Flux de travailLa solution de gestion de l'information : orientée vers l'automatisation et les scénarios de traitement par lots, elle convient à des applications telles que la traduction de haute qualité, l'analyse de données, la génération de contenu, l'automatisation de l'envoi de courriels, etc.

Dify v0.6.9将自定义工作流作为工具

Portail Chatflow

Dify v0.6.9将自定义工作流作为工具

Portail de flux de travail

I. Processus de traduction en trois étapes

1. démarrer le nœud
Dify v0.6.9将自定义工作流作为工具

La définition des variables d'entrée dans le nœud de départ prend en charge quatre types : texte, paragraphe, options déroulantes et nombres. Ceci est illustré ci-dessous :

Dify v0.6.9将自定义工作流作为工具

Dans Chatflow, le nœud de départ fournira des variables intégrées au système : sys.query et sys.files. sys.query est utilisé pour la saisie des questions de l'utilisateur dans les applications basées sur le dialogue, et sys.files est utilisé pour le téléchargement d'un fichier dans un dialogue, par exemple le téléchargement d'une image pour en comprendre le sens, qui doit être utilisé avec le modèle de compréhension d'image ou des outils pour la saisie d'images.

2. nœud LLM (reconnaissance des noms propres)
Dify v0.6.9将自定义工作流作为工具

Le SYSTÈME fournit des orientations de haut niveau pour le dialogue, comme suit :

<任务> 识别用户输入的技术术语。请用{XXX} -> {XXX}的格式展示翻译前后的技术术语对应关系。
<输入文本>
{{#1711067409646.input_text#}}
<示例>
Transformer -> Transformer
Token -> Token
零样本 -> Zero Shot
少样本 -> Few Shot
<专有名词>

Dans le nœud LLM, les invites d'entrée du modèle peuvent être personnalisées. Si vous sélectionnez le modèle Chat, vous pouvez personnaliser les invites SYSTEM/USER/ASSISTANT. Ceci est illustré ci-dessous :

Dify v0.6.9将自定义工作流作为工具
numéro de sériecompte pournote
1SYSTÈME (mot clé)Fournir des orientations de haut niveau pour le dialogueindice
2UTILISATEURFournir des instructions, des requêtes ou toute autre donnée textuelle au modèleQuestions relatives aux utilisateurs
3ASSISTANTModéliser les réponses en fonction des messages des utilisateursRéponses des aidants
3. nœud LLM2 (traduction directe)
Dify v0.6.9将自定义工作流作为工具

Le SYSTÈME fournit des orientations de haut niveau pour le dialogue, comme suit :

<任务> 您是一名精通英文的专业译者,特别是在将专业的学术论文转换为通俗易懂的科普文章方面有着非凡的能力。请协助我把下面的中文段落翻译成英文,使其风格与英文的科普文章相似。
<限制> 
请根据中文内容直接翻译,维持原有的格式,不省略任何信息。
<翻译前> 
{{#1711067409646.input_text#}}
<直接翻译>
4. le LLM3 (qui souligne les problèmes liés à la traduction directe)
Dify v0.6.9将自定义工作流作为工具

Le SYSTÈME fournit des orientations de haut niveau pour le dialogue, comme suit :

<任务>
根据直接翻译的结果,指出其具体存在的问题。需要提供精确描述,避免含糊其辞,并且无需增添原文中未包含的内容或格式。具体包括但不限于:
不符合英文的表达习惯,请明确指出哪里不合适句子结构笨拙,请指出具体位置,无需提供修改建议,我们将在后续的自由翻译中进行调整表达含糊不清,难以理解,如果可能,可以试图进行解释
<直接翻译>
{{#1711067578643.text#}}
<原文>
{{#1711067409646.input_text#}}
<直接翻译的问题>
5) LLM4 (traduction italienne - deuxième traduction)
Dify v0.6.9将自定义工作流作为工具

Le SYSTÈME fournit des orientations de haut niveau pour le dialogue, comme suit :

<任务>基于初次直接翻译的成果及随后识别的各项问题,我们将进行一次重新翻译,旨在更准确地传达原文的意义。在这一过程中,我们将致力于确保内容既忠于原意,又更加贴近英文的表达方式,更容易被理解。在此过程中,我们将保持原有格式不变。
<直接翻译> 
{{#1711067578643.text#}}
<第一次翻译的问题>
{{#1711067817657.text#}}
<意译>
6. nœud final
Dify v0.6.9将自定义工作流作为工具

Définition des noms des variables de sortiesecond_translation.

7. publier le flux de travail en tant qu'outil

Publier le Workflow en tant qu'outil afin de pouvoir l'utiliser dans l'Agent, comme indiqué ci-dessous :

Dify v0.6.9将自定义工作流作为工具

Cliquez sur pour accéder à la page Outils, comme indiqué ci-dessous :

Dify v0.6.9将自定义工作流作为工具
8. modèle Jinja

En écrivant Prompt, j'ai trouvé un support pour les modèles Jinja. Voir [3][4] pour plus de détails.

II. Utilisation du flux de travail dans le flux de travail

Dify v0.6.9将自定义工作流作为工具

III. Utilisation du flux de travail dans les agents

Le fait de considérer le workflow comme un outil, et donc d'étendre les capacités de l'agent, est similaire à d'autres outils, tels que la recherche sur Internet, l'informatique scientifique, etc.

Dify v0.6.9将自定义工作流作为工具Dify v0.6.9将自定义工作流作为工具

IV. Test individuel du processus de traduction en trois étapes

Dify v0.6.9将自定义工作流作为工具

L'entrée est illustrée ci-dessous :

Transformer是大语言模型的基础。

Le résultat est illustré ci-dessous :

The Transformer serves as the cornerstone for large-scale language models.

La page de détails est présentée ci-dessous :

Dify v0.6.9将自定义工作流作为工具

La page de suivi est présentée ci-dessous :

Dify v0.6.9将自定义工作流作为工具
1. démarrer

(1) Entrée

{
"input_text": "Transformer是大语言模型的基础。",
"sys.files": [],
"sys.user_id": "7d8864c3-c456-4588-9b0a-9368c94ca377"
}

(2) Sortie

{
"input_text": "Transformer是大语言模型的基础。",
"sys.files": [],
"sys.user_id": "7d8864c3-c456-4588-9b0a-9368c94ca377"
}
2. LE LLM

(1) Traitement des données

{
"model_mode": "chat",
"prompts": [
{
"role": "system",
"text": "<任务> 识别用户输入的技术术语。请用{XXX} -> {XXX}的格式展示翻译前后的技术术语对应关系。\n<输入文本>\nTransformer是大语言模型的基础。\n<示例>\nTransformer -> Transformer\nToken -> Token\n零样本 -> Zero Shot \n少样本 -> Few Shot\n<专有名词>",
"files": []
}
]
}

(2) Sortie

{
"text": "Transformer -> Transformer",
"usage": {
"prompt_tokens": 107,
"prompt_unit_price": "0.01",
"prompt_price_unit": "0.001",
"prompt_price": "0.0010700",
"completion_tokens": 3,
"completion_unit_price": "0.03",
"completion_price_unit": "0.001",
"completion_price": "0.0000900",
"total_tokens": 110,
"total_price": "0.0011600",
"currency": "USD",
"latency": 1.0182260260044131
}
}
3) LLM 2

(1) Traitement des données

{
"model_mode": "chat",
"prompts": [
{
"role": "system",
"text": "<任务> 您是一名精通英文的专业译者,特别是在将专业的学术论文转换为通俗易懂的科普文章方面有着非凡的能力。请协助我把下面的中文段落翻译成英文,使其风格与英文的科普文章相似。\n<限制> \n请根据中文内容直接翻译,维持原有的格式,不省略任何信息。\n<翻译前> \nTransformer是大语言模型的基础。\n<直接翻译> ",
"files": []
}
]
}

(2) Sortie

{
"text": "The Transformer is the foundation of large language models.",
"usage": {
"prompt_tokens": 176,
"prompt_unit_price": "0.001",
"prompt_price_unit": "0.001",
"prompt_price": "0.0001760",
"completion_tokens": 10,
"completion_unit_price": "0.002",
"completion_price_unit": "0.001",
"completion_price": "0.0000200",
"total_tokens": 186,
"total_price": "0.0001960",
"currency": "USD",
"latency": 0.516718350991141
}
}
4) LLM 3

(1) Traitement des données

{
"model_mode": "chat",
"prompts": [
{
"role": "system",
"text": "<任务>\n根据直接翻译的结果,指出其具体存在的问题。需要提供精确描述,避免含糊其辞,并且无需增添原文中未包含的内容或格式。具体包括但不限于:\n不符合英文的表达习惯,请明确指出哪里不合适句子结构笨拙,请指出具体位置,无需提供修改建议,我们将在后续的自由翻译中进行调整表达含糊不清,难以理解,如果可能,可以试图进行解释\n<直接翻译>\nThe Transformer is the foundation of large language models.\n<原文>\nTransformer是大语言模型的基础。\n<直接翻译的问题>",
"files": []
}
]
}

(2) Sortie

{
"text": "句子结构笨拙,不符合英文表达习惯。",
"usage": {
"prompt_tokens": 217,
"prompt_unit_price": "0.001",
"prompt_price_unit": "0.001",
"prompt_price": "0.0002170",
"completion_tokens": 22,
"completion_unit_price": "0.002",
"completion_price_unit": "0.001",
"completion_price": "0.0000440",
"total_tokens": 239,
"total_price": "0.0002610",
"currency": "USD",
"latency": 0.8566757979860995
}
}
5) LLM 4

(1) Traitement des données

{
"model_mode": "chat",
"prompts": [
{
"role": "system",
"text": "<任务>基于初次直接翻译的成果及随后识别的各项问题,我们将进行一次重新翻译,旨在更准确地传达原文的意义。在这一过程中,我们将致力于确保内容既忠于原意,又更加贴近英文的表达方式,更容易被理解。在此过程中,我们将保持原有格式不变。\n<直接翻译> \nThe Transformer is the foundation of large language models.\n<第一次翻译的问题>\n句子结构笨拙,不符合英文表达习惯。\n<意译> ",
"files": []
}
]
}

(2) Sortie

{
"text": "The Transformer serves as the cornerstone for large-scale language models.",
"usage": {
"prompt_tokens": 187,
"prompt_unit_price": "0.01",
"prompt_price_unit": "0.001",
"prompt_price": "0.0018700",
"completion_tokens": 12,
"completion_unit_price": "0.03",
"completion_price_unit": "0.001",
"completion_price": "0.0003600",
"total_tokens": 199,
"total_price": "0.0022300",
"currency": "USD",
"latency": 1.3619857440062333
}
}
6. conclusion

(1) Entrée

{
"second_translation": "The Transformer serves as the cornerstone for large-scale language models."
}

(2) Sortie

{
"second_translation": "The Transformer serves as the cornerstone for large-scale language models."
}

V. Test du processus de traduction en trois étapes dans Agent

Lors du lancement de l'outil :

Dify v0.6.9将自定义工作流作为工具

Lors de la fermeture de l'outil :

Dify v0.6.9将自定义工作流作为工具

VI. Questions connexes

1) Quand le workflow est-il déclenché dans l'agent ?

Comme pour les outils, il faut se fier à la description de l'outil. L'implémentation exacte n'est claire qu'en regardant le code source.

bibliographie

[1] Flux de travail : https://docs.dify.ai/v/zh-hans/guides/workflow

[2] Enseignement pratique de Dify à l'écosystème WeChat : https://docs.dify.ai/v/zh-hans/learn-more/use-cases/dify-on-wechat

[3] Documentation officielle de Jinja : https://jinja.palletsprojects.com/en/3.0.x/

[4] Modèle Jinja : https://jinja.palletsprojects.com/en/3.1.x/templates/

© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...