Spaces:
Sleeping
Sleeping
| import streamlit as st | |
| from streamlit_chat import message as st_message | |
| from g4f.client import Client | |
| # Inicializa o cliente do modelo | |
| client = Client() | |
| # Função para gerar temas | |
| def gerar_temas(papel, quantidade, tipo_conteudo, publico_alvo, tema_topico): | |
| prompt = f""" | |
| Atue como {papel}. Sua tarefa é sugerir {quantidade} temas para {tipo_conteudo}, considerando as seguintes exigências: | |
| O tema deve ser relevante para o público-alvo: {publico_alvo}. | |
| Deve abordar uma tendência ou problema atual relacionado a {tema_topico}. | |
| Inclua uma breve descrição sobre cada tema sugerido, explicando a relevância e como pode agregar valor ao público. | |
| """ | |
| # Gera a resposta do modelo | |
| response = client.chat.completions.create( | |
| model="gpt-4o-mini", | |
| messages=[{"role": "user", "content": prompt}] | |
| ) | |
| # Acessa a mensagem de resposta diretamente | |
| return response.choices[0].message.content | |
| # Título da aplicação | |
| st.title("Gerador de Temas com GPT") | |
| # Formulário para inserir os parâmetros | |
| with st.form(key="parametros_form"): | |
| st.subheader("Preencha os detalhes para gerar temas:") | |
| papel = st.text_input("Papel", "especialista em marketing digital") | |
| quantidade = st.number_input("Quantidade de Temas", min_value=1, max_value=10, value=5) | |
| tipo_conteudo = st.text_input("Tipo de Conteúdo", "artigos de blog") | |
| publico_alvo = st.text_input("Público-Alvo", "empreendedores digitais") | |
| tema_topico = st.text_input("Tendência ou Tópico", "inovações tecnológicas") | |
| submit_button = st.form_submit_button(label="Gerar Temas") | |
| # Gera os temas quando o botão for pressionado | |
| if submit_button: | |
| with st.spinner("Gerando temas..."): | |
| temas_gerados = gerar_temas(papel, quantidade, tipo_conteudo, publico_alvo, tema_topico) | |
| # Exibe os temas gerados usando o ChatMessage | |
| st_message(f"Temas sugeridos para {tipo_conteudo}:", is_user=True) | |
| st_message(temas_gerados, is_user=False) | |