Files
dify/app4_ Multi-agent-customer_chatbot.yml

260 lines
8.5 KiB
YAML

app:
description: 'documentation, pdf and source can be found under the following link:
https://drive.google.com/drive/folders/13IXNtJGFKZnBelD2caNwWF8qo8LAVnos?usp=sharing'
icon: 🤖
icon_background: '#FFEAD5'
mode: advanced-chat
name: App 4 - Multi-agent customer chatbot
use_icon_as_answer_icon: false
dependencies:
- current_identifier: null
type: marketplace
value:
marketplace_plugin_unique_identifier: langgenius/gemini:0.5.12@2a2bf8f78552bd52b1d2e51995daaa7b7c04b2572b29e661b14c1b773ab8d45a
version: null
kind: app
version: 0.5.0
workflow:
conversation_variables: []
environment_variables: []
features:
file_upload:
allowed_file_extensions:
- .JPG
- .JPEG
- .PNG
- .GIF
- .WEBP
- .SVG
allowed_file_types:
- image
allowed_file_upload_methods:
- local_file
- remote_url
enabled: false
fileUploadConfig:
audio_file_size_limit: 50
batch_count_limit: 5
file_size_limit: 15
image_file_size_limit: 10
video_file_size_limit: 100
workflow_file_upload_limit: 10
image:
enabled: false
number_limits: 3
transfer_methods:
- local_file
- remote_url
number_limits: 3
opening_statement: ''
retriever_resource:
enabled: true
sensitive_word_avoidance:
enabled: false
speech_to_text:
enabled: false
suggested_questions: []
suggested_questions_after_answer:
enabled: false
text_to_speech:
enabled: false
language: ''
voice: ''
graph:
edges:
- data:
sourceType: llm
targetType: answer
id: llm-answer
source: llm
sourceHandle: source
target: answer
targetHandle: target
type: custom
- data:
isInLoop: false
sourceType: start
targetType: knowledge-retrieval
id: 1763644874951-source-1763644901024-target
source: '1763644874951'
sourceHandle: source
target: '1763644901024'
targetHandle: target
type: custom
zIndex: 0
- data:
isInLoop: false
sourceType: knowledge-retrieval
targetType: llm
id: 1763644901024-source-llm-target
source: '1763644901024'
sourceHandle: source
target: llm
targetHandle: target
type: custom
zIndex: 0
nodes:
- data:
selected: false
title: User Input
type: start
variables: []
height: 73
id: '1763644874951'
position:
x: 38
y: 241
positionAbsolute:
x: 38
y: 241
selected: false
sourcePosition: right
targetPosition: left
type: custom
width: 242
- data:
context:
enabled: true
variable_selector:
- sys
- query
memory:
query_prompt_template: '{{#sys.query#}}
{{#sys.files#}}'
role_prefix:
assistant: ''
user: ''
window:
enabled: false
size: 10
model:
completion_params:
temperature: 0.7
mode: chat
name: gemini-2.5-flash-lite
provider: langgenius/gemini/google
prompt_template:
- id: 68dd7e7c-862f-47d7-90a0-8dbe0caddd77
role: system
text: "\nYou are a dedicated Sales Manager and Customer Support Representative\
\ specializing in office writing tools. Your primary goal is to assist\
\ customers in finding the perfect product by deeply understanding their\
\ needs and providing comprehensive details, features, and up-to-the-minute\
\ availability from our inventory.\nWhen a user asks a question, use the\
\ provided context about our office writing tools catalog to formulate\
\ your response.\n**Instructions:**\n1. **Identify User Intent:** Understand\
\ what the user is looking for (e.g., specific product, category, recommendation,\n\
comparison, price range, attributes).\n2. **Utilize Context:** Refer to\
\ the office_writing_tools_catalog.csv data provided in the '{{knowledge.\n\
office_writing_too...}}* variable. Extract relevant product names, categories,\
\ descriptions, prices, sizes, colors, and materials.\n\uFEFF\uFEFF\uFEFF\
**Provide Comprehensive Details:** For identified products, list key features,\
\ attributes, and pricing.\n\uFEFF\uFEFF\uFEFF**Maintain Conversational\
\ Context:** Respond in a friendly, helpful, and professional tone. Remember\
\ previous turns\nin the conversation.\n5. **Address Availability (Simulated):**\
\ Since we don't have real-time inventory, you can phrase availability\
\ generally,\ne. g.,\n\"These items are typically in stock,\" or \"We\
\ usually have a good selection of these available.\"\n\uFEFF\uFEFF\uFEFF\
**Handle No Matches:** If the provided context does not contain information\
\ relevant to the user's query, politely state that you couldn't find\
\ a matching product in the catalog and offer to help with something else\
\ or suggest broader categories.\n\uFEFF\uFEFF\uFEFF**Encourage Further\
\ Questions:** Always invite follow-up questions to continue assisting\
\ the user.\n**Example Interaction Flow:**\nUser: \"Do you have blue ballpoint\
\ pens?\"\nAI: \"Yes, we certainly do! We have the 'Blue Ballpoint Pen'\
\ which is a classic retractable pen with smooth blue ink, priced at $1.50.\
\ It's a medium size and made of plastic. These are typically in stock.\
\ Is there anything else you'd like to know about it, or perhaps another\
\ type of pen?\"\nUser: \"I need something for organizing my desk.\"\n\
AI: \"Certainly! For organizing your desk, we have a few great options.\
\ For example, the 'Desk Organizer' is a multi-compartment item for pens,\
\ pencils, and small items, priced at $19.99,\nmade of mesh metal. We\
\ also have the\n'Document\nTray (Mesh)' for letter/A4 papers at $17.50,\
\ and a 'Pen Holder' for $7.00. Which of these sounds most interesting,\
\ would you like to explore other desk accessories?\"\nNow, based on the\
\ user's {{#sys.query#}} provide the best possible answer using the provided\
\ {{#context#}}.\n\n\n"
- id: 3295d5cd-df1f-4c19-b9ef-983ddfb6642d
role: user
text: ''
selected: false
title: LLM
type: llm
vision:
enabled: false
height: 88
id: llm
position:
x: 603
y: 241
positionAbsolute:
x: 603
y: 241
selected: true
sourcePosition: right
targetPosition: left
type: custom
width: 242
- data:
answer: '{{#llm.text#}}'
selected: false
title: Answer
type: answer
variables: []
height: 103
id: answer
position:
x: 875.6911171693694
y: 241
positionAbsolute:
x: 875.6911171693694
y: 241
selected: false
sourcePosition: right
targetPosition: left
type: custom
width: 242
- data:
dataset_ids:
- Uh2PGtPpYOw26Hlf4hVp2UZoZaKw1tn8fF7eVJILOh0xwUeYPhPMBDp611riGULx
multiple_retrieval_config:
reranking_enable: false
reranking_mode: weighted_score
score_threshold: null
top_k: 4
weights:
keyword_setting:
keyword_weight: 0.4
vector_setting:
embedding_model_name: gemini-embedding-001
embedding_provider_name: langgenius/gemini/google
vector_weight: 0.6
weight_type: customized
query_variable_selector:
- '1763644874951'
- sys.query
retrieval_mode: multiple
selected: false
title: Knowledge Retrieval
type: knowledge-retrieval
height: 52
id: '1763644901024'
position:
x: 319
y: 83
positionAbsolute:
x: 319
y: 83
selected: false
sourcePosition: right
targetPosition: left
type: custom
width: 242
viewport:
x: 14.465624141107696
y: 161.3508892306686
zoom: 0.8190190956202208
rag_pipeline_variables: []