mirror of
				https://github.com/langgenius/dify.git
				synced 2025-10-31 19:03:09 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			67 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| METADATA_FILTER_SYSTEM_PROMPT = """
 | ||
|     ### Job Description',
 | ||
|     You are a text metadata extract engine that extract text's metadata based on user input and set the metadata value
 | ||
|     ### Task
 | ||
|     Your task is to ONLY extract the metadatas that exist in the input text from the provided metadata list and Use the following operators ["=", "!=", ">", "<", ">=", "<="] to express logical relationships, then return result in JSON format with the key "metadata_fields" and value "metadata_field_value" and comparison operator "comparison_operator".
 | ||
|     ### Format
 | ||
|     The input text is in the variable input_text. Metadata are specified as a list in the variable metadata_fields.
 | ||
|     ### Constraint
 | ||
|     DO NOT include anything other than the JSON array in your response.
 | ||
| """  # noqa: E501
 | ||
| 
 | ||
| METADATA_FILTER_USER_PROMPT_1 = """
 | ||
|     { "input_text": "I want to know which company’s email address test@example.com is?",
 | ||
|     "metadata_fields": ["filename", "email", "phone", "address"]
 | ||
|     }
 | ||
| """
 | ||
| 
 | ||
| METADATA_FILTER_ASSISTANT_PROMPT_1 = """
 | ||
| ```json
 | ||
|     {"metadata_map": [
 | ||
|         {"metadata_field_name": "email", "metadata_field_value": "test@example.com", "comparison_operator": "="}
 | ||
|     ]
 | ||
|     }
 | ||
| ```
 | ||
| """
 | ||
| 
 | ||
| METADATA_FILTER_USER_PROMPT_2 = """
 | ||
|     {"input_text": "What are the movies with a score of more than 9 in 2024?",
 | ||
|     "metadata_fields": ["name", "year", "rating", "country"]}
 | ||
| """
 | ||
| 
 | ||
| METADATA_FILTER_ASSISTANT_PROMPT_2 = """
 | ||
| ```json
 | ||
|     {"metadata_map": [
 | ||
|         {"metadata_field_name": "year", "metadata_field_value": "2024", "comparison_operator": "="},
 | ||
|         {"metadata_field_name": "rating", "metadata_field_value": "9", "comparison_operator": ">"},
 | ||
|     ]}
 | ||
| ```
 | ||
| """
 | ||
| 
 | ||
| METADATA_FILTER_USER_PROMPT_3 = """
 | ||
|     '{{"input_text": "{input_text}",',
 | ||
|     '"metadata_fields": {metadata_fields}}}'
 | ||
| """
 | ||
| 
 | ||
| METADATA_FILTER_COMPLETION_PROMPT = """
 | ||
| ### Job Description
 | ||
| You are a text metadata extract engine that extract text's metadata based on user input and set the metadata value
 | ||
| ### Task
 | ||
| # Your task is to ONLY extract the metadatas that exist in the input text from the provided metadata list and Use the following operators ["=", "!=", ">", "<", ">=", "<="] to express logical relationships, then return result in JSON format with the key "metadata_fields" and value "metadata_field_value" and comparison operator "comparison_operator".
 | ||
| ### Format
 | ||
| The input text is in the variable input_text. Metadata are specified as a list in the variable metadata_fields.
 | ||
| ### Constraint 
 | ||
| DO NOT include anything other than the JSON array in your response.
 | ||
| ### Example
 | ||
| Here is the chat example between human and assistant, inside <example></example> XML tags.
 | ||
| <example>
 | ||
| User:{{"input_text": ["I want to know which company’s email address test@example.com is?"], "metadata_fields": ["filename", "email", "phone", "address"]}}
 | ||
| Assistant:{{"metadata_map": [{{"metadata_field_name": "email", "metadata_field_value": "test@example.com", "comparison_operator": "="}}]}}
 | ||
| User:{{"input_text": "What are the movies with a score of more than 9 in 2024?", "metadata_fields": ["name", "year", "rating", "country"]}}
 | ||
| Assistant:{{"metadata_map": [{{"metadata_field_name": "year", "metadata_field_value": "2024", "comparison_operator": "="}, {{"metadata_field_name": "rating", "metadata_field_value": "9", "comparison_operator": ">"}}]}}
 | ||
| </example> 
 | ||
| ### User Input
 | ||
| {{"input_text" : "{input_text}", "metadata_fields" : {metadata_fields}}}
 | ||
| ### Assistant Output
 | ||
| """  # noqa: E501
 | 
