努力在 Chrome 扩展中使用 Tensorflow Universal Sentence Encoder

问题描述

我正在创建一个 chrome 扩展程序,我想使用通用句子编码器来识别网页上的相似句子。我在导入和使用通用句子编码器时遇到问题。

我的清单如下:

  <input type="search" value={searchItem} onChange={handleChange} />
  <ul>
    {listData.map((x,i) => (
      <li key={i} onClick={handleClick}>{x}</li>
    ))}
  </ul>

  Searched Result = > {clickedText}
</div>

我已尝试在 { "name": "----","description": "-----","version": "0.1.0","manifest_version": 2,"icons": { "128": "./monkey_icon.png" },"content_scripts": [ { "matches": ["http://*/*","https://*/*"],"js": ["contentScript.js"],"run_at": "document_idle" } ],"options_page": "./options.html","browser_action": { "default_popup": "popup.html" },"permissions": ["storage"] } 中将脚本标签添加到浏览器中:

contentScript.js

当我们检查页面时,看起来我们已经正确插入了脚本,但我们无法按照此处的教程进行操作:https://github.com/tensorflow/tfjs-models/tree/master/universal-sentence-encoder .

var script = document.createElement('script');
script.src = 'https://cdn.jsdelivr.net/npm/@tensorflow/tfjs';
script.type = 'text/javascript';
document.getElementsByTagName('head')[0].appendChild(script);
var script_two = document.createElement('script');
script_two.src = 'https://cdn.jsdelivr.net/npm/@tensorflow-models/universal-sentence-encoder';
script_two.type = 'text/javascript';
document.getElementsByTagName('head')[0].appendChild(script_two);

我们得到的错误是未定义 // Load the model. use.load().then(model => { // Embed an array of sentences. const sentences = [ 'Hello.','How are you?' ]; model.embed(sentences).then(embeddings => { // `embeddings` is a 2D tensor consisting of the 512-dimensional embeddings for each sentence. // So in this example `embeddings` has the shape [2,512]. embeddings.print(true /* verbose */); }); }); 。 我们还尝试在本地 (use) 安装带有 tensorflow 的模型并将其导入到内容脚本中:

npm install @tensorflow/tfjs @tensorflow-models/universal-sentence-encoder

这给了我们 require('@tensorflow/tfjs'); const use = require('@tensorflow-models/universal-sentence-encoder'); 未定义的错误。我们也尝试以这种方式导入:

require

这给了我们无法在模块外导入的错误

有什么建议吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)