Skip to main content

A lightweight library for entity linking in English

Project description

Lightweight entity linking solution for the English language.

Please consider citing our works if you use code from this repository. Also, we recommend using a Colab T4 GPU for faster results.

Main dependencies

  • python>=3.10
  • numpy==1.26.4
  • SPARQLWrapper==2.0.0
  • sentence_transformers==3.1.1
  • aiohttp==3.9.5
  • openai==1.54.2
  • beautifulsoup4==4.12.2
  • fake-useragent==1.5.1
  • nest_asyncio==1.5.8

Example & Usage

from linking import main

# Your API token which can be found here (https://github.com/marketplace/models/azure-openai/gpt-4o)
api_token = "YOUR_API_TOKEN"

main.EL(api_token=api_token,
	sentence="We used PCA and FA for our experiments.",
	mention="PCA and FA",
	single="No",
	combination="No",
	disambiguation="Yes",
	embedding_model="Lajavaness/bilingual-embedding-large")
The correct entity for 'PCA' is:

Wikipedia: https://en.wikipedia.org/wiki/Principal_component_analysis

Wikidata: https://www.wikidata.org/wiki/Q2873

DBpedia: http://dbpedia.org/resource/Principal_component_analysis



The correct entity for 'FA' is:

Wikipedia: https://en.wikipedia.org/wiki/Factor_analysis

Wikidata: https://www.wikidata.org/wiki/Q726474

DBpedia: http://dbpedia.org/resource/Factor_analysis

Execution Time: 00:00:35

Parameters

  • api_token: Your API token from here. (Required)
  • sentence: An English text. (Required)
  • mention: The mention you want to perform the linking, the mention should be from inside the provided sentence. (Required)
  • disambiguation: Used when the mention has acronyms or the mention has two different entities inside (e.g. PCA and FA), (deafult="Yes"), (Values: "Yes", "No"). (Optional)
  • single: Usually used for difficult mentions, it searches each word of the mention individually, (deafult="No"), (Values: "Yes", "No"). (Optional)
  • combination: Usually used for difficult mentions, it makes combinations for each word of the mention, (deafult="No"), (Values: "Yes", "No"). (Optional)
  • embedding_model: A sentence-transformers model to perform text similarity, (deafault="Lajavaness/bilingual-embedding-large"), (Values: str of the name of any sentence-transformers model). (Optional)

Licence

This library is licensed under the CC-BY-NC 4.0 license.

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

py_entity_linking-0.1.0.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py_entity_linking-0.1.0-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file py_entity_linking-0.1.0.tar.gz.

File metadata

  • Download URL: py_entity_linking-0.1.0.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.1

File hashes

Hashes for py_entity_linking-0.1.0.tar.gz
Algorithm Hash digest
SHA256 606ddde6c876af59b81bc534ec074806391da4514113aea7317f2d5d4e908edd
MD5 3d76020a5f2ffa8ff55890b54b238502
BLAKE2b-256 2f3a01c860e91ed83fabab854f1a57c3c29b5fab3cb138e619dd59791dbc73d1

See more details on using hashes here.

File details

Details for the file py_entity_linking-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for py_entity_linking-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f747490cbdd67704f50c96bafef4957321427153e90d361cf6d36be294fc0eb7
MD5 5d6705bd964c5d39584e7afd9efbab97
BLAKE2b-256 79cc99a6d9b818160c48d1181e6d3d8ae6ae67f1b79cb4e08cda1eeca3396c5b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page