File size: 2,178 Bytes
9d52aa6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# prompt.py
def build_messages(deteccao, base64_image):
    with open('regras.txt', 'r') as arquivo:
        regras_conteudo = arquivo.read()

    # First prompt to generate clothing description
    messages_for_description = [
        {
            "role": "user",
            "content": [
                {"type": "text", "text": f"Descreva o que a pessoa na imagem está vestindo, focando apenas nas seguintes partes:\n1.Parte de cima: Informe a cor, o tipo de tecido e, se possível, o estilo da peça (por exemplo, camiseta, camisa, blusa, etc.).\n2.Parte de baixo: Informe a cor, o tipo de tecido e, se possível, o estilo da peça (por exemplo, calça, saia, shorts, etc.).\n3.Sapatos: Informe a cor e descreva o estilo (por exemplo, tênis, sapatos sociais, sandálias, etc.).\nEvite incluir informações desnecessárias, como marcas, locais de compra ou características que não sejam relacionadas às roupas e sapatos.Preste atenção aos detalhes e seja o mais sucinto possível. Use o json de resposta de uma detecção de objetos. {deteccao}. E a imagem abaixo:"},
                {
                    "type": "image_url",
                    "image_url": {
                        "url": f"data:image/jpeg;base64,{base64_image}",
                    },
                },
            ],
        }
    ]

    # Function to build messages for analysis
    def messages_for_analysis(clothing_description, sexo, ocasiao):
        return [
            {
                "role": "system",
                "content": (
                    f"Você é um estilista de moda com conhecimento aprofundado em combinação de acordo com o sexo e a ocasião. Use as regras em XML para se basear.\n\n{regras_conteudo}. Analise a seguinte descrição de roupa: {clothing_description}. A pessoa de sexo {sexo} está indo para uma ocasião {ocasiao}. Responda de uma forma clara e objetiva, fornecendo sugestões de combinação de roupas e sapatos para a ocasião específica. Seja detalhado e forneça informações úteis para o usuário."
                )
            }
        ]

    return messages_for_description, messages_for_analysis