File size: 28,663 Bytes
1191dd4
726808d
1191dd4
 
726808d
df30724
1191dd4
8d08465
1191dd4
 
 
 
 
 
 
 
 
 
 
 
 
c1924fd
1191dd4
3e47935
c1924fd
 
 
 
 
 
 
 
 
 
3e47935
 
c1924fd
 
 
 
 
 
 
 
 
 
3e47935
c1924fd
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3e47935
c1924fd
 
 
 
 
 
 
 
 
 
 
3e47935
c1924fd
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1191dd4
 
c1924fd
1191dd4
3e47935
c1924fd
 
 
3e47935
c1924fd
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1191dd4
 
c1924fd
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
979695d
2e11fce
979695d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
c1924fd
1191dd4
c1924fd
1191dd4
 
 
 
 
726808d
 
 
1191dd4
 
 
 
 
 
 
 
 
 
 
 
726808d
1191dd4
726808d
 
 
 
 
 
 
 
 
 
 
 
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
from transformers import AutoTokenizer, AutoModel
import torch
import numpy as np
from sklearn.metrics.pairwise import cosine_similarity
import gradio as gr

# Carregar o modelo e tokenizer pré-treinados
tokenizer = AutoTokenizer.from_pretrained("neuralmind/bert-base-portuguese-cased")
model = AutoModel.from_pretrained("neuralmind/bert-base-portuguese-cased")

# Função para gerar embeddings
def get_embedding(text):
    inputs = tokenizer(text, return_tensors="pt", padding=True, truncation=True, max_length=128)
    with torch.no_grad():
        outputs = model(**inputs)
    # Usar o embedding da [CLS] token
    return outputs.last_hidden_state[:, 0, :].numpy()

# Exemplos rotulados
exemplos = {
    "Baixa": [
        # Material de escritório e suprimentos básicos (1-10)
        "Compra de material de escritório para uso geral.",
        "Reposição de estoque de itens não essenciais.",
        "Aquisição de papel para impressão rotineira.",
        "Pedido de materiais de papelaria básicos.",
        "Compra de suprimentos para organização de documentos.",
        "Aquisição de etiquetas e materiais de identificação.",
        "Pedido de cartuchos de impressora para backup.",
        "Compra de material para arquivamento.",
        "Aquisição de blocos de anotações e post-its.",
        "Pedido de materiais para encadernação.",

        # Áreas comuns e ambiente de trabalho (11-20)
        "Aquisição de utensílios para uso em áreas comuns.",
        "Compra de itens decorativos para ambiente corporativo.",
        "Pedido de materiais para organização de espaços.",
        "Aquisição de acessórios para copa e cozinha.",
        "Compra de itens para ambientação de salas.",
        "Pedido de materiais para jardim interno.",
        "Aquisição de quadros informativos.",
        "Compra de suportes para equipamentos.",
        "Pedido de divisórias móveis não urgentes.",
        "Aquisição de objetos de decoração sazonal.",

        # Manutenção e reparos menores (21-30)
        "Aquisição de materiais para pequenas reformas não urgentes.",
        "Compra de ferramentas simples para uso ocasional.",
        "Pedido de materiais para pequenos reparos.",
        "Aquisição de itens para manutenção básica.",
        "Compra de materiais para conservação rotineira.",
        "Pedido de produtos para limpeza especializada.",
        "Aquisição de itens para jardinagem básica.",
        "Compra de materiais para pintura decorativa.",
        "Pedido de ferramentas manuais básicas.",
        "Aquisição de itens para reparos simples.",

        # Eventos e atividades internas (31-40)
        "Pedido de brindes promocionais para eventos futuros.",
        "Compra de materiais para eventos internos.",
        "Aquisição de itens para confraternizações.",
        "Pedido de materiais para workshops.",
        "Compra de suprimentos para treinamentos.",
        "Aquisição de itens para apresentações.",
        "Pedido de materiais para dinâmicas de grupo.",
        "Compra de itens para coffee break.",
        "Aquisição de materiais para premiações.",
        "Pedido de itens para decoração de eventos.",

        # Uniformes e identificação (41-50)
        "Compra de uniformes para reposição gradual.",
        "Aquisição de crachás e cartões de identificação.",
        "Pedido de acessórios para uniformes.",
        "Compra de placas de identificação.",
        "Aquisição de vestuário corporativo básico.",
        "Pedido de materiais para personalização.",
        "Compra de bottons e pins institucionais.",
        "Aquisição de cordões para crachá.",
        "Pedido de etiquetas de identificação.",
        "Compra de uniformes para novos colaboradores.",

        # Equipamentos e acessórios (51-60)
        "Aquisição de acessórios para uso opcional em equipamentos.",
        "Compra de periféricos de computador básicos.",
        "Pedido de suportes ergonômicos simples.",
        "Aquisição de capas e proteções para equipamentos.",
        "Compra de cabos e conectores básicos.",
        "Pedido de adaptadores comuns.",
        "Aquisição de mouse pads e apoios.",
        "Compra de organizadores de cabo.",
        "Pedido de suportes para monitor.",
        "Aquisição de cases e bolsas para transporte.",

        # Bem-estar e convivência (61-70)
        "Aquisição de itens para áreas de convivência.",
        "Compra de materiais para área de descanso.",
        "Pedido de itens para espaço de lazer.",
        "Aquisição de jogos e materiais recreativos.",
        "Compra de equipamentos para ginástica laboral.",
        "Pedido de itens para sala de descompressão.",
        "Aquisição de materiais para atividades de integração.",
        "Compra de itens para área de convivência.",
        "Pedido de materiais para atividades sociais.",
        "Aquisição de itens para espaço zen.",

        # Sustentabilidade e meio ambiente (71-80)
        "Compra de itens para coleta seletiva.",
        "Aquisição de materiais para compostagem.",
        "Pedido de itens para economia de energia.",
        "Compra de produtos ecológicos básicos.",
        "Aquisição de materiais para reciclagem.",
        "Pedido de itens para conscientização ambiental.",
        "Compra de recipientes para separação de resíduos.",
        "Aquisição de materiais biodegradáveis.",
        "Pedido de itens para horta corporativa.",
        "Compra de produtos de limpeza ecológicos.",

        # Desenvolvimento e inovação (81-90)
        "Aquisição de materiais para workshops de inovação.",
        "Compra de itens para laboratório de ideias.",
        "Pedido de materiais para prototipagem simples.",
        "Aquisição de itens para brainstorming.",
        "Compra de materiais para design thinking.",
        "Pedido de itens para documentação de projetos.",
        "Aquisição de materiais para testes básicos.",
        "Compra de itens para experiências simples.",
        "Pedido de materiais para mockups.",
        "Aquisição de itens para apresentação de projetos.",

        # Cultura e desenvolvimento (91-100)
        "Compra de materiais para biblioteca corporativa.",
        "Aquisição de itens para espaço cultural.",
        "Pedido de materiais para exposições internas.",
        "Compra de itens para memorial da empresa.",
        "Aquisição de materiais para acervo histórico.",
        "Pedido de itens para documentação cultural.",
        "Compra de materiais para atividades artísticas.",
        "Aquisição de itens para espaço de leitura.",
        "Pedido de materiais para arquivo histórico.",
        "Compra de itens para galeria corporativa."
    ],
    "Media": [
        # Manutenção preventiva e corretiva (1-10)
        "Aquisição de equipamentos para manutenção preventiva.",
        "Pedido de peças sobressalentes para máquinas.",
        "Compra de materiais para revisão programada.",
        "Aquisição de componentes para manutenção periódica.",
        "Pedido de itens para calibração de equipamentos.",
        "Compra de peças para manutenção corretiva não urgente.",
        "Aquisição de materiais para ajustes técnicos.",
        "Pedido de componentes para substituição preventiva.",
        "Compra de itens para conservação de máquinas.",
        "Aquisição de peças para atualização de sistemas.",

        # Suporte operacional (11-20)
        "Compra de ferramentas para suporte às atividades diárias.",
        "Aquisição de materiais para operações regulares.",
        "Pedido de equipamentos para rotina operacional.",
        "Compra de itens para processos contínuos.",
        "Aquisição de suprimentos para fluxo de trabalho.",
        "Pedido de materiais para operações padrão.",
        "Compra de itens para atividades recorrentes.",
        "Aquisição de equipamentos para tarefas rotineiras.",
        "Pedido de materiais para procedimentos habituais.",
        "Compra de suprimentos para operações diárias.",

        # Infraestrutura e instalações (21-30)
        "Aquisição de materiais para infraestrutura básica.",
        "Pedido de equipamentos para instalações prediais.",
        "Compra de itens para rede elétrica.",
        "Aquisição de materiais para sistema hidráulico.",
        "Pedido de componentes para climatização.",
        "Compra de itens para rede de dados.",
        "Aquisição de materiais para telefonia.",
        "Pedido de equipamentos para monitoramento.",
        "Compra de itens para sistema de segurança.",
        "Aquisição de materiais para controle de acesso.",

        # Qualidade e processos (31-40)
        "Pedido de equipamentos para controle de qualidade.",
        "Compra de materiais para testes de rotina.",
        "Aquisição de itens para inspeção regular.",
        "Pedido de instrumentos de medição.",
        "Compra de equipamentos para análises técnicas.",
        "Aquisição de materiais para verificação de processos.",
        "Pedido de itens para certificação.",
        "Compra de equipamentos para validação.",
        "Aquisição de materiais para documentação técnica.",
        "Pedido de itens para padronização.",

        # Tecnologia e sistemas (41-50)
        "Compra de equipamentos para atualização tecnológica.",
        "Aquisição de componentes para upgrade de sistemas.",
        "Pedido de materiais para backup.",
        "Compra de itens para segurança digital.",
        "Aquisição de equipamentos para rede local.",
        "Pedido de materiais para servidor.",
        "Compra de itens para armazenamento de dados.",
        "Aquisição de componentes para comunicação.",
        "Pedido de equipamentos para videoconferência.",
        "Compra de materiais para automação.",

        # Produção e logística (51-60)
        "Aquisição de materiais para linha de produção.",
        "Pedido de equipamentos para movimentação.",
        "Compra de itens para estocagem.",
        "Aquisição de materiais para embalagem.",
        "Pedido de equipamentos para transporte interno.",
        "Compra de itens para organização de estoque.",
        "Aquisição de materiais para expedição.",
        "Pedido de equipamentos para armazenamento.",
        "Compra de itens para identificação de produtos.",
        "Aquisição de materiais para controle de inventário.",

        # Segurança e meio ambiente (61-70)
        "Pedido de equipamentos para proteção coletiva.",
        "Compra de materiais para prevenção de acidentes.",
        "Aquisição de itens para sinalização.",
        "Pedido de equipamentos para combate a incêndio.",
        "Compra de materiais para primeiros socorros.",
        "Aquisição de itens para controle ambiental.",
        "Pedido de equipamentos para monitoramento ambiental.",
        "Compra de materiais para tratamento de resíduos.",
        "Aquisição de itens para proteção ambiental.",
        "Pedido de equipamentos para controle de emissões.",

        # Desenvolvimento e pesquisa (71-80)
        "Compra de equipamentos para laboratório.",
        "Aquisição de materiais para pesquisa.",
        "Pedido de itens para desenvolvimento.",
        "Compra de equipamentos para testes.",
        "Aquisição de materiais para experimentos.",
        "Pedido de itens para prototipagem.",
        "Compra de equipamentos para análise.",
        "Aquisição de materiais para validação.",
        "Pedido de itens para documentação técnica.",
        "Compra de equipamentos para calibração.",

        # Eficiência e produtividade (81-90)
        "Aquisição de materiais para otimização.",
        "Pedido de equipamentos para automação.",
        "Compra de itens para melhoria contínua.",
        "Aquisição de materiais para modernização.",
        "Pedido de equipamentos para digitalização.",
        "Compra de itens para transformação digital.",
        "Aquisição de materiais para integração.",
        "Pedido de equipamentos para conectividade.",
        "Compra de itens para análise de dados.",
        "Aquisição de materiais para business intelligence.",

        # Gestão e controle (91-100)
        "Pedido de equipamentos para monitoramento.",
        "Compra de materiais para gestão visual.",
        "Aquisição de itens para controle gerencial.",
        "Pedido de equipamentos para supervisão.",
        "Compra de materiais para auditoria.",
        "Aquisição de itens para compliance.",
        "Pedido de equipamentos para governança.",
        "Compra de materiais para controle interno.",
        "Aquisição de itens para gestão de riscos.",
        "Pedido de equipamentos para planejamento estratégico."
    ],
    "Alta": [
    # Produção e operação crítica (1-10)
    "Compra urgente de materiais críticos para produção.",
    "Aquisição emergencial de componentes para linha principal.",
    "Pedido prioritário de peças para equipamento vital.",
    "Compra urgente de insumos para processo crítico.",
    "Aquisição emergencial de materiais para produção contínua.",
    "Pedido prioritário de componentes para operação essencial.",
    "Compra urgente de peças para máquina principal.",
    "Aquisição emergencial de itens para processo central.",
    "Pedido prioritário de materiais para operação vital.",
    "Compra urgente de componentes para sistema principal.",

    # Segurança e proteção (11-20)
    "Aquisição emergencial de EPIs críticos.",
    "Pedido prioritário de equipamentos de segurança vital.",
    "Compra urgente de sistemas de proteção essencial.",
    "Aquisição emergencial de materiais para contenção.",
    "Pedido prioritário de equipamentos para emergência.",
    "Compra urgente de itens de proteção coletiva.",
    "Aquisição emergencial de sistemas de alarme.",
    "Pedido prioritário de materiais para isolamento.",
    "Compra urgente de equipamentos de resgate.",
    "Aquisição emergencial de itens de primeiros socorros.",

    # Manutenção crítica (21-30)
    "Pedido emergencial de peças para reparo crítico.",
    "Compra urgente de componentes para manutenção vital.",
    "Aquisição prioritária de materiais para conserto emergencial.",
    "Pedido urgente de peças para reparo estrutural.",
    "Compra emergencial de itens para manutenção preventiva crítica.",
    "Aquisição prioritária de componentes para correção imediata.",
    "Pedido urgente de materiais para reparo de segurança.",
    "Compra emergencial de peças para sistema crítico.",
    "Aquisição prioritária de itens para restauração urgente.",
    "Pedido urgente de componentes para correção estrutural.",

    # Sistemas críticos (31-40)
    "Compra emergencial de componentes para sistema vital.",
    "Aquisição urgente de peças para infraestrutura crítica.",
    "Pedido prioritário de materiais para rede essencial.",
    "Compra emergencial de itens para servidor principal.",
    "Aquisição urgente de componentes para sistema de backup.",
    "Pedido prioritário de peças para sistema de energia.",
    "Compra emergencial de materiais para rede de dados.",
    "Aquisição urgente de itens para sistema de controle.",
    "Pedido prioritário de componentes para monitoramento crítico.",
    "Compra emergencial de peças para sistema de segurança.",

    # Prevenção de falhas (41-50)
    "Aquisição urgente de equipamentos para prevenção de falha.",
    "Pedido prioritário de materiais para contenção de riscos.",
    "Compra emergencial de itens para prevenção de acidentes.",
    "Aquisição urgente de componentes para sistema preventivo.",
    "Pedido prioritário de peças para equipamento de proteção.",
    "Compra emergencial de materiais para sistema de alerta.",
    "Aquisição urgente de itens para prevenção de danos.",
    "Pedido prioritário de componentes para sistema de controle.",
    "Compra emergencial de peças para equipamento de segurança.",
    "Aquisição urgente de materiais para prevenção de incidentes.",

    # Demandas regulatórias (51-60)
    "Pedido prioritário de equipamentos para conformidade legal.",
    "Compra emergencial de materiais para adequação normativa.",
    "Aquisição urgente de itens para certificação obrigatória.",
    "Pedido prioritário de componentes para licenciamento.",
    "Compra emergencial de peças para atendimento regulatório.",
    "Aquisição urgente de materiais para auditoria legal.",
    "Pedido prioritário de itens para conformidade ambiental.",
    "Compra emergencial de componentes para requisitos legais.",
    "Aquisição urgente de peças para adequação técnica.",
    "Pedido prioritário de materiais para certificação legal.",

    # Atendimento ao cliente (61-70)
    "Compra emergencial de itens para cliente estratégico.",
    "Aquisição urgente de materiais para demanda prioritária.",
    "Pedido prioritário de componentes para cliente VIP.",
    "Compra emergencial de peças para atendimento crítico.",
    "Aquisição urgente de itens para contrato especial.",
    "Pedido prioritário de materiais para projeto estratégico.",
    "Compra emergencial de componentes para cliente principal.",
    "Aquisição urgente de peças para demanda especial.",
    "Pedido prioritário de itens para contrato prioritário.",
    "Compra emergencial de materiais para projeto vital.",

    # Segurança operacional (71-80)
    "Aquisição urgente de equipamentos para operação segura.",
    "Pedido prioritário de materiais para proteção vital.",
    "Compra emergencial de itens para segurança crítica.",
    "Aquisição urgente de componentes para proteção essencial.",
    "Pedido prioritário de peças para segurança operacional.",
    "Compra emergencial de materiais para proteção coletiva.",
    "Aquisição urgente de itens para segurança do trabalho.",
    "Pedido prioritário de componentes para proteção individual.",
    "Compra emergencial de peças para segurança industrial.",
    "Aquisição urgente de materiais para proteção ambiental.",

    # Continuidade operacional (81-90)
    "Pedido prioritário de equipamentos para operação contínua.",
    "Compra emergencial de materiais para produção ininterrupta.",
    "Aquisição urgente de itens para funcionamento contínuo.",
    "Pedido prioritário de componentes para operação 24/7.",
    "Compra emergencial de peças para produção constante.",
    "Aquisição urgente de materiais para fluxo contínuo.",
    "Pedido prioritário de itens para operação permanente.",
    "Compra emergencial de componentes para processo contínuo.",
    "Aquisição urgente de peças para produção constante.",
    "Pedido prioritário de materiais para operação ininterrupta.",

    # Prevenção de perdas (91-100)
    "Compra emergencial de equipamentos para evitar perdas.",
    "Aquisição urgente de materiais para prevenir prejuízos.",
    "Pedido prioritário de itens para redução de riscos.",
    "Compra emergencial de componentes para evitar danos.",
    "Aquisição urgente de peças para minimizar impactos.",
    "Pedido prioritário de materiais para controle de perdas.",
    "Compra emergencial de itens para prevenção de falhas.",
    "Aquisição urgente de componentes para redução de danos.",
    "Pedido prioritário de peças para controle de riscos.",
    "Compra emergencial de materiais para prevenção de acidentes."
],
    "Emergencial": [
    # Segurança de vida (1-10)
    "Aquisição IMEDIATA de equipamentos de suporte à vida.",
    "Compra EMERGENCIAL de medicamentos para UTI.",
    "Pedido URGENTÍSSIMO de equipamentos de resgate.",
    "Aquisição IMEDIATA de materiais para contenção de vazamento tóxico.",
    "Compra EMERGENCIAL de equipamentos de respiração autônoma.",
    "Pedido URGENTÍSSIMO de antídotos e medicamentos críticos.",
    "Aquisição IMEDIATA de equipamentos para controle de incêndio.",
    "Compra EMERGENCIAL de materiais para controle de radiação.",
    "Pedido URGENTÍSSIMO de equipamentos de evacuação.",
    "Aquisição IMEDIATA de sistemas de detecção de gases letais.",

    # Catástrofes e acidentes graves (11-20)
    "Compra EMERGENCIAL de materiais para contenção de desastre.",
    "Pedido URGENTÍSSIMO de equipamentos para resgate em escombros.",
    "Aquisição IMEDIATA de materiais para contenção de enchente.",
    "Compra EMERGENCIAL de equipamentos para controle de incêndio florestal.",
    "Pedido URGENTÍSSIMO de materiais para descontaminação.",
    "Aquisição IMEDIATA de equipamentos para resgate em altura.",
    "Compra EMERGENCIAL de materiais para isolamento de área contaminada.",
    "Pedido URGENTÍSSIMO de equipamentos para busca e salvamento.",
    "Aquisição IMEDIATA de materiais para contenção de produtos químicos.",
    "Compra EMERGENCIAL de equipamentos para operações de resgate.",

    # Paralisação total (21-30)
    "Pedido URGENTÍSSIMO de peças para reator nuclear.",
    "Aquisição IMEDIATA de componentes para sistema de controle aéreo.",
    "Compra EMERGENCIAL de peças para sistema de suporte vital.",
    "Pedido URGENTÍSSIMO de equipamentos para centro cirúrgico.",
    "Aquisição IMEDIATA de componentes para sistema de segurança crítica.",
    "Compra EMERGENCIAL de peças para sistema de energia principal.",
    "Pedido URGENTÍSSIMO de materiais para contenção estrutural.",
    "Aquisição IMEDIATA de componentes para sistema de oxigênio hospitalar.",
    "Compra EMERGENCIAL de peças para sistema de refrigeração crítica.",
    "Pedido URGENTÍSSIMO de equipamentos para sistema de controle vital.",

    # Sistemas críticos de vida (31-40)
    "Aquisição IMEDIATA de componentes para sistema de suporte cardíaco.",
    "Compra EMERGENCIAL de peças para respiradores mecânicos.",
    "Pedido URGENTÍSSIMO de materiais para sistema de diálise.",
    "Aquisição IMEDIATA de componentes para equipamentos de ressuscitação.",
    "Compra EMERGENCIAL de peças para sistema de monitoramento vital.",
    "Pedido URGENTÍSSIMO de materiais para equipamentos de transfusão.",
    "Aquisição IMEDIATA de componentes para incubadoras neonatais.",
    "Compra EMERGENCIAL de peças para sistema de anestesia.",
    "Pedido URGENTÍSSIMO de materiais para equipamentos de trauma.",
    "Aquisição IMEDIATA de componentes para desfibriladores.",

    # Contenção de riscos críticos (41-50)
    "Compra EMERGENCIAL de materiais para contenção de radioatividade.",
    "Pedido URGENTÍSSIMO de equipamentos para controle de contaminação.",
    "Aquisição IMEDIATA de materiais para isolamento biológico.",
    "Compra EMERGENCIAL de equipamentos para contenção química.",
    "Pedido URGENTÍSSIMO de materiais para controle de explosivos.",
    "Aquisição IMEDIATA de equipamentos para contenção de gases tóxicos.",
    "Compra EMERGENCIAL de materiais para isolamento viral.",
    "Pedido URGENTÍSSIMO de equipamentos para controle bacteriológico.",
    "Aquisição IMEDIATA de materiais para contenção de patógenos.",
    "Compra EMERGENCIAL de equipamentos para isolamento crítico.",

    # Infraestrutura crítica (51-60)
    "Pedido URGENTÍSSIMO de componentes para sistema de controle aéreo.",
    "Aquisição IMEDIATA de materiais para reparo em barragem.",
    "Compra EMERGENCIAL de equipamentos para sistema de água potável.",
    "Pedido URGENTÍSSIMO de componentes para rede elétrica principal.",
    "Aquisição IMEDIATA de materiais para sistema de telecomunicações críticas.",
    "Compra EMERGENCIAL de equipamentos para centro de dados principal.",
    "Pedido URGENTÍSSIMO de componentes para sistema de controle nuclear.",
    "Aquisição IMEDIATA de materiais para infraestrutura hospitalar.",
    "Compra EMERGENCIAL de equipamentos para sistema de segurança nacional.",
    "Pedido URGENTÍSSIMO de componentes para infraestrutura militar.",

    # Segurança pública (61-70)
    "Aquisição IMEDIATA de equipamentos para controle de distúrbios.",
    "Compra EMERGENCIAL de materiais para operações táticas.",
    "Pedido URGENTÍSSIMO de equipamentos para controle de fronteiras.",
    "Aquisição IMEDIATA de materiais para operações antiterror.",
    "Compra EMERGENCIAL de equipamentos para controle de multidões.",
    "Pedido URGENTÍSSIMO de materiais para operações especiais.",
    "Aquisição IMEDIATA de equipamentos para controle de rebeliões.",
    "Compra EMERGENCIAL de materiais para operações de resgate.",
    "Pedido URGENTÍSSIMO de equipamentos para controle de crises.",
    "Aquisição IMEDIATA de materiais para operações de emergência.",

    # Prevenção de desastres (71-80)
    "Compra EMERGENCIAL de equipamentos para previsão meteorológica crítica.",
    "Pedido URGENTÍSSIMO de materiais para contenção de erosão.",
    "Aquisição IMEDIATA de equipamentos para monitoramento sísmico.",
    "Compra EMERGENCIAL de materiais para controle de avalanches.",
    "Pedido URGENTÍSSIMO de equipamentos para prevenção de tsunamis.",
    "Aquisição IMEDIATA de materiais para contenção vulcânica.",
    "Compra EMERGENCIAL de equipamentos para controle de furacões.",
    "Pedido URGENTÍSSIMO de materiais para prevenção de deslizamentos.",
    "Aquisição IMEDIATA de equipamentos para controle de inundações.",
    "Compra EMERGENCIAL de materiais para prevenção de desastres naturais.",

    # Operações militares (81-90)
    "Pedido URGENTÍSSIMO de equipamentos para defesa aérea.",
    "Aquisição IMEDIATA de materiais para operações estratégicas.",
    "Compra EMERGENCIAL de equipamentos para defesa nacional.",
    "Pedido URGENTÍSSIMO de materiais para operações especiais.",
    "Aquisição IMEDIATA de equipamentos para defesa cibernética.",
    "Compra EMERGENCIAL de materiais para operações táticas.",
    "Pedido URGENTÍSSIMO de equipamentos para defesa territorial.",
    "Aquisição IMEDIATA de materiais para operações de inteligência.",
    "Compra EMERGENCIAL de equipamentos para defesa marítima.",
    "Pedido URGENTÍSSIMO de materiais para operações militares.",

    # Segurança nuclear (91-100)
    "Aquisição IMEDIATA de equipamentos para controle de radiação.",
    "Compra EMERGENCIAL de materiais para contenção nuclear.",
    "Pedido URGENTÍSSIMO de equipamentos para monitoramento radioativo.",
    "Aquisição IMEDIATA de materiais para proteção radiológica.",
    "Compra EMERGENCIAL de equipamentos para descontaminação nuclear.",
    "Pedido URGENTÍSSIMO de materiais para isolamento radioativo.",
    "Aquisição IMEDIATA de equipamentos para segurança nuclear.",
    "Compra EMERGENCIAL de materiais para proteção contra radiação.",
    "Pedido URGENTÍSSIMO de equipamentos para controle de resíduos nucleares.",
    "Aquisição IMEDIATA de materiais para emergências nucleares."
]
}
        

# Gerar embeddings para os exemplos rotulados
embeddings_rotulos = {}
for criticidade, descricoes in exemplos.items():
    embeddings_rotulos[criticidade] = np.mean([get_embedding(desc) for desc in descricoes], axis=0)

# Função para classificar a criticidade
def classificar_criticidade(descricao):
    # Gerar embedding para a descrição de entrada
    embedding_descricao = get_embedding(descricao)
    
    # Calcular similaridade com cada rótulo
    similaridades = {}
    for criticidade, embedding_rotulo in embeddings_rotulos.items():
        similaridade = cosine_similarity(embedding_descricao, embedding_rotulo.reshape(1, -1))[0][0]
        similaridades[criticidade] = similaridade
    
    # Determinar a criticidade com maior similaridade
    criticidade_final = max(similaridades, key=similaridades.get)
    confianca = similaridades[criticidade_final]
    
    return f"Criticidade: {criticidade_final} (Confiança: {confianca:.2f})"

# Interface Gradio
interface = gr.Interface(
    fn=classificar_criticidade,
    inputs=gr.Textbox(lines=2, placeholder="Descreva a compra..."),
    outputs="text",
    title="Classificador de Criticidade de Compra",
    description="Insira a descrição da compra para receber uma classificação de criticidade."
)

# Iniciar a interface
interface.launch()