bianca-ai


Namebianca-ai JSON
Version 1.0.0 PyPI version JSON
download
home_pageNone
SummaryBiblioteca de Inteligência Artificial para Novos Componentes e Aplicações
upload_time2025-10-26 18:04:57
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseNone
keywords ai artificial-intelligence openai gpt tokens cost-calculation machine-learning nlp natural-language-processing
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # BIANCA - Biblioteca de Inteligência Artificial para Novos Componentes e Aplicações

[![Python Version](https://img.shields.io/badge/python-3.8+-blue.svg)](https://python.org)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![PyPI version](https://badge.fury.io/py/bianca-ai.svg)](https://badge.fury.io/py/bianca-ai)

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)

```bash
pip install bianca-ai
```

### Instalação do código fonte

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

### Instalação com dependências extras

```bash
# 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

```python
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

```python
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

```python
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:

```env
OPENAI_API_KEY=sk-your-api-key-here
```

### Configuração Programática

```python
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

```bash
# Executar testes
pytest

# Com cobertura
pytest --cov=bianca

# Testes específicos
pytest tests/test_calcular_tokens.py
```

## 🛠️ Desenvolvimento

### Configurar Ambiente de Desenvolvimento

```bash
# 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](LICENSE) para detalhes.

## 🤝 Suporte

- **Issues**: [GitHub Issues](https://github.com/your-username/bianca-ai/issues)
- **Documentação**: [Wiki](https://github.com/your-username/bianca-ai/wiki)
- **Email**: bianca@example.com

## 🙏 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! 🚀

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "bianca-ai",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "ai, artificial-intelligence, openai, gpt, tokens, cost-calculation, machine-learning, nlp, natural-language-processing",
    "author": null,
    "author_email": "BIANCA Team <bianca@example.com>",
    "download_url": "https://files.pythonhosted.org/packages/bb/4d/e068aa16f093595b968d96f69dd0b424d5e19900c064fb4ab7e6cdd27f53/bianca_ai-1.0.0.tar.gz",
    "platform": null,
    "description": "# BIANCA - Biblioteca de Intelig\u00eancia Artificial para Novos Componentes e Aplica\u00e7\u00f5es\r\n\r\n[![Python Version](https://img.shields.io/badge/python-3.8+-blue.svg)](https://python.org)\r\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\r\n[![PyPI version](https://badge.fury.io/py/bianca-ai.svg)](https://badge.fury.io/py/bianca-ai)\r\n\r\nBIANCA \u00e9 uma biblioteca Python que facilita o trabalho com modelos de IA da OpenAI, oferecendo funcionalidades para c\u00e1lculo de tokens, compara\u00e7\u00e3o de custos e configura\u00e7\u00f5es centralizadas.\r\n\r\n## \ud83d\ude80 Caracter\u00edsticas Principais\r\n\r\n- **C\u00e1lculo Preciso de Tokens**: Contagem de tokens para diferentes modelos usando tiktoken\r\n- **Compara\u00e7\u00e3o de Custos**: An\u00e1lise detalhada de custos entre modelos\r\n- **Configura\u00e7\u00f5es Centralizadas**: Gerenciamento unificado de par\u00e2metros de IA\r\n- **Modelos Atualizados**: Suporte aos modelos mais recentes da OpenAI\r\n- **F\u00e1cil Integra\u00e7\u00e3o**: API simples e intuitiva\r\n\r\n## \ud83d\udce6 Instala\u00e7\u00e3o\r\n\r\n### Instala\u00e7\u00e3o via pip (recomendado)\r\n\r\n```bash\r\npip install bianca-ai\r\n```\r\n\r\n### Instala\u00e7\u00e3o do c\u00f3digo fonte\r\n\r\n```bash\r\ngit clone https://github.com/your-username/bianca-ai.git\r\ncd bianca-ai\r\npip install -e .\r\n```\r\n\r\n### Instala\u00e7\u00e3o com depend\u00eancias extras\r\n\r\n```bash\r\n# Para desenvolvimento\r\npip install bianca-ai[dev]\r\n\r\n# Para funcionalidades de \u00e1udio\r\npip install bianca-ai[audio]\r\n\r\n# Todas as depend\u00eancias\r\npip install bianca-ai[all]\r\n```\r\n\r\n## \ud83c\udfaf Uso R\u00e1pido\r\n\r\n### Exemplo B\u00e1sico\r\n\r\n```python\r\nfrom bianca import CalculadoraTokens, obter_parametros\r\n\r\n# Criar calculadora\r\ncalc = CalculadoraTokens()\r\n\r\n# Calcular custo de um texto\r\ntexto = \"Analise este produto e categorize-o\"\r\ncusto_info = calc.calcular_custo_completo(texto, 'gpt-4o', 100)\r\nprint(f\"Custo total: ${custo_info['custo_total']:.6f}\")\r\n\r\n# Comparar modelos\r\nmodelo_barato, custo = calc.encontrar_modelo_mais_economico(\r\n    texto, ['gpt-4o', 'gpt-4o-mini', 'gpt-3.5-turbo'], 100\r\n)\r\nprint(f\"Modelo mais econ\u00f4mico: {modelo_barato}\")\r\n```\r\n\r\n### Compara\u00e7\u00e3o de Modelos\r\n\r\n```python\r\nfrom bianca import CalculadoraTokens\r\n\r\ncalc = CalculadoraTokens()\r\n\r\n# Comparar custos entre modelos\r\ntexto = \"Voc\u00ea \u00e9 um assistente de IA especializado em an\u00e1lise de dados.\"\r\ncalc.mostrar_comparacao_detalhada(texto, ['gpt-4o', 'gpt-4o-mini'])\r\n```\r\n\r\n### Configura\u00e7\u00f5es\r\n\r\n```python\r\nfrom bianca import obter_parametros\r\n\r\n# Obter configura\u00e7\u00f5es\r\nparams = obter_parametros()\r\nmodelos = params.listar_modelos_disponiveis()\r\nprint(f\"Modelos dispon\u00edveis: {modelos}\")\r\n\r\n# Obter configura\u00e7\u00e3o espec\u00edfica\r\nconfig = params.obter_modelo('gpt-4o')\r\nprint(f\"Pre\u00e7o GPT-4o: ${config.preco_entrada_por_1k_tokens}/1k tokens\")\r\n```\r\n\r\n## \ud83d\udcda Modelos Suportados\r\n\r\n### Modelos GPT-4\r\n- `gpt-4`: Modelo original GPT-4\r\n- `gpt-4-turbo`: Vers\u00e3o turbo com contexto expandido\r\n- `gpt-4o`: Modelo otimizado mais recente\r\n- `gpt-4o-mini`: Vers\u00e3o mini extremamente econ\u00f4mica\r\n\r\n### Modelos o1 (Racioc\u00ednio)\r\n- `o1-preview`: Para racioc\u00ednio complexo\r\n- `o1-mini`: Vers\u00e3o mais econ\u00f4mica para racioc\u00ednio\r\n\r\n### Modelos GPT-3.5\r\n- `gpt-3.5-turbo`: Modelo econ\u00f4mico geral\r\n- `gpt-3.5-turbo-1106`: Vers\u00e3o com melhorias\r\n- `gpt-3.5-turbo-0125`: Vers\u00e3o mais recente\r\n\r\n### Modelos Especializados\r\n- `text-embedding-3-small`: Embeddings pequenos\r\n- `text-embedding-3-large`: Embeddings grandes\r\n- `text-moderation-latest`: Modera\u00e7\u00e3o de conte\u00fado\r\n\r\n## \ud83d\udd27 Configura\u00e7\u00e3o\r\n\r\n### Vari\u00e1veis de Ambiente\r\n\r\nCrie um arquivo `.env` na raiz do seu projeto:\r\n\r\n```env\r\nOPENAI_API_KEY=sk-your-api-key-here\r\n```\r\n\r\n### Configura\u00e7\u00e3o Program\u00e1tica\r\n\r\n```python\r\nfrom bianca import ParametrosIA\r\n\r\n# Criar inst\u00e2ncia personalizada\r\nparams = ParametrosIA()\r\nparams.definir_temperatura_padrao(0.5)\r\nparams.definir_max_tokens_padrao(2000)\r\n```\r\n\r\n## \ud83d\udcd6 API Reference\r\n\r\n### CalculadoraTokens\r\n\r\n#### `calcular_custo(modelo, tokens_entrada, tokens_saida=0)`\r\nCalcula o custo total para um modelo espec\u00edfico.\r\n\r\n#### `contar_tokens(texto, modelo)`\r\nConta o n\u00famero de tokens em um texto.\r\n\r\n#### `verificar_limite_tokens(modelo, tokens_entrada, tokens_saida=0)`\r\nVerifica se o n\u00famero de tokens est\u00e1 dentro do limite do modelo.\r\n\r\n#### `comparar_modelos(texto, modelos, tokens_resposta=100)`\r\nCompara custos entre m\u00faltiplos modelos.\r\n\r\n#### `encontrar_modelo_mais_economico(texto, modelos, tokens_resposta=100)`\r\nEncontra o modelo mais econ\u00f4mico para um texto espec\u00edfico.\r\n\r\n### ParametrosIA\r\n\r\n#### `listar_modelos_disponiveis()`\r\nRetorna lista de todos os modelos dispon\u00edveis.\r\n\r\n#### `obter_modelo(nome_modelo)`\r\nRetorna configura\u00e7\u00e3o de um modelo espec\u00edfico.\r\n\r\n#### `obter_configuracao_completa(nome_modelo)`\r\nRetorna configura\u00e7\u00e3o completa incluindo metadados.\r\n\r\n## \ud83e\uddea Testes\r\n\r\n```bash\r\n# Executar testes\r\npytest\r\n\r\n# Com cobertura\r\npytest --cov=bianca\r\n\r\n# Testes espec\u00edficos\r\npytest tests/test_calcular_tokens.py\r\n```\r\n\r\n## \ud83d\udee0\ufe0f Desenvolvimento\r\n\r\n### Configurar Ambiente de Desenvolvimento\r\n\r\n```bash\r\n# Clonar reposit\u00f3rio\r\ngit clone https://github.com/your-username/bianca-ai.git\r\ncd bianca-ai\r\n\r\n# Criar ambiente virtual\r\npython -m venv venv\r\nsource venv/bin/activate  # Linux/Mac\r\n# ou\r\nvenv\\Scripts\\activate     # Windows\r\n\r\n# Instalar depend\u00eancias de desenvolvimento\r\npip install -e .[dev]\r\n```\r\n\r\n### Estrutura do Projeto\r\n\r\n```\r\nbianca-ai/\r\n\u251c\u2500\u2500 bianca/                 # M\u00f3dulo principal\r\n\u2502   \u251c\u2500\u2500 __init__.py        # Inicializa\u00e7\u00e3o do m\u00f3dulo\r\n\u2502   \u251c\u2500\u2500 parametros.py      # Configura\u00e7\u00f5es e par\u00e2metros\r\n\u2502   \u251c\u2500\u2500 calcular_tokens.py # C\u00e1lculo de tokens e custos\r\n\u2502   \u251c\u2500\u2500 modelo.py          # Classes de modelos\r\n\u2502   \u2514\u2500\u2500 converter_audio_texto.py  # Convers\u00e3o de \u00e1udio\r\n\u251c\u2500\u2500 tests/                 # Testes\r\n\u251c\u2500\u2500 docs/                  # Documenta\u00e7\u00e3o\r\n\u251c\u2500\u2500 examples/              # Exemplos de uso\r\n\u251c\u2500\u2500 setup.py               # Configura\u00e7\u00e3o de instala\u00e7\u00e3o\r\n\u251c\u2500\u2500 pyproject.toml         # Configura\u00e7\u00e3o moderna\r\n\u251c\u2500\u2500 requirements.txt       # Depend\u00eancias\r\n\u2514\u2500\u2500 README.md             # Este arquivo\r\n```\r\n\r\n### Contribuindo\r\n\r\n1. Fork o projeto\r\n2. Crie uma branch para sua feature (`git checkout -b feature/AmazingFeature`)\r\n3. Commit suas mudan\u00e7as (`git commit -m 'Add some AmazingFeature'`)\r\n4. Push para a branch (`git push origin feature/AmazingFeature`)\r\n5. Abra um Pull Request\r\n\r\n## \ud83d\udcc4 Licen\u00e7a\r\n\r\nEste projeto est\u00e1 licenciado sob a Licen\u00e7a MIT - veja o arquivo [LICENSE](LICENSE) para detalhes.\r\n\r\n## \ud83e\udd1d Suporte\r\n\r\n- **Issues**: [GitHub Issues](https://github.com/your-username/bianca-ai/issues)\r\n- **Documenta\u00e7\u00e3o**: [Wiki](https://github.com/your-username/bianca-ai/wiki)\r\n- **Email**: bianca@example.com\r\n\r\n## \ud83d\ude4f Agradecimentos\r\n\r\n- OpenAI pela API e modelos\r\n- Comunidade Python pelos recursos e bibliotecas\r\n- Contribuidores do projeto\r\n\r\n## \ud83d\udcca Estat\u00edsticas\r\n\r\n- **Vers\u00e3o Atual**: 1.0.0\r\n- **Python**: 3.8+\r\n- **Modelos Suportados**: 12\r\n- **Depend\u00eancias**: 3 principais\r\n\r\n---\r\n\r\n**BIANCA** - Simplificando o trabalho com IA! \ud83d\ude80\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Biblioteca de Intelig\u00eancia Artificial para Novos Componentes e Aplica\u00e7\u00f5es",
    "version": "1.0.0",
    "project_urls": {
        "Documentation": "https://github.com/your-username/bianca-ai/wiki",
        "Homepage": "https://github.com/your-username/bianca-ai",
        "Issues": "https://github.com/your-username/bianca-ai/issues",
        "Repository": "https://github.com/your-username/bianca-ai.git"
    },
    "split_keywords": [
        "ai",
        " artificial-intelligence",
        " openai",
        " gpt",
        " tokens",
        " cost-calculation",
        " machine-learning",
        " nlp",
        " natural-language-processing"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "571cd12e60457aa0c5aecf9ff07f5888ba900257d898efe1dbe2bce209f20952",
                "md5": "2d878e459fb902eff52fa7f32e20ae70",
                "sha256": "f2e2eadf243a99ea72bde2fadd71feb537ed5e10b9cc98c5049d1f50c78d820c"
            },
            "downloads": -1,
            "filename": "bianca_ai-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "2d878e459fb902eff52fa7f32e20ae70",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 14784,
            "upload_time": "2025-10-26T18:04:56",
            "upload_time_iso_8601": "2025-10-26T18:04:56.373088Z",
            "url": "https://files.pythonhosted.org/packages/57/1c/d12e60457aa0c5aecf9ff07f5888ba900257d898efe1dbe2bce209f20952/bianca_ai-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "bb4de068aa16f093595b968d96f69dd0b424d5e19900c064fb4ab7e6cdd27f53",
                "md5": "91bcbc7051228d90def7f54c1fc50cc6",
                "sha256": "7ab6e39a697ff8e1b1d58b296c7c3d0672e7e5850c2cb743335240729bbd1853"
            },
            "downloads": -1,
            "filename": "bianca_ai-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "91bcbc7051228d90def7f54c1fc50cc6",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 16239,
            "upload_time": "2025-10-26T18:04:57",
            "upload_time_iso_8601": "2025-10-26T18:04:57.846299Z",
            "url": "https://files.pythonhosted.org/packages/bb/4d/e068aa16f093595b968d96f69dd0b424d5e19900c064fb4ab7e6cdd27f53/bianca_ai-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-26 18:04:57",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "your-username",
    "github_project": "bianca-ai",
    "github_not_found": true,
    "lcname": "bianca-ai"
}
        
Elapsed time: 1.54772s