mirror of https://github.com/explosion/spaCy.git
raise error when links are not aligned to tokens
This commit is contained in:
parent
f503817623
commit
04ed4d60a8
|
@ -556,6 +556,8 @@ class Errors(object):
|
||||||
E979 = ("Cannot convert {type} to an Example object.")
|
E979 = ("Cannot convert {type} to an Example object.")
|
||||||
E980 = ("Each link annotation should refer to a dictionary with at most one "
|
E980 = ("Each link annotation should refer to a dictionary with at most one "
|
||||||
"identifier mapping to 1.0, and all others to 0.0.")
|
"identifier mapping to 1.0, and all others to 0.0.")
|
||||||
|
E981 = ("The offsets of the annotations for 'links' could not be aligned "
|
||||||
|
"to token boundaries.")
|
||||||
E982 = ("The 'ent_iob' attribute of a Token should be an integer indexing "
|
E982 = ("The 'ent_iob' attribute of a Token should be an integer indexing "
|
||||||
"into {values}, but found {value}.")
|
"into {values}, but found {value}.")
|
||||||
E983 = ("Invalid key for '{dict}': {key}. Available keys: "
|
E983 = ("Invalid key for '{dict}': {key}. Available keys: "
|
||||||
|
|
|
@ -396,6 +396,8 @@ def _parse_links(vocab, words, spaces, links):
|
||||||
start_char, end_char = index
|
start_char, end_char = index
|
||||||
start_token = starts.get(start_char)
|
start_token = starts.get(start_char)
|
||||||
end_token = ends.get(end_char)
|
end_token = ends.get(end_char)
|
||||||
|
if start_token is None or end_token is None:
|
||||||
|
raise ValueError(Errors.E981)
|
||||||
for i in range(start_token, end_token+1):
|
for i in range(start_token, end_token+1):
|
||||||
ent_kb_ids[i] = true_kb_ids[0]
|
ent_kb_ids[i] = true_kb_ids[0]
|
||||||
|
|
||||||
|
|
|
@ -230,8 +230,7 @@ def test_Example_from_dict_with_links(annots):
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
"words": ["I", "like", "New", "York", "and", "Berlin", "."],
|
"words": ["I", "like", "New", "York", "and", "Berlin", "."],
|
||||||
"entities": [(7, 15, "LOC"), (20, 26, "LOC")],
|
"links": {(7, 14): {"Q7381115": 1.0, "Q2146908": 0.0}},
|
||||||
"links": {(0, 1): {"Q7381115": 1.0, "Q2146908": 0.0}},
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in New Issue