Gerador de tweets de artigos
Crie um tweet sobre um artigo e publique-o no X.
graph TD
%%{init: {'theme': 'mc','layout': 'elk'}}%%
TextInput-st0k1[<div><img src="/_astro/type.Dy26vmDy.svg" style="height: 20px !important;width: 20px !important"/></div>Query]
style TextInput-st0k1 stroke:#a170ff
Prompt-2zkyi[<div><img src="/_astro/square-terminal.BMOXc-nZ.svg" style="height: 20px !important;width: 20px !important"/></div>Prompt]
style Prompt-2zkyi stroke:#a170ff
SearXng-q92z6[Web Search SearXng]
style SearXng-q92z6 stroke:#a170ff
WebScraper-wulwf[Web Scraper]
style WebScraper-wulwf stroke:#a170ff
Prompt-ctj5v[<div><img src="/_astro/square-terminal.BMOXc-nZ.svg" style="height: 20px !important;width: 20px !important"/></div>Prompt]
style Prompt-ctj5v stroke:#a170ff
ParseData-11ts5[<div><img src="/_astro/braces.Djq0PW4_.svg" style="height: 20px !important;width: 20px !important"/></div>Parse Data2]
style ParseData-11ts5 stroke:#a170ff
OpenAIModel-7fyyb[<div><img src="/_astro/openAI.BhmuxEs3.svg" style="height: 20px !important;width: 20px !important"/></div>OpenAI]
style OpenAIModel-7fyyb stroke:#a170ff
OpenAIModel-1p9j6[<div><img src="/_astro/openAI.BhmuxEs3.svg" style="height: 20px !important;width: 20px !important"/></div>OpenAI]
style OpenAIModel-1p9j6 stroke:#a170ff
ParseData-mo9ts[<div><img src="/_astro/braces.Djq0PW4_.svg" style="height: 20px !important;width: 20px !important"/></div>Parse Data]
style ParseData-mo9ts stroke:#a170ff
XPoster-usgch[X Poster]
style XPoster-usgch stroke:#a170ff
TextInput-st0k1 -.- SearXng-q92z6
linkStyle 0 stroke:#a170ff
SearXng-q92z6 -.- ParseData-11ts5
linkStyle 1 stroke:#a170ff
ParseData-11ts5 -.- Prompt-ctj5v
linkStyle 2 stroke:#a170ff
Prompt-ctj5v -.- OpenAIModel-7fyyb
linkStyle 3 stroke:#a170ff
OpenAIModel-7fyyb -.- WebScraper-wulwf
linkStyle 4 stroke:#a170ff
Prompt-2zkyi -.- OpenAIModel-1p9j6
linkStyle 5 stroke:#a170ff
WebScraper-wulwf -.- ParseData-mo9ts
linkStyle 6 stroke:#a170ff
OpenAIModel-7fyyb -.- Prompt-2zkyi
linkStyle 7 stroke:#a170ff
ParseData-mo9ts -.- Prompt-2zkyi
linkStyle 8 stroke:#a170ff
OpenAIModel-1p9j6 -.- XPoster-usgch
linkStyle 9 stroke:#a170ff
Article Tweet Generator
🧩 Visão Geral
O fluxo de trabalho transforma a consulta de um usuário sobre notícias recentes de IA em uma declaração concisa e pronta para tweet. Ele pesquisa automaticamente na web, seleciona um artigo relevante, extrai seu conteúdo, gera um tweet que resume os pontos principais e o publica no X. O processo é totalmente automatizado, reduzindo o tempo de curadoria e publicação manual.
⚙️ Principais Funcionalidades
- Aceita consultas em linguagem natural sobre notícias de IA.
- Recupera artigos recentes por meio de uma busca na web.
- Seleciona aleatoriamente uma URL de artigo usando um modelo de linguagem.
- Faz o scraping do conteúdo completo do artigo.
- Gera um tweet informativo e com limite de caracteres.
- Publica o tweet no X com um único passo automatizado.
🔄 Etapas do Fluxo de Trabalho
| Nome do Componente | Função no Fluxo de Trabalho | Entradas Principais | Saídas Principais |
|---|---|---|---|
| Query | Recebe a solicitação do usuário sobre notícias de IA. | Texto fornecido pelo usuário. | String de consulta para busca. |
| Web Search | Realiza uma busca na web usando a consulta. | String de consulta. | Dados contendo URLs dos resultados da busca. |
| Parse Data (Extract URLs) | Converte os resultados da busca em uma lista de URLs de artigos. | Dados dos resultados da busca. | Lista de URLs. |
| Prompt (Select Random Article) | Solicita ao modelo que escolha uma única URL de artigo. | Lista de URLs. | Prompt para o modelo de linguagem. |
| OpenAI Model (Generate URL) | Executa o modelo para produzir a URL selecionada. | Prompt. | URL do artigo selecionado. |
| Web Scraper | Faz o scraping do artigo na URL fornecida. | URL do artigo. | Conteúdo bruto do artigo em Markdown. |
| Parse Data (Process Article) | Transforma o Markdown obtido em texto simples. | Conteúdo bruto do artigo. | Texto do artigo. |
| Prompt (Generate Tweet) | Constrói um prompt para criar um tweet a partir do artigo. | Texto do artigo, URL do artigo. | Prompt para o modelo de linguagem. |
| OpenAI Model (Generate Tweet Text) | Gera o texto final do tweet. | Prompt. | Texto do tweet (≤ 100 caracteres). |
| X Poster | Publica o tweet no X. | Texto do tweet. | Confirmação da publicação. |
🧠 Notas
- Credenciais de API: O fluxo requer chaves de API válidas para a OpenAI e a API do X.
- Seleção de Modelo: São feitas duas chamadas de modelo — uma para selecionar a URL e outra para gerar o tweet.
- Aleatoriedade: A seleção da URL é feita pelo LLM, podendo variar a cada execução; considere adicionar uma semente determinística se precisar de resultados reproduzíveis.
- Restrições de Scraping: O tempo limite do scraper pode ser ajustado; páginas muito grandes podem exceder o limite padrão.
- Tamanho do Tweet: O prompt restringe explicitamente a saída a 100 caracteres para respeitar o limite do X.
- Segurança: O sistema não valida o conteúdo do artigo selecionado antes de postar; filtros ou moderação adicionais podem ser incluídos se necessário.