Olá! Verifiquei código e está igual ao apresentado em aula, porém além das respotas, aparece mais uma linha com a resposta "none", cfe imagem abaixo:
Olá! Verifiquei código e está igual ao apresentado em aula, porém além das respotas, aparece mais uma linha com a resposta "none", cfe imagem abaixo:
Olá, Rafael! Tudo bem?
O problema que você está enfrentando, onde aparece "None" após a resposta esperada, pode estar relacionado à forma como o código está tratando o retorno da função categoriza_alimento
. Ajudaria muito se pudesse compartilhar o seu código com a gente para podermos analisar se tem alguma diferença com o da instrutora.
Mas, pelo que você mencionou e pela imagem anexada, o retorno "None" que aparece é comum quando uma função não retorna explicitamente um valor em Python. Se a função não contém um return
, ou se o retorno está vazio, ela irá retornar "None" por padrão.
Sugiro verificar se você substituiu o print()
na função categoriza_alimento
por um return
no final, assim como a da instrutora:
def categoriza_alimento(lista_categorias_validas,nome_do_alimento):
prompt_de_sistema = f"""
Você é um categorizador de alimentos.
Você deve assumir as categorias presentes na lista abaixo.
Você não deve responder outros objetos que não são alimentos.
# Lista de Categorias Válidas
{lista_categorias_validas.split(",")}
# Formato da Saída
Produto: Nome do Produto
Categoria: apresente a categoria do produto
# Exemplo de Saída
Produto: Maçã
Categoria: Frutas
"""
prompt_de_usuario = nome_do_alimento
message = client.messages.create(
model= modelo,
max_tokens=1000,
temperature=0,
system= prompt_de_sistema,
messages=[
{
"role": "user",
"content": [
{
"type": "text",
"text": prompt_de_usuario
}
]
}
]
)
resposta = message.content[0].text
return resposta # aqui
Isso pode evitar que a saída inclua o "None".
Espero que tenha te ajudado! Qualquer dúvida, o fórum está à disposição.
Abraços e bons estudos!
Olá Rafaela! Obrigado pela ajuda! Realmente estava aí o problema!!