Baixe o aplicativo
Escolha uma pasta e peça ao assistente que leia os arquivos relevantes antes de editá-los. Defina o objetivo e os limites da tarefa.
Agregue até 1000 valores logarítmicos de menos 1e300 até 1e300 subtraindo o máximo antes da exponenciação. Teste entrada vazia, valores grandes repetidos e muito negativos, retornando infinito negativo apenas para entrada vazia e rejeitando itens booleanos, não finitos ou fora da faixa.
Escolha uma pasta e peça ao assistente que leia os arquivos relevantes antes de editá-los. Defina o objetivo e os limites da tarefa.
Escolha um endpoint compatível. As ferramentas disponíveis e a qualidade das respostas dependem do modelo e do servidor configurados.
Confira as alterações e a saída dos comandos. Execute as verificações do projeto antes de aceitar o resultado; código gerado não vem automaticamente testado.
Compare o comportamento real com o resultado esperado. Se uma verificação falhar, investigue a causa antes de fazer outras alterações.
from math import exp, fsum, log, inf
def log_sum_exp(values):
if type(values) not in (list, tuple) or len(values) > 1000:
raise ValueError("values.container")
values = tuple(values)
if len(values) > 1000 or any(
type(v) not in (int, float) or not -1e300 <= v <= 1e300 for v in values
):
raise ValueError("values.range")
if not values:
return -inf
peak = max(values)
return peak + log(fsum(exp(v - peak) for v in values))Revise antes de aplicar. Confira as alterações e a saída dos comandos. Execute as verificações do projeto antes de aceitar o resultado; código gerado não vem automaticamente testado.