Modelos
Configure um endpoint compatível com OpenAI ou Anthropic com a URL base e uma chave API, quando necessária. Teste a conexão. O servidor local precisa estar em execução; ferramentas remotas podem transmitir dados separadamente.
Calcule deslocamentos RGB24 e passos alinhados a quatro bytes para dimensões de 1 a 4096.
def bitmap_row_offset(width, height, row, top_down=False):
if any(type(v) is not int for v in (width, height, row)) or type(top_down) is not bool:
raise ValueError("bitmap.type")
if not 1 <= width <= 4096 or not 1 <= height <= 4096 or not 0 <= row < height:
raise ValueError("bitmap.range")
stride = ((3*width+3)//4)*4
physical_row = row if top_down else height-1-row
return physical_row*stride, strideConfigure um endpoint compatível com OpenAI ou Anthropic com a URL base e uma chave API, quando necessária. Teste a conexão. O servidor local precisa estar em execução; ferramentas remotas podem transmitir dados separadamente.
Teste larguras preenchidas e ambas as direções, rejeitando linhas inválidas e indicadores não booleanos.
Compare o comportamento real com o resultado esperado. Se uma verificação falhar, investigue a causa antes de fazer outras alterações.
def bitmap_row_offset(width, height, row, top_down=False):
if any(type(v) is not int for v in (width, height, row)) or type(top_down) is not bool:
raise ValueError("bitmap.type")
if not 1 <= width <= 4096 or not 1 <= height <= 4096 or not 0 <= row < height:
raise ValueError("bitmap.range")
stride = ((3*width+3)//4)*4
physical_row = row if top_down else height-1-row
return physical_row*stride, strideUm defeito de formato binário pode aparecer como imagem distorcida mesmo quando os valores dos pixels estão corretos. O RowChisel é um software de programação com IA para Windows para examinar o código de endereçamento por trás desse sintoma. Traga o leitor pertinente e um caso pequeno para a conversa, de modo que o reparo proposto siga o formato realmente suportado pela aplicação.
Uma tarefa útil é revisar deslocamentos de linhas para dados RGB24 alinhados. Mostre ao modelo conectado uma largura que exija preenchimento e explique se as linhas são armazenadas de cima para baixo ou de baixo para cima. Peça que ele acompanhe uma linha solicitada pelo cálculo antes de mudar a aritmética, mantendo distinta a posição lógica da linha de sua posição física no armazenamento.
Revise como o deslocamento é usado pelo leitor do buffer. Uma aritmética correta de linhas não estabelece que o buffer fornecido contenha bytes suficientes, e uma mudança no passo entre linhas pode afetar todos os acessos subsequentes. Execute casos pequenos nas duas direções de armazenamento e examine o tratamento de linhas inválidas. Compare a mudança proposta com as verificações de limites do chamador, em vez de revisar a função auxiliar isoladamente.
O RowChisel se conecta a endpoints compatíveis com OpenAI ou endpoints Anthropic suportados. Você pode escolher um modelo de IA abliterado oferecido pelo serviço configurado, com suporte a ferramentas e contexto regidos por essa configuração. Fundamente a revisão em contagens de bytes e deslocamentos esperados; depois, verifique a saída da aplicação com as ferramentas do seu projeto.
Use uma imagem RGB24 estreita cujo comprimento bruto de linha precise de preenchimento de alinhamento. Declare explicitamente o passo entre linhas e os deslocamentos esperados. Uma largura de imagem já alinhada pode esconder o defeito e fazer um cálculo errado parecer correto.
A numeração lógica das linhas e a ordem física podem diferir. Mostre se a primeira linha armazenada representa o topo ou a parte inferior da imagem. Peça ao modelo que preserve esse contrato ao propor mudanças no código de endereçamento.
Não. O leitor também precisa estabelecer que os bytes necessários existem no buffer fornecido. Revise esse limite separadamente, sobretudo quando as dimensões vêm de dados externos. Mantenha a validação do buffer visível junto da função auxiliar de deslocamento.
Examine todos os chamadores que usam esse passo, teste a primeira e a última linhas e verifique os índices de linha rejeitados. Execute casos nas duas direções de armazenamento. Depois, examine a saída decodificada para detectar erros de integração além da própria aritmética.
RowChisel · Atualizado 2026-10-25