Jadson commited on
Commit
70277bf
·
verified ·
1 Parent(s): 7cd0f6e

Update index.html

Browse files
Files changed (1) hide show
  1. index.html +57 -18
index.html CHANGED
@@ -3,27 +3,66 @@
3
 
4
  <head>
5
  <meta charset="UTF-8" />
6
- <link rel="stylesheet" href="style.css" />
7
-
8
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
9
- <title>Transformers.js - Object Detection</title>
 
10
  </head>
11
 
12
  <body>
13
- <h1>Object Detection w/ 🤗 Transformers.js</h1>
14
- <label id="container" for="upload">
15
- <svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
16
- <path fill="#000"
17
- d="M3.5 24.3a3 3 0 0 1-1.9-.8c-.5-.5-.8-1.2-.8-1.9V2.9c0-.7.3-1.3.8-1.9.6-.5 1.2-.7 2-.7h18.6c.7 0 1.3.2 1.9.7.5.6.7 1.2.7 2v18.6c0 .7-.2 1.4-.7 1.9a3 3 0 0 1-2 .8H3.6Zm0-2.7h18.7V2.9H3.5v18.7Zm2.7-2.7h13.3c.3 0 .5 0 .6-.3v-.7l-3.7-5a.6.6 0 0 0-.6-.2c-.2 0-.4 0-.5.3l-3.5 4.6-2.4-3.3a.6.6 0 0 0-.6-.3c-.2 0-.4.1-.5.3l-2.7 3.6c-.1.2-.2.4 0 .7.1.2.3.3.6.3Z">
18
- </path>
19
- </svg>
20
- Click to upload image
21
- <label id="example">(or try example)</label>
22
- </label>
23
- <label id="status">Loading model...</label>
24
- <input id="upload" type="file" accept="image/*" />
25
-
26
- <script src="index.js" type="module"></script>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
27
  </body>
28
 
29
- </html>
 
3
 
4
  <head>
5
  <meta charset="UTF-8" />
 
 
6
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <title>Transformers.js - Named Entity Recognition</title>
8
+ <link rel="stylesheet" href="style.css" />
9
  </head>
10
 
11
  <body>
12
+ <h1>Named Entity Recognition (NER) w/ 🤗 Transformers.js</h1>
13
+
14
+ <!-- Seção de reconhecimento de entidades nomeadas (NER) -->
15
+ <section>
16
+ <h2>Named Entity Recognition (NER)</h2>
17
+ <textarea id="text-input" rows="6" placeholder="Digite ou cole o texto aqui..."></textarea>
18
+ <button id="analyze-text">Analisar Texto</button>
19
+ <div id="text-output"></div>
20
+ </section>
21
+
22
+ <script type="module">
23
+ import { pipeline, env } from 'https://cdn.jsdelivr.net/npm/@xenova/[email protected]';
24
+
25
+ // Configuração para desativar modelos locais
26
+ env.allowLocalModels = false;
27
+
28
+ // Reconhecimento de Entidades Nomeadas (NER)
29
+ const nerStatus = document.getElementById('status');
30
+ const textInput = document.getElementById('text-input');
31
+ const analyzeTextButton = document.getElementById('analyze-text');
32
+ const textOutput = document.getElementById('text-output');
33
+
34
+ nerStatus.textContent = 'Carregando modelo de NER...';
35
+ const nerModel = await pipeline('ner', 'Xenova/distilbert-base-multilingual-cased-ner-hrl');
36
+ nerStatus.textContent = 'Modelo de NER pronto!';
37
+
38
+ analyzeTextButton.addEventListener('click', async () => {
39
+ const inputText = textInput.value.trim();
40
+ if (!inputText) {
41
+ textOutput.textContent = 'Por favor, insira um texto para análise.';
42
+ return;
43
+ }
44
+
45
+ textOutput.textContent = 'Analisando...';
46
+ const nerOutput = await nerModel(inputText);
47
+ renderEntities(nerOutput);
48
+ });
49
+
50
+ function renderEntities(entities) {
51
+ textOutput.innerHTML = '';
52
+ entities.forEach(entity => {
53
+ const { word, entity_group, score } = entity;
54
+
55
+ const entityElement = document.createElement('div');
56
+ entityElement.className = 'entity';
57
+ entityElement.innerHTML = `
58
+ <strong>Palavra:</strong> ${word} <br>
59
+ <strong>Entidade:</strong> ${entity_group} <br>
60
+ <strong>Confiança:</strong> ${(score * 100).toFixed(2)}%
61
+ `;
62
+ textOutput.appendChild(entityElement);
63
+ });
64
+ }
65
+ </script>
66
  </body>
67
 
68
+ </html>