Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

228
Views
Error al importar '@tensorflow/tfjs' para usar el modelo local en la extensión de Chrome

Traté de usar el modelo local de tensorflow en mi extensión de Chrome. En contentScript :

 import * as tf from '@tensorflow/tfjs'; const MODEL_URL = './model/model.json'; const model = tf.load_model(MODEL_URL); model.run("text");

Mi manifest.json :

 "content_security_policy": { "extension_pages": "script-src 'self' http://localhost; object-src 'self';" }, "background": { "service_worker": "background.js" }, "action": { "default_title": "My extension", "default_popup": "popup.html" }, "permissions": [ "tabs", "history", "background", "webNavigation", "activeTab", "storage" ], "content_scripts": [ { "matches": [ "<all_urls>" ], "run_at": "document_start", "js": [ "contentScript.js" ] } ]

Pero recibí el error Uncaught EvalError: Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src 'self'".

Mi package.json :

 { "name": "my-extension", "version": "0.1.0", "description": "My Chrome Extension", "private": true, "scripts": { "watch": "webpack --mode=development --watch --config config/webpack.config.js", "build": "webpack --mode=production --config config/webpack.config.js" }, "devDependencies": { "copy-webpack-plugin": "^6.4.1", "css-loader": "^4.3.0", "file-loader": "^6.2.0", "mini-css-extract-plugin": "^0.10.1", "size-plugin": "^2.0.2", "webpack": "^4.46.0", "webpack-cli": "^3.3.12", "webpack-merge": "^5.8.0" }, "dependencies": { "@tensorflow/tfjs": "^3.16.0", "@tensorflow/tfjs-node": "^3.16.0" } }

¿Cuál debería ser la forma correcta de usar el modelo local?

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

TL; DR -

La versión 3 del manifiesto no permite el uso de 'unsafe-eval' . Debe agrupar el código de la biblioteca en su extensión o usar una API externa a la que llamará su extensión usando algo como el paso de mensajes.

Ligeramente más detallado con enlaces -

De la descripción general oficial de la versión 3 del manifiesto :

Una mejora de seguridad clave en Manifest V3 es que las extensiones no pueden cargar código remoto como JavaScript o archivos Wasm. Esto nos permite revisar de manera más confiable y eficiente el comportamiento seguro de las extensiones cuando se envían a Chrome Web Store. Específicamente, toda la lógica debe estar incluida en el paquete de la extensión.

En lugar de código remoto, recomendamos el uso de archivos de configuración remota. Consulte la guía de migración para obtener más información sobre cómo trabajar con este cambio.

Aquí está el enlace a la sección de la guía de migración sobre el código alojado de forma remota (PD: no pego todo aquí porque estas guías podrían actualizarse)

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!