NullReferenceException - Not sure whats wrong

Error comes up after running my code for an input system. Thee game itself works completely fine, but every time it is started, the error comes up.

It is happening in my Awake() method if that could possibly be the reason for it. Not sure how to fix.

Window says:

NullReferenceException: Object reference not set to an instance of an object
Player.Awake () (at Assets/Player.cs:24)

using UnityEngine;
using UnityEngine.InputSystem;

public class Player : MonoBehaviour
{
    [SerializeField] float mouseSensitivity = 3f;
    [SerializeField] float movementSpeed = 5f;
    [SerializeField] float mass = 1f;
    [SerializeField] float acceleration = 20f;
    [SerializeField] Transform cameraTransform;

    CharacterController controller;
    Vector3 velocity;
    Vector2 look;

    PlayerInput playerInput;
    InputAction moveAction;
    InputAction lookAction;

    void Awake()
    {
        controller = GetComponent<CharacterController>();
        playerInput = GetComponent<PlayerInput>();
        moveAction = playerInput.actions["move"];
        lookAction = playerInput.actions["look"];
    }
    void Start()
    {
        Cursor.lockState = CursorLockMode.Locked;
    }

    // Update is called once per frame
    void Update()
    {
        UpdateGravity();
        UpdateMovement();
        UpdateLook();
    }
    
    void UpdateGravity()
    {
        var gravity = Physics.gravity * mass * Time.deltaTime;
        //determines the vertical velocity
        velocity.y = controller.isGrounded ? -1f : velocity.y + gravity.y;
    }

    Vector3 GetMovementInput()
    {
        //takes horizontal and vertical input from the keyboard
        //var x = Input.GetAxis("Horizontal");
        //var y = Input.GetAxis("Vertical");

        var moveInput = moveAction.ReadValue<Vector2>();

        var input = new Vector3();
        //input vector by adding the vector pointing from the player forwards, multiplied by 'y'
        //'w' and 's' keys
        input += transform.forward * moveInput.y;
        //input vector by adding the vector pointing from the player, to the right, multiplied by 'x'
        //'a' and 'd' keys
        input += transform.right * moveInput.x;
        //prevents the player from moving faster when moving diagonally 
        input = Vector3.ClampMagnitude(input, 1f);
        input *= movementSpeed;
        return input;
    }
    void UpdateMovement()
    {
        var input = GetMovementInput();

        var factor = acceleration * Time.deltaTime;
        velocity.x = Mathf.Lerp(velocity.x, input.x, factor);
        velocity.z = Mathf.Lerp(velocity.z, input.z, factor);
        

        controller.Move(velocity * Time.deltaTime);
    }
    void UpdateLook()
    {
        var lookInput = lookAction.ReadValue<Vector2>();
        look.x += lookInput.x * mouseSensitivity;
        look.y += lookInput.y * mouseSensitivity;

        look.y = Mathf.Clamp(look.y, -89f, 89f);

        //rotates the player object
        transform.localRotation = Quaternion.Euler(0,look.x, 0);
        //cannot do the same for the 'y' rotation as we need to angle the player object itself
        cameraTransform.localRotation = Quaternion.Euler(-look.y, 0, 0);
        
    }
}

Trying to make a player input system.

The player component for my input does have a player input already.