Executes a collection query by retrieving all rows from the chosen dataset (excluding the _embedding_vec column) and building an XML context from the query results. The chatbot is first asked to choose which dataset to use based on a mapping of dataset IDs to criteria. The chatbot must respond with exactly one dataset ID or None within <dataset> tags. If extraction fails or an invalid option is chosen, the query will proceed without any retrieved data.
Request payload:
- **dataset_id_to_criteria**: A mapping of dataset id to a criteria for selecting the dataset.
- **messages**: A list of messages forming the conversation. The conversation must end with a user message.