Autoencoders consist of two main parts: the encoder and the decoder. The encoder compresses the input into a latent-space representation, and the decoder reconstructs the input from this representation. The goal is to minimize the difference between the input and the reconstructed output.