āđāļŠāļĢāđŒ

Transformers.js in single HTML, (v.3) 30+ AI models included

āļ­āļąāļžāđ€āļ”āļ—āļĨāđˆāļēāļŠāļļāļ”: 19 āļĄ.āļ„. 2025
473 āļœāļđāđ‰āđ€āļ‚āđ‰āļēāļŠāļĄ

āļ§āļīāļ˜āļĩāļ‡āđˆāļēāļĒāļ—āļĩāđˆāļŠāļļāļ”āļ‚āļ­āļ‡āļāļēāļĢāđ€āļĢāļĩāļĒāļ™āļĢāļđāđ‰āļ§āđˆāļē AI āđāļ•āđˆāļĨāļ° model āļ—āļģāļ‡āļēāļ™āļ­āļĒāđˆāļēāļ‡āđ„āļĢ āđ€āļāđˆāļ‡āđāļ„āđˆāđ„āļŦāļ™ āļ™āđˆāļēāļˆāļ°āđ€āļ›āđ‡āļ™āļāļēāļĢāļ—āļ”āļĨāļ­āļ‡āļŠāđˆāļ‡ input āđ€āļ‚āđ‰āļēāđ„āļ› āđāļĨāđ‰āļ§āļŠāļąāļ‡āđ€āļāļ• output āļ—āļĩāđˆāļ­āļ­āļāļĄāļē āđƒāļŠāđ‰āļ§āļīāļ˜āļĩāļĨāļ­āļ‡āļœāļīāļ”āļĨāļ­āļ‡āļ–āļđāļāđ„āļ›āđ€āļĢāļ·āđˆāļ­āļĒ āđ† āđ€āļĢāļĩāļĒāļ™āļĢāļđāđ‰āļˆāļēāļāļ›āļĢāļ°āļŠāļšāļāļēāļĢāļ“āđŒāļ•āļĢāļ‡āļ—āļģāđƒāļŦāđ‰āđ€āļ‚āđ‰āļēāđƒāļˆāļ āļēāļžāļāļ§āđ‰āļēāļ‡āđ„āļ”āđ‰āļ”āļĩāļāļ§āđˆāļē āđ€āļŠāļĄāļ·āļ­āļ™āđāļ™āļ§āļĢāļ°āļ™āļēāļšāļ•āļēāļĄāđ€āļŠāđ‰āļ™āđāļ™āļ§āļ™āļ­āļ™āļ‚āļ­āļ‡āļ•āļąāļ§āļ­āļąāļāļĐāļĢ T 
 
āļŦāļĨāļąāļ‡āļˆāļēāļāļ™āļąāđ‰āļ™āļŦāļēāļāļŠāļ™āđƒāļˆāļ”āđ‰āļēāļ™āđ„āļŦāļ™āđ€āļ›āđ‡āļ™āļžāļīāđ€āļĻāļĐ āļ„āđˆāļ­āļĒāđ€āļĢāļīāđˆāļĄāđ€āļ‚āđ‰āļēāļŠāļđāđˆāđ‚āļŦāļĄāļ”āļĻāļķāļāļĐāļēāļˆāļĢāļīāļ‡āļˆāļąāļ‡āļ”āļģāļ”āļīāđˆāļ‡āđ„āļ›āļŠāļđāđˆāđ€āļŠāđ‰āļ™āđāļ™āļ§āļ•āļąāđ‰āļ‡āļ‚āļ­āļ‡āļ•āļąāļ§ T āļˆāļķāļ‡āđ€āļ›āđ‡āļ™āđ€āļĢāļ·āđˆāļ­āļ‡āļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āļ„āđ‰āļ™āļ„āļ§āđ‰āļēāļˆāļēāļāļ„āļģāļ­āļ˜āļīāļšāļēāļĒāļ‚āļ­āļ‡āļœāļđāđ‰āļŠāļĢāđ‰āļēāļ‡ model āļ™āļąāđ‰āļ™ āļ§āđˆāļēāđƒāļŠāđ‰āđ€āļ—āļ„āļ™āļīāļ„āļ­āļĒāđˆāļēāļ‡āđ„āļĢāļŦāļĢāļ·āļ­ train āļ”āđ‰āļ§āļĒāļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđāļšāļšāđ„āļŦāļ™ āđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļšāļ”āļđ CV āļ‚āļ­āļ‡āļœāļđāđ‰āļŠāļĄāļąāļ„āļĢāļ‡āļēāļ™āļ—āļĩāđˆāļœāđˆāļēāļ™ qualified āļ§āđˆāļēāđ€āļĢāļĩāļĒāļ™āļˆāļšāļŠāļēāļ‚āļēāļ§āļīāļŠāļēāđ„āļŦāļ™ āđ€āļžāļ·āđˆāļ­āļ›āļĢāļ°āđ€āļĄāļīāļ™āļ§āđˆāļēāļ•āđ‰āļ™āļ—āļļāļ™āļŦāļĢāļ·āļ­āļ„āļ§āļēāļĄāļĢāļđāđ‰āļžāļ·āđ‰āļ™āļāļēāļ™āļ—āļĩāđˆāļĄāļĩāļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļ•āđˆāļ­āļĒāļ­āļ”āļŠāđˆāļ§āļĒāļ—āļģāļ‡āļēāļ™āļ—āļĩāđˆāđ€āļĢāļēāļ•āđ‰āļ­āļ‡āļāļēāļĢāđ„āļ”āđ‰āļŦāļĢāļ·āļ­āđ„āļĄāđˆ
 
āļ›āļąāļāļŦāļēāļ­āļĒāļđāđˆāļ—āļĩāđˆ AI āļŦāļĨāļēāļĒāļ•āļąāļ§āļĒāļąāļ‡āļ­āļĒāļđāđˆāđƒāļ™āļĢāļ°āļĒāļ°āļāļģāļĨāļąāļ‡āļžāļąāļ’āļ™āļē āļœāļđāđ‰āļŠāļĢāđ‰āļēāļ‡āđ€āļ­āļ‡āļāđ‡āđ„āļĄāđˆāļ—āļąāļ™āđ„āļ”āđ‰āļ­āļ˜āļīāļšāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ” āđ€āļžāļĢāļēāļ°āļ‡āļēāļ™āļĒāļąāļ‡āđ„āļĄāđˆāļˆāļš āļšāļēāļ‡āļ­āļĒāđˆāļēāļ‡āļĒāļąāļ‡āđ„āļĄāđˆāļĨāļ‡āļ•āļąāļ§ āđ€āļŦāļĄāļ·āļ­āļ™āļ—āļēāļ‡āđ€āļ”āļīāļ™āđƒāļ™āļ•āļķāļāļ—āļĩāđˆāļāļģāļĨāļąāļ‡āļāđˆāļ­āļŠāļĢāđ‰āļēāļ‡ āđ„āļĄāđˆāđ„āļ”āđ‰āđ€āļ„āļĨāļĩāļĒāļĢāđŒāļ—āļēāļ‡āļˆāļ™āļ›āļĨāļ­āļ”āļ āļąāļĒāļŠāļģāļŦāļĢāļąāļšāļ„āļ™āļ—āļąāđˆāļ§āđ„āļ› āļœāļđāđ‰āđƒāļŠāđ‰āļ—āļēāļ‡āļāđ‡āļ•āđ‰āļ­āļ‡āļĢāļđāđ‰āļ§āđˆāļēāļŦāļĨāļšāļŦāļĨāļĩāļāļ­āļĒāđˆāļēāļ‡āđ„āļĢ āđ€āļžāļĩāļĒāļ‡āđāļ•āđˆāđ€āļŦāđ‡āļ™āđ€āļ„āđ‰āļēāļĨāļēāļ‡āļ‚āļ­āļ‡āļ„āļ§āļēāļĄāđ€āļ›āđ‡āļ™āđ„āļ›āđ„āļ”āđ‰ āļŦāļēāļāđ€āļĢāļēāļŠāļ™āđƒāļˆāļāđ‡āļ•āđ‰āļ­āļ‡āļŦāļēāļ—āļēāļ‡āļ—āļģāļ„āļ§āļēāļĄāđ€āļ‚āđ‰āļēāđƒāļˆ āļ”āđ‰āļ§āļĒāļāļēāļĢāļ­āđˆāļēāļ™āļˆāļēāļ code āļŦāļĢāļ·āļ­ project repository āļ‚āļ­āļ‡āđ€āļ‚āļē āđ‚āļ”āļĒ setup āđāļĨāļ°āļ—āļ”āļŠāļ­āļšāđ€āļ­āļēāđ€āļ­ā
 
āļ‚āđ‰āļ­āļ”āļĩāļ‚āļ­āļ‡ Transformers āļ—āļĩāđˆāļ­āļ­āļāđāļšāļšāļĄāļēāđƒāļŦāđ‰āđ€āļ‚āļĩāļĒāļ™āđ‚āļ„āđ‰āļ”āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļ‡āļēāļ™āđƒāļ™ browser āđ„āļ”āđ‰ āļ—āļģāđƒāļŦāđ‰āļŠāļ°āļ”āļ§āļāļ•āđˆāļ­āļāļēāļĢāļ—āļ”āļĨāļ­āļ‡āđ€āļĨāđˆāļ™ AI āđ‚āļ”āļĒāđ„āļĄāđˆāļ•āđ‰āļ­āļ‡āļ­āļ­āļāđāļĢāļ‡āļĄāļēāļ āđ€āļžāļĩāļĒāļ‡āļŠāđˆāļ‡ input āļœāđˆāļēāļ™ API āļ‚āļ­āļ‡ transformers āđāļĨāļ°āļĢāļ­āļĢāļąāļš output āļ—āļĩāđˆāđ€āļ›āđ‡āļ™āļœāļĨāļĨāļąāļžāļ˜āđŒāļĄāļēāđāļŠāļ”āļ‡ āđ„āļĄāđˆāļ§āđˆāļēāļˆāļ°āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰ model āđ„āļŦāļ™āļāđ‡āļĄāļĩāļĄāļēāļ•āļĢāļāļēāļ™āļāļēāļĢāļ•āļīāļ”āļ•āđˆāļ­āđāļšāļšāđ€āļ”āļĩāļĒāļ§āļāļąāļ™ 
 
āļ”āļąāļ‡āļ™āļąāđ‰āļ™āļ§āļīāļ˜āļĩāļ—āļĩāđˆāļŠāļ°āļ”āļ§āļāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ„āļ·āļ­ āļˆāļąāļ”āđ€āļ•āļĢāļĩāļĒāļĄ sample āļŠāļģāļŦāļĢāļąāļšāđāļ•āđˆāļĨāļ° model āđƒāļŦāđ‰āļ—āļ”āļŠāļ­āļšāļ‡āđˆāļēāļĒ āđ€āļžāļ·āđˆāļ­āđ€āļ›āđ‡āļ™āđ„āļ­āđ€āļ”āļĩāļĒ āđāļĨāđ‰āļ§āļŦāļēāļāļŠāļ™āđƒāļˆāļāđ‡āļŠāļēāļĄāļēāļĢāļ–āļ—āļ”āļŠāļ­āļšāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄāļ”āđ‰āļ§āļĒāļ•āļąāļ§āđ€āļ­āļ‡ āļŦāļĢāļ·āļ­āļ„āđ‰āļ™āļ„āļ§āđ‰āļēāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄāļˆāļēāļ link āļ‚āļ­āļ‡ model āļ™āļąāđ‰āļ™
 
āļŠāļģāļŦāļĢāļąāļšāļœāļđāđ‰āļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢāļ—āļ”āļŠāļ­ā āļŠāļēāļĄāļēāļĢāļ–āļ—āļ”āļŠāļ­āļšāđ„āļ”āđ‰āļ—āļĩāđˆ github pages test-transformers-v3.html
 
source code āļ­āļĒāļđāđˆāđƒāļ™ github jojosati/singleHTML 
 
model spec
 
input/output āļ—āļĩāđˆāđāļ•āļāļ•āđˆāļēāļ‡āļāļąāļ™āļ‚āļ­āļ‡āđāļ•āđˆāļĨāļ° model āļ—āļĩāđˆāļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļœāđˆāļēāļ™ Transformers āļ›āļĢāļ°āļāļ­āļšāļ”āđ‰āļ§āļĒ āļ‚āđ‰āļ­āļ„āļ§āļēāļĄ (text), āļ āļēāļž (image) āđāļĨāļ° āđ€āļŠāļĩāļĒāļ‡ (audio) 
 
āđƒāļ™ version 3 āļ™āļĩāđ‰āđ„āļ”āđ‰āļ›āļĢāļąāļšāļ›āļĢāļļāļ‡āđ‚āļ„āđ‰āļ”āđƒāļŦāđ‰āļĢāļ­āļ‡āļĢāļąāļš model āļ•āļēāļĄāđ€āļ‡āļ·āđˆāļ­āļ™āđ„āļ‚ input/output āļ—āļĩāđˆāđāļ•āļāļ•āđˆāļēāļ‡āļāļąāļ™āđ„āļ”āđ‰āđ€āļ—āđˆāļēāļ—āļĩāđˆāļĄāļĩāļ„āļđāđˆāļĄāļ·āļ­āđāļ™āļ°āļ™āļģāđƒāļ™ Hugging Face

āļœāļĄāđƒāļŠāđ‰āļ§āļīāļ˜āļĩāļāļģāļŦāļ™āļ” spec āļ‚āļ­āļ‡ model āđ€āļžāļ·āđˆāļ­āļšāļ­āļāđƒāļŦāđ‰āđ‚āļ›āļĢāđāļāļĢāļĄāļĢāļđāđ‰āļ§āđˆāļē input/output āđ€āļ›āđ‡āļ™āļ­āļ°āđ„āļĢ
 
text translator
 
āđƒāļŠāđ‰āđāļ›āļĨāļ āļēāļĐāļē āļŠāđˆāļ‡āļ‚āđ‰āļ­āļ„āļ§āļēāļĄ (text) āđ€āļ‚āđ‰āļēāđ„āļ› āđāļĨāđ‰āļ§āđ„āļ”āđ‰āļ‚āđ‰āļ­āļ„āļ§āļēāļĄ (text) āļ­āļ­āļāļĄāļē āđ„āļĄāđˆāļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļāđ€āļ‡āļ·āđˆāļ­āļ™āđ„āļ‚ input/output āļžāļīāđ€āļĻāļĐ 
{
label: 'text translator /m2m100',
task: 'translation',
model: 'Xenova/m2m100_418M',
sample: 'į”Ÿæīŧå°ąåƒäļ€į›’巧克力。',
options: {
src_lang: 'zh',
tgt_lang: 'en'
},
},

 
image classifier
 
āđƒāļŠāđ‰āļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒāļ­āļ‡āļ„āđŒāļ›āļĢāļ°āļāļ­āļšāļ āļēāļĒāđƒāļ™āļĢāļđāļ›āļ āļēāļž āļ•āđ‰āļ­āļ‡āļāļēāļĢ input āđ€āļ›āđ‡āļ™āļĢāļđāļ›āļ āļēāļž (image) āđ‚āļ”āļĒāļĢāļ°āļšāļļ src: imageāļŠāđˆāļ§āļ™ output āļ—āļĩāđˆāđ„āļ”āđ‰āđ€āļ›āđ‡āļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄ (text) āļ•āļēāļĄāļ›āļāļ•āļī āđ„āļĄāđˆāļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļāđ€āļ‡āļ·āđˆāļ­āļ™āđ„āļ‚āļžāļīāđ€āļĻāļĐ
 
{
label: 'image classifier',
task: 'image-classification',
model: 'Xenova/vit-base-patch16-224',
src: 'image',
sample: 'https://huggingface.co/datasets/Xenova/transformers.js-docs/resolve/main/tiger.jpg',
options: { topk: 3 },
},

 
image upscaler
 
āđ€āļ›āđ‡āļ™ AI āļ—āļĩāđˆāđƒāļŠāđ‰āļ‚āļĒāļēāļĒāļĢāļđāļ›āļ āļēāļž āļ”āļąāļ‡āļ™āļąāđ‰āļ™āļˆāļķāļ‡āļ•āđ‰āļ­āļ‡āļāļģāļŦāļ™āļ”āđƒāļŦāđ‰āđ€āļ›āđ‡āļ™ image āļ—āļąāđ‰āļ‡ input āđāļĨāļ° output
 
{
label: 'image upscaler',
task: 'image-to-image',
model: 'Xenova/swin2SR-classical-sr-x2-64',
src: 'image',
out: 'image',
sample: 'https://huggingface.co/datasets/Xenova/transformers.js-docs/resolve/main/butterfly.jpg',
},

 
Natural Language Processing 
 
src: text out: text
 
āđ€āļ›āđ‡āļ™ AI model āļ—āļĩāđˆāļĢāļąāļš input āđ€āļ›āđ‡āļ™ text āļŦāļĨāļąāļ‡āļˆāļēāļāļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāđāļĨāđ‰āļ§āļˆāļ°āđ„āļ”āđ‰āļœāļĨāļĨāļąāļžāļ˜āđŒāļ­āļ­āļāļĄāļēāđ€āļ›āđ‡āļ™ text
 
āļāļēāļĢāļ­āļ­āļāđāļšāļšāđ‚āļ›āļĢāđāļāļĢāļĄāđƒāļŦāđ‰āļĢāļąāļš input āđ€āļ›āđ‡āļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄ āđāļĨāļ°āđāļŠāļ”āļ‡āļœāļĨāļĨāļąāļžāļ˜āđŒ (output) āļ—āļĩāđˆāđ€āļ›āđ‡āļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļˆāļķāļ‡āļ—āļģāđ„āļ”āđ‰āļ‡āđˆāļēāļĒ āđ€āļžāļĢāļēāļ°āđ€āļ›āđ‡āļ™āļžāļ·āđ‰āļ™āļāļēāļ™āļ—āļĩāđˆāļĄāļ™āļļāļĐāļĒāđŒāđƒāļŠāđ‰āļ•āļīāļ”āļ•āđˆāļ­āļāļąāļšāļ„āļ­āļĄāļžāļīāļ§āđ€āļ•āļ­āļĢāđŒāļĄāļēāļ•āļąāđ‰āļ‡āđāļ•āđˆāđāļĢāļ āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļāđ‡āļ‡āđˆāļēāļĒāđ€āļŠāđˆāļ™āļāļąāļ™
 

Vision Processing
 
src: image out: text
 
āđ€āļ›āđ‡āļ™ AI model āļ—āļĩāđˆāļĢāļąāļš input āđ€āļ›āđ‡āļ™āļĢāļđāļ›āļ āļēāļž (image) āđāļĨāļ°āđ„āļ”āđ‰āļœāļĨāļĨāļąāļžāļ˜āđŒāđ€āļ›āđ‡āļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄ āđƒāļŠāđ‰āļŠāļģāļŦāļĢāļąāļšāđāļĒāļāđāļĒāļ°āļĢāļđāļ›āļ āļēāļž (image classification) āļŦāļĢāļ·āļ­āđāļ›āļĨāļ‡āļ•āļąāļ§āļ­āļąāļāļĐāļĢāđƒāļ™āļĢāļđāļ›āļ āļēāļž (character recognition) āļāļēāļĢāļ­āļ­āļāđāļšāļšāđƒāļŦāđ‰āļĢāļąāļš input āļ„āđˆāļ­āļ™āļ‚āđ‰āļēāļ‡āļĒāļļāđˆāļ‡āļĒāļēāļāđ€āļĨāđ‡āļāļ™āđ‰āļ­āļĒ āļāļēāļĢāļŠāđˆāļ‡āļĢāļđāļ›āļ āļēāļžāđ„āļ›āļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āđ€āļ—āļ„āļ™āļīāļ„āđ€āļĨāđ‡āļāļ™āđ‰āļ­āļĒ
 
āļŠāļģāļŦāļĢāļąāļš input āļ—āļĩāđˆāļˆāļ°āļŠāđˆāļ‡āđ„āļ›āđƒāļŦāđ‰ AI āļāļĢāļ“āļĩāļĢāļđāļ›āļ āļēāļžāđƒāļ™āļ­āļīāļ™āđ€āļ•āļ­āļĢāđŒāđ€āļ™āđ‡āļ• āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰ url (āļ‚āļķāđ‰āļ™āļ•āđ‰āļ™āļ”āđ‰āļ§āļĒ https: āļŦāļĢāļ·āļ­ http:) āļ‚āļ­āļ‡āļĢāļđāļ›āļ™āļąāđ‰āļ™āđ„āļ”āđ‰āđ€āļĨāļĒ āđāļ•āđˆāļ–āđ‰āļēāđ€āļ›āđ‡āļ™āđ„āļŸāļĨāđŒāļĢāļđāļ›āļ āļēāļžāļ—āļĩāđˆāļ­āļĒāļđāđˆāđƒāļ™āđ€āļ„āļĢāļ·āđˆāļ­āļ‡ āļˆāļ°āļ•āđ‰āļ­āļ‡āđ€āļ‚āļĩāļĒāļ™āđ‚āļ„āđ‰āļ”āļ­āđˆāļēāļ™āđ„āļŸāļĨāđŒāļ™āļąāđ‰āļ™āļĄāļēāđāļĨāđ‰āļ§āđāļ›āļĨāļ‡āđ€āļ›āđ‡āļ™ data URL (āļ‚āļķāđ‰āļ™āļ•āđ‰āļ™āļ”āđ‰āļ§āļĒ data:)
 
src: image out: image
 
āļĄāļĩ model āļžāļīāđ€āļĻāļĐāļ­āļĒāļđāđˆāļ•āļąāļ§āļŦāļ™āļķāđˆāļ‡āļ„āļ·āļ­ image upscaler āļ—āļĩāđˆāđƒāļŠāđ‰ input āđ€āļ›āđ‡āļ™āļĢāļđāļ›āļ āļēāļžāđāļĨāđ‰āļ§āļ•āļ­āļšāļāļĨāļąāļšāļĄāļēāđ€āļ›āđ‡āļ™āļĢāļđāļ›āļ āļēāļž āļ›āļąāļāļŦāļēāļˆāļķāļ‡āļ­āļĒāļđāđˆāļ—āļĩāđˆāļˆāļ°āđ€āļ­āļēāļĢāļđāļ›āļ āļēāļžāļ™āļąāđ‰āļ™āļāļĨāļąāļšāļĄāļēāđāļŠāļ”āļ‡āđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āđ„āļĢ āļŦāļĨāļąāļ‡āļˆāļēāļāļŦāļēāļ‚āđ‰āļ­āļĄāļđāļĨāļ”āđ‰āļ§āļĒāļāļēāļĢāļ–āļēāļĄ Bard AI āđāļĨāļ° Stack Overflow āļˆāļķāļ‡āļžāļšāļ§āđˆāļē JavaScript āđ„āļĄāđˆāļĢāļ­āļ‡āļĢāļąāļšāļāļēāļĢāđ€āļ­āļēāļ‚āđ‰āļ­āļĄāļđāļĨāļĢāļđāļ›āļ āļēāļžāļ™āļąāđ‰āļ™āļĄāļēāđāļŠāļ”āļ‡āđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āļ‡āđˆāļēāļĒ āđ† āļˆāļķāļ‡āļ•āđ‰āļ­āļ‡āđ€āļ‚āļĩāļĒāļ™ function āļ‚āļķāđ‰āļ™āđƒāļŠāđ‰āđ€āļ­āļ‡


 āļ‚āđ‰āļ­āļĄāļđāļĨāļĢāļđāļ›āļ āļēāļžāļ—āļĩāđˆāđ„āļ”āđ‰āļĢāļąāļšāļĄāļēāļˆāļēāļ AI āļœāļĄāđ€āļĢāļĩāļĒāļāļ§āđˆāļēāđ€āļ›āđ‡āļ™ pixel data āļ‹āļķāđˆāļ‡āļĄāļĩāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āļ”āļąāļ‡āļ™āļĩāđ‰
 
{ // pixel data
  "width": <number>,
  "height": <number>,
  "channels": <number>,
  "data": <byteArray> [00, 255, ... ],
}

 
āļ‚āļ“āļ°āļ—āļĩāđˆāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡ ImageData āļ—āļĩāđˆ JavaScript āđƒāļŠāđ‰ āđ€āļ›āđ‡āļ™āļ”āļąāļ‡āļ™āļĩāđ‰
 
{ // ImageData type
  "width": <number>,
  "height": <number>,
  "colorSpace": <string>,
  "data": <byteArray> [00, 255, ... ],
}

 
āļ„āļĨāđ‰āļēāļĒāļāļąāļ™ āđāļ•āđˆāđ„āļĄāđˆāđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļ™ āđ‚āļ”āļĒāđ€āļ‰āļžāļēāļ°āļŠāđˆāļ§āļ™āļ‚āļ­āļ‡ data āļ—āļĩāđˆāđ€āļ›āđ‡āļ™ byteArray

 
pixel data āđƒāļŠāđ‰āļ„āđˆāļē channels āļšāļ­āļāļˆāļģāļ™āļ§āļ™ bytes āļ•āđˆāļ­ pixel (3 = RGB) āļŦāļĢāļ·āļ­ (1 = gray scale)
 
ImageData āļĄāļĩāļ‚āļ™āļēāļ” 4 bytes āļ•āđˆāļ­ pixel āđ€āļŠāļĄāļ­ āđ€āļ—āļĩāļĒāļšāđ€āļ—āđˆāļēāļāļąāļš RGBA (byte āļ—āļĩāđˆāļŠāļĩāđˆāđ€āļ›āđ‡āļ™āļ„āđˆāļē Alpha āļ„āļ§āļēāļĄāđ‚āļ›āļĢāđˆāļ‡āđāļŠāļ‡)
 
āđ€āļĄāļ·āđˆāļ­āđ€āļ‚āđ‰āļēāđƒāļˆāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āđāļĨāđ‰āļ§ āļˆāļķāļ‡āđ„āļ”āđ‰ function āđāļ›āļĨāļ‡ pixel data āđ€āļ›āđ‡āļ™ ImageData āđ€āļžāļ·āđˆāļ­āđƒāļŠāđ‰āđƒāļ™ browser āļ”āļąāļ‡āļ™āļĩāđ‰
 
    utils.imageFromPixel = function (pixeldata) {
      const width = pixeldata.width
      const height = pixeldata.height
      const channels = pixeldata.channels
      const imageData = new ImageData(width, height)

      for (let y = 0; y < height; y++) {
        for (let x = 0; x < width; x++) {
          const index = (y * width + x) * 4;
          const rgbindex = (y * width + x) * channels

          imageData.data[index] = pixeldata.data[rgbindex]; // Red value
          imageData.data[index + 1] = pixeldata.data[rgbindex + (1 % channels)]; // Green value
          imageData.data[index + 2] = pixeldata.data[rgbindex + (2 % channels)]; // Blue value
          imageData.data[index + 3] = 255; // Alpha value (default to opaque)
        }
      }

      return imageData
    }

 
input: image output: imagemask
 
image segmenter āđƒāļŠāđ‰āļŠāļģāļŦāļĢāļąāļšāļ•āļĢāļ§āļˆāļŦāļēāļ­āļ‡āļ„āđŒāļ›āļĢāļ°āļāļ­āļšāļŠāļģāļ„āļąāļāđƒāļ™āļ āļēāļž āđāļĨāđ‰āļ§āļ•āļ­āļšāļāļĨāļąāļšāļĄāļēāđ€āļ›āđ‡āļ™āļĢāļđāļ›āļ āļēāļžāđāļšāļšāļžāļīāđ€āļĻāļĐ āđƒāļŠāđ‰āļ‹āđ‰āļ­āļ™āļāļąāļšāļĢāļđāļ›āļ āļēāļžāļ•āđ‰āļ™āļ‰āļšāļąāļš āđāļŠāļ”āļ‡āļ‚āļ­āļšāđ€āļ‚āļ•āļ‚āļ­āļ‡āļŠāļīāđˆāļ‡āļ—āļĩāđˆāļ•āļĢāļ§āļˆāļˆāļąāļšāđ„āļ”āđ‰ 
 
āļ‚āđ‰āļ­āļĄāļđāļĨāļĢāļđāļ›āļ āļēāļžāļ—āļĩāđˆāđ€āļ›āđ‡āļ™ pixel mask āļĄāļĩāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āđ€āļŦāļĄāļ·āļ­āļ™ pixel data āļ›āļāļ•āļī āđāļ•āđˆāđƒāļŠāđ‰ channels = 1 āļāļĨāļēāļĒāđ€āļ›āđ‡āļ™āļ āļēāļžāļ‚āļēāļ§-āļ”āļģ āđ€āļĄāļ·āđˆāļ­āđ€āļ­āļēāđ„āļ›āļ‹āđ‰āļ­āļ™āļāļąāļšāļ āļēāļžāļ•āđ‰āļ™āļ‰āļšāļąāļš āļāđ‡āļˆāļ°āđ€āļŦāļĨāļ·āļ­āļ āļēāļžāļ•āđ‰āļ™āļ‰āļšāļąāļšāđ€āļ‰āļžāļēāļ°āļŠāđˆāļ§āļ™āļ—āļĩāđˆāļ‹āđ‰āļ­āļ™āļāļąāļšāļŠāļĩāļ‚āļēāļ§

āđ‚āļ„āđ‰āļ”āļŠāļģāļŦāļĢāļąāļšāļŠāļĢāđ‰āļēāļ‡āļ āļēāļžāļ‹āđ‰āļ­āļ™ āđƒāļŠāđ‰āļ§āļīāļ˜āļĩāđāļ›āļĨāļ‡ pixel data āđ€āļ›āđ‡āļ™ ImageData āđ€āļŦāļĄāļ·āļ­āļ™āļ āļēāļžāļ›āļāļ•āļī āđāļĨāđ‰āļ§āđ€āļ­āļē ImageData āļ‚āļ­āļ‡āļ āļēāļžāļ—āļąāđ‰āļ‡āļŠāļ­āļ‡āļĄāļēāļ—āļģ bitwise AND 
 
āļŠāļĩāļ”āļģ āļ„āđˆāļē mask pixel 0 āļ—āļģāđƒāļŦāđ‰āļāļĨāļēāļĒāļŠāļĩāļ”āļģāļ•āļēāļĄ mask 
 
āļŠāļĩāļ‚āļēāļ§ āļ„āđˆāļē mask pixel āđ€āļ›āđ‡āļ™ 255 āđ€āļĄāļ·āđˆāļ­ AND āđāļĨāđ‰āļ§āļ—āļģāđƒāļŦāđ‰āđ„āļ”āđ‰āļ„āđˆāļē pixel āļ•āļēāļĄāļ āļēāļžāļ•āđ‰āļ™āļ‰āļšāļąāļš
 
  utils.imageMask = function (img1, img2) {
    const width1 = img1.width
    const height1 = img1.height
    const width2 = img2.width
    const height2 = img2.height

    if (!img1 || !img2)
      return img1 || img2;

    const imageData = new ImageData(width1, height1)

    for (let y = 0; y < height1; y++) {
      for (let x = 0; x < width1; x++) {
        const index1 = (y * width1 + x) * 4;

        imageData.data[index1] = img1.data[index1]; // Red value
        imageData.data[index1 + 1] = img1.data[index1 + 1]; // Green value
        imageData.data[index1 + 2] = img1.data[index1 + 2]; // Blue value
        imageData.data[index1 + 3] = img1.data[index1 + 3]; // Alpha value (default to opaque)

        if (y < height2 && x < width2) {
          const index2 = (y * width2 + x) * 4;

          imageData.data[index1] &= img2.data[index2]; // Red value
          imageData.data[index1 + 1] &= img2.data[index2 + 1]; // Green value
          imageData.data[index1 + 2] &= img2.data[index2 + 2]; // Blue value
        }
      }
    }
return imageData

 
Audio Processing
 
src: audio out: text 
 
AI model āđƒāļ™āļāļĨāļļāđˆāļĄāļ™āļĩāđ‰āđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡āļāļąāļšāļāļēāļĢāļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāđ€āļŠāļĩāļĒāļ‡ āđāļĨāđ‰āļ§āđƒāļŦāđ‰āļœāļĨāļĨāļąāļžāļ˜āđŒāļāļĨāļąāļšāļĄāļēāđ€āļ›āđ‡āļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄ āļŠāđˆāļ§āļ™āđƒāļŦāļāđˆāđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡āļāļąāļšāļāļēāļĢāđāļĒāļāđāļĒāļ°āđ€āļŠāļĩāļĒāļ‡ (audio classification) āļŦāļĢāļ·āļ­āļ–āļ­āļ”āđ€āļŠāļĩāļĒāļ‡āļžāļđāļ”āđƒāļŦāđ‰āļāļĨāļēāļĒāđ€āļ›āđ‡āļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄ (transcribe / speech recognition)

āđ€āļŠāđˆāļ™āđ€āļ”āļĩāļĒāļ§āļāļąāļšāļĢāļđāļ›āļ āļēāļž āļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļŠāļĩāļĒāļ‡āļ—āļĩāđˆāđ€āļ›āđ‡āļ™ url āļ­āļĒāļđāđˆāđƒāļ™āļ­āļīāļ™āđ€āļ•āļ­āļĢāđŒāđ€āļ™āđ‡āļ•āļŠāļēāļĄāļēāļĢāļ–āļŠāđˆāļ‡āđ„āļ›āļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāđ„āļ”āđ‰āļ—āļąāļ™āļ—āļĩ āđāļ•āđˆāļ–āđ‰āļēāđƒāļŠāđ‰āđ„āļŸāļĨāđŒāđ€āļŠāļĩāļĒāļ‡āļ—āļĩāđˆāļ­āļĒāļđāđˆāđƒāļ™āļ„āļ­āļĄāļžāļīāļ§āđ€āļ•āļ­āļĢāđŒāļ•āđ‰āļ­āļ‡āđāļ›āļĨāļ‡āđ€āļ›āđ‡āļ™ data URL
 
āđ‚āļŠāļ„āļ”āļĩāļ—āļĩāđˆ HTML5 āļĄāļĩ tag <audio> āđƒāļŦāđ‰āđƒāļŠāđ‰āđ€āļ›āđ‡āļ™ player āđ„āļ”āđ‰āļ„āļĨāđ‰āļēāļĒāļāļąāļšāļāļēāļĢāđƒāļŠāđ‰ <img> āđāļŠāļ”āļ‡āļĢāļđāļ›āļ āļēāļž 
 
<audio controls ng-src="{{ trustResourceUrl(expr) }}"></audio>
 
āļ•āļīāļ”āļ‚āļąāļ”āđ€āļžāļĩāļĒāļ‡ AngularJS āđ„āļĄāđˆāļĢāļđāđ‰āļˆāļąāļ tag āļ™āļĩāđ‰ āđāļĨāļ°āđ„āļĄāđˆāļ­āļ™āļļāļāļēāļ•āđƒāļŦāđ‰āđƒāļŠāđ‰ url āđ‚āļ”āļĒāļ•āļĢāļ‡ āļ•āđ‰āļ­āļ‡āļ—āļģāđƒāļŦāđ‰āđ€āļ›āđ‡āļ™ trust resource āļāđˆāļ­āļ™
 
$scope.trustResourceUrl = function (url) {
      return $sce.trustAsResourceUrl(url)
    }

 
src: text out: audio
 
āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡ AI model āļāļĨāđˆāļļāļĄāļ™āļĩāđ‰ āļ„āļ·āļ­ text to speech āđƒāļŠāđ‰āļ­āđˆāļēāļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ™āļąāđˆāļ™āđ€āļ­ā

āđ‚āļŠāļ„āļ”āļĩāļ—āļĩāđˆāļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļŠāļĩāļĒāļ‡ āļ—āļĩāđˆāđ„āļ”āđ‰āļĢāļąāļšāļĄāļēāļˆāļēāļ AI āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰ lib wavefile āļĄāļēāļŠāđˆāļ§āļĒāđāļ›āļĨāļ‡āđƒāļŦāđ‰āđ€āļ›āđ‡āļ™ data URL āđ€āļžāļ·āđˆāļ­āđƒāļŠāđ‰āļāļąāļš <audio> āđ„āļ”āđ‰
 
    if (spec.out=='audio' && result.audio) {
      var wav = new wavefile.WaveFile()

      wav.fromScratch(1, result.sampling_rate, '32f', result.audio)
      $scope.result.audio = wav.toDataURI()
    }

 
Multimodal
 
src: image out: text (āđ„āļĄāđˆāļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļ)
 
image document Q&A
 
āđ€āļ›āđ‡āļ™ AI model āļ—āļĩāđˆāļœāļŠāļĄāļĢāļ°āļŦāļ§āđˆāļēāļ‡ Vision Processing āļ­āđˆāļēāļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļˆāļēāļāļĢāļđāļ›āļ āļēāļž āļāļąāļš NLP āļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒāļ„āļ§āļēāļĄāļŦāļĄāļēāļĒāļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ™āļąāđ‰āļ™ āđ€āļžāļ·āđˆāļ­āļ•āļ­āļšāļ„āļģāļ–āļēāļĄ 
 
āļ„āļ§āļēāļĄāļ‹āļąāļšāļ‹āđ‰āļ­āļ™āđ€āļ›āđ‡āļ™āđ€āļĢāļ·āđˆāļ­āļ‡āļ āļēāļĒāđƒāļ™āļ‚āļ­āļ‡āļœāļđāđ‰āļŠāļĢāđ‰āļēāļ‡ model āđāļ•āđˆāļāļēāļĢāđ€āļ‚āļĩāļĒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄāđ€āļžāļ·āđˆāļ­āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļ‡āļēāļ™ āļ—āļģāđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļš model āļ­āļ·āđˆāļ™āļ‚āđ‰āļēāļ‡āļ•āđ‰āļ™

image captioner
 
āđƒāļŠāđ‰ Vision Processing āđāļĒāļāđāļĒāļ°āļ­āļ‡āļ„āđŒāļ›āļĢāļ°āļāļ­āļšāļ‚āļ­āļ‡āļ āļēāļž āđāļĨāđ‰āļ§āđƒāļŠāđ‰ NLP āļŠāļĢāđ‰āļēāļ‡āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ­āļ˜āļīāļšāļēāļĒāļĢāļđāļ›āļ āļēāļžāļ™āļąāđ‰āļ™

src: image|audio + choices out: text (āđ„āļĄāđˆāļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļ)
 
zero-shot model
 
āđƒāļŠāđ‰āļŠāļģāļŦāļĢāļąāļšāļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒ input āļ—āļĩāđˆāđ„āļ”āđ‰āļĢāļąāļš āđ€āļžāļ·āđˆāļ­āđƒāļŦāđ‰āļ„āđˆāļēāļ„āļ§āļēāļĄāļ™āđˆāļēāļˆāļ°āđ€āļ›āđ‡āļ™ (score) āļ•āļēāļĄ choices āļ—āļĩāđˆāļĢāļ°āļšāļļāļĄāļē
 

āļ‹āļ™! 
 
unlisted model
 
āđāļĨāđ‰āļ§āļĒāļąāļ‡āļĄāļĩ model āļ­āļ·āđˆāļ™āļ—āļģāđ„āļ”āđ‰āđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļ™āļ­āļĩāļāđ„āļŦāļĄ ?
 
āļāđˆāļ­āļ™āļ—āļĩāđˆāļˆāļ°āļŠāđˆāļ‡āđ‚āļ„āđ‰āļ” v3 āđ„āļ›āđ„āļ§āđ‰āđƒāļ™ gist āļœāļĄāļ•āļ·āđˆāļ™āļĄāļēāļ•āļ­āļ™āđ€āļŠāđ‰āļēāļžāļĢāđ‰āļ­āļĄāļāļąāļšāļ„āļ§āļēāļĄāļ„āļīāļ”āļ§āđˆāļē āļ™āđˆāļēāļˆāļ°āļ—āļģāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđˆāļŠāļ·āđˆāļ­ model āļ—āļĩāđˆāļĒāļąāļ‡āđ„āļĄāđˆāļĄāļĩāđƒāļ™ list āđ„āļ”āđ‰āļ”āđ‰āļ§āļĒ āđ€āļžāļ·āđˆāļ­āļˆāļ°āđ„āļ”āđ‰āļ—āļ”āļŠāļ­āļšāđāļšāļšāđ€āļĢāđ‡āļ§ āđ† āđƒāļ™āđ€āļĄāļ·āđˆāļ­ input āļāļąāļš output āļ—āļąāđ‰āļ‡āļŦāļĨāļēāļĒāļāđ‡āļĄāļĩāļĄāļēāļ•āļĢāļāļēāļ™āļ„āļĨāđ‰āļēāļĒ āđ† āļāļąāļ™āļ­āļĒāļđāđˆāđāļĨāđ‰āļ§
 
āļ­āļēāļˆāļˆāļ°āđ€āļ›āđ‡āļ™ model āļ—āļĩāđˆāđ€āļžāļīāđˆāļ‡āļ›āļĢāļąāļšāļ›āļĢāļļāļ‡āļ­āļ­āļāļĄāļēāđƒāļŦāļĄāđˆ āļŦāļĢāļ·āļ­āđ€āļ›āđ‡āļ™ model āļ—āļĩāđˆāļœāļđāđ‰āļŠāļĢāđ‰āļēāļ‡āđ„āļĄāđˆāđ„āļ”āđ‰āđ€āļ‚āļĩāļĒāļ™āļ­āļ˜āļīāļšāļēāļĒāđ€āļ­āļēāđ„āļ§āđ‰ 
 
āđ€āļĢāļīāđˆāļĄāļˆāļēāļāđ„āļĨāđˆāļ”āļđāļĢāļēāļĒāļŠāļ·āđˆāļ­ model āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ‚āļ­āļ‡ task āļ—āļĩāđˆāđƒāļŠāđ‰āļāļąāļš Transformer.js āđ„āļ”āđ‰ (āļˆāļēāļāđ€āļžāļˆāļ‚āļ­āļ‡ Hugging Face) āđ€āļŠāđˆāļ™ task: fill-task

āļžāļšāļ§āđˆāļēāļĄāļĩ model āļ—āļĩāđˆāļ­āļĒāļđāđˆāđƒāļ™āļŦāļĄāļ§āļ” fill-mask āļ­āļĩāļāļŦāļĨāļēāļĒāļ•āļąāļ§ āļˆāļķāļ‡āļ—āļ”āļĨāļ­āļ‡āđƒāļŠāđ‰ model Xenova/wangchanberta-base-att-spm-uncased (āļŠāļąāļ‡āļŦāļĢāļ“āđŒāļ§āđˆāļēāļ•āļąāđ‰āļ‡āļŠāļ·āđˆāļ­āđ‚āļ”āļĒāļ™āļąāļāļžāļąāļ’āļ™āļēāđ„āļ—āļĒ) āļŠāļąāļ‡āđ€āļāļ•āļ§āđˆāļēāđ„āļĄāđˆāļĄāļĩāļ„āļđāđˆāļĄāļ·āļ­ āđāļ™āļ°āļ™āļģāļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļ‡āļēāļ™āđƒāļ” āđ† āđ€āļĨāļĒ āļ™āļ­āļāļˆāļēāļāļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļĄāļēāļ•āļĢāļāļēāļ™āļ•āļēāļĄ template āđ€āļĢāļēāļˆāļķāļ‡āļ—āļ”āļĨāļ­āļ‡āđ€āļ­āļēāđāļ„āđˆāļŠāļ·āđˆāļ­ model āđ„āļ›āđƒāļŠāđ‰āļ—āļ”āļŠāļ­āļš

āļœāļĨāļāļēāļĢāļ—āļ”āļŠāļ­āļšāļĨāļ­āļ‡āđƒāļŠāđˆ input āļŦāļĨāļēāļĒ āđ† āđāļšāļš āļžāļšāļ§āđˆāļē model āļ™āļĩāđ‰āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āļ•āļąāļ§āļ­āļąāļāļĐāļĢ lowercase āđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™ āđāļĨāļ°āđƒāļŠāđ‰āļŠāļąāļāļāļĨāļąāļāļĐāļ“āđŒ <mask> āļˆāļķāļ‡āļŠāļēāļĄāļēāļĢāļ–āļ•āļ­āļšāļāļĨāļąāļšāļĄāļēāđ„āļ”āđ‰āļ•āļēāļĄāļ āļēāļž āđ€āļ”āļēāđ„āļ”āđ‰āļ§āđˆāļēāđ€āļ›āđ‡āļ™ model āļ—āļĩāđˆ train āļ”āđ‰āļ§āļĒāļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļĄāļĩāļ āļēāļĐāļēāđ„āļ—āļĒāļ”āđ‰āļ§āļĒ āđ€āļžāļĢāļēāļ°āđ„āļ”āđ‰āļœāļĨāļĨāļąāļžāļ˜āđŒāđ€āļ›āđ‡āļ™āļ„āļģāđ„āļ—āļĒāļ­āļ­āļāļĄāļē

 

āļŠāļĢāļļāļ›
 
āļœāļĄāđ€āļĢāļīāđˆāļĄāđ€āļ‚āđ‰āļēāļŠāļđāđˆāđāļ§āļ”āļ§āļ‡ AI āđƒāļ™āđāļ‡āđˆāļĄāļļāļĄāļ‚āļ­āļ‡āļāļēāļĢāđ€āļ‚āļĩāļĒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄāđ€āļžāļ·āđˆāļ­āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰ āļžāļĒāļēāļĒāļēāļĄāļĄāļ­āļ‡āļŦāļēāļŠāđˆāļ­āļ‡āļ—āļēāļ‡āđƒāļ™āļāļēāļĢāļ›āļĢāļ°āļĒāļļāļāļ•āđŒāđƒāļŠāđ‰ āļ‹āļķāđˆāļ‡āļāđ‡āļĒāļąāļ‡āđ„āļĄāđˆāļ­āļ°āđ„āļĢāļ—āļĩāđˆāđ€āļ›āđ‡āļ™āđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒāļŠāļąāļ”āđ€āļˆāļ™ āļ„āļ§āļēāļĄāļĢāļđāđ‰āļŠāļķāļāđāļĢāļāļ—āļĩāđˆāđ„āļ”āđ‰āļĨāļ­āļ‡āļŠāļģāļĢāļ§āļˆāļšāļĢāļĢāļ”āļē big name āđ€āļŠāđˆāļ™ OpenAI, Google āđāļĨāļ° Microsoft āļĄāļĩāļ­āļēāļāļēāļĢāđ€āļŦāļĄāļ·āļ­āļ™āđ€āļ‚āđ‰āļēāļĄāļēāđƒāļ™āļ‡āļēāļ™āļ—āļĩāđˆāļĄāļĩāļ„āļ™āļĄāļēāļāļĄāļēāļĒ āđāļ•āđˆāđ„āļĄāđˆāđ€āļŦāđ‡āļ™āđƒāļ„āļĢāļ—āļĩāđˆāļ„āļļāđ‰āļ™āđ€āļ„āļĒāđ€āļĨāļĒ āļ„āļ™āđƒāļ™āļ™āļąāđ‰āļ™āļžāļđāļ”āļ„āļļāļĒāļāļąāļ™āļ”āđ‰āļ§āļĒāļ„āļģāļĻāļąāļžāļ—āđŒāļ—āļĩāđˆāļŸāļąāļ‡āđ„āļĄāđˆāđ€āļ‚āđ‰āļēāđƒāļˆ
 
pipeline
 
āđ€āļĢāļīāđˆāļĄāđāļĢāļāļˆāļēāļāļāļēāļĢāļ—āļ”āļĨāļ­āļ‡āđ€āļ‚āļĩāļĒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄāļ•āļīāļ”āļ•āđˆāļ­āļāļąāļš PaLM API āđāļ•āđˆāđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāđ€āļ›āđ‡āļ™ LM (Language Model) āđƒāļŠāđ‰āļ‚āđ‰āļ­āļ„āļ§āļēāļĄ text āđ€āļ›āđ‡āļ™ input/output āđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļšāđƒāļŠāđ‰ ChatGPT āđāļĨāļ° Bard āļžāļ­āđ„āļĄāđˆāļĄāļĩāđ‚āļˆāļ—āļĒāđŒāļŦāļĨāļąāļ‡āļˆāļēāļāđ€āļ‚āļĩāļĒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄāļ•āļīāļ”āļ•āđˆāļ­āđ„āļ”āđ‰āđāļĨāđ‰āļ§ āđ€āļĨāļĒāļĒāļąāļ‡āļ„āļīāļ”āđ„āļĄāđˆāļ­āļ­āļāļ§āđˆāļēāļˆāļ°āļ—āļ”āļŠāļ­āļšāļ­āļ°āđ„āļĢāļ•āđˆāļ­
 
āļžāļ­āļĄāļēāđ€āļˆāļ­ Hugging Face āđāļĨāđ‰āļ§āđ„āļ”āđ‰āļĨāļ­āļ‡āđ€āļ‚āļĩāļĒāļ™āđ‚āļ„āđ‰āļ”āļœāđˆāļēāļ™ Transformer.js āļ—āļģāđƒāļŦāđ‰āđ€āļŦāđ‡āļ™āļŠāļīāđ‰āļ™āļŠāđˆāļ§āļ™āđ€āļĨāđ‡āļ āđ† āļ—āļĩāđˆāđ€āļ›āđ‡āļ™ AI āđ€āļ‰āļžāļēāļ°āļ—āļēāļ‡ āļŠāļēāļĄāļēāļĢāļ–āđ€āļ­āļēāļĄāļēāļ›āļĢāļ°āļāļ­āļšāļāļąāļ™āđƒāļŦāđ‰āļāļĨāļēāļĒāđ€āļ›āđ‡āļ™ model āđƒāļŦāļāđˆāļ‚āļķāđ‰āļ™āđ„āļ”āđ‰ 

 
āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđ€āļŠāđˆāļ™ āļŦāļēāļāļ•āđ‰āļ­āļ‡āļāļēāļĢāđāļ›āļĨāļ‡āđ€āļŠāļĩāļĒāļ‡āļ—āļĩāđˆāļžāļđāļ”āļ āļēāļĐāļēāđ„āļ—āļĒāđ€āļ›āđ‡āļ™āđ€āļŠāļĩāļĒāļ‡āļžāļđāļ”āļ āļēāļĐāļēāļ­āļąāļ‡āļāļĪāļĐ āļˆāļ°āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰ AI āļŦāļĨāļēāļĒ model āļĄāļēāļ•āđˆāļ­āđ€āļ›āđ‡āļ™ pipeline āļœāļĨāļĨāļąāļžāļ˜āđŒāļˆāļēāļāļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļŦāļ™āļķāđˆāļ‡āļˆāļ°āļŠāđˆāļ‡āļ•āđˆāļ­āđ„āļ›āđ€āļ›āđ‡āļ™āļ­āļīāļ™āļžāļļāļ—āļŠāļģāļŦāļĢāļąāļšāļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļ•āđˆāļ­āđ„āļ›
 
auto-speech-recognition āđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļˆāļēāļāđ€āļŠāļĩāļĒāļ‡āļžāļđāļ”āļ āļēāļĐāļēāđ„āļ—āļĒ āđāļ›āļĨāļ‡āđ€āļ›āđ‡āļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ āļēāļĐāļēāđ„āļ—āļĒ 
text-translation āļˆāļēāļāļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ āļēāļĐāļēāđ„āļ—āļĒ āđāļ›āļĨāđ€āļ›āđ‡āļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ āļēāļĐāļēāļ­āļąāļ‡āļāļĪāļĐ
text-to-speech āļˆāļēāļāļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ āļēāļĐāļēāļ­āļąāļ‡āļāļĪāļĐ āđāļ›āļĨāļ‡āđ€āļ›āđ‡āļ™āđ€āļŠāļĩāļĒāļ‡āļžāļđāļ”
 
..āđāļĨāļ°āđāļšāļ„āļ—āļĩāđ€āļĢāļĩāļĒāļāđ‡āļĄāļĩāļšāļ—āļšāļēāļ—āļŦāļĨāļąāļāđ€āļŠāđˆāļ™āđ€āļ„āļĒāđƒāļ™āļāļēāļĢāļ§āļīāļ§āļąāļ’āļ™āđŒāđāļšāļšāļ‹āļīāļĄāđ„āļšāđ‚āļ­āļ‹āļīāļŠ āđ€āļĄāļ·āđˆāļ­āđāļšāļ„āļ—āļĩāđ€āļĢāļĩāļĒāļ‚āļ™āļēāļ”āđ€āļĨāđ‡āļāļšāļēāļ‡āļŠāļ™āļīāļ”āļœāļ™āļ§āļāļĢāļ§āļĄāļāļąāļšāđ€āļ‹āļĨāļĨāđŒāļ—āļĩāđˆāđƒāļŦāļāđˆāļāļ§āđˆāļēāļ­āļĒāđˆāļēāļ‡āđ€āļāļ·āđ‰āļ­āļāļđāļĨāļāļąāļ™ āđāļĨāļ°āļĒāļąāļ‡āļ­āļĒāļđāđˆāđƒāļ™āđ€āļ‹āļĨāļĨāđŒāđ€āļŦāļĨāđˆāļēāļ™āļąāđ‰āļ™āđ€āļĢāļ·āđˆāļ­āļĒāļĄāļēāđƒāļ™āļāļēāļ™āļ°āđ€āļ›āđ‡āļ™āļ­āļ‡āļ„āđŒāļ›āļĢāļ°āļāļ­āļšāļ‚āļ­āļ‡āđ€āļ‹āļĨāļĨāđŒ āļœāļĨāļ—āļĩāđˆāđ€āļāļīāļ”āļ‚āļķāđ‰āļ™āļ•āļēāļĄāļĄāļēāļāđ‡āļ„āļ·āļ­āļāđ‰āļēāļ§āļ‚āļ™āļēāļ”āļĒāļąāļāļĐāđŒāđƒāļ™āļ§āļīāļ§āļąāļ’āļ™āļēāļāļēāļĢ āļ™āļąāđ‰āļ™āļ„āļ·āļ­āļāļēāļĢāļāđˆāļ­āđ€āļāļīāļ”āļ‚āļ­āļ‡āđ€āļ‹āļĨāļĨāđŒāļžāļ·āļŠāđāļĨāļ°āļŠāļąāļ•āļ§āđŒāļ‹āļķāđˆāļ‡āļŠāļ·āļšāļžāļąāļ™āļ˜āļļāđŒāļ”āđ‰āļ§āļĒāđ€āļžāļĻ āđāļĨāļ°āđƒāļ™āļ—āļĩāđˆāļŠāļļāļ”āļāđ‡āļ§āļīāļ§āļąāļ’āļ™āđŒāļ‚āļķāđ‰āļ™āđ€āļ›āđ‡āļ™āļŠāļīāđˆāļ‡āļĄāļĩāļŠāļĩāļ§āļīāļ•āļ•āđˆāļēāļ‡āđ† āļ—āļĩāđˆāđ€āļŦāđ‡āļ™āļāļąāļ™āļ­āļĒāļđāđˆāđƒāļ™āļŠāļīāđˆāļ‡āđāļ§āļ”āļĨāđ‰āļ­āļĄāļ‚āļ­āļ‡āđ€āļĢāļē ..āđ€āļĄāļ·āđˆāļ­āļ­āļ°āļ•āļ­āļĄāļ„āļēāļĢāđŒāļšāļ­āļ™ āļ­āļ­āļāļ‹āļīāđ€āļˆāļ™ āđāļĨāļ°āđ„āļŪāđ‚āļ”āļĢāđ€āļˆāļ™ āđ€āļāļēāļ°āđ€āļāļĩāđˆāļĒāļ§āļāļąāļ™āđāļšāļšāļŦāļ™āļķāđˆāļ‡āđ€āļžāļ·āđˆāļ­āļŠāļĢāđ‰āļēāļ‡āļ™āđ‰āļģāļ•āļēāļĨ āļŠāļēāļĢāļ›āļĢāļ°āļāļ­āļšāļ—āļĩāđˆāđ„āļ”āđ‰āļˆāļ°āļĄāļĩāļĢāļŠāļŦāļ§āļēāļ™ āļ„āļ§āļēāļĄāļŦāļ§āļēāļ™āļ™āļąāđ‰āļ™āđ„āļĄāđˆāđƒāļŠāđˆāļ­āļĒāļđāđˆāđƒāļ™ C āļŦāļĢāļ·āļ­ O āļŦāļĢāļ·āļ­ H āđāļ•āđˆāļ­āļĒāļđāđˆāđƒāļ™āđāļšāļšāđāļœāļ™āļ—āļĩāđˆāļœāļļāļ”āļšāļąāļ‡āđ€āļāļīāļ”āļˆāļēāļāļ›āļāļīāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāļ‚āļ­āļ‡āļ­āļ°āļ•āļ­āļĄāđ€āļŦāļĨāđˆāļēāļ™āļąāđ‰āļ™ āļĄāļąāļ™āđ€āļ›āđ‡āļ™āļ„āļļāļ“āļŠāļĄāļšāļąāļ•āļīāļ—āļĩāđˆāļœāļļāļ”āļšāļąāļ‡āđ€āļāļīāļ”āļ‚āļķāđ‰āļ™āļĄāļē āđāļĨāļ°āļ–āđ‰āļēāļˆāļ°āļžāļđāļ”āđƒāļŦāđ‰āļŠāļąāļ”āļ‚āļķāđ‰āļ™āļ­āļĩāļ āļ„āļ§āļēāļĄāļŦāļ§āļēāļ™āļāđ‡āđ„āļĄāđˆāđƒāļŠāđˆāļ„āļļāļ“āļŠāļĄāļšāļąāļ•āļīāļāļēāļĢāđ€āļāļēāļ°āđ€āļāļĩāđˆāļĒāļ§āļ—āļēāļ‡āđ€āļ„āļĄāļĩ āđāļ•āđˆāđ€āļ›āđ‡āļ™āļ›āļĢāļ°āļŠāļšāļāļēāļĢāļ“āđŒāļ‚āļ­āļ‡āļ›āļĢāļ°āļŠāļēāļ—āļŠāļąāļĄāļœāļąāļŠāļ‚āļ­āļ‡āđ€āļĢāļē āļ—āļĩāđˆāđ€āļāļīāļ”āļ‚āļķāđ‰āļ™āđ€āļĄāļ·āđˆāļ­āđ‚āļĄāđ€āļĨāļāļļāļĨāļ™āđ‰āļģāļ•āļēāļĨāļ—āļģāļ›āļāļīāļāļīāļĢāļīāļĒāļēāļāļąāļšāļ›āļĢāļēāļāļāļāļēāļĢāļ“āđŒāļ—āļēāļ‡āđ€āļ„āļĄāļĩāđƒāļ™āļ•āđˆāļ­āļĄāļĢāļąāļšāļĢāļŠ āļ‹āļķāđˆāļ‡āļŠāđˆāļ‡āļœāļĨāđƒāļŦāđ‰āđ€āļ‹āļĨāļĨāđŒāļ›āļĢāļ°āļŠāļēāļ—āļŠāļļāļ”āļŦāļ™āļķāđˆāļ‡āļŠāđˆāļ‡āļŠāļąāļāļāļēāļ“āđāļšāļšāļŦāļ™āļķāđˆāļ‡āļ‚āļķāđ‰āļ™āļĄāļē āļ›āļĢāļ°āļŠāļšāļāļēāļĢāļ“āđŒāļ‚āļ­āļ‡āļ„āļ§āļēāļĄāļŦāļ§āļēāļ™āļˆāļķāļ‡āļœāļļāļ”āļšāļąāļ‡āđ€āļāļīāļ”āļ‚āļķāđ‰āļ™āļˆāļēāļāļāļīāļˆāļāļĢāļĢāļĄāļ‚āļ­āļ‡āļĢāļ°āļšāļšāļ›āļĢāļ°āļŠāļēāļ— āđ‚āļĒāļ‡āđƒāļĒāļ—āļĩāđˆāļ‹āđ‰āļ­āļ™āđ€āļĢāđ‰āļ™ / (2002) Fritjof Capraāļ§āļīāļĻāļīāļĐāļāđŒâ€Šâ€Šāļ“āļąāļāļŽāļŠ āļ§āļąāļ‡āļ§āļīāļāļāļđ āđāļĨāļ°āļŠāļ§āđˆāļēāļ‡āļžāļ‡āļĻāđŒāļĻāļīāļĢāļīāļžāļąāļ’āļ™āđŒ āđāļ›āļĨ
 
āļŠāđ€āļ›āļ„āļ„āļ­āļĄāļžāļīāļ§āđ€āļ•āļ­āļĢāđŒ 
 
āļ›āļāļ•āļīāļœāļĄāļŠāļĨāļąāļšāđƒāļŠāđ‰āđ‚āļ™āđ‰āļ•āļšāļļāđŠāļ„āļŦāļĨāļēāļĒāđ€āļ„āļĢāļ·āđˆāļ­āļ‡ āļĄāļĩāļŠāđ€āļ›āļ„āļ‚āļ­āļ‡ CPU/memory āđāļ•āļāļ•āđˆāļēāļ‡āļāļąāļ™ āļŦāļēāļāļ™āļąāđˆāļ‡āļ—āļģāļ‡āļēāļ™āļ‚āđ‰āļēāļ‡āļ™āļ­āļāļˆāļ°āđƒāļŠāđ‰āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļ—āļĩāđˆāļ™āđ‰āļģāļŦāļ™āļąāļāđ€āļšāļē (Pentium M/4GB) āļŦāļēāļāļ­āļĒāļđāđˆāļšāđ‰āļēāļ™āļāđ‡āđƒāļŠāđ‰ 2 āđ€āļ„āļĢāļ·āđˆāļ­āļ‡ (i5 gen8/8GB) āļŦāļĢāļ·āļ­ (i5 gen10/16GB) 
 
āļ—āļļāļāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļŠāļēāļĄāļēāļĢāļ–āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āđ‚āļ›āļĢāđāļāļĢāļĄāļ—āļ”āļŠāļ­āļšāļœāđˆāļēāļ™ browser āđ„āļ”āđ‰ āđ€āļžāļĩāļĒāļ‡āđāļ•āđˆāļŠāđ‰āļēāđ€āļĢāđ‡āļ§āļ•āđˆāļēāļ‡āļāļąāļ™āļ„āđˆāļ­āļ™āļ‚āđ‰āļēāļ‡āļŠāļąāļ”āđ€āļˆāļ™ āđāļĨāļ°āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļ—āļĩāđˆ memory āļ™āđ‰āļ­āļĒ āļšāļēāļ‡āļ„āļĢāļąāđ‰āļ‡āđ„āļĄāđˆāļŠāļēāļĄāļēāļĢāļ–āļ—āļ”āļŠāļ­āļšāļŦāļĨāļēāļĒ model āļ•āđˆāļ­āđ€āļ™āļ·āđˆāļ­āļ‡āļāļąāļ™āđ„āļ”āđ‰ āļ•āđ‰āļ­āļ‡āļŠāļąāđˆāļ‡ refresh browser āļāđˆāļ­āļ™
 
āđ€āļĄāļ·āđˆāļ­āļ„āļ·āļ™āļ™āļĩāđ‰āđ€āļ­āļ‡āļ—āļĩāđˆāļœāļĄāđ€āļžāļīāđˆāļ‡āļŠāļąāļ‡āđ€āļāļ•āļ§āđˆāļē āļ—āļļāļāļ„āļĢāļąāđ‰āļ‡āļ—āļĩāđˆāļŠāļąāđˆāļ‡āđƒāļŦāđ‰āļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāđ€āļŠāļĩāļĒāļ‡āļžāļąāļ”āļĨāļĄāđ‚āļ™āđ‰āļ•āļšāļļāđŠāļ„āļ”āļąāļ‡āļ‚āļķāđ‰āļ™āļŠāļąāļ”āđ€āļˆāļ™āļ—āđˆāļēāļĄāļāļĨāļēāļ‡āļ„āļ§āļēāļĄāđ€āļ‡āļĩāļĒāļš āļˆāļķāļ‡āļ„āļīāļ”āļ§āđˆāļēāļŦāļēāļāļˆāļ°āđ„āļ›āđƒāļŦāđ‰āđ„āļāļĨāļāļ§āđˆāļēāļ™āļĩāđ‰ āļāđ‡āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āļžāļĨāļąāļ‡ CPU āđāļĨāļ° memory āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆāļ™āļąāļāļžāļąāļ’āļ™āļē AI āļŦāļĨāļēāļĒāļ„āļ™āļšāļ­āļāļˆāļĢāļīāļ‡ āđ† āļ—āļĩāđˆāļŠāļģāļ„āļąāļāļ­āļēāļˆāļˆāļ°āđ„āļĄāđˆāļŠāļēāļĄāļēāļĢāļ–āļ—āļģāđāļ„āđˆāļĨāļ­āļ‡āđ€āļĨāđˆāļ™āļŠāļ™āļļāļāđ† āđāļšāļšāļ™āļĩāđ‰āļ­āļĩāļāđāļĨāđ‰āļ§ āđ€āļ›āđ‡āļ™āļŠāļīāđˆāļ‡āļ—āļĩāđˆāļĒāļąāļ‡āļ•āļ­āļšāļ•āļąāļ§āđ€āļ­āļ‡āđ„āļĄāđˆāđ„āļ”āđ‰ āļŦāļēāļāļˆāļ°āđ€āļĨāļ·āļ­āļāđ„āļ›āļ•āļēāļĄāđ€āļŠāđ‰āļ™āđāļ™āļ§āļ•āļąāđ‰āļ‡āļ‚āļ­āļ‡āļ•āļąāļ§ T 
 
āļ—āļģāđ„āļ›āļ—āļģāđ„āļĄ āđāļĨāļ° āļ•āđ‰āļ­āļ‡āđāļĨāļāļāļąāļšāļ­āļ°āđ„āļĢ āđ€āļ§āļĨāļē āļŠāļļāļ‚āļ āļēāļž āļŦāļĢāļ·āļ­āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒ?
 
20231210
 


āļšāļ—āļ„āļ§āļēāļĄāļ—āļĩāđˆāđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡
āđ€āļ§āđ‡āļšāđ„āļ‹āļ•āđŒāļ™āļĩāđ‰āļĄāļĩāļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āļ„āļļāļāļāļĩāđ‰ āđ€āļžāļ·āđˆāļ­āđ€āļžāļīāđˆāļĄāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāđāļĨāļ°āļ›āļĢāļ°āļŠāļšāļāļēāļĢāļ“āđŒāļ—āļĩāđˆāļ”āļĩāđƒāļ™āļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āđ€āļ§āđ‡āļšāđ„āļ‹āļ•āđŒāļ‚āļ­āļ‡āļ—āđˆāļēāļ™ āļ—āđˆāļēāļ™āļŠāļēāļĄāļēāļĢāļ–āļ­āđˆāļēāļ™āļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄāđ„āļ”āđ‰āļ—āļĩāđˆ āļ™āđ‚āļĒāļšāļēāļĒāļ„āļ§āļēāļĄāđ€āļ›āđ‡āļ™āļŠāđˆāļ§āļ™āļ•āļąāļ§ āđāļĨāļ° āļ™āđ‚āļĒāļšāļēāļĒāļ„āļļāļāļāļĩāđ‰
āđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļšāļŠāļīāļ™āļ„āđ‰āļē
0/4
āļĨāļšāļ—āļąāđ‰āļ‡āļŦāļĄāļ”
āđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļš
Powered By MakeWebEasy Logo MakeWebEasy