code: def set_suggestion(
      client: httpx.Client,
      record_id: UUID,
      question_id: UUID,
      value: Any,
      type: Optional[Literal["model", "human"]] = None,
      score: Optional[float] = None,
      agent: Optional[str] = None,
  ) -> Response[
      Union[FeedbackSuggestionModel, ErrorMessage, HTTPValidationError]
  ]:
      """Sends a PUT request to `/api/v1/records/{id}/suggestions` endpoint to add or update
      a suggestion for a question in the `FeedbackDataset`.
  
      Args:
          client: the authenticated Argilla client to be used to send the request to the API.
          record_id: the id of the record to add the suggestion to.
          question_id: the id of the question to add the suggestion to.
          value: the value of the suggestion.
          type: the type of the suggestion. It can be either `model` or `human`. Defaults to None.
          score: the score of the suggestion. Defaults to None.
          agent: the agent used to obtain the suggestion. Defaults to None.
  
      Returns:
          A `Response` object containing a `parsed` attribute with the parsed response if the
          request was successful, which is a `FeedbackSuggestionModel`.
      """
      url = f"/api/v1/records/{record_id}/suggestions"
  
      suggestion = {
          "question_id": str(question_id),
          "value": value,
      }
      if type is not None:
          suggestion["type"] = type
      if score is not None:
          suggestion["score"] = score
      if agent is not None:
          suggestion["agent"] = agent
  
      response = client.put(url=url, json=suggestion)
  
      if response.status_code in [200, 201]:
          response_obj = Response.from_httpx_response(response)
          response_obj.parsed = FeedbackSuggestionModel(
              **response.json()
          )
          return response_obj
      return handle_response_error(response)
  
file_path: argilla/src/argilla/client/sdk/v1/records/api.py
imports: from typing import Any, Dict, List, Literal, Optional, Union
  from uuid import UUID
  import httpx
  from argilla.client.sdk.commons.errors_handler import handle_response_error
  from argilla.client.sdk.commons.models import ErrorMessage, HTTPValidationError, Response
  from argilla.client.sdk.v1.datasets.models import FeedbackSuggestionModel
  from argilla.client.sdk.v1.records.models import FeedbackItemModel
label_desc: Use image node_id 4 for calling a global function with example usage: set_suggestion(client, record_id, question_id, value, type, score, agent) and returns: handle_response_error, response_obj