API 来自 NLTK、Gensim、Scikit Learn 的调用
API calls from NLTK, Gensim, Scikit Learn
我计划使用 NLTK、Gensim 和 Scikit Learn 进行一些 NLP/text 挖掘。但我将使用这些库来处理我的组织数据。问题是在使用这些库时 'do they make API calls to process the data' 还是从 python shell 中取出的数据要处理。这是一个安全问题,所以想知道是否有人有任何文档可供参考。
感谢对此的任何帮助。
通常,对于 NLTK、gensim 和 scikit-learn,算法是在它们的源代码中实现的,并且 运行 在您的本地数据上实现,而不会发送其他数据进行处理。
我从未注意到这些软件包中有任何 documentation/functionality 提及对 remote/cloud 服务的依赖,也没有看到用户讨论过相同的问题。
但是,它们都是大型库,有许多我从未审查过的功能,并且有许多贡献者添加了新选项。而且我不知道项目负责人是否明确承诺永远不依赖外部服务。
因此,可能无法获得明确、永久的答案。如果您的项目需要考虑此类安全性,您应该仔细查看您正在使用的那些 functions/classes/methods 的文档,甚至是源代码。 (None 这些项目会故意隐藏对外部服务的依赖。)
您还可以在连接外部服务的能力受防火墙限制的系统上开发、测试和部署代码,这样您就可以检测并阻止与外部机器的任何未公开或无意的通信。
另请注意,这些库中的每一个又依赖于其他 public 库。如果您的担忧还延伸到粗心或故意恶意插入私人数据泄露方法的可能性,您可能希望对这些库和它们引入的所有其他库进行更深入的分析。 (仅仅相信顶级文档可能是不够的。)
此外,这些库中的每一个都具有实用功能,可根据用户的明确需求下载示例数据集或共享的非代码资源(如停用词列表或词典)。使用此类功能不会将您的任何数据上传到其他地方,但可能会泄露您正在使用特定功能。上述基于防火墙的方法可能会干扰此类下载步骤。在最大 vigilance/paranoia 的情况下,您可能需要特别注意此类额外下载方法的使用和行为,以确保它们不会改变本地环境或 execute/replace 其他库代码。
最后,通过坚持使用广泛使用的 packages/functions 和持续可用的较旧版本,您可能会从 "community assurance" 中获益,即软件包的行为已被充分理解,没有令人惊讶的依赖关系或漏洞。也就是说,许多其他用户已经对这些代码路径给予了一些关注、分析和实际使用——因此任何问题都可能已经被发现、披露和修复。
我计划使用 NLTK、Gensim 和 Scikit Learn 进行一些 NLP/text 挖掘。但我将使用这些库来处理我的组织数据。问题是在使用这些库时 'do they make API calls to process the data' 还是从 python shell 中取出的数据要处理。这是一个安全问题,所以想知道是否有人有任何文档可供参考。
感谢对此的任何帮助。
通常,对于 NLTK、gensim 和 scikit-learn,算法是在它们的源代码中实现的,并且 运行 在您的本地数据上实现,而不会发送其他数据进行处理。
我从未注意到这些软件包中有任何 documentation/functionality 提及对 remote/cloud 服务的依赖,也没有看到用户讨论过相同的问题。
但是,它们都是大型库,有许多我从未审查过的功能,并且有许多贡献者添加了新选项。而且我不知道项目负责人是否明确承诺永远不依赖外部服务。
因此,可能无法获得明确、永久的答案。如果您的项目需要考虑此类安全性,您应该仔细查看您正在使用的那些 functions/classes/methods 的文档,甚至是源代码。 (None 这些项目会故意隐藏对外部服务的依赖。)
您还可以在连接外部服务的能力受防火墙限制的系统上开发、测试和部署代码,这样您就可以检测并阻止与外部机器的任何未公开或无意的通信。
另请注意,这些库中的每一个又依赖于其他 public 库。如果您的担忧还延伸到粗心或故意恶意插入私人数据泄露方法的可能性,您可能希望对这些库和它们引入的所有其他库进行更深入的分析。 (仅仅相信顶级文档可能是不够的。)
此外,这些库中的每一个都具有实用功能,可根据用户的明确需求下载示例数据集或共享的非代码资源(如停用词列表或词典)。使用此类功能不会将您的任何数据上传到其他地方,但可能会泄露您正在使用特定功能。上述基于防火墙的方法可能会干扰此类下载步骤。在最大 vigilance/paranoia 的情况下,您可能需要特别注意此类额外下载方法的使用和行为,以确保它们不会改变本地环境或 execute/replace 其他库代码。
最后,通过坚持使用广泛使用的 packages/functions 和持续可用的较旧版本,您可能会从 "community assurance" 中获益,即软件包的行为已被充分理解,没有令人惊讶的依赖关系或漏洞。也就是说,许多其他用户已经对这些代码路径给予了一些关注、分析和实际使用——因此任何问题都可能已经被发现、披露和修复。