A provider agent - as understood in the context of the Golem network is a specific piece of code running on an Internet-connected device. The code implements the Golem network protocol, thus the machine running it acts as an actor in Golem.
The characteristic that describes the provider agent is the sharing of hardware resources within and to the Golem network.
In practice, almost any computer might act as a provider. It can be a laptop, desktop, or a server machine. The particular resource details (for example, the number of CPUs or its memory limit) that are subject to sharing can be configured by the hardware owner.
The provider announces the availability of its resources in the Golem market. This announcement is called an offer.
The Golem market performs the matching between provider side offers and requestor side demands.
If there is a requestor willing to use the provider's resources, the transaction is arranged.
The resources are used by the requestor (for example by transferring input/output files and running a particular docker container on the provider's hardware).
The provider bills the requestor.
The requestor performs an Ethereum payment for resource usage.
After installing and running the Golem provider you will benefit in the following way:
serving other actors in the Golem network that are in need of IT resources with your hardware that is currently not in use
receiving payments for the resources you share
The typical resource usage scenario is as follows: after receiving the input data, the processing is performed by your machine. Next, the output data is sent back to the requestor and the payment is executed through Ethereum.