如何在 node js 中运行 pickle 文件

问题描述 投票:0回答:3

在 AI/ML 项目中工作,我需要一种在 nodejs 中运行 pickle 文件的方法,这样我就可以用它来对他们提交的数据运行算法。

javascript python node.js artificial-intelligence pickle
3个回答
1
投票

尝试使用 node-pickle 库将 pickle 文件转换为 JSON 对象。 这里是 node-pickle 的文档

const nodePickle = require('node-pickle');

// Convert pickled object to JSON object
nodePickle.load(pickledData)
.then(data => ({
// data is a JSON object here
})

然后您可以使用 tensorflow.js 将该 JSON 对象作为模型运行。 Tenrsorflow.js 文档


0
投票

我可以通过快速谷歌搜索找到的唯一一个是

node-jpickle
。根据它的文档,它似乎能够处理大多数情况
pickle
可以,甚至一些更高级的情况,例如类:

function MyClass() {}

var jpickle = require('jpickle');
jpickle.emulated['__main__.MyClass'] = MyClass;
var unpickled = jpickle.loads(pickled);

如果你只是想 pickle/unpickle,你可以像在 Python 中那样做:

var unpickled = jpickle.loads(pickled);

文档没有说明任何关于正常

load
功能的信息。


0
投票

试试这个https://github.com/ewfian/pickleparser

npm install pickleparser
import fs from 'node:fs/promises';
import path from 'node:path';
import { Parser } from 'pickleparser';

async function unpickle(fname) {
    const pkl = await fs.readFile(path.join(fname), 'binary');
    const buffer = Buffer.from(pkl, 'binary');
    const parser = new Parser(buffer);
    const obj = parser.load();
    console.log(obj);
}

unpickle('index.pkl');
© www.soinside.com 2019 - 2024. All rights reserved.