File size: 1,167 Bytes
bb326a6
 
 
c174bab
bb326a6
 
c174bab
 
 
7349b7e
 
 
 
 
 
 
 
 
 
 
c174bab
 
 
7349b7e
 
 
 
 
 
 
 
 
c174bab
 
bb326a6
 
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
<!DOCTYPE html>
<html>
	<head>
		<script src="https://cdn.jsdelivr.net/pyodide/v0.19.1/full/pyodide.js"></script>
	</head>
	<body>
		Pyodide test page <br>
		Open your browser console to see Pyodide output
		<script type="text/javascript">
			const URL_VOCAB = "https://huggingface.co/gpt2/resolve/main/vocab.json";
			const URL_MERGES = "https://huggingface.co/gpt2/resolve/main/merges.txt";
			
			
			(async function main() {
				const vocab = await (await fetch(URL_VOCAB)).text();
				const merges = await (await fetch(URL_MERGES)).text();
				
				const py_code = await (await fetch("./encoder.py")).text();
				const c = console;
				
				const pyodide = await loadPyodide({
					indexURL : "https://cdn.jsdelivr.net/pyodide/v0.19.1/full/"
				});
				
				await pyodide.loadPackagesFromImports(py_code);
				pyodide.runPython(py_code);
				
				pyodide.globals.set("vocab", vocab);
				pyodide.globals.set("merges", merges);
				pyodide.runPython(`encoder = get_encoder_from_strings(vocab, merges)`);
				const out = pyodide.runPython(`encoder.encode(${JSON.stringify("Hello my name is")})`);
				c.log(Array.from(out));
			})();
		</script>
	</body>
</html>