I added a new path to my plugins openapi.yaml and receive the error below. The endpoint works properly using Postman and Swagger Editor. Has anyone else ran into this?
The error message I received when attempting to retrieve the data was “Error communicating with plugin: 501.” This error code, “501,” typically indicates a “Not Implemented” status. It means that the server does not support the functionality required to fulfill the request.
1 Like
This look a lot like an issue I’m experiencing (including the model claiming it got a 501 error, though I see no 501 returns in my server logs): Model only calling 2 of 3 endpoints
The most usual causes are:
-
OpenAI API server you are calling does not support the functionality or endpoint that the Model.update()
method is trying to access - check the documentation for the Model.update()
method to ensure that you are providing the correct parameters and that the endpoint is still supported.
-
There’s a problem with the request being sent to the API server, and the 501 error is being returned by a proxy server or firewall along the way.
The GPT-4 models and two 3.5 models (I think) have different endpoint paths from other OpenAI models.
Postman and Swagger Editor may be using different request headers or parameters that are allowing the request to be successful - try comparing the request details in Postman and Swagger Editor to the ones in your code to see if there are any differences.
There is another thread (sorry, forgot the title) about how Azure doesn’t like the “.” in the openapi.yaml
- go figure…
1 Like
Hi @AlexDeM , I think I am experiencing the same issue with the plugin I’m developing as well, but I don’t think I follow this answer. Is Model.update()
something that is called on the OpenAI end to register the plugin? Where can I find the documentation?
I will try the openapi-yaml
trick as well since I’m getting desperate (maybe this is the thread) though I’m developing on localhost rather than trying to use Azure functions.
Hi @oneilsh
In my research I supposed that I could give some help on three threads simultaneously:
- This one: 501 Error developing plug ;
- Yours: Model only calling 2 of 3 endpoints
- and a third one using the Model.update: Python unbound method dict.update() needs an argument
I supposed they could be related to a same cause: the endpoint doesn’t support a functionality - maybe causing the 501 Error.
The Model.update
is not documented, at least in OpenAI documentation - and it is used in the third thread as this:
import openai
from openai import Model, api_key
...
#Call the OpenAI API to update the model
response = Model.update(
model_id=model_id,
training_data=training_data,
epochs=epochs,
batch_size=batch_size,
learning_rate=learning_rate,
api_key=“<MY_KEY>”
)
with the following error:
response = Model.update(
TypeError: unbound method dict.update() needs an argument
I presented here as an option in case someone is using it. I am not sure if it can be applied to your case. Except for the documented model.list
, all other objects in import model
have no documentation, are rarely used - sometimes found in GitHub, and I am not sure if they were deprecated - the models/endpoints don’t support them (anymore?) causing 501 error.
Maybe it was an excess of presumption on my part to try to find some pattern in the countless interface errors of this “gpt-plugin-mania” that exploded in these last few weeks. In your specific case, I’ll try to check your thread more carefully, in more detail, and try to help as much as possible, if you’ll let me.
What exactly is your endpoint returning? Can you post the openapi.yaml file?