pavankumarhm commited on
Commit
ed17b83
·
1 Parent(s): 2bf934e

Add application file

Browse files
Files changed (1) hide show
  1. app.py +64 -0
app.py ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ import openai
3
+ import streamlit as st
4
+ from dotenv import load_dotenv
5
+
6
+
7
+ openai.api_key = st.secrets["open_ai_key"]
8
+ MODEL = st.secrets["MODEL"]
9
+
10
+ # Load environment variables from .env file
11
+ load_dotenv()
12
+ # Set up OpenAI API Key
13
+ openai.api_key = os.getenv("open_ai_key")
14
+ MODEL = os.getenv("MODEL")
15
+
16
+
17
+ def generate_linkedin_post(prompt: str) -> str:
18
+ """Generate a Intriguing LinkedIn post based on the user's prompt using OpenAI."""
19
+
20
+ response = openai.ChatCompletion.create(
21
+ model= MODEL,
22
+ messages=[
23
+ {
24
+ "role": "user",
25
+ "content": prompt
26
+ }
27
+ ],
28
+ temperature=0.5,
29
+ top_p=1,
30
+ frequency_penalty=0,
31
+ presence_penalty=0
32
+ )
33
+
34
+ assistant_response = response['choices'][0]['message']['content']
35
+ return assistant_response
36
+
37
+ # Streamlit UI
38
+ st.title("LinkedIn Post Generator Assistant")
39
+
40
+ # Initial conversation
41
+ st.write("AI: Hi! Let's create a LinkedIn post. What's the main topic or achievement you'd like to share?")
42
+ topic = st.text_input("You:")
43
+
44
+ if topic:
45
+ detail_prompt = f"Can you provide more details about the {topic}?"
46
+ st.write(f"AI: {detail_prompt}")
47
+ detail = st.text_input("You (Detail about the topic):")
48
+
49
+ if detail:
50
+ initial_prompt = f" Generate a Intriguing LinkedIn post based on the {topic}. {detail}."
51
+ post = generate_linkedin_post(initial_prompt)
52
+
53
+ st.write(f"AI: Here's your LinkedIn post based on your input:")
54
+ st.text_area("Generated LinkedIn Post:", post)
55
+
56
+ st.write("AI: How would you like to modify or refine the post?")
57
+ feedback = st.text_input("You (Feedback on the post):")
58
+
59
+ if feedback:
60
+ revised_prompt = f"{initial_prompt}. However, {feedback}"
61
+ revised_post = generate_linkedin_post(revised_prompt)
62
+ st.write(f"AI: Based on your feedback, here's the revised post:")
63
+ st.text_area("Revised LinkedIn Post:", revised_post)
64
+ st.write("AI: Feel free to provide more feedback or post it directly on LinkedIn!")