我正在使用Spacy NER 模型从文本中提取一些与我的问题相关的命名实体,例如日期、时间、GPE 等。
例如,我需要识别以下句子中的时区:
"Australian Central Time"
Run Code Online (Sandbox Code Playgroud)
使用 Spacy 模型en_core_web_lg,我得到以下结果:
doc = nlp("Australian Central Time")
print([(ent.label_, ent.text) for ent in doc.ents])
    
>> [('NORP', 'Australian')]
Run Code Online (Sandbox Code Playgroud)
我的问题是:我不清楚实体的确切含义NORP以及更一般的每个 Spacy NER 实体的确切含义(当然不考虑直观值)。
我找到了以下代码片段来获取完整的实体列表,但之后我被阻止了:
import spacy
nlp = spacy.load("en_core_web_lg")
nlp.get_pipe("ner").labels
Run Code Online (Sandbox Code Playgroud)
我对使用 Spacy NLP 还很陌生,并且在官方文档中没有找到我想要的内容,因此我们将不胜感激!
顺便说一句,我正在使用 Spacy 版本3.2.1。
我想在 Orion Context Broker NGSI API 级别提供访问控制,以确保真正的数据隔离。我想确保租户只能查询/更新他们的上下文,而不能查询/更新其他租户的上下文。
为此,我开始在 Orion Context Broker 前面放置一个Wilma PEP Proxy实例。然后,我根据官方IdM Keyrock docker映像配置了自己的 Identity Manager keyrock GE 实例,并根据官方AuthzForce docker 映像配置了自己的 Authorization PDP GE 。
经过几天的配置和多次尝试,我终于可以让这三个安全通用启用器正常工作,使用PEP 代理级别 2对 Orion Context Broker NGSI API 的请求进行身份验证和授权。
但是,2 级授权不足以保证我想要的,因为服务(租户)和子服务(应用程序路径)信息都在请求的标头中。特别是在Fiware-Service 和Fiware-ServicePath 标头中。为了构建基于标头的授权策略,您需要使用级别 3:XACML 授权。
问题是我在 Fiware 的官方文档中进行了一些挖掘,但找不到任何 XACML 策略的示例。除了 Wilma PEP Proxy 的官方文档(请参阅此处)外,您可能必须修改 PEP Proxy 源代码才能获得此级别的授权。
由于这种情况被认为是检查请求的高级参数,例如正文或自定义标头,因此这取决于具体的用例。因此,程序员应该修改 PEP 代理源代码以包含特定要求。
有这样可能吗?
我真的需要修改 PEP 代理源代码来实现像租户只能访问他的数据这样简单的事情吗?