Skip to content

luanyata/ia-lab

Repository files navigation

🧪 IA-Lab: Laboratório de Inteligência Artificial com Bun & Ollama

Bem-vindo ao IA-Lab, um projeto experimental para explorar as capacidades dos modelos de linguagem locais (LLMs) utilizando o ecossistema Bun e o Ollama.

Este laboratório evolui de um simples script de chat até um assistente multimodal completo integrado ao Telegram.


🚀 Tecnologias Utilizadas

  • Bun: Runtime JavaScript focado em performance (servidor, gerenciamento de pacotes e testes).
  • Ollama: Orquestrador de LLMs locais.
  • Gemma 4 E2B: Modelo multimodal (Texto/Visão/Áudio) da Google.
  • Whisper: Modelo oficial da OpenAI para transcrição de áudio (Speech-to-Text).
  • Grammy: Framework para criação de bots de Telegram.
  • SQLite: Banco de dados local para persistência de memória.
  • TypeScript: Desenvolvimento com tipagem forte.

📈 Trilha de Evolução

Etapa Funcionalidade Descrição
01-08 Fundação & Web Setup, Streams, Contexto, SQLite, API REST e Interface Web.
09 Integração Telegram Bot para interação em grupos e chats privados via Grammy.
10 Visão Multimodal Upgrade para Gemma 4 E2B, permitindo que o bot "veja" e analise fotos.
11 Comandos de Voz Integração do Whisper Oficial via ambiente isolado para transcrição de áudio.

🛠️ Como Executar

1. Configuração do Telegram

Crie um arquivo .env na raiz do projeto:

TELEGRAM_TOKEN=seu_token_aqui

2. Pré-requisitos

Certifique-se de ter o Bun, Ollama, FFmpeg e Python 3 instalados.

# Modelos Ollama
ollama pull gemma4:e2b

# Ambiente Isolado Python (para o Whisper)
python3 -m venv .venv
./.venv/bin/pip install openai-whisper

# Dependências de sistema (Mac)
brew install ffmpeg

3. Instalação & Execução

bun install
bun run index.ts

🤖 Funcionalidades do Bot

O bot agora é um assistente completo:

🎤 Voz (Speech-to-Text)

O bot utiliza o modelo Whisper small rodando localmente para garantir alta precisão em Português.

  • O processamento é feito em um ambiente Python isolado (.venv).
  • Suporta áudios do Telegram (OGG/Opus) convertidos via FFmpeg.

📸 Visão (Computer Vision)

Graças ao Gemma 4 E2B, o bot pode:

  • Descrever o que vê em uma imagem.
  • Responder perguntas sobre o conteúdo visual.
  • Ler textos e identificar objetos.

🧠 Memória Persistente

Todas as conversas (texto, transcrição de áudio e análise de imagem) são salvas no banco ia.sqlite, permitindo que o bot lembre do contexto anterior.


🛡️ Notas de Desenvolvimento

  • Isolamento: O ambiente Python (.venv) e os arquivos temporários de áudio são ignorados pelo Git para manter o repositório leve.
  • Performance: Usamos o modelo Whisper small por padrão para equilibrar velocidade e precisão no Mac.
  • Privacidade: Todo o processamento de IA (Texto, Imagem e Voz) ocorre localmente na sua máquina.

Feito com ❤️ no IA-Lab.

About

Este repositório é um laboratório prático (Step-by-Step) focado na integração de Inteligência Artificial em aplicações modernas. O objetivo é explorar desde a conexão básica com modelos locais até a implementação de sistemas complexos com memória, streaming e gerenciamento dinâmico de contexto.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors