gpt4 book ai didi

python - Syntaxnet/Parsey McParseface python API

转载 作者:太空狗 更新时间:2023-10-29 17:19:27 25 4
gpt4 key购买 nike

我已经安装了 syntaxnet 并且能够使用提供的演示脚本运行解析器。理想情况下,我想直接从 python 运行它。我找到的唯一代码是这样的:

import subprocess
import os
os.chdir(r"../models/syntaxnet")
subprocess.call([
"echo 'Bob brought the pizza to Alice.' | syntaxnet/demo.sh"
], shell = True)

这完全是一场灾难——低效且过于复杂(从 python 调用 python 应该用 python 完成)。

如何不通过 shell 脚本、标准 I/O 等直接调用 python API?

编辑 - 为什么这不像打开 syntaxnet/demo.sh 并阅读它那么简单?

此 shell 脚本调用两个 python 脚本(parser_eval 和 conll2tree),它们被编写为 python 脚本,并且不能在不导致多个错误的情况下导入到 python 模块中。仔细观察会产生额外的类似脚本的层和 native 代码。这些上层需要重构,以便在 python 上下文中运行整个事情。没有人通过这样的修改 fork syntaxnet 或打算这样做吗?

最佳答案

总而言之,将 demo.sh 运行的两个脚本(https://github.com/tensorflow/models/blob/master/syntaxnet/syntaxnet/parser_eval.pyhttps://github.com/tensorflow/models/blob/master/syntaxnet/syntaxnet/conll2tree.py)重构到一个 Python 模块中并公开一个您可以调用的 Python API 似乎不是问题。

这两个脚本都使用 Tensorflow 的 tf.app.flags API(在此 SO 问题中描述:What's the purpose of tf.app.flags in TensorFlow?),因此必须将它们重构为常规参数,如 tf.app.flags 是进程级单例。

所以,是的,您只需要做一些工作,使它们可以作为 Python API 调用 :)

关于python - Syntaxnet/Parsey McParseface python API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39075339/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com