在欧洲,AI 开发人员与 AI 治理人员的比例为 7:1。
AI builders outnumber AI governance hires 7:1 in Europe

原始链接: https://axipro.co/eu-ai-act-hiring-gap-study/

这段代码实现了一个基于网页的交互式问卷,旨在确定用户在欧盟《人工智能法案》(EU AI Act)下的监管地位。 主要功能包括: * **问卷逻辑:** 动态渲染问题,处理单选和多选操作,并更新进度追踪。 * **结果计算:** 脚本会记录用户在问卷中选择的“标签”。问卷结束后,系统会将这些标签映射到预设的结果集,从而对用户在欧盟《人工智能法案》下的合规地位进行个性化评估。 * **界面管理:** 管理问题界面与最终结果显示之间的切换,并根据计算结果展示相应的徽章、摘要和列表。 * **动态分享:** 脚本包含一项高级功能,利用 HTML5 Canvas API 自动生成可下载的 PNG 图片。这张“可分享”的图片包含用户的具体结果、品牌标识(AXIPRO)以及相关的监管背景信息,便于在社交媒体上进行传播。 总体而言,该工具提供了一个功能完备的客户端评估方案,将复杂的监管要求转化为个性化、可视化且易于分享的格式。

抱歉。
相关文章

原文
'; if(q.hint){ h += '

' + q.hint + '

'; } h += '

'; q.opts.forEach(function(o,i){ var on = sel.indexOf(i) >= 0; h += ''; }); h += '

'; h += '

Why we ask: ' + q.help + '

'; mount.innerHTML = h; Array.prototype.forEach.call(mount.querySelectorAll('.axp-opt'), function(btn){ btn.addEventListener('click', function(){ pick(q, parseInt(btn.dataset.oi,10)); }); }); prog.style.width = ((idx) / QUESTIONS.length * 100) + '%'; progTxt.textContent = 'Question ' + (idx + 1) + ' of ' + QUESTIONS.length; backBtn.disabled = idx === 0; nextBtn.disabled = sel.length === 0; nextBtn.textContent = idx === QUESTIONS.length - 1 ? 'See my result' : 'Next'; } function pick(q, oi){ var sel = answers[q.id] || []; if(!q.multi){ answers[q.id] = [oi]; } else { var isNone = !!q.opts[oi].none; if(isNone){ sel = [oi]; } else { sel = sel.filter(function(i){ return !q.opts[i].none; }); var at = sel.indexOf(oi); if(at >= 0){ sel.splice(at,1); } else { sel.push(oi); } } answers[q.id] = sel; } renderQ(); } function collectFlags(){ var flags = new Set(); QUESTIONS.forEach(function(q){ (answers[q.id] || []).forEach(function(i){ q.opts[i].flags.forEach(function(f){ flags.add(f); }); }); }); return flags; } function showResult(){ var flags = collectFlags(); var key = window.axpComputeResult(flags); var R = RESULTS[key]; resEl.dataset.tone = R.tone; resEl.dataset.key = key; root.querySelector('[data-res-badge]').textContent = R.badge; root.querySelector('[data-res-head]').textContent = R.head; root.querySelector('[data-res-sum]').textContent = R.sum; root.querySelector('[data-res-list]').innerHTML = R.list.map(function(x){ return '
  • ' + x + '
  • '; }).join(''); root.querySelector('[data-unsure]').classList.toggle('is-on', flags.has('UNSURE')); resEl.dataset.flags = Array.from(flags).join(','); resEl.dataset.share = R.share; quizEl.style.display = 'none'; resEl.classList.add('is-on'); prog.style.width = '100%'; } backBtn.addEventListener('click', function(){ if(idx > 0){ idx--; renderQ(); } }); nextBtn.addEventListener('click', function(){ if(idx maxW && line){ ctx.fillText(line,x,yy); line = words[i]; yy += lh; } else { line = t; } } ctx.fillText(line,x,yy); return yy; } root.querySelector('[data-cta-share]').addEventListener('click', function(){ var key = resEl.dataset.key || 'A'; var R = RESULTS[key]; var W = 1200; var H = 630; var s = 2; var cv = document.createElement('canvas'); cv.width = W * s; cv.height = H * s; var ctx = cv.getContext('2d'); ctx.scale(s,s); var ff = "'Sofia Pro',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif"; var bg = ctx.createLinearGradient(0,0,W,H); bg.addColorStop(0,'#f7f2fe'); bg.addColorStop(1,'#ece6fb'); ctx.fillStyle = bg; ctx.fillRect(0,0,W,H); ctx.fillStyle = '#7b4df3'; rounded(ctx,64,64,W-128,H-128,28); ctx.fill(); ctx.textBaseline = 'alphabetic'; ctx.fillStyle = '#ffffff'; ctx.font = '800 30px ' + ff; ctx.fillText('AXIPRO',108,148); ctx.fillStyle = 'rgba(255,255,255,.82)'; ctx.font = '600 17px ' + ff; ctx.fillText('THE EU AI ACT · ARE YOU IN SCOPE?',108,178); var chipTxt = R.badge.replace('Result · ','').toUpperCase(); ctx.font = '800 16px ' + ff; var cw = ctx.measureText(chipTxt).width + 44; ctx.fillStyle = TONE_FILL[R.tone]; rounded(ctx,108,212,cw,42,21); ctx.fill(); ctx.fillStyle = '#ffffff'; ctx.fillText(chipTxt,130,239); ctx.fillStyle = '#ffffff'; ctx.font = '900 52px ' + ff; var endY = wrapText(ctx,'“' + R.share + '”',108,330,W-216,62); ctx.fillStyle = 'rgba(255,255,255,.85)'; ctx.font = '500 26px ' + ff; ctx.fillText('The EU AI Act lands 2 August. Where do you stand?',108,endY+58); ctx.fillStyle = '#ffffff'; ctx.font = '700 22px ' + ff; ctx.textAlign = 'right'; ctx.fillText(DIAG_URL,W-108,H-96); ctx.textAlign = 'left'; var a = document.createElement('a'); a.download = 'axipro-ai-act-scope-' + key.toLowerCase() + '.png'; a.href = cv.toDataURL('image/png'); a.click(); }); renderQ(); }); })();
    联系我们 contact @ memedata.com