📋 Visão Geral do Curso
O minicurso tem como objetivo instruir os participantes na construção de um agente de IA capaz de responder a perguntas sobre documentos específicos.
Para tal, será utilizada uma Large Language Model (LLM) para gerar respostas inteligentes, integrada a um banco de dados vetorial (FAISS), responsável por fornecer o contexto preciso a partir dos documentos. O framework LangChain será empregado para orquestrar a aplicação de forma eficiente.
É pré-requisito para o minicurso possuir noções básicas da linguagem de programação Python
- Criar um chatbot usando framework langchain e API gratuita do Gemini
- Introduzir a criação de agentes de IA
- Fundamentos de Retrieval Augmentation Generation (RAG) e bancos de dados de vetores
- Interessados em IA Generativa
- Estudantes de Sistemas de Informação que participaram do Minicurso na SEINFO 2025
git clone https://github.com/JosianaSilva/seinfo-minicurso-criacao-agentes-ia.git
cd seinfo-minicurso-criacao-agentes-iaNo Windows (PowerShell):
python -m venv venv
.\venv\Scripts\Activate.ps1No Windows (CMD):
python -m venv venv
venv\Scripts\activateNo Git Bash:
python -m venv venv
source venv/Scripts/activateNo Linux/macOS:
python -m venv venv
source venv/bin/activate-
Copie o arquivo de exemplo:
cp .env.example .env
-
Edite o arquivo
.enve configure sua chave da API do Google:GOOGLE_API_KEY=sua_chave_aqui
💡 Dica: Para obter sua chave da API do Google Gemini, acesse Google AI Studio
pip install -r requirements.txtPara testar se tudo está funcionando corretamente, execute o chat básico:
python exemplos/chat-basic.pyVocê também pode explorar outros exemplos disponíveis na pasta exemplos/:
vector-store-basic.py- Exemplo básico de banco de vetorespdf-document-loader.py- Carregamento de documentos PDFtool-basic.py- Exemplo de ferramenta básica- E muitos outros!
Após explorar os exemplos, implemente um chatbot que combine pelo menos uma tool (ferramenta) e um vector store (banco de vetores). O objetivo é criar um agente inteligente que possa:
- Responder perguntas usando conhecimento armazenado em um banco de vetores
- Executar ações através de ferramentas personalizadas
- Integrar ambas as funcionalidades de forma harmoniosa
- Modelo: Utilizar o modelo Gemini para geração de respostas
- Vector Store: Implementar um banco de vetores usando FAISS para armazenar e recuperar informações
- Tool: Criar pelo menos uma ferramenta customizada que o agente possa utilizar
- Interface (Opcional): Utilizar a interface já desenvolvida com Streamlit para conectar o chatbot.
O desafio deve ser executável em uma das de duas formas:
streamlit run app.pypython desafio/chatbot.py- Explore os exemplos na pasta
exemplos/para entender como implementar tools e vector stores - Use o arquivo
app.pycomo base para a interface Streamlit - Implemente sua lógica principal no arquivo
desafio/chatbot.py - Teste diferentes combinações de ferramentas e tipos de documentos
Gabriel Alencar Gomes |
Josiana Silva |
Rosemelry Mendes |