{"id":28966333,"url":"https://github.com/dice-group/tebaqa","last_synced_at":"2025-06-24T07:33:07.764Z","repository":{"id":20721986,"uuid":"90722291","full_name":"dice-group/TeBaQA","owner":"dice-group","description":"A question answering system which utilises machine learning.","archived":false,"fork":false,"pushed_at":"2023-08-09T14:09:43.000Z","size":737379,"stargazers_count":17,"open_issues_count":22,"forks_count":21,"subscribers_count":4,"default_branch":"master","last_synced_at":"2023-10-25T21:27:57.393Z","etag":null,"topics":["machine-learning","natural-language-processing","question-answering","weka"],"latest_commit_sha":null,"homepage":"https://tebaqa.demos.dice-research.org/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dice-group.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2017-05-09T08:35:38.000Z","updated_at":"2022-05-27T22:05:57.000Z","dependencies_parsed_at":"2023-02-17T19:01:15.959Z","dependency_job_id":"76554b92-8c1f-4f51-b252-1757392706cf","html_url":"https://github.com/dice-group/TeBaQA","commit_stats":null,"previous_names":[],"tags_count":3,"template":null,"template_full_name":null,"purl":"pkg:github/dice-group/TeBaQA","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dice-group%2FTeBaQA","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dice-group%2FTeBaQA/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dice-group%2FTeBaQA/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dice-group%2FTeBaQA/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dice-group","download_url":"https://codeload.github.com/dice-group/TeBaQA/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dice-group%2FTeBaQA/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261628003,"owners_count":23186737,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["machine-learning","natural-language-processing","question-answering","weka"],"created_at":"2025-06-24T07:31:33.387Z","updated_at":"2025-06-24T07:33:07.186Z","avatar_url":"https://github.com/dice-group.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Template-Based Question Answering (TeBaQA)\n[![Build Status](https://travis-ci.org/dice-group/TeBaQA.svg?branch=master)](https://travis-ci.org/dice-group/TeBaQA)\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/d0441bf0c82e47d6a3f2b23f11b223e6)](https://www.codacy.com/app/pnancke/TeBaQA?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=pnancke/TeBaQA\u0026amp;utm_campaign=Badge_Grade)\n\nTeBaQA is available at https://tebaqa.demos.dice-research.org/\n## Execution\n\nTeBaQA implements microservices architecture. The application comprises following 5 modules:\n\n- Template Classification :- to classify query templates (localhost:8081)\n- Entity Linking :- finding and linking entities and relations (localhost:8082)\n- Query Ranking :- candidate query execution, ranking (localhost:8083)\n- TeBaQA Controller :- central controller, frontend application (localhost:8080)\n- NLP Server :- CoreNLP Server endpoint (localhost:8085)\n\nAdditionally, Entity Linking requires Elasticsearch indices for data and ontology of the knowledge base. We provide dumps of DBPedia ([2016-10 release](https://downloads.dbpedia.org/2016-10/core/)). Find the dump files along with the instructions at [Hobbit data](https://hobbitdata.informatik.uni-leipzig.de/TeBaQA/). \nThe indices were generated on [Elastiscearch 6.6.1](https://www.elastic.co/de/downloads/past-releases/elasticsearch-6-6-1). You have to install Elasticsearch to use the Entity Linking components of TeBaQA.\nHowever, TeBaQA can also be run on your own knowledge base. Check the instruction in [this file](https://github.com/dice-group/TeBaQA/blob/development-modular/tebaqa-commons/src/main/resources/indexing.properties) for more information on creating your own Elasticsearch indices. The script for createing the indices is located [here](https://github.com/dice-group/TeBaQA/blob/development-modular/tebaqa-commons/src/main/java/de/uni/leipzig/tebaqa/tebaqacommons/elasticsearch/TeBaQAIndexer.java)\n\n\n#### There are two ways to run TeBaQA\n#### 1. Run locally\n- Checkout the project\n- make files executable (chmod +x \\\u003cfilename\\\u003e.sh)\n- Build all modules \n  \n  `./build-script.sh`\n- Run all modules\n  \n  `./run-script.sh`\n\n#### 2. Run as Docker ([installation guide](https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-20-04), Ubuntu 20.04) containers\n- Checkout the project\n- Build docker images for each module\n  \n  `./docker/build-images.sh`\n- To run all containers\n\n  `./docker/run-containers.sh`\n- To stop all containers\n  \n  `./docker/stop-containers.sh`\n\n\n## Citation\n\nVollmers, D., Jalota, R., Moussallem, D., Topiwala, H., Ngomo, A. C. N., \u0026 Usbeck, R. (2021). Knowledge Graph Question Answering using Graph-Pattern Isomorphism. arXiv preprint arXiv:2103.06752. https://arxiv.org/abs/2103.06752\n\n## Question Answering\n- To answer a question, simply execute an HTTP POST request to\n  - ```http://localhost:8080/qa``` for the answer which follows the W3C Query Results JSON Format (see https://www.w3.org/TR/sparql11-results-json/).\n  - ```http://localhost:8080/qa-simple``` for a simple JSON with only the answer.\n- Parameters:\n  - `query`: A string which contains a question (required).\n  - `lang`: The language of the question (default:`en`) *Note: Other languages than English haven't been implemented yet.*\n- An example request could look like this: \n  - `http://localhost:8080/qa?query=Where is the birthplace of Angela Merkel?\u0026lang=en`\n\n## Evaluation\n- QALD-8: http://gerbil-qa.cs.upb.de:8080/gerbil/experiment?id=202012090005\n- QALD-9: http://gerbil-qa.cs.upb.de:8080/gerbil/experiment?id=202012050000\n- LC-QUAD v1: http://gerbil-qa.cs.upb.de:8080/gerbil/experiment?id=202012160002\n- LC-QUAD v2: http://gerbil-qa.cs.upb.de:8080/gerbil/experiment?id=202103220000\n### Ablation study\n- perfect Classification: http://gerbil-qa.cs.upb.de:8080/gerbil/experiment?id=202012070002\n- perfect Classification and Entity Linking: http://gerbil-qa.cs.upb.de:8080/gerbil/experiment?id=202012090000\n- perfect Classification and Ranking: http://gerbil-qa.cs.upb.de:8080/gerbil/experiment?id=202012090001\n- perfect Entity Linking: http://gerbil-qa.cs.upb.de:8080/gerbil/experiment?id=202012070004\n- perfect Entity Linking and Ranking: http://gerbil-qa.cs.upb.de:8080/gerbil/experiment?id=202012080001\n- perfect Ranking: http://gerbil-qa.cs.upb.de:8080/gerbil/experiment?id=202012080000\n- perfect Entity Classification,Entity Linking and Ranking: http://gerbil-qa.cs.upb.de:8080/gerbil/experiment?id=202012080002\n\n## Credit\n- [DBpedia Chatbot](https://github.com/dbpedia/chatbot): Styling of the result cards.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdice-group%2Ftebaqa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdice-group%2Ftebaqa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdice-group%2Ftebaqa/lists"}