I'm making a Python script to use OpenAI via its API. However, I'm getting this error:
openai.error.RateLimitError: You exceeded your current quota, please check your plan and billing details
My script is the following:
#!/usr/bin/env python3.8
# -*- coding: utf-8 -*-
import openai
openai.api_key = "<My PAI Key>"
completion = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{"role": "user", "content": "Tell the world about the ChatGPT API in the style of a pirate."}
]
)
print(completion.choices[0].message.content)
I'm declaring the shebang python3.8
, because I'm using pyenv. I think it should work, since I did 0 API requests, so I'm assuming there's an error in my code.
TL;DR: You need to upgrade to a paid plan. Set up a paid account, add a credit or debit card, and generate a new API key if your old one was generated before the upgrade. It might take 10 minutes or so after you upgrade to a paid plan before the paid account becomes active and the error disappears.
As stated in the official OpenAI documentation:
TYPE | OVERVIEW |
---|---|
RateLimitError | Cause: You have hit your assigned rate limit. Solution: Pace your requests. Read more in our rate limit guide. |
Also, read more about Error Code 429 - You exceeded your current quota, please check your plan and billing details:
This (i.e.,
429
) error message indicates that you have hit your maximum monthly spend (hard limit) for the API. This means that you have consumed all the credits or units allocated to your plan and have reached the limit of your billing cycle. This could happen for several reasons, such as:
You are using a high-volume or complex service that consumes a lot of credits or units per request.
You are using a large or diverse data set that requires a lot of requests to process.
Your limit is set too low for your organization’s usage.
You're getting error 429
because either you used all your free tokens or 3 months have passed since you signed up.
As stated in the official OpenAI article:
To explore and experiment with the API, all new users get $5 worth of free tokens. These tokens expire after 3 months.
After the quota has passed you can choose to enter billing information to upgrade to a paid plan and continue your use of the API on pay-as-you-go basis. If no billing information is entered you will still have login access, but will be unable to make any further API requests.
Please see the pricing page for the latest information on pay-as-you-go pricing.
Note: If you signed up earlier (e.g., in December 2022), you got $18 worth of free tokens.
Check your API usage in the usage dashboard.
For example, my free trial expires tomorrow and this is what I see right now in the usage dashboard:
This is how my dashboard looks after expiration:
If I run a simple script after my free trial has expired, I get the following error:
openai.error.RateLimitError: You exceeded your current quota, please check your plan and billing details.
You're getting error 429
because you created a second OpenAI account with the same phone number. It seems like free credit is given based on phone numbers.
As explained on the official OpenAI forum by @SapphireFelineBytes:
I created an Open AI account in November and my $18 credits expired on March 1st. So, like many of you here, I tried creating a new account with a different email address, but same number. They gave me $0 credits.
I tried now with a different phone number and email. This time I got $5 credits.
It's confirmed that free credit is given based on phone numbers, as explained on the official OpenAI forum by @logankilpatrick:
Also note, you only get free credits for the first account associated with your phone number. Subsequent accounts are not granted free credits.
Try to do the following:
When you upgrade to a paid plan, don't expect the error to disappear immediately, as @dcferreira mentioned in the comment above. It might take a few minutes to more than an hour after the upgrade before the error disappears.
In the comment below, @JoeMornin confirmed that it took 10 minutes for his paid account to become active. In the meantime, he was getting the following error:
You've reached your usage limit. See your usage dashboard and billing settings for more details. If you have further questions, please contact us through our help center at help.openai.com.