Skip to main content

Biblioteca de Inteligência Artificial para Novos Componentes e Aplicações

Project description

BIANCA - Biblioteca de Inteligência Artificial para Novos Componentes e Aplicações

Python Version License: MIT PyPI version

BIANCA é uma biblioteca Python que facilita o trabalho com modelos de IA da OpenAI, oferecendo funcionalidades para cálculo de tokens, comparação de custos e configurações centralizadas.

🚀 Características Principais

  • Cálculo Preciso de Tokens: Contagem de tokens para diferentes modelos usando tiktoken
  • Comparação de Custos: Análise detalhada de custos entre modelos
  • Configurações Centralizadas: Gerenciamento unificado de parâmetros de IA
  • Modelos Atualizados: Suporte aos modelos mais recentes da OpenAI
  • Fácil Integração: API simples e intuitiva

📦 Instalação

Instalação via pip (recomendado)

pip install bianca-ai

Instalação do código fonte

git clone https://github.com/your-username/bianca-ai.git
cd bianca-ai
pip install -e .

Instalação com dependências extras

# Para desenvolvimento
pip install bianca-ai[dev]

# Para funcionalidades de áudio
pip install bianca-ai[audio]

# Todas as dependências
pip install bianca-ai[all]

🎯 Uso Rápido

Exemplo Básico

from bianca import CalculadoraTokens, obter_parametros

# Criar calculadora
calc = CalculadoraTokens()

# Calcular custo de um texto
texto = "Analise este produto e categorize-o"
custo_info = calc.calcular_custo_completo(texto, 'gpt-4o', 100)
print(f"Custo total: ${custo_info['custo_total']:.6f}")

# Comparar modelos
modelo_barato, custo = calc.encontrar_modelo_mais_economico(
    texto, ['gpt-4o', 'gpt-4o-mini', 'gpt-3.5-turbo'], 100
)
print(f"Modelo mais econômico: {modelo_barato}")

Comparação de Modelos

from bianca import CalculadoraTokens

calc = CalculadoraTokens()

# Comparar custos entre modelos
texto = "Você é um assistente de IA especializado em análise de dados."
calc.mostrar_comparacao_detalhada(texto, ['gpt-4o', 'gpt-4o-mini'])

Configurações

from bianca import obter_parametros

# Obter configurações
params = obter_parametros()
modelos = params.listar_modelos_disponiveis()
print(f"Modelos disponíveis: {modelos}")

# Obter configuração específica
config = params.obter_modelo('gpt-4o')
print(f"Preço GPT-4o: ${config.preco_entrada_por_1k_tokens}/1k tokens")

📚 Modelos Suportados

Modelos GPT-4

  • gpt-4: Modelo original GPT-4
  • gpt-4-turbo: Versão turbo com contexto expandido
  • gpt-4o: Modelo otimizado mais recente
  • gpt-4o-mini: Versão mini extremamente econômica

Modelos o1 (Raciocínio)

  • o1-preview: Para raciocínio complexo
  • o1-mini: Versão mais econômica para raciocínio

Modelos GPT-3.5

  • gpt-3.5-turbo: Modelo econômico geral
  • gpt-3.5-turbo-1106: Versão com melhorias
  • gpt-3.5-turbo-0125: Versão mais recente

Modelos Especializados

  • text-embedding-3-small: Embeddings pequenos
  • text-embedding-3-large: Embeddings grandes
  • text-moderation-latest: Moderação de conteúdo

🔧 Configuração

Variáveis de Ambiente

Crie um arquivo .env na raiz do seu projeto:

OPENAI_API_KEY=sk-your-api-key-here

Configuração Programática

from bianca import ParametrosIA

# Criar instância personalizada
params = ParametrosIA()
params.definir_temperatura_padrao(0.5)
params.definir_max_tokens_padrao(2000)

📖 API Reference

CalculadoraTokens

calcular_custo(modelo, tokens_entrada, tokens_saida=0)

Calcula o custo total para um modelo específico.

contar_tokens(texto, modelo)

Conta o número de tokens em um texto.

verificar_limite_tokens(modelo, tokens_entrada, tokens_saida=0)

Verifica se o número de tokens está dentro do limite do modelo.

comparar_modelos(texto, modelos, tokens_resposta=100)

Compara custos entre múltiplos modelos.

encontrar_modelo_mais_economico(texto, modelos, tokens_resposta=100)

Encontra o modelo mais econômico para um texto específico.

ParametrosIA

listar_modelos_disponiveis()

Retorna lista de todos os modelos disponíveis.

obter_modelo(nome_modelo)

Retorna configuração de um modelo específico.

obter_configuracao_completa(nome_modelo)

Retorna configuração completa incluindo metadados.

🧪 Testes

# Executar testes
pytest

# Com cobertura
pytest --cov=bianca

# Testes específicos
pytest tests/test_calcular_tokens.py

🛠️ Desenvolvimento

Configurar Ambiente de Desenvolvimento

# Clonar repositório
git clone https://github.com/your-username/bianca-ai.git
cd bianca-ai

# Criar ambiente virtual
python -m venv venv
source venv/bin/activate  # Linux/Mac
# ou
venv\Scripts\activate     # Windows

# Instalar dependências de desenvolvimento
pip install -e .[dev]

Estrutura do Projeto

bianca-ai/
├── bianca/                 # Módulo principal
│   ├── __init__.py        # Inicialização do módulo
│   ├── parametros.py      # Configurações e parâmetros
│   ├── calcular_tokens.py # Cálculo de tokens e custos
│   ├── modelo.py          # Classes de modelos
│   └── converter_audio_texto.py  # Conversão de áudio
├── tests/                 # Testes
├── docs/                  # Documentação
├── examples/              # Exemplos de uso
├── setup.py               # Configuração de instalação
├── pyproject.toml         # Configuração moderna
├── requirements.txt       # Dependências
└── README.md             # Este arquivo

Contribuindo

  1. Fork o projeto
  2. Crie uma branch para sua feature (git checkout -b feature/AmazingFeature)
  3. Commit suas mudanças (git commit -m 'Add some AmazingFeature')
  4. Push para a branch (git push origin feature/AmazingFeature)
  5. Abra um Pull Request

📄 Licença

Este projeto está licenciado sob a Licença MIT - veja o arquivo LICENSE para detalhes.

🤝 Suporte

🙏 Agradecimentos

  • OpenAI pela API e modelos
  • Comunidade Python pelos recursos e bibliotecas
  • Contribuidores do projeto

📊 Estatísticas

  • Versão Atual: 1.0.0
  • Python: 3.8+
  • Modelos Suportados: 12
  • Dependências: 3 principais

BIANCA - Simplificando o trabalho com IA! 🚀

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bianca_ai-1.0.0.tar.gz (16.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bianca_ai-1.0.0-py3-none-any.whl (14.8 kB view details)

Uploaded Python 3

File details

Details for the file bianca_ai-1.0.0.tar.gz.

File metadata

  • Download URL: bianca_ai-1.0.0.tar.gz
  • Upload date:
  • Size: 16.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for bianca_ai-1.0.0.tar.gz
Algorithm Hash digest
SHA256 7ab6e39a697ff8e1b1d58b296c7c3d0672e7e5850c2cb743335240729bbd1853
MD5 91bcbc7051228d90def7f54c1fc50cc6
BLAKE2b-256 bb4de068aa16f093595b968d96f69dd0b424d5e19900c064fb4ab7e6cdd27f53

See more details on using hashes here.

File details

Details for the file bianca_ai-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: bianca_ai-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 14.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for bianca_ai-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f2e2eadf243a99ea72bde2fadd71feb537ed5e10b9cc98c5049d1f50c78d820c
MD5 2d878e459fb902eff52fa7f32e20ae70
BLAKE2b-256 571cd12e60457aa0c5aecf9ff07f5888ba900257d898efe1dbe2bce209f20952

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page