Spaces:
Running
Running
bombinideh
commited on
Update prompt.py
Browse files
prompt.py
CHANGED
@@ -1,14 +1,14 @@
|
|
1 |
-
# prompt.py
|
2 |
def build_messages(deteccao, base64_image):
|
|
|
3 |
with open('regras.txt', 'r') as arquivo:
|
4 |
regras_conteudo = arquivo.read()
|
5 |
|
6 |
-
#
|
7 |
messages_for_description = [
|
8 |
{
|
9 |
"role": "user",
|
10 |
"content": [
|
11 |
-
{"type": "text", "text": f"
|
12 |
{
|
13 |
"type": "image_url",
|
14 |
"image_url": {
|
@@ -19,24 +19,24 @@ def build_messages(deteccao, base64_image):
|
|
19 |
}
|
20 |
]
|
21 |
|
22 |
-
#
|
23 |
def messages_for_analysis(clothing_description, sexo, ocasiao):
|
24 |
return [
|
25 |
{
|
26 |
"role": "system",
|
27 |
"content": (
|
28 |
-
f"Você é um estilista de moda com conhecimento
|
29 |
)
|
30 |
}
|
31 |
]
|
32 |
|
33 |
-
|
34 |
def format_message(answer):
|
35 |
return [
|
36 |
{
|
37 |
"role": "system",
|
38 |
"content": (
|
39 |
-
f"Você
|
40 |
)
|
41 |
}
|
42 |
]
|
|
|
|
|
1 |
def build_messages(deteccao, base64_image):
|
2 |
+
#percorre arquivo das regras que estão em XML
|
3 |
with open('regras.txt', 'r') as arquivo:
|
4 |
regras_conteudo = arquivo.read()
|
5 |
|
6 |
+
#prompt para descrever imagem
|
7 |
messages_for_description = [
|
8 |
{
|
9 |
"role": "user",
|
10 |
"content": [
|
11 |
+
{"type": "text", "text": f"Com base na imagem fornecida e no JSON de detecção de objetos, descreva as roupas da pessoa na imagem, classificando em três categorias específicas:\n1. Parte de cima (ex.: camisa, camiseta, jaqueta).\n2. Parte de baixo (ex.: calça, saia, shorts).\n3. Sapatos (ex.: tênis, sandálias, botas).\nApenas identifique essas categorias. Se alguma divisão de roupa ou sapato não estiver presente ou não puder ser determinada, informe claramente (ex.: 'Não possui parte de cima identificada'). Não inclua informações extras, como marcas, locais de compra ou detalhes irrelevantes. O JSON de detecção de objetos é o seguinte:\n{deteccao}",
|
12 |
{
|
13 |
"type": "image_url",
|
14 |
"image_url": {
|
|
|
19 |
}
|
20 |
]
|
21 |
|
22 |
+
#prompt para verificar se combina baseado em regras
|
23 |
def messages_for_analysis(clothing_description, sexo, ocasiao):
|
24 |
return [
|
25 |
{
|
26 |
"role": "system",
|
27 |
"content": (
|
28 |
+
f"Você é um estilista de moda com conhecimento avançado em combinações de roupas, considerando o sexo, a ocasião e regras específicas fornecidas. Use as regras em XML abaixo como base para sua análise:\n{regras_conteudo}\nAnalise a seguinte descrição da roupa: {clothing_description}. A pessoa é do sexo {sexo} e está se preparando para uma ocasião {ocasiao}.\nSua tarefa é:\n1. Avaliar se a combinação atual é adequada para a ocasião.\n2. Fornecer sugestões claras e detalhadas para melhorar ou ajustar a combinação, se necessário.\n3. Incluir recomendações para a parte de cima, parte de baixo e sapatos, além de acessórios opcionais, caso sejam relevantes para a ocasião.\nSeja objetivo, mas completo em sua resposta, oferecendo informações práticas e úteis ao usuário."
|
29 |
)
|
30 |
}
|
31 |
]
|
32 |
|
33 |
+
#prompt para formatar mensagem de resposta e tentar estabelecer um padrão
|
34 |
def format_message(answer):
|
35 |
return [
|
36 |
{
|
37 |
"role": "system",
|
38 |
"content": (
|
39 |
+
f"Você receberá uma mensagem contendo informações sobre como a pessoa está vestida, incluindo recomendações para melhorar ou ajustar a combinação. Sua tarefa é formatar a mensagem de forma clara e organizada, seguindo esta estrutura padrão:\n1. Combinação escolhida: [Descreva a roupa e sapatos atuais].\n2. Está combinando: [Informe se a combinação atual é adequada para a ocasião ou faça comentários sobre a harmonia das peças].\n3. Recomendações de possíveis combinações: [Sugira melhorias ou alternativas detalhadas, incluindo peças adicionais, ajustes ou acessórios].\n4. Mensagem final: [Forneça um resumo ou mensagem clara e amigável para o usuário, baseada na análise].\nAqui está a mensagem que você deve formatar:\n{answer}
|
40 |
)
|
41 |
}
|
42 |
]
|