IamVicky111 commited on
Commit
506ae29
·
verified ·
1 Parent(s): 0012331

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +15 -11
app.py CHANGED
@@ -1,26 +1,30 @@
1
  import streamlit as st
2
  import openai
3
  import os
 
4
 
5
  openai.api_key = os.environ.get("OPEN_AI_API")
6
  st.title("SEO Article Writer with ChatGPT")
7
 
 
8
  def generate_article(keyword, writing_style, word_count):
9
- #return "This is a test article generated without making API calls."
10
- response = openai.ChatCompletion.create(
11
- model="gpt-3.5-turbo",
12
- messages=[
13
  {"role": "user", "content": "Write a SEO optimized word article about " + keyword},
14
  {"role": "user", "content": "The article should be " + writing_style},
15
  {"role": "user", "content": "The article length should " + str(word_count)},
16
  ]
17
- )
18
- result = ''
19
- for choice in response.choices:
20
- result += choice.message.content
21
-
22
- print(result)
23
- return result
 
 
24
 
25
  keyword = st.text_input("Enter a keyword:")
26
  writing_style = st.selectbox("Select writing style:", ["Casual", "Informative", "Professional"])
 
1
  import streamlit as st
2
  import openai
3
  import os
4
+ import time
5
 
6
  openai.api_key = os.environ.get("OPEN_AI_API")
7
  st.title("SEO Article Writer with ChatGPT")
8
 
9
+
10
  def generate_article(keyword, writing_style, word_count):
11
+ try:
12
+ response = openai.ChatCompletion.create(
13
+ model="gpt-3.5-turbo",
14
+ messages=[
15
  {"role": "user", "content": "Write a SEO optimized word article about " + keyword},
16
  {"role": "user", "content": "The article should be " + writing_style},
17
  {"role": "user", "content": "The article length should " + str(word_count)},
18
  ]
19
+ )
20
+ result = ''
21
+ for choice in response.choices:
22
+ result += choice.message.content
23
+ return result
24
+ except openai.error.RateLimitError:
25
+ st.error("Rate limit exceeded. Waiting for 20 seconds before retrying...")
26
+ time.sleep(20)
27
+ return generate_article(keyword, writing_style, word_count)
28
 
29
  keyword = st.text_input("Enter a keyword:")
30
  writing_style = st.selectbox("Select writing style:", ["Casual", "Informative", "Professional"])