An input usually refers to an example (sometimes also known as sample, observation or data point) $x$ from a dataset that you pass to the model. For example, in supervised learning, you have a labelled dataset $D = \{(x_i, y_i)\}_{i=1}^N$, where $x_i$ is the $i$th input and $y_i$ the corresponding label (aka target or output).
This is similar to the terminology used for functions. For example, if you have the function $f: \mathcal{X} \rightarrow \mathcal{Y}$, then $x \in \mathcal{X}$ is the input and $f(x) = y \in \mathcal{Y}$ is the output of the function for that input $x$. In fact, models (like neural networks) are functions.
Examples
- In image classification, an image is an input
- In machine translation, an input can be a sentence or a word (depending on the model)
- In reinforcement learning, an input could be a state
A feature is an attribute associated with an input or sample. For example, a feature of an image could be a pixel. The feature of a state could be the Euclidean distance to the goal state.
It's possible that people also refer to features as inputs (in fact, if you pass e.g. an image to a model, you're also passing the pixels, the features, which are thus also inputs to the model), so you should always take into account the context when reading these terms. There are also other terms used to refer to these. For example, in statistics, people may refer to inputs as independent variables and maybe a sample refers to a dataset rather than a single observation.
For more info, you could read this and this Wikipedia articles.