Projeto acadêmico de um chatbot de terminal em Python que usa IA local (Ollama) para responder perguntas sobre um negócio específico (confeitaria).
Fluxo simples, até 3 perguntas ao assistente e resumo final do que foi respondido.
Objetivo:
Construir individualmente, em Python, um chatbot que:
- Faça uso de IA para responder questões elaboradas pelo usuário;
- Forneça, no contexto do chatbot, o conhecimento sobre uma área de negócio específica;
- Permita ao usuário três perguntas sobre esse contexto;
- Ao final das três perguntas, gere para o usuário um resumo de tudo o que foi respondido.
Como este projeto atende:
- IA via Ollama com modelo customizado (
casal_do_pote) definido por Modelfile. - Contexto de negócio: confeitaria “Casal do Pote” (cardápio, preços, entrega, etc.).
- Fluxo de perguntas: usuário faz até 3 perguntas (Opção 2).
- Ao final, o chatbot imprime um resumo (pergunta + resposta).
- Menu inicial (CLI)
- Sobre a confeitaria
- Fazer uma pergunta (IA via Ollama, até 3 perguntas, com resumo final)
- Fazer um pedido (até 3 itens, com resumo do pedido)
- IA Local: respostas curtas, dentro do contexto do negócio (regras no Modelfile).
-
Baixe o projeto
- No GitHub, clique em Code → Download ZIP e extraia a pasta.
-
Pré-requisitos
- Python 3.10+ e pip
- Ollama instalado e rodando → https://ollama.com
-
Crie e ative o ambiente virtual (venv)
- Windows (PowerShell)
python -m venv .venv .\.venv\Scripts\Activate.ps1 - macOS/Linux
python -m venv .venv source .venv/bin/activate
- Windows (PowerShell)
-
Instale as dependências
pip install requests
-
Crie o modelo de IA no Ollama
ollama pull phi3:3.8b ollama create casal_do_pote -f Modelfile # teste rápido: ollama run casal_do_pote "Quais sabores de bolo de pote vocês têm?"
-
Execute o Chatbot
python casal_do_pote_bot.py
O projeto usa o modelo casal_do_pote (base phi3:3.8b) porque é leve e roda bem localmente. Então se quiser respostas mais precisas use um modelo mais pesado no Ollama (ex.: llama3.1:8b-instruct, mistral-nemo:12b), apenas troque o FROM no Modelfile e recrie o modelo:
ollama rm casal_do_pote
ollama create casal_do_pote -f ModelfilePython
Ollama (IA local) + Modelfile
Requests (HTTP para conversar com o Ollama)
