A simple NER agent
Project description
ner-agent
A simple, language-agnostic Named Entity Recognition (NER) agent powered by LLMs.
Features
- Multilingual: Supports English, Chinese, Japanese, Korean, French, German, Russian, Spanish, and more.
- Entity Types: Recognizes PERSON, NORP (nationalities, religions, political groups, languages), LOCATION, DATETIME, NUMERIC, and PROPER_NOUN (events, works, organizations, products, etc.).
- Easy Integration: Use as a Python library with a simple async API.
- Tested: Includes comprehensive test cases for multiple languages and entity types.
Installation
pip install ner-agent
Or clone and install locally:
git clone https://github.com/allen2c/ner-agent.git
cd ner-agent
pip install .
Python 3.11+ required.
Usage
import asyncio
from ner_agent import NerAgent
async def main():
agent = NerAgent()
text = "Elon Musk visited Tesla's Gigafactory in Austin on March 15, 2024, announcing a 20% increase."
result = await agent.run(text)
for entity in result.entities:
print(entity)
asyncio.run(main())
Output:
name='PERSON' value='Elon Musk' start=0 end=9
name='PROPER_NOUN' value='Tesla' start=18 end=23
name='LOCATION' value='Gigafactory' start=26 end=37
...
Entity Types
PERSON: People, including fictional characters.NORP: Nationalities, religious groups, political groups, languages.LOCATION: Geopolitical entities, facilities, places.DATETIME: Dates, times, periods, ages.NUMERIC: Numbers, money, quantities, percentages, ordinals/cardinals.PROPER_NOUN: Named events, works, laws, products, organizations, companies, etc.
Testing
To run the tests:
pytest
Configuration
- By default, uses OpenAI-compatible LLMs via openai-agents.
- You can configure the model and OpenAI client (see
tests/conftest.pyfor examples).
License
MIT License
For more details, see ner_agent/init.py and the tests.
If you need more advanced usage or want to contribute, please check the GitHub repository.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ner_agent-0.2.1.tar.gz.
File metadata
- Download URL: ner_agent-0.2.1.tar.gz
- Upload date:
- Size: 8.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.4 CPython/3.11.13 Darwin/24.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1c8405ebd88dd401e76f7ee117fe0f59dfe692f01b6a1132d94763a19e7895d9
|
|
| MD5 |
5b4ec141dd7fc8c271ff863ebba09cff
|
|
| BLAKE2b-256 |
72755bb0088483d05e06ffb3db11419a5ce1cbae690c3bb5b70eff2c1f4d285c
|
File details
Details for the file ner_agent-0.2.1-py3-none-any.whl.
File metadata
- Download URL: ner_agent-0.2.1-py3-none-any.whl
- Upload date:
- Size: 8.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.4 CPython/3.11.13 Darwin/24.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3c1ab030bdf9b74e82b68ed39eb85971759960b805db777df0ac282566a76037
|
|
| MD5 |
a95e50496ebdcce40dbee30965490dd3
|
|
| BLAKE2b-256 |
316f703de987ab2587316d201323fa62ba6d03f2cd4fedf9484856da4af843db
|