Creating software that can automatically produce human-like language in response to input from users or other sources.