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.55.3
  • httpsx==0.27.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.4.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.4-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: py_entity_linking-0.1.4.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.4.tar.gz
Algorithm Hash digest
SHA256 5abdda285e173f1d35afabcfa047291f042ec362e1fba3fbb6b6c9faffdff663
MD5 44258057ae06e2aab97a7ca91684b4c4
BLAKE2b-256 e9ec490093b089595a40192ed058ff0eee23267ce879da68d87e967f3c459adb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for py_entity_linking-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 fdaa6e41ce61a2335e365ce43c66eec80892905d0c3828bf4f6b0e0e2cca1ea0
MD5 8a37a8a54f028ff29e137ae08d618f59
BLAKE2b-256 793318c487e547c16bedd13a1793463c9745b68de1c6f41f79a223c4c00dc58c

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