Skip to content

CHANGELOG

Ysrael edited this page May 10, 2026 · 1 revision

Changelog

Todas as mudanças notáveis neste projeto serão documentadas neste arquivo.

O formato é baseado em Keep a Changelog, e este projeto adere ao Semantic Versioning.

[3.1.0] - 2026-04-22

Adicionado

  • 🤗 Catálogo de modelos HuggingFace open-source — 28 modelos curados com metadados completos (id, name, category, context, tool_calling, streaming, notes)
    • 19 modelos general: Mistral, Mixtral, Llama 3/3.1/3.2, Qwen 2.5, Phi-3/3.5, Gemma 2
    • 4 modelos code: StarCoder2 15B, Qwen 2.5 Coder 7B/32B, DeepSeek Coder 33B
    • 2 modelos reasoning: DeepSeek R1 Distill Qwen 7B e Llama 70B
    • 3 modelos embedding: BGE-M3, all-MiniLM-L6-v2, Multilingual E5 Large
  • 🔍 list_huggingface_models(category=None) — função pública para listar/filtrar modelos por categoria
  • 📦 HF_OPEN_MODELS — constante exportada no topo do pacote (from mangaba import HF_OPEN_MODELS)
  • 🔧 HuggingFaceLLMProvider.list_models(category=None) — classmethod no provider para acesso direto
  • 📚 Documentação de padrões de projeto — seção no README mapeando todos os padrões GoF usados no framework
  • 🔄 Modelo padrão HuggingFace atualizado para mistralai/Mistral-7B-Instruct-v0.3

Alterado

  • mangaba/core/llm/__init__.py — exporta list_huggingface_models e HF_OPEN_MODELS
  • mangaba/__init__.py — exporta list_huggingface_models e HF_OPEN_MODELS no topo do pacote
  • HuggingFaceLLMProvider migrado de text_generation (API legada) para chat_completion (OpenAI-compatible):
    • generate() — usa chat_completion com suporte a system_prompt e TokenUsage
    • stream() — streaming real token a token via chat_completion(stream=True)
    • generate_with_tools() — injeção de tools via system message no formato chat

Corrigido

  • Streaming HuggingFace não funcionava com modelos de instrução modernos (Llama 3, Mistral v0.3, Qwen 2.5) porque usava text_generation em vez de chat_completion

[3.1.1] - 2026-04-22

Adicionado

  • Tool calling nativo para 11 modelos HuggingFace — detecção automática: usa chat_completion(tools=[...]) para modelos que suportam; cai em prompt injection como fallback para os demais
    • Nativo: Mistral 7B/Mixtral 8x7B/8x22B/Nemo, Llama 3.1 8B/70B/405B, Qwen 2.5 7B/72B, Qwen 2.5 Coder 7B/32B
    • Prompt-based: Llama 3.0, Llama 3.2, Gemma 2, Phi-3, StarCoder2, DeepSeek Coder, DeepSeek R1
  • hf_model_supports_tools(model_id) — função pública para verificar suporte nativo por model ID
  • _HF_NATIVE_TOOL_MODELS — índice interno de modelos com function calling nativo
  • Campo tool_calling corrigido no catálogo HF_OPEN_MODELS (era False para todos; agora reflete suporte real)

Alterado

  • HuggingFaceLLMProvider.generate_with_tools() — lógica de despacho: nativo quando possível, prompt injection como fallback
  • mangaba/core/llm/__init__.py e mangaba/__init__.py — exportam hf_model_supports_tools

[2.0.4] - 2026-02-13

Corrigido

  • 🔗 URLs do GitHub agora usam branch correto: /blob/master/ em vez de /blob/main/
  • ✅ Todos os links da documentação funcionam corretamente no GitHub e PyPI
  • 🌐 Branches desnecessários removidos (main e copilot)
  • 📚 Mantido apenas branch master como padrão

Garantido

  • ✓ Links para WIKI.md funcionam
  • ✓ Links para README.md (índice) funcionam
  • ✓ Links para todos os arquivos de documentação funcionam
  • ✓ URLs corretas: github.com/Mangaba-ai/mangaba_ai/blob/master/

[2.0.3] - 2026-02-13

Corrigido

  • 🔗 URLs do GitHub corrigidas no README.md
  • ✅ Nome correto do repositório: Mangaba-ai/mangaba_ai (em vez de mangaba-ai/mangaba-ai)
  • 🌐 Todos os links da documentação agora funcionam corretamente

[2.0.2] - 2026-02-13

Corrigido

  • 🔗 Conversão de todos os links relativos para URLs absolutas do GitHub no README.md
  • ✅ Links agora funcionam corretamente tanto no GitHub quanto no PyPI
  • 📚 Links para documentação (WIKI.md, CURSO_BASICO.md, FAQ.md, etc.)
  • 📁 Links para arquivos (ESTRUTURA.md, docs/README.md)
  • 🔧 Links para scripts (validate_env.py, quick_setup.py, etc.)
  • 📋 Link "ÍNDICE COMPLETO" corrigido para apontar para docs/README.md

Melhorado

[1.0.2] - 2025-11-16

Adicionado

  • Instruções oficiais para instalar o pacote direto do PyPI usando pip ou uv.

Corrigido

  • Publicação do módulo mangaba_ai como pacote raiz (agora pip install mangaba expõe MangabaAgent corretamente).
  • Versão alinhada entre pyproject.toml, setup.py e __version__.

[1.0.0] - 2024-12-19

Adicionado

  • Agente de IA básico com funcionalidades essenciais
  • Sistema de configuração automática via arquivo .env
  • Logger colorido e configurável
  • Métodos principais:
    • chat() - Chat básico
    • chat_with_context() - Chat com contexto específico
    • analyze_text() - Análise de texto
    • translate() - Tradução de textos
    • summarize() - Resumo de textos
    • code_review() - Revisão de código
    • explain_code() - Explicação de código
  • Exemplo básico completo
  • Documentação detalhada no README
  • Configuração de projeto Python com setup.py
  • Testes básicos de funcionamento
  • Licença MIT
  • .gitignore configurado

Características

  • Configuração mínima necessária (apenas API key)
  • Interface simples e intuitiva
  • Logs informativos e coloridos
  • Tratamento de erros robusto
  • Documentação em português
  • Exemplos práticos de uso

Dependências

  • google-generativeai >= 0.3.0
  • python-dotenv >= 0.19.0
  • loguru >= 0.6.0

Estrutura do Projeto

mangaba_ai/
├── README.md
├── requirements.txt
├── .env.example
├── .gitignore
├── LICENSE
├── setup.py
├── __init__.py
├── config.py
├── gemini_agent.py
├── test_basic.py
├── examples/
│   └── basic_example.py
└── utils/
    ├── __init__.py
    └── logger.py

Clone this wiki locally