Spaces:
Runtime error
Runtime error
Update app.py
Browse files
app.py
CHANGED
@@ -46,6 +46,57 @@ def get_related_studies(article: str):
|
|
46 |
st.error(f"Something went wrong: {str(e)}", icon="🚨")
|
47 |
|
48 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
49 |
def extract_scholar_query(article: str):
|
50 |
openai.api_key = os.environ.get("OPEN_API_KEY")
|
51 |
openai.api_base = os.environ.get("OPEN_API_BASE")
|
@@ -77,6 +128,10 @@ def create_article(length_option, articles, params, web_page_option):
|
|
77 |
length = os.environ.get("MEDIUM_LENGTH")
|
78 |
elif length_option == "Lang":
|
79 |
length = os.environ.get("LONG_LENGTH")
|
|
|
|
|
|
|
|
|
80 |
|
81 |
openai.api_key = os.environ.get("OPEN_API_KEY")
|
82 |
openai.api_base = os.environ.get("OPEN_API_BASE")
|
@@ -123,7 +178,7 @@ def create_article(length_option, articles, params, web_page_option):
|
|
123 |
messages = [
|
124 |
{
|
125 |
"role": "system",
|
126 |
-
"content": f"You are a professional journalist whose task is to write an article based on your own notes. This article should be written in the following writing style: {writing_style}
|
127 |
},
|
128 |
{
|
129 |
"role": "system",
|
@@ -296,7 +351,7 @@ def on_click_handler_generate_article(**kwargs):
|
|
296 |
kwargs["length_option"],
|
297 |
kwargs["final_articles"],
|
298 |
kwargs["add_info"],
|
299 |
-
kwargs["webpage_option"],
|
300 |
)
|
301 |
headline = create_headline(created_article, kwargs["webpage_option"])
|
302 |
db_analytics_item = {
|
@@ -586,7 +641,7 @@ if st.session_state["function_state"]:
|
|
586 |
key="add_info",
|
587 |
)
|
588 |
st.write("Artikellänge")
|
589 |
-
st.radio("Optionen", ["Kurz", "Mittel", "Lang"], key="length_option")
|
590 |
st.button(
|
591 |
"Artikel generieren",
|
592 |
key="article_btn",
|
@@ -596,6 +651,8 @@ if st.session_state["function_state"]:
|
|
596 |
"final_articles": st.session_state["final_articles"],
|
597 |
"add_info": st.session_state["add_info"],
|
598 |
"webpage_option": st.session_state["webpage_option"],
|
|
|
|
|
599 |
},
|
600 |
)
|
601 |
elif st.session_state["selected_page"] == 3:
|
@@ -615,11 +672,28 @@ if st.session_state["function_state"]:
|
|
615 |
st.write(f"- [{result['title']}]({result['link']})")
|
616 |
else:
|
617 |
st.write("Keine relevanten Studien gefunden.")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
618 |
st.button(
|
619 |
"Relevante Studien finden",
|
620 |
on_click=get_related_studies,
|
621 |
args=(st.session_state["generated_article"],),
|
622 |
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
623 |
st.button(
|
624 |
"Neuen Artikel generieren", key="reset_btn", on_click=reset_session_state
|
625 |
)
|
@@ -629,7 +703,7 @@ else:
|
|
629 |
)
|
630 |
st.text_area(label="Artikel input:", key="keyword_article_input")
|
631 |
st.write("Artikellänge")
|
632 |
-
st.radio("Optionen", ["Kurz", "Mittel", "Lang"], key="length_option")
|
633 |
st.button(
|
634 |
"Artikel generieren",
|
635 |
key="article_btn",
|
|
|
46 |
st.error(f"Something went wrong: {str(e)}", icon="🚨")
|
47 |
|
48 |
|
49 |
+
def get_takeaways(article : str):
|
50 |
+
openai.api_key = os.environ.get("OPEN_API_KEY")
|
51 |
+
openai.api_base = os.environ.get("OPEN_API_BASE")
|
52 |
+
openai.api_type = os.environ.get("OPEN_API_TYPE")
|
53 |
+
openai.api_version = os.environ.get("OPEN_API_VERSION")
|
54 |
+
takeaway_query = os.environ.get("takeaway")
|
55 |
+
with st.spinner("Creating Takeaways"):
|
56 |
+
try:
|
57 |
+
res = openai.ChatCompletion.create(
|
58 |
+
engine="gpt-4-1106",
|
59 |
+
temperature=0.2,
|
60 |
+
messages=[
|
61 |
+
{
|
62 |
+
"role": "system",
|
63 |
+
"content": f" The article you have written is as follows: {article}.",
|
64 |
+
}
|
65 |
+
],
|
66 |
+
)
|
67 |
+
st.session_state["takeaways"] = res["choices"][0]["message"]["content"]
|
68 |
+
except Exception as e:
|
69 |
+
print(f"Fehler beim extrahieren der Query: {str(e)}")
|
70 |
+
st.error(f"Something went wrong: {str(e)}", icon="🚨")
|
71 |
+
st.session_state["takeaways"] = None
|
72 |
+
|
73 |
+
|
74 |
+
|
75 |
+
def get_faq(article : str):
|
76 |
+
openai.api_key = os.environ.get("OPEN_API_KEY")
|
77 |
+
openai.api_base = os.environ.get("OPEN_API_BASE")
|
78 |
+
openai.api_type = os.environ.get("OPEN_API_TYPE")
|
79 |
+
openai.api_version = os.environ.get("OPEN_API_VERSION")
|
80 |
+
faq_query = os.environ.get("faq")
|
81 |
+
|
82 |
+
with st.spinner("Creating FAQ"):
|
83 |
+
try:
|
84 |
+
res = openai.ChatCompletion.create(
|
85 |
+
engine="gpt-4-1106",
|
86 |
+
temperature=0.2,
|
87 |
+
messages=[
|
88 |
+
{
|
89 |
+
"role": "system",
|
90 |
+
"content": f" The article you have written is as follows: {article}.",
|
91 |
+
}
|
92 |
+
],
|
93 |
+
)
|
94 |
+
st.session_state["faq"] = res["choices"][0]["message"]["content"]
|
95 |
+
except Exception as e:
|
96 |
+
print(f"Fehler beim extrahieren der Query: {str(e)}")
|
97 |
+
st.error(f"Something went wrong: {str(e)}", icon="🚨")
|
98 |
+
st.session_state["faq"] = None
|
99 |
+
|
100 |
def extract_scholar_query(article: str):
|
101 |
openai.api_key = os.environ.get("OPEN_API_KEY")
|
102 |
openai.api_base = os.environ.get("OPEN_API_BASE")
|
|
|
128 |
length = os.environ.get("MEDIUM_LENGTH")
|
129 |
elif length_option == "Lang":
|
130 |
length = os.environ.get("LONG_LENGTH")
|
131 |
+
elif length_option == "SEO":
|
132 |
+
length = os.environ.get("SEO_LENGTH")
|
133 |
+
elif length_option == "SEO Plus"
|
134 |
+
length = os.environ.get("SEO_PLUS_LENGTH")
|
135 |
|
136 |
openai.api_key = os.environ.get("OPEN_API_KEY")
|
137 |
openai.api_base = os.environ.get("OPEN_API_BASE")
|
|
|
178 |
messages = [
|
179 |
{
|
180 |
"role": "system",
|
181 |
+
"content": f"You are a professional journalist whose task is to write an article based on your own notes. This article should be written in the following writing style: {writing_style} .It is important that the length of your article should be {length} words long.",
|
182 |
},
|
183 |
{
|
184 |
"role": "system",
|
|
|
351 |
kwargs["length_option"],
|
352 |
kwargs["final_articles"],
|
353 |
kwargs["add_info"],
|
354 |
+
kwargs["webpage_option"],
|
355 |
)
|
356 |
headline = create_headline(created_article, kwargs["webpage_option"])
|
357 |
db_analytics_item = {
|
|
|
641 |
key="add_info",
|
642 |
)
|
643 |
st.write("Artikellänge")
|
644 |
+
st.radio("Optionen", ["Kurz", "Mittel", "Lang", "SEO", "SEO Plus"], key="length_option")
|
645 |
st.button(
|
646 |
"Artikel generieren",
|
647 |
key="article_btn",
|
|
|
651 |
"final_articles": st.session_state["final_articles"],
|
652 |
"add_info": st.session_state["add_info"],
|
653 |
"webpage_option": st.session_state["webpage_option"],
|
654 |
+
"takeaways" : st.session_state["takeaways"]
|
655 |
+
"faq" : st.session_state["faq"]
|
656 |
},
|
657 |
)
|
658 |
elif st.session_state["selected_page"] == 3:
|
|
|
672 |
st.write(f"- [{result['title']}]({result['link']})")
|
673 |
else:
|
674 |
st.write("Keine relevanten Studien gefunden.")
|
675 |
+
|
676 |
+
if st.session_state["takeaways"]:
|
677 |
+
st.write("Hier sind einige Takeaways die wichtig sein könnten:")
|
678 |
+
st.write(st.session_state["takeaways"])
|
679 |
+
|
680 |
+
if st.session_state["faq"]:
|
681 |
+
st.write("Hier sind FAQs zu dem Artikel:")
|
682 |
+
st.write(st.session_state["faq"])
|
683 |
+
|
684 |
st.button(
|
685 |
"Relevante Studien finden",
|
686 |
on_click=get_related_studies,
|
687 |
args=(st.session_state["generated_article"],),
|
688 |
)
|
689 |
+
st.button(
|
690 |
+
"Key Takeaways generieren",
|
691 |
+
onclick=get_takeaways(st.session_state["generated_article"])
|
692 |
+
)
|
693 |
+
st.button(
|
694 |
+
"FAQ generieren",
|
695 |
+
onclick=get_faq(st.session_state["generated_article"])
|
696 |
+
)
|
697 |
st.button(
|
698 |
"Neuen Artikel generieren", key="reset_btn", on_click=reset_session_state
|
699 |
)
|
|
|
703 |
)
|
704 |
st.text_area(label="Artikel input:", key="keyword_article_input")
|
705 |
st.write("Artikellänge")
|
706 |
+
st.radio("Optionen", ["Kurz", "Mittel", "Lang", "SEO", "SEO Plus"], key="length_option")
|
707 |
st.button(
|
708 |
"Artikel generieren",
|
709 |
key="article_btn",
|