A method of customizing a portable voice-based control user interface for multiple types of appliances, comprising: at a user device having one or more processors, memory, and a display: establishing a data communication connection with a voice control apparatus, the voice control apparatus including a built-in data communication interface that is configured to establish data communication with multiple types of appliances configured to respond to distinct sets of machine commands to perform their respective appliance operations, a built-in voice communication interface that is configured to accept voice-based inputs from a user, and a built-in natural-language processing, NLP, module stored in the memory of the voice control apparatus, wherein the NLP module is configured to store multiple NLP models and selectively utilize a respective one of the multiple NLP models in accordance with a specified target appliance for a currently received voice input; detecting a first user request to update the NLP module of the voice control apparatus; in response to detecting the first user request to update the NLP module of the voice control apparatus: establishing a connection to a NLP model server corresponding to the voice control apparatus; displaying, on the display, a listing of appliance types and a respective listing of appliance functions for each appliance type, in a graphical user interface; receiving user selection of a first set of appliance functions for a first appliance type and a second set of appliance functions for a second appliance type, displayed in the graphical user interface; in response to receiving the user selection of the first set of appliance functions for the first appliance type and the second set of appliance functions for the second appliance type: downloading, from the NLP model server, a first NLP model that is trained on voice commands for the first set of appliance functions for the first appliance type, and a second NLP model that is trained on voice commands for the second set of appliance functions for the second appliance type; and integrating the downloaded first NLP model and second NLP model into the NLP module of the voice control apparatus. establishing a data communication connection with a voice control apparatus, the voice control apparatus including a built-in data communication interface that is configured to establish data communication with multiple types of appliances configured to respond to distinct sets of machine commands to perform their respective appliance operations, a built-in voice communication interface that is configured to accept voice-based inputs from a user, and a built-in natural-language processing, NLP, module stored in the memory of the voice control apparatus, wherein the NLP module is configured to store multiple NLP models and selectively utilize a respective one of the multiple NLP models in accordance with a specified target appliance for a currently received voice input; detecting a first user request to update the NLP module of the voice control apparatus; in response to detecting the first user request to update the NLP module of the voice control apparatus: establishing a connection to a NLP model server corresponding to the voice control apparatus; displaying, on the display, a listing of appliance types and a respective listing of appliance functions for each appliance type, in a graphical user interface; receiving user selection of a first set of appliance functions for a first appliance type and a second set of appliance functions for a second appliance type, displayed in the graphical user interface; in response to receiving the user selection of the first set of appliance functions for the first appliance type and the second set of appliance functions for the second appliance type: downloading, from the NLP model server, a first NLP model that is trained on voice commands for the first set of appliance functions for the first appliance type, and a second NLP model that is trained on voice commands for the second set of appliance functions for the second appliance type; and integrating the downloaded first NLP model and second NLP model into the NLP module of the voice control apparatus. establishing a connection to a NLP model server corresponding to the voice control apparatus; displaying, on the display, a listing of appliance types and a respective listing of appliance functions for each appliance type, in a graphical user interface; receiving user selection of a first set of appliance functions for a first appliance type and a second set of appliance functions for a second appliance type, displayed in the graphical user interface; in response to receiving the user selection of the first set of appliance functions for the first appliance type and the second set of appliance functions for the second appliance type: downloading, from the NLP model server, a first NLP model that is trained on voice commands for the first set of appliance functions for the first appliance type, and a second NLP model that is trained on voice commands for the second set of appliance functions for the second appliance type; and integrating the downloaded first NLP model and second NLP model into the NLP module of the voice control apparatus. downloading, from the NLP model server, a first NLP model that is trained on voice commands for the first set of appliance functions for the first appliance type, and a second NLP model that is trained on voice commands for the second set of appliance functions for the second appliance type; and integrating the downloaded first NLP model and second NLP model into the NLP module of the voice control apparatus.