Thanks to visit codestin.com
Credit goes to github.com

Skip to content

UnprocessableEntityError: Error code: 422 - {'detail': [{'loc': ['body', 'messages', 2, 'content'], 'msg': 'none is not an allowed value', 'type': 'type_error.none.not_allowed'}]}[Issue]:  #1829

Description

@kapiya

Describe the issue

image


UnprocessableEntityError                  Traceback (most recent call last)
Cell In[9], line 2
      1 # start the conversation
----> 2 user_proxy.initiate_chat(
      3     chatbot,
      4     message="帮我查询北京的PM2.5"
      5 )

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/autogen/agentchat/conversable_agent.py:621, in ConversableAgent.initiate_chat(self, recipient, clear_history, silent, **context)
    607 """Initiate a chat with the recipient agent.
    608 
    609 Reset the consecutive auto reply counter.
   (...)
    618         "message" needs to be provided if the `generate_init_message` method is not overridden.
    619 """
    620 self._prepare_chat(recipient, clear_history)
--> 621 self.send(self.generate_init_message(**context), recipient, silent=silent)

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/autogen/agentchat/conversable_agent.py:398, in ConversableAgent.send(self, message, recipient, request_reply, silent)
    396 valid = self._append_oai_message(message, "assistant", recipient)
    397 if valid:
--> 398     recipient.receive(message, self, request_reply, silent)
    399 else:
    400     raise ValueError(
    401         "Message can't be converted into a valid ChatCompletion message. Either content or function_call must be provided."
    402     )

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/autogen/agentchat/conversable_agent.py:553, in ConversableAgent.receive(self, message, sender, request_reply, silent)
    551 reply = self.generate_reply(messages=self.chat_messages[sender], sender=sender)
    552 if reply is not None:
--> 553     self.send(reply, sender, silent=silent)

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/autogen/agentchat/conversable_agent.py:398, in ConversableAgent.send(self, message, recipient, request_reply, silent)
    396 valid = self._append_oai_message(message, "assistant", recipient)
    397 if valid:
--> 398     recipient.receive(message, self, request_reply, silent)
    399 else:
    400     raise ValueError(
    401         "Message can't be converted into a valid ChatCompletion message. Either content or function_call must be provided."
    402     )

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/autogen/agentchat/conversable_agent.py:553, in ConversableAgent.receive(self, message, sender, request_reply, silent)
    551 reply = self.generate_reply(messages=self.chat_messages[sender], sender=sender)
    552 if reply is not None:
--> 553     self.send(reply, sender, silent=silent)

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/autogen/agentchat/conversable_agent.py:398, in ConversableAgent.send(self, message, recipient, request_reply, silent)
    396 valid = self._append_oai_message(message, "assistant", recipient)
    397 if valid:
--> 398     recipient.receive(message, self, request_reply, silent)
    399 else:
    400     raise ValueError(
    401         "Message can't be converted into a valid ChatCompletion message. Either content or function_call must be provided."
    402     )

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/autogen/agentchat/conversable_agent.py:551, in ConversableAgent.receive(self, message, sender, request_reply, silent)
    549 if request_reply is False or request_reply is None and self.reply_at_receive[sender] is False:
    550     return
--> 551 reply = self.generate_reply(messages=self.chat_messages[sender], sender=sender)
    552 if reply is not None:
    553     self.send(reply, sender, silent=silent)

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/autogen/agentchat/conversable_agent.py:1193, in ConversableAgent.generate_reply(self, messages, sender, exclude)
   1191     continue
   1192 if self._match_trigger(reply_func_tuple["trigger"], sender):
-> 1193     final, reply = reply_func(self, messages=messages, sender=sender, config=reply_func_tuple["config"])
   1194     if final:
   1195         return reply

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/autogen/agentchat/conversable_agent.py:708, in ConversableAgent.generate_oai_reply(self, messages, sender, config)
    705         all_messages.append(message)
    707 # TODO: #1143 handle token limit exceeded error
--> 708 response = client.create(
    709     context=messages[-1].pop("context", None), messages=self._oai_system_message + all_messages
    710 )
    712 extracted_response = client.extract_text_or_completion_object(response)[0]
    714 # ensure function and tool calls will be accepted when sent back to the LLM

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/autogen/oai/client.py:278, in OpenAIWrapper.create(self, **config)
    276             continue  # filter is not passed; try the next config
    277 try:
--> 278     response = self._completions_create(client, params)
    279 except APIError as err:
    280     error_code = getattr(err, "code", None)

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/autogen/oai/client.py:543, in OpenAIWrapper._completions_create(self, client, params)
    541     params = params.copy()
    542     params["stream"] = False
--> 543     response = completions.create(**params)
    545 return response

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/openai/_utils/_utils.py:271, in required_args.<locals>.inner.<locals>.wrapper(*args, **kwargs)
    269             msg = f"Missing required argument: {quote(missing[0])}"
    270     raise TypeError(msg)
--> 271 return func(*args, **kwargs)

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/openai/resources/chat/completions.py:643, in Completions.create(self, messages, model, frequency_penalty, function_call, functions, logit_bias, logprobs, max_tokens, n, presence_penalty, response_format, seed, stop, stream, temperature, tool_choice, tools, top_logprobs, top_p, user, extra_headers, extra_query, extra_body, timeout)
    594 @required_args(["messages", "model"], ["messages", "model", "stream"])
    595 def create(
    596     self,
   (...)
    641     timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
    642 ) -> ChatCompletion | Stream[ChatCompletionChunk]:
--> 643     return self._post(
    644         "/chat/completions",
    645         body=maybe_transform(
    646             {
    647                 "messages": messages,
    648                 "model": model,
    649                 "frequency_penalty": frequency_penalty,
    650                 "function_call": function_call,
    651                 "functions": functions,
    652                 "logit_bias": logit_bias,
    653                 "logprobs": logprobs,
    654                 "max_tokens": max_tokens,
    655                 "n": n,
    656                 "presence_penalty": presence_penalty,
    657                 "response_format": response_format,
    658                 "seed": seed,
    659                 "stop": stop,
    660                 "stream": stream,
    661                 "temperature": temperature,
    662                 "tool_choice": tool_choice,
    663                 "tools": tools,
    664                 "top_logprobs": top_logprobs,
    665                 "top_p": top_p,
    666                 "user": user,
    667             },
    668             completion_create_params.CompletionCreateParams,
    669         ),
    670         options=make_request_options(
    671             extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
    672         ),
    673         cast_to=ChatCompletion,
    674         stream=stream or False,
    675         stream_cls=Stream[ChatCompletionChunk],
    676     )

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/openai/_base_client.py:1112, in SyncAPIClient.post(self, path, cast_to, body, options, files, stream, stream_cls)
   1098 def post(
   1099     self,
   1100     path: str,
   (...)
   1107     stream_cls: type[_StreamT] | None = None,
   1108 ) -> ResponseT | _StreamT:
   1109     opts = FinalRequestOptions.construct(
   1110         method="post", url=path, json_data=body, files=to_httpx_files(files), **options
   1111     )
-> 1112     return cast(ResponseT, self.request(cast_to, opts, stream=stream, stream_cls=stream_cls))

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/openai/_base_client.py:859, in SyncAPIClient.request(self, cast_to, options, remaining_retries, stream, stream_cls)
    850 def request(
    851     self,
    852     cast_to: Type[ResponseT],
   (...)
    857     stream_cls: type[_StreamT] | None = None,
    858 ) -> ResponseT | _StreamT:
--> 859     return self._request(
    860         cast_to=cast_to,
    861         options=options,
    862         stream=stream,
    863         stream_cls=stream_cls,
    864         remaining_retries=remaining_retries,
    865     )

File ~/miniconda3/envs/autogen/lib/python3.10/site-packages/openai/_base_client.py:949, in SyncAPIClient._request(self, cast_to, options, remaining_retries, stream, stream_cls)
    946         err.response.read()
    948     log.debug("Re-raising status error")
--> 949     raise self._make_status_error_from_response(err.response) from None
    951 return self._process_response(
    952     cast_to=cast_to,
    953     options=options,
   (...)
    956     stream_cls=stream_cls,
    957 )

UnprocessableEntityError: Error code: 422 - {'detail': [{'loc': ['body', 'messages', 2, 'content'], 'msg': 'none is not an allowed value', 'type': 'type_error.none.not_allowed'}]}

Steps to reproduce

No response

Screenshots and logs

No response

Additional Information

No response

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions