OptimAI é um módulo Python poderoso projetado para otimizar seu código analisando seu desempenho e fornecendo sugestões práticas. Ele aproveita um modelo de linguagem grande (LLM) para fornecer insights e recomendações detalhadas com base nos dados de criação de perfil coletados durante a execução do seu código. Este módulo suporta vários tipos de criadores de perfil do pacote perfwatch.
Você pode instalar o OptimAI usando pip:
pip install optimizeai
Para usar o OptimAI, você precisa configurá-lo com seu provedor LLM preferido e chave de API. Os provedores de LLM suportados incluem Google (modelos Gemini), OpenAI, Ollama, HuggingFace e Anthropic. Para o Ollama você precisa ter o Ollama instalado e os artefatos do modelo também precisam ser baixados previamente.
Selecione o provedor LLM :
llm = "google"
llm = "openai"
llm = "huggingface"
llm = "anthropic"
llm = "ollama"
Escolha o modelo :
model = "gpt-4"
, model = "gemini-1.5-flash"
, model = "codegemma"
ou qualquer outro modelo específico para o provedor LLM escolhido.Defina a chave API :
Aqui está um exemplo básico que demonstra como usar o OptimAI para otimizar uma função:
from optimizeai . decorators . optimize import optimize
from optimizeai . config import Config
from dotenv import load_dotenv
import time
import os
# Load environment variables
load_dotenv ()
llm = os . getenv ( "LLM" )
key = os . getenv ( "API_KEY" )
model = os . getenv ( "MODEL" )
# Configure LLM
llm_config = Config ( llm = llm , model = model , key = key )
perfwatch_params = [ "line" , "cpu" , "time" ]
# Define a test function to be optimized
@ optimize ( config = llm_config , profiler_types = perfwatch_params )
def test ():
for _ in range ( 10 ):
time . sleep ( 0.1 )
print ( "Hello World!" )
pass
if __name__ == "__main__" :
test ()
Você pode definir as variáveis de ambiente ( LLM
, API_KEY
, MODEL
) em um arquivo .env
para facilitar o uso:
LLM=google
API_KEY=your_google_api_key
MODEL=gemini-1.5-flash
Aceitamos contribuições para OptimAI! Se você tiver uma ideia para um novo recurso ou encontrou um bug, abra um problema no GitHub. Se você quiser contribuir com código, bifurque o repositório e envie uma solicitação pull.
git checkout -b feature-branch
).git commit -m 'Add new feature'
).git push origin feature-branch
).OptimAI é licenciado sob a licença MIT. Consulte o arquivo LICENSE para obter mais detalhes.