A dialogue
system, comprising:an input, configured to receive input data from a user, wherein the input data comprises one or more of text data, speech data, image data and motion data; an output, configured to output data to the user; and one or more processors, configured to:obtain information identifying a skill and obtain information identifying a proficiency level of the user for the identified skill from stored proficiency level information; and execute at least one iteration of a coaching session, each iteration comprising performing one or more dialogue interactions, wherein each dialogue interaction comprises:receiving first input data from the user via the input;generating a
first language model prompt and providing the
first language model prompt to a
language model, said
first language model prompt comprising the first input data, the information identifying a skill, the information identifying a proficiency level of the user for the identified skill and a request to generate coaching information based on the first input data, the information identifying a skill and the information identifying a proficiency level; and generating first output data based on a first
language model response to the first
language model prompt and outputting, via the output, the first output data to the user;wherein the at least one iteration of the coaching session further comprises, after the one or more dialogue interactions:generating a second language model prompt and providing the second language model prompt to the language model, said second language model prompt comprising the information identifying a skill, the information identifying a proficiency level of the user for the identified skill, the first input data and the first output data, and a request to generate at least one proficiency update assessment based on the first input data, the first output data, the identified skill and the information identifying a proficiency level; generating second output data based on a second language model response to the second language model prompt and outputting, via the output, the second output data to the user; receiving second input data from the user via the input; determining a revised proficiency level of the user for the identified skill based on the second input data; andupdating the stored proficiency level information based on the revised proficiency level.