when i Instantiate a bullet i can"t control the spawn rate. when i press mouse button down its spawn unlimited without limit

public Rigidbody BulletPrefab;
public Transform SpawnPosition;

// Update is called once per frame
void Update()
{
    if (Input.GetMouseButton(0))
    {
        Rigidbody prefab = Instantiate(BulletPrefab, SpawnPosition.position, SpawnPosition.rotation) as Rigidbody;
        prefab.AddForce(Vector3.forward* 800);
      
    }
}

Use “Input.GetMouseButtonDown(0)” instead of “Input.GetMouseButton(0)” if you want to instantiate single bullet per click.
.