Aplicativo de agente de IA com todos os recursos em menos de 50 linhas de código Python (guia passo a passo)
As ferramentas de IA estão mudando a maneira como os empreendedores identificam tendências e tomam decisões, mas a criação de uma solução dimensionável para analisar oportunidades de startups geralmente exige a integração de várias fontes de dados e o processamento rápido delas. No entanto, com modelos avançados de linguagem ampla (LLMs) equipados com as ferramentas certas, esse processo pode ser automatizado para fornecer insights acionáveis.
Neste tutorial, você será guiado pelo processo de criação de um Agente de análise de tendências de startups de IA. Esse agente de IA analisará notícias sobre startups, identificará tendências emergentes e validará ideias de startups. Ele usará menos de 50 linhas de código Python, combinadas com Jornal4k responder cantando DuckDuckGoe usar Claude 3.5 Soneto.
Principais recursos:
- Entrada do usuário: permite que os empreendedores insiram áreas empresariais específicas ou tecnologias de interesse
- Coleta de notícias: usando @DuckDuckGo
Coletar as últimas notícias sobre startups e análises de mercado
- Geração de resumos: use o Newspaper4k para gerar resumos concisos de informações validadas.
- Análise de tendências: identificação de modelos emergentes de financiamento de empreendimentos, adoção de tecnologia e oportunidades de mercado
- Interface de front-end: @streamlit
Fornecer uma interface interativa de fácil utilização
A arquitetura do sistema consiste em três agentes:
- Coleta de notícias: responsável pela pesquisa e coleta de artigos relevantes
- Redação de resumos: processamento e resumo do conteúdo do artigo
- Análise de tendências: análise de resumos e identificação de tendências
Etapas de realização:
- Configuração do ambiente: inclui a instalação das dependências necessárias e a obtenção de chaves de API.
- Criação de um aplicativo Streamlit: Criação da interface do usuário
- Implementar as funções de três agentes e combiná-los em uma equipe
- Executar fluxos de trabalho analíticos e apresentar resultados
O que vamos construir
O AI Startup Trend Analysis Agent é uma ferramenta projetada para que empreendedores emergentes gerem percepções acionáveis, identificando tendências incipientes, possíveis lacunas de mercado e oportunidades de crescimento em setores específicos. Ele combina o Newspaper4k e o DuckDuckGo para escanear e analisar artigos e dados de mercado centrados em startups. Com o Claude 3.5 Sonnet, ele processa essas informações para extrair padrões emergentes e ajudar os empreendedores a identificar oportunidades promissoras de startups.
funcionalidade
- prompt do usuárioOs empreendedores podem inserir áreas empresariais específicas ou tecnologias de interesse para pesquisa.
- Coleção de notíciasDuckDuckGo: A agência coleta notícias recentes sobre startups, atualizações de financiamento e análises de mercado por meio do DuckDuckGo.
- Geração de abstratosUse o Newspaper4k para gerar resumos concisos de informações verificadas.
- Análise de tendênciasIdentificação sistemática de tendências em financiamento de startups, adoção de tecnologia e oportunidades de mercado e análise de histórias relacionadas.
- Interface StreamlitInterface de usuário: O aplicativo usa uma interface amigável criada pela Streamlit para facilitar a interação.
pré-condições
Antes de começarmos, verifique se você tem os seguintes itens em vigor:
- Instale o Python em seu computador (recomenda-se a versão 3.7 ou superior)
- posse Chave da API do Anthropic
- Conhecimento básico de programação em Python
- Use seu editor de código favorito (recomendamos o VS Code ou o PyCharm, que têm excelente suporte para Python)
Guia passo a passo
Configuração do ambiente de desenvolvimento
Primeiro, vamos preparar o ambiente de desenvolvimento:
- Clonar um repositório do GitHub:
git clone https://github.com/Shubhamsaboo/awesome-llm-apps.git
- entrar em ai_startup_trend_analysis_agent Pasta:
cd ai_agent_tutorials/ai_startup_trend_analysis_agent
- montagem Dependências necessárias::
pip install -r requirements.txt
- Obtenha sua chave de API: Registre-se Antrópica e obtenha sua chave de API.
Criação de um aplicativo Streamlit
Vamos criar o aplicativo. Novo arquivo startup_trends_agent.py
e adicione o seguinte código:
- Importe as bibliotecas necessárias:
- Streamlit para criar aplicativos da Web
- para criar agentes e ferramentas de IA Phidata
- Modelagem de linguagem grande Claude Sonnet 3.5
- DuckDuckGo para pesquisa
- Newspaper4k para processamento de artigos
importar streamlit como st
from phi.agent import Agent
from phi.tools.duckduckgo import DuckDuckGo
from phi.model.anthropic import Claude
from phi.tools.newspaper4k import Newspaper4k
from phi.tools.import Tool
import logging
- Crie um aplicativo Streamlit:
- Interface simples e clara
- Entrada segura de chave de API
- Análise baseada em temas
# Configuração do aplicativo Streamlit
st.title("Assistente de análise de tendências de inicialização de IA 📈")
st.caption("Obtenha as mais recentes análises de tendências e oportunidades de inicialização com base em seus tópicos de interesse com apenas um clique.")
topic = st.text_input("Digite a área de inicialização em que você está interessado:")
anthropic_api_key = st.sidebar.text_input("Digite a chave da API do Anthropic", type="password")
if st.button("Generate Analysis"):: if not anthropic_api_key = st.sidebar.text_input("Enter Anthropic API key", type="password")
if not anthropic_api_key.
st.warning("Por favor, digite a chave de API necessária.")
else: with st.spinner
with st.spinner("Processando sua solicitação...") :: try: with st.spinner("Sua solicitação está sendo processada...")
try: # Inicialização
# Inicialização do modelo Anthropic
anthropic_model = Claude(id = "claude-3-5-sonnet-20240620",api_key=anthropic_api_key)
- Crie um agente de coleta de notícias:
- Pesquisando com o DuckDuckGo
- Coleção dos artigos mais recentes
- Limite de 5 resultados para manter o foco
# Definição de agentes de coleta de notícias - A ferramenta de pesquisa DuckDuckGo permite que os agentes pesquisem informações na Web.
search_tool = DuckDuckGo(search=True, news=True, fixed_max_results=5)
news_collector = Agent(
name="news_collector",
role="Coleta os artigos de notícias mais recentes sobre um determinado tópico",
tools=[search_tool],
model=anthropic_model,
instructions=["Reúne os artigos mais recentes sobre o tópico"],
show_tool_calls=True,
markdown=True,
)
- Adicionar um agente de geração de resumo:
- Processamento do conteúdo do artigo
- Criação de resumos sucintos
- Retenção de informações importantes
# Definir o agente de geração de resumo
news_tool = Newspaper4k(read_article=True, include_summary=True)
summary_writer = Agent(
name="Gerador de resumo",
role="Gerar um resumo para artigos de notícias coletados",
tools=[news_tool],
model=anthropic_model,
instructions=["Forneça um resumo sucinto do artigo"],
show_tool_calls=True,
markdown=True,
)
- Criar um agente de análise de tendências:
- Análise do conteúdo do resumo
- Identificação de tendências
- Aproveitar as oportunidades de empreendedorismo
# Definir o agente analisador de tendências
trend_analyzer = Agent(
name="Analisador de tendências",
role="Analisar tendências a partir de resumos",
model=anthropic_model,
instructions=["Identificar tendências emergentes e possíveis oportunidades empresariais"],
show_tool_calls=True,
markdown=True,
)
- Combine agentes em equipes:
- Coordenação de fluxos de trabalho
- Garantia de fluxos de dados
- Manutenção da consistência contextual
Configuração da equipe de vários agentes para o Phidata #:
agent_team = Agent(
agentes=[news_collector, summary_writer, trend_analyzer],
instructions=[
"Primeiro, use o DuckDuckGo para pesquisar os artigos de notícias mais recentes relacionados ao tópico especificado pelo usuário." ,
"Em seguida, forneça os links dos artigos coletados para o gerador de resumo." ,
"Importante: é importante garantir que o gerador de resumo receba todos os links de artigos para leitura." ,
"Em seguida, o gerador de resumo lerá os artigos e preparará um resumo conciso para cada artigo." ,
"Depois de resumir, os resumos serão passados para o Trend Analyser." ,
"Por fim, o Trend Analyser identificará as tendências emergentes e as possíveis oportunidades empresariais com base nos resumos fornecidos e as apresentará na forma de um relatório detalhado, facilitando a captura de grande valor para qualquer jovem empresário."
],.
show_tool_calls=True,
markdown=True.
)
- Executar fluxos de trabalho analíticos:
- processamento sequencial
- Garantia de fluxos de dados
- Mostrar resultados
# Etapa 1: Coleta de notícias
news_response = news_collector.run(f "Coletar as últimas notícias sobre {topic}")
articles = news_response.content
# Etapa 2: Resumir os artigos
summary_response = summary_writer.run(f "Resuma os seguintes artigos:\n{articles}")
summaries = summary_response.content
# Etapa 3: Análise de tendências
trend_response = trend_analyzer.run(f "Analise a tendência dos resumos a seguir: \n{summaries}")
analysis = trend_response.content
# Exibir resultados - se for necessário usar mais, as duas linhas a seguir podem ser descomentadas para obter os resumos!
# st.subheader("news summary")
# # st.write(summaries)
st.subheader("Análise de tendências e oportunidades potenciais de inicialização")
st.write(analysis)
exceto Exception as e.
st.error(f "Ocorreu um erro: {e}")
else: st.error(f "Ocorreu um erro: {e}")
st.info("Insira o tópico e a chave de API e clique em "Generate Analysis" (Gerar análise) para começar.")
Executar o aplicativo
Quando o código estiver pronto, inicie o aplicativo.
- No terminal, navegue até a pasta do projeto e execute o seguinte comando:
streamlit run startup_trends_agent.py
- O Streamlit fornecerá um URL local (geralmente http://localhost:8501). Abra-o em seu navegador, insira sua chave de API, selecione a área que deseja explorar e veja seu agente de IA fazer a pesquisa para você.
Demonstração de aplicativos em funcionamento
resumos
Em menos de 50 linhas de código, seu agente de IA está pronto para fornecer aos empreendedores insights acionáveis para análise de tendências.
Para aprimorar ainda mais a funcionalidade, os seguintes aspectos podem ser considerados:
- visualizaçãoTendências: as tendências são apresentadas graficamente, tornando o modelo mais claro e mais prático.
- Filtragem de dadosAdicione filtros avançados para que os usuários refinem os insights com base na localização geográfica, no tamanho do financiamento ou no tipo de tecnologia.
- coordenaçãoAtivar recursos de compartilhamento e discussão em equipe no aplicativo para facilitar a utilização mais profunda dos insights.
Faça experimentos e aprimoramentos contínuos para criar soluções de IA mais inteligentes!