代码之家  ›  专栏  ›  技术社区  ›  Mr.D

间隔,在管道期间应用延长件

  •  0
  • Mr.D  · 技术社区  · 7 年前

    在SpaCy中,您可以为如下文档设置扩展名:

    Doc.set_extension('chapter_id', default='')
    
    doc = nlp('This is my text')
    doc._.chapter_id = 'This is my ID'
    

    但是,我有成千上万的文本文件应该由NLP处理。SpaCy建议使用 pipe 为此:

    docs = nlp.pipe(array_of_texts)
    

    ?

    1 回复  |  直到 7 年前
        1
  •  1
  •   Ines Montani    7 年前

    您可能想启用 as_tuples 上的关键字参数 nlp.pipe ,它允许您传入 (text, context) 三元组并会屈服 (doc, context) 元组。所以你可以这样做:

    data = [('Some text', 1), ('Some other text', 2)]
    
    def process_text(data):
        for doc, chapter_id in nlp.pipe(data, as_tuples=True):
            doc._.chapter_id = chapter_id
            yield doc