system: 
You are an expert in composing functions. You are given a question and a set of possible functions.
Based on the question, you will need to make one or more function/tool calls to achieve the purpose.
If none of the function can be used, point it out. If the given question lacks the parameters required by the function,
also point it out. You should only return the function call in tools call sections.

If you decide to invoke any of the function(s), you MUST put it in the format of [func_name1(params_name1=params_value1, params_name2=params_value2...), func_name2(params)]

You SHOULD NOT include any other text in the response.

Here is a list of functions in JSON format that you can invoke.

[{'name': 'get_service_providers', 'description': 'Retrieve a list of service providers based on the given filters. Note that the provided function is in Python 3 syntax.', 'parameters': {'type': 'dict', 'required': ['province_id'], 'properties': {'avg_rating': {'type': 'float', 'description': "The average review rating score, with a higher score indicating better reviews. A default value of 'null' represents no rating data available.", 'default': None}, 'province_id': {'type': 'integer', 'description': 'The unique identifier of the province, such as 1 for Bangkok, 2 for Chiang Mai, and 3 for Phuket.'}, 'district_name': {'type': 'string', 'description': "The name of the district. For example, 'Chatuchak District', 'Bang Sue District', or 'Phaya Thai District'. A default value of 'null' represents no specific district.", 'default': None}, 'start_available_date': {'type': 'string', 'description': "The start date and time of the availability period for the service provider, in the format 'YYYY-MM-DD HH:mm:ss'. A default value of 'null' represents an open start date.", 'default': None}, 'end_available_date': {'type': 'string', 'description': "The end date and time of the availability period for the service provider, in the format 'YYYY-MM-DD HH:mm:ss'. A default value of 'null' represents an open end date.", 'default': None}, 'min_age': {'type': 'integer', 'description': "The minimum age requirement for the service provider. A default value of 'null' indicates no minimum age requirement.", 'default': None}, 'max_age': {'type': 'integer', 'description': "The maximum age limit for the service provider. A default value of 'null' indicates no maximum age limit.", 'default': None}, 'has_quality_problem': {'type': 'boolean', 'description': "Flag indicating whether the service provider has a record of quality problems. 'false' means no record; 'true' indicates quality issues have been recorded.", 'default': False}, 'has_late_check_in': {'type': 'boolean', 'description': "Flag indicating whether the service provider has a record of late check-ins. 'false' means no record; 'true' indicates there have been late check-ins.", 'default': False}, 'is_excellent': {'type': 'boolean', 'description': "Flag indicating whether the service provider has been marked as excellent. 'false' means not marked as excellent; 'true' means they are recognized as excellent.", 'default': False}, 'is_package': {'type': 'boolean', 'description': "Flag indicating if the work is offered as a package deal. 'false' means it is not a package; 'true' means it is a package.", 'default': False}, 'is_subscription': {'type': 'boolean', 'description': "Flag indicating if the work is subscription-based. 'false' means not subscription-based; 'true' means it is offered on a subscription basis.", 'default': False}, 'service_id': {'type': 'integer', 'description': 'The unique identifier representing the type of service offered. For instance, 1 for cleaning service, 3 for massage, 24 for disinfectant cleaning.', 'default': None}, 'extra_service_id': {'type': 'integer', 'description': 'The unique identifier for an additional service offered. For example, 2 for ironing service.', 'default': None}, 'available_for_pet': {'type': 'boolean', 'description': "Flag indicating whether the service provider is available for households with pets. 'false' means not available for pets; 'true' means they are.", 'default': False}, 'professional_group_id': {'type': 'integer', 'description': 'The unique identifier of the professional group the service provider belongs to. For example, 1 for Group A, 2 for Group B.', 'default': None}, 'job_qty': {'type': 'integer', 'description': "The number of jobs the service provider has completed. A default value of 'null' indicates no job history available.", 'default': None}, 'is_cleaning_condo': {'type': 'boolean', 'description': "Flag indicating whether the service provider offers condo cleaning services. 'false' means they do not offer such services; 'true' means they do.", 'default': False}, 'is_cleaning_home': {'type': 'boolean', 'description': "Flag indicating whether the service provider offers home cleaning services. 'false' means they do not offer such services; 'true' means they do.", 'default': False}, 'is_cleaning_office': {'type': 'boolean', 'description': "Flag indicating whether the service provider offers office cleaning services. 'false' means they do not offer such services; 'true' means they do.", 'default': False}}}}, {'name': 'view_service_provider_profile', 'description': 'Retrieve the detailed profile information of a specified service provider. Note that the provided function is in Python 3 syntax.', 'parameters': {'type': 'dict', 'required': ['professional_id'], 'properties': {'professional_id': {'type': 'integer', 'description': 'The unique identifier of the service provider whose profile is to be viewed.'}}}}]


user: Help find a service provider Cleaning and additional ironing services, Bangkok, March 20, 2024, available space at 6:00 p.m.

Available functions:
[{"name": "get_service_providers", "description": "Retrieve a list of service providers based on the given filters.", "parameters": {"type": "dict", "required": ["province_id"], "properties": {"avg_rating": {"type": "float", "description": "The average review rating score, with a higher score indicating better reviews. A default value of 'null' represents no rating data available.", "default": null}, "province_id": {"type": "integer", "description": "The unique identifier of the province, such as 1 for Bangkok, 2 for Chiang Mai, and 3 for Phuket."}, "district_name": {"type": "string", "description": "The name of the district. For example, 'Chatuchak District', 'Bang Sue District', or 'Phaya Thai District'. A default value of 'null' represents no specific district.", "default": null}, "start_available_date": {"type": "string", "description": "The start date and time of the availability period for the service provider, in the format 'YYYY-MM-DD HH:mm:ss'. A default value of 'null' represents an open start date.", "default": null}, "end_available_date": {"type": "string", "description": "The end date and time of the availability period for the service provider, in the format 'YYYY-MM-DD HH:mm:ss'. A default value of 'null' represents an open end date.", "default": null}, "min_age": {"type": "integer", "description": "The minimum age requirement for the service provider. A default value of 'null' indicates no minimum age requirement.", "default": null}, "max_age": {"type": "integer", "description": "The maximum age limit for the service provider. A default value of 'null' indicates no maximum age limit.", "default": null}, "has_quality_problem": {"type": "boolean", "description": "Flag indicating whether the service provider has a record of quality problems. 'false' means no record; 'true' indicates quality issues have been recorded.", "default": false}, "has_late_check_in": {"type": "boolean", "description": "Flag indicating whether the service provider has a record of late check-ins. 'false' means no record; 'true' indicates there have been late check-ins.", "default": false}, "is_excellent": {"type": "boolean", "description": "Flag indicating whether the service provider has been marked as excellent. 'false' means not marked as excellent; 'true' means they are recognized as excellent.", "default": false}, "is_package": {"type": "boolean", "description": "Flag indicating if the work is offered as a package deal. 'false' means it is not a package; 'true' means it is a package.", "default": false}, "is_subscription": {"type": "boolean", "description": "Flag indicating if the work is subscription-based. 'false' means not subscription-based; 'true' means it is offered on a subscription basis.", "default": false}, "service_id": {"type": "integer", "description": "The unique identifier representing the type of service offered. For instance, 1 for cleaning service, 3 for massage, 24 for disinfectant cleaning.", "default": null}, "extra_service_id": {"type": "integer", "description": "The unique identifier for an additional service offered. For example, 2 for ironing service.", "default": null}, "available_for_pet": {"type": "boolean", "description": "Flag indicating whether the service provider is available for households with pets. 'false' means not available for pets; 'true' means they are.", "default": false}, "professional_group_id": {"type": "integer", "description": "The unique identifier of the professional group the service provider belongs to. For example, 1 for Group A, 2 for Group B.", "default": null}, "job_qty": {"type": "integer", "description": "The number of jobs the service provider has completed. A default value of 'null' indicates no job history available.", "default": null}, "is_cleaning_condo": {"type": "boolean", "description": "Flag indicating whether the service provider offers condo cleaning services. 'false' means they do not offer such services; 'true' means they do.", "default": false}, "is_cleaning_home": {"type": "boolean", "description": "Flag indicating whether the service provider offers home cleaning services. 'false' means they do not offer such services; 'true' means they do.", "default": false}, "is_cleaning_office": {"type": "boolean", "description": "Flag indicating whether the service provider offers office cleaning services. 'false' means they do not offer such services; 'true' means they do.", "default": false}}}}, {"name": "view_service_provider_profile", "description": "Retrieve the detailed profile information of a specified service provider.", "parameters": {"type": "dict", "required": ["professional_id"], "properties": {"professional_id": {"type": "integer", "description": "The unique identifier of the service provider whose profile is to be viewed."}}}}]

Ground-truth function call:
[{"get_service_providers": {"avg_rating": ["", null], "province_id": [1], "district_name": ["", null], "start_available_date": ["2024-03-20 18:00:00"], "end_available_date": ["", null], "min_age": ["", null], "max_age": ["", null], "has_quality_problem": ["", false], "has_late_check_in": ["", false], "is_excellent": ["", false], "is_package": ["", false], "is_subscription": ["", false], "service_id": [1], "extra_service_id": [2], "available_for_pet": ["", false], "professional_group_id": ["", null], "job_qty": ["", null], "is_cleaning_condo": ["", false], "is_cleaning_home": ["", false], "is_cleaning_office": ["", false]}}]