Skip to content

DimitriSchulzAmado/Flet-AI-ChatBot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Flet AI

Python Flet 0.28.3 LangChain-Groq 1.0.0 Python-Decouple 3.8

Aplicação de chatbot desenvolvida com Flet e integração com LLM via LangChain e Groq API. O assistente é especializado em tirar dúvidas sobre Python.

🏗️ Arquitetura

O projeto segue uma arquitetura modular simples:

  • main.py: Ponto de entrada da aplicação, gerencia a interface e fluxo de conversa
  • ai.py: Classe AIBot responsável pela comunicação com o LLM (padrão Facade)
  • components.py: Componentes reutilizáveis da UI (Message, ChatMessage)

Padrões de Projeto

  • Facade Pattern: A classe AIBot encapsula a complexidade da integração com LangChain
  • Component Pattern: Componentes Flet customizados para mensagens de chat
  • Session Management: Uso de sessões do Flet para manter histórico de conversas

📋 Pré-requisitos

  • Python >= 3.9
  • Conta na Groq para obter API Key

⚙️ Configuração

1. Clone o repositório

git clone https://github.com/DimitriSchulzAmado/Flet-AI-ChatBot.git
cd Flet-AI-ChatBot

2. Instale as dependências

pip install -r requirements.txt

3. Configure as variáveis de ambiente

Crie um arquivo .env na raiz do projeto:

GROQ_API_KEY=your_groq_api_key_here

4. Execute a aplicação

flet run

📁 Estrutura do Projeto

Flet-AI-ChatBot/
├── src/
│   ├── main.py          # Aplicação principal
│   ├── ai.py            # Integração com LLM
│   └── components.py    # Componentes UI
├── storage/
│   ├── data/            # Armazenamento persistente
│   └── temp/            # Arquivos temporários
├── pyproject.toml       # Configuração do projeto
├── requirements.txt     # Dependências Python
└── README.md

🚀 Funcionalidades

  • Chat interativo com interface gráfica
  • Histórico de conversas por sessão
  • Respostas formatadas em Markdown
  • Integração com modelo Llama 3.3 70B via Groq
  • Interface responsiva e intuitiva

📝 Notas

  • O assistente utiliza o modelo llama-3.3-70b-versatile da Groq
  • As mensagens são renderizadas com suporte a Markdown
  • O histórico de mensagens é mantido durante a sessão ativa app

Run the app

uv

Run as a desktop app:

uv run flet run

Run as a web app:

uv run flet run --web

Poetry

Install dependencies from pyproject.toml:

poetry install

Run as a desktop app:

poetry run flet run

Run as a web app:

poetry run flet run --web

For more details on running the app, refer to the Getting Started Guide.

Build the app

Android

flet build apk -v

For more details on building and signing .apk or .aab, refer to the Android Packaging Guide.

iOS

flet build ipa -v

For more details on building and signing .ipa, refer to the iOS Packaging Guide.

macOS

flet build macos -v

For more details on building macOS package, refer to the macOS Packaging Guide.

Linux

flet build linux -v

For more details on building Linux package, refer to the Linux Packaging Guide.

Windows

flet build windows -v

For more details on building Windows package, refer to the Windows Packaging Guide.

About

Chat de conversa com IA (Similar ao ChatGPT)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages