Bom, eu acho que eu acabei de encontrar o meu framework preferido para construir agentes de inteligência artificial aqui no P. Caso vocês nunca tenham ouvido falar o nome dele é Agno, dá só uma olhadinha na explosão de popularidade que a biblioteca teve nos últimos 12 meses. Cara, ela tá batendo aqui a barreira das 30.
000 estrelas. E depois de explorar esse framework aqui nos últimos meses, eu decidi compartilhar com vocês nesse vídeo os motivos que me fizeram adotar o agno como meu framework principal para construir agentes de inteligência artificial aqui dentro do Python. Então bora lá.
Então, o primeiro motivo é o foco do framework em simplicidade, que é uma das coisas que eu mais valorizo quando tô programando aqui dentro do Python. Porque quando a gente opta em programar no Python, a gente quer resolver problemas o mais rápido possível, escrever a menor quantidade de código. A gente não quer se preocupar com outros aspectos, como eficiência máxima da linguagem, qual o tipo de dado ótimo para cada variável que a gente tá trabalhando.
Não, a gente não quer se preocupar com isso. Eu acho que o Agno pegou esse princípio e colocou super bem dentro do framework. Para começar, construir agentes aqui no AG é um processo muito simples.
Tudo começa nessa classe agent, que é onde a gente vai se conectar com algum modelo de linguagem, como chat EPT, Gemini ou cloud ou qualquer outro. Eles têm uma série de possibilidades de integrar com diferentes modelos. E a gente vai dar para esse modelo conjuntos de ferramentas para que eles possam executar coisas.
E a gente pode passar também instruções sobre como ele deveria se comportar. E é isso, essas nove linhas de código aqui, importando o agente, importando uma ferramenta, instanciando a classe agent, passando para ele que eu quero que ele tenha acesso a uma ferramenta de pesquisa na internet e rodando isso aqui, perguntando para ele quem venceu a final da Copa do Mundo Interclube de 2025. E a gente já vai ter acesso aqui a um agente capaz de pesquisar na internet, nos dar uma resposta aqui, cara, de ontem.
Então ele já até já sabe que o Chelsea venceu aqui o Paris Saint-Germain com placar de 3 a 0, usando a ferramenta de busca que ele teve. E essa simplicidade, na minha opinião, era uma das coisas que mais faltava quando eu tava trabalhando no L chain, porque quem já trabalhou um pouquinho com LC Chain, que é talvez o framework mais popular da internet hoje, passou aqui da barreira das 100. 000 1 estrelas no GitHub para vocês terem uma ideia, mas também é o mais antigo.
Só que Carol Lengtin é extremamente verboso, ou seja, para fazer poucas coisas a gente tinha que escrever muito código. Reparem aqui a quantidade de código que eu teria que ter feito para também construir um agente com capacidade de busca na internet. Ele é muito maior, eu tenho que me preocupar com muito mais coisas.
Alguns meses atrás, eu lancei aqui no YouTube um projeto onde eu replicava o Perplex AI utilizando o Lang Graph, que é a recomendação que o Lang tinha dá para construir agentes. E cara, o processo de desenvolvimento de agentes por aqui, ele é muito complexo. Repara quantas coisas a gente tem que estar se preocupando, conectando nós, desenvolvendo a gente, se instanciando ele, se preocupando com memória.
É muito mais complexo, na minha opinião, com Len Chin do que com Agno. E aí eu achei que o Agno, no geral trouxe uma simplicidade muito maior. Segundo ponto, o Agno Playground.
Então, os criadores do AGO lançaram um front end 100% open source para que a gente consiga visualizar tudo que tá acontecendo dentro do nosso agente com muita facilidade. Então, dei uma olhadinha aqui nesse agente que eu acabei de construir. Ele é um agente, ele importa classe agents e eu selecionei aqui o modelo que eu quero trabalhar.
Escolhi aqui o 4. 1 mini da Open AI e passei uma ferramenta e a Rule Finance, onde ele vai ter a capacidade de poder buscar por dados financeiros em tempo real, se ele julgar necessário. E eu passei também algumas instruções de como ele deveria se portar.
Use tabelas para mostrar informação final, não inclua nenhum outro texto. E eu poderia aqui interagir com esse modelo de uma forma muito fácil. Basta eu vir aqui importar fromagno.
plpground import playground serve playground app. E eu viria aqui, instanciaria o app e executaria o método serve playground, passando o meu arquivo como parâmetro. E ao rodar isso aqui, eu posso acessar esse site e interagir com a gente que eu acabei de criar por aqui.
Olá, tudo bem? Ele já me respondeu. Olá, tudo bem?
Como posso ajudar com você? E perguntar que ferramentas você possui? E ele me diz aqui, ó, tenho acesso a functions.
Current Stock Price, obter o preço atual de uma ação pelo seu símbolo. Reparem que ele já seguiu esse uso de tabelas que eu pedi para ele. Eu vou perguntar aqui qual a cotação da Apple.
Hoje ele vai chamar a função dele aqui, pedir o preço atual da Apple e me devolveu aqui em formato de tabela o preço da Apple usando essa ferramenta. O AGNO já conta com mais de 80 ferramentas pré-desenvolvidas pra gente, desde ferramentas de pesquisa, pesquisando por artigos científicos no Archive, Duck Duck Go, próprio Tavely que eu utilizei para poder fazer busca, Wikipedia, mas também em redes sociais. Posso conectar o meu agente no Discord, conectar no e-mail, em Gmail, no Slack, no WhatsApp recentemente, no Telegram, ferramentas de scraping diferente.
Há diferentes tipos de dados como CSV, SQL, ZP. Ele pode rodar código em Python, rodar códigos no terminal. E se não fosse o suficiente, você mesmo pode criar sua ferramenta aqui dentro simplesmente definindo um método do Python e documentando ele, explicando como é que o agente utilizaria, sem complexidade nenhuma.
Então, por exemplo, eu desenvolvi essa função aqui bem simples para calcular a temperatura e fazer uma conversão de Celsius para Fahrenheit. Expliquei para ele que essa função serve para poder fazer uma conversão entre as duas. O argumento necessário a ser passado é a temperatura em Celsius.
Ele vai retornar os graus em Fahrenhe. Eu poderia simplesmente copiar essa função aqui, passar aqui dentro na lista de ferramentas que ele tem e atualizar o meu modelo. Agora, pronto.
Olá. Quanto é 32º em Fahrenheit? Ele já vai chamar a ferramenta dele automaticamente e já me devolveu aqui essa conversão em formato de tabela.
Terceira razão, tá aqui, ó, é o que eles chamam de knowledge, seria a gestão do conhecimento que a gente passa pro nosso modelo de linguagem. Então, se de repente vocês querem ampliar o que o modelo sabe com arquivos em PDF, dados que estão presente em bancos de dados SQL, no SQL, CSVs, Doc X, sites Jon, tem toda essa gama de funcionalidades pra gente poder passar pro nosso modelo e automaticamente permitir que ele já tenha acesso aquilo, faça pesquisas nesse conhecimento quando necessário, utilizando, claro, as técnicas de ha. E como é que a gente faz isso?
Para explicar isso aqui para vocês, eu peguei esse relatório bem grande sobre o andamento da situação de mercados dos carros elétricos no mundo. Imagina um documento aqui de 170 páginas e eu quero alimentar isso aqui para dentro do meu modelo. Como é que a gente faz isso?
Então eu vou partir desse agente básico aqui que não tem nada, só a conexão dele com playground. Eu vou importar aqui um banco de dados vetorial, no caso um Chrome ADB, para poder guardar esse conhecimento que está aqui. Então fromagno.
vevectordb. Chromeimport chromadb. E eu vou criar esse banco de dados vetorial aqui nessa localização, pastatemp.
cchromadb. E agora eu puxo aqui um PDF knowledge base para poder guardar informação, conhecimento dentro de PDFs e passo também aqui um leitor de PDFs. Eu instancio esse knowledge base com o a localização onde tá o meu PDF, mas aqui poderia ser uma lista com múltiplos PDFs, o banco de dados vetorial que eu acabei de rodar e um leitor que vai indicar como que esse processamento vai ser feito e se ele vai ser quebrado em chunks, em pequenos pedaços de leitura ou não.
E aqui no meu agente agora eu passo que knowledge vai ser igual a knowledge base, esse aqui, e permito que ele faça pesquisas nessa base de conhecimento. Simples assim. E na primeira vez que a gente roda o agente vai fazer a leitura, criar aqui o nosso banco de dados vetorial.
Eu poderia vir no meu agente e perguntar alguma coisa sobre o documento, como por exemplo, você sabe me dizer como é que está a situação dos carros elétricos no Brasil? E ele vai agora pedir pela base de conhecimento dele por alguma informação, pegou vários trechos de lá daquele PDF e conseguiu montar uma resposta aqui totalmente baseada no conhecimento que estava lá. E aí, para fechar, uma das partes que eu achei super interessante é a forma como o Agno faz gestão de memória do teu agente.
Ele resolve isso através das storage e através do memory. E por que que isso aqui é importante? Porque um agente, ele pode ter múltiplas conversas com a mesma pessoa.
Então eu poderia vir aqui criar uma nova sessão ou de repente múltiplas pessoas podem ter conversas em paralelo com ele. Galera, essa gestão no Lang graph, na minha opinião, achei muito muito muito complexa. Eles não dão end points fácil para que vocês trabalhem com isso.
Só que aqui no agno o processo ele é muito simples. Olha só. Basta que eu venha aqui, faço uma importação de alguma biblioteca de gestão de storage dele.
Nesse caso, eu vou utilizar o SK Lite. Eu posso aqui embaixo instanciar essa classe, colocar o nome da tabela que eu vou utilizar e onde que ele vai est localizado. E ele vai criar um banco de dados para mim para poder fazer todo esse gerenciamento por conta própria.
E para que isso funcione, basta eu vir no meu agente, colocar storage, vai ser igual a storage e pronto. Basta que eu venha no meu agente aqui e pergunte: "Olá, tudo bem? " Ele me responde qualquer coisa.
Só que se eu criar uma nova sessão e perguntar: "Meu nome é Rodrigo, qual o seu? " Reparem que aqui embaixo ele já começou a gerenciar para mim essas múltiplas sessões. Eu poderia desligar o meu computador, sair daqui e tudo isso aqui agora está salvo nenhum banco de dados.
Então é isso, essa é a minha dica para vocês de hoje. Como é que vocês aprendem mais? Duas sugestões.
Vocês podem de cara entrar aqui na própria documentação do dar uma fuçada, dar uma brincada por aqui. Tem bastante coisa aqui dentro, dá para se virar. Mas para quem já é aluno da Zimoove, eu queria deixar o convite para vocês conhecerem a nova trilha chamado Criando Agentes de A como, aonde a gente ensina no detalhe não só esses elementos que eu passei aqui, mas tudo que a biblioteca tem a oferecer para construir agentes de A muito facilmente e poderosos.
Então eu vou deixar um link para vocês aqui embaixo, se quiserem conhecer essa trilha e aprender mais sobre esse framework aqui. E se gostaram e tiverem alguma ideia de projeto que gostariam de ver desenvolvido no por favor deixe nos comentários aqui embaixo que eu vou trazer aqui no canal com muito prazer para vocês. Forte abraço a todos e até o próximo vídeo.