ARTURART commited on
Commit
d2dda6b
·
verified ·
1 Parent(s): 5b64354

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +50 -0
app.py ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import streamlit as st
2
+ from streamlit_chat import message as st_message
3
+ from g4f.client import Client
4
+
5
+ # Inicializa o cliente do modelo
6
+ client = Client()
7
+
8
+ # Função para gerar temas
9
+ def gerar_temas(papel, quantidade, tipo_conteudo, publico_alvo, tema_topico):
10
+ prompt = f"""
11
+ Atue como {papel}. Sua tarefa é sugerir {quantidade} temas para {tipo_conteudo}, considerando as seguintes exigências:
12
+
13
+ O tema deve ser relevante para o público-alvo: {publico_alvo}.
14
+ Deve abordar uma tendência ou problema atual relacionado a {tema_topico}.
15
+
16
+ Inclua uma breve descrição sobre cada tema sugerido, explicando a relevância e como pode agregar valor ao público.
17
+ """
18
+
19
+ # Gera a resposta do modelo
20
+ response = client.chat.completions.create(
21
+ model="gpt-4o-mini",
22
+ messages=[{"role": "user", "content": prompt}]
23
+ )
24
+
25
+ # Retorna o conteúdo gerado pelo modelo
26
+ return response['choices'][0]['message']['content']
27
+
28
+ # Título da aplicação
29
+ st.title("Gerador de Temas com GPT")
30
+
31
+ # Formulário para inserir os parâmetros
32
+ with st.form(key="parametros_form"):
33
+ st.subheader("Preencha os detalhes para gerar temas:")
34
+
35
+ papel = st.text_input("Papel", "especialista em marketing digital")
36
+ quantidade = st.number_input("Quantidade de Temas", min_value=1, max_value=10, value=5)
37
+ tipo_conteudo = st.text_input("Tipo de Conteúdo", "artigos de blog")
38
+ publico_alvo = st.text_input("Público-Alvo", "empreendedores digitais")
39
+ tema_topico = st.text_input("Tendência ou Tópico", "inovações tecnológicas")
40
+
41
+ submit_button = st.form_submit_button(label="Gerar Temas")
42
+
43
+ # Gera os temas quando o botão for pressionado
44
+ if submit_button:
45
+ with st.spinner("Gerando temas..."):
46
+ temas_gerados = gerar_temas(papel, quantidade, tipo_conteudo, publico_alvo, tema_topico)
47
+
48
+ # Exibe os temas gerados usando o ChatMessage
49
+ st_message(f"Temas sugeridos para {tipo_conteudo}:", is_user=True)
50
+ st_message(temas_gerados, is_user=False)