Skip to content

Named Entity Recognition Task

openaivec.task.nlp.named_entity_recognition

Named entity recognition task for OpenAI API.

This module provides a predefined task for named entity recognition that identifies and classifies named entities in text using OpenAI's language models.

Example

Basic usage with BatchResponses:

from openai import OpenAI
from openaivec.responses import BatchResponses
from openaivec.task import nlp

client = OpenAI()
analyzer = BatchResponses.of_task(
    client=client,
    model_name="gpt-4o-mini",
    task=nlp.NAMED_ENTITY_RECOGNITION
)

texts = ["John works at Microsoft in Seattle", "The meeting is on March 15th"]
analyses = analyzer.parse(texts)

for analysis in analyses:
    print(f"Persons: {analysis.persons}")
    print(f"Organizations: {analysis.organizations}")
    print(f"Locations: {analysis.locations}")

With pandas integration:

import pandas as pd
from openaivec import pandas_ext  # Required for .ai accessor
from openaivec.task import nlp

df = pd.DataFrame({"text": ["John works at Microsoft in Seattle", "The meeting is on March 15th"]})
df["entities"] = df["text"].ai.task(nlp.NAMED_ENTITY_RECOGNITION)

# Extract entity components
extracted_df = df.ai.extract("entities")
print(extracted_df[["text", "entities_persons", "entities_organizations", "entities_locations"]])

Attributes:

Name Type Description
NAMED_ENTITY_RECOGNITION PreparedTask

A prepared task instance configured for named entity recognition with temperature=0.0 and top_p=1.0 for deterministic output.