Skip to main content

Biblioteca para rastreamento e auditoria de custos de APIs de IA

Project description

IA Cost Tracker

PyPI version Python Versions License: MIT Downloads

Rastreie custos de APIs de IA (Maritaca, Anthropic) automaticamente.

Biblioteca Python para rastreamento e auditoria de custos de APIs de IA (Maritaca, Anthropic).

Instalação

pip install ia-cost-tracker

Uso básico (não recomendado pois demora mais por causa que busca os valores atualizados na hora!):

from ia_cost_tracker import IATracker

# Inicializar
tracker = IATracker(
    db_connection_string="postgresql://user:pass@localhost/db",
    maritaca_api_key="sua-chave",
    anthropic_api_key="sua-chave"
)

# Sincronizar preços dos modelos
tracker.sincronizar_precos_maritaca() #essa chamada a api demora uns 10segs as vezes.
tracker.sincronizar_precos_anthropic()

# Registrar uma chamada
tracker.registrar_chamada(
    provedor="maritaca",
    modelo="sabia-2-medium",
    tokens_input=150,
    tokens_output=75,
    aplicacao="meu-app",
    tag_funcionalidade="chat",
    usuario="usuario@email.com"
)

# Obter estatísticas
stats = tracker.obter_estatisticas_aplicacao("meu-app")
print(f"Custo total: R$ {stats['custo_total']}")
print(f"Total de chamadas: {stats['total_chamadas']}")

Exemplo de uso em uma aplicação em produção:

from ia_cost_tracker import IATracker

tracker = IATracker(db_connection_string=os.getenv("DB_CONNECTION_STRING"))

# Após chamar a IA
tracker.registrar_chamada(
    provedor="maritaca",  # ou "anthropic"
    modelo="sabia-4",
    tokens_input=150,
    tokens_output=75,
    aplicacao="meu-app",
    tag_funcionalidade="chat",
    usuario="user@email.com"  # opcional
)

Desenvolvimento:

# Clonar repositório
git clone https://github.com/suaempresa/ia-cost-tracker
cd ia-cost-tracker

# Instalar em modo desenvolvimento
pip install -e ".[dev]"

# Rodar testes
pytest

# Formatar código
black src/
isort src/

Consultar Custos:

from datetime import datetime, timedelta

# Últimos 7 dias
data_inicio = datetime.now() - timedelta(days=7)
stats = tracker.obter_estatisticas_aplicacao(
    aplicacao="meu-app",
    data_inicio=data_inicio
)

# Listar modelos disponíveis
modelos = tracker.listar_modelos(provedor="maritaca")
for modelo in modelos:
    print(f"{modelo.nome_modelo}: "
          f"R$ {modelo.custo_input_por_1k}/1k input, "
          f"R$ {modelo.custo_output_por_1k}/1k output")

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

ia_cost_tracker-0.1.0-py3-none-any.whl (15.4 kB view details)

Uploaded Python 3

File details

Details for the file ia_cost_tracker-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for ia_cost_tracker-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 02e8e4b971548ab2566c83f572b47ae50d469d8975ed61fd4dc9984a40ea65c7
MD5 9b74954d6b0d15a90a5ac8ea8bf46e4d
BLAKE2b-256 a98e9bbe6aeaa66764a6bf5ac2860f8d630d2908eb6f4a30df241712d036495f

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