AnnoABSA: A Web-Based Annotation Tool for Aspect-Based Sentiment Analysis with Retrieval-Augmented Suggestions
Authors: Nils Constantin Hellwig, Jakob Fehle, Udo Kruschwitz, Christian Wolff
Organizations: Media Informatics Group, University of Regensburg, Regensburg, Germany · Information Science Group, University of Regensburg, Regensburg, Germany
We introduce AnnoABSA, the first web-based annotation tool to support the full spectrum of Aspect-Based Sentiment Analysis (ABSA) tasks. The tool is highly customizable, enabling flexible configuration of sentiment elements and task-specific requirements. Alongside manual annotation, AnnoABSA provides optional Large Language Model (LLM)-based retrieval-augmented generation (RAG) suggestions that offer context-aware assistance in a human-in-the-loop approach, keeping the human annotator in control. To improve prediction quality over time, the system retrieves the ten most similar examples that are already annotated and adds them as few-shot examples in the prompt, ensuring that suggestions become increasingly accurate as the annotation process progresses. Released as open-source software under the MIT License, AnnoABSA is freely accessible and easily extendable for research and practical applications.
Figures & tables
Feature
Label Studio
INCEpTION
BRAT
AnnoABSA
Technical requirements
Open source
(Apache 2.0)
(Apache 2.0)
(MIT)
(MIT)
Installation
Docker, Python 3
Docker, Tomcat, Java
Python 2
Python 3
Regular updates
× Oct. 2021
Web-based
Multi-user support
×
Table 1: Comparison of Annotation Tools for ABSA. Detailed comparison of four annotation platforms across technical requirements, usability features, data management capabilities, and ABSA-specific functionalities. The table constitutes an extension of the comparison provided by Colucci Cante et al. (2024, p. 359) , who evaluated non-semantic textual annotation tools based on the following criteria: multi-labelling functionality, annotation suggestions, relationship tagging, label customization, and team collaboration.
Figure 1: UI of AnnoABSA. The UI consists of four components: (1) top navigation bar to change the currently displayed example, (2) annotated text with highlighted sentiment annotations, (3) aspect addition panel, and (4) editable list of added annotations.
Figure 2: Popup to add or manipulate phrase annotations. In case both aspect term and opinion term annotations are required, the text is displayed twice, once for each phrase annotation. Implicit aspects can be marked using a checkbox.
Figure 3: F1 score comparison of RAG-based and random sampling approaches. RAG consistently outperforms random sampling across all configurations. Statistical tests (paired t-test or Wilcoxon signed-rank test with Holm-Bonferroni correction) confirm all differences are significant. Mdiff shows mean performance differences.
Pool
LLM Execution time (seconds)
ACD
TASD
ASQP
RAG
Random
RAG
Random
RAG
Random
100
0.816
0.851
1.292
1.240
1.708
1.622
200
0.848
0.852
1.291
1.204
1.723
1.626
300
0.846
0.871
1.291
1.211
1.736
1.642
400
0.862
0.856
1.298
1.221
1.743
1.622
Table 2: LLM inference time comparison for ABSA tasks. Average execution time per prediction (in seconds) comparing RAG-based versus random sampling strategies across varying pool sizes for ACD, TASD, and ASQP tasks.
Appendix figures & tables3 assets
Supplementary material from the paper’s appendix.
Appendix
Task Type
Task Name
Elements
Gold Label (Example)
Single
Aspect Term Extraction (ATE)
a
[’waiter’]
Aspect Category Detection (ACD)
c
[’food quality’, ’service speed’]
Opinion Term Extraction (OTE)
o
[’delicious’, ’way too slow’]
Compound
Aspect Sentiment Classification (ASC)
a , s
[(’waiter’, ’negative’)]
Aspect-Opinion Pair Extraction (AOPE)
a , o
[(’waiter’, ’way too slow’)]
End-to-End ABSA (E2E-ABSA)
a , s
[(’NULL’, ’positive’), (’waiter’, ’negative’)]
Appendix
Table 3: Overview of ABSA tasks supported by AnnoABSA. For each task, a gold label is presented for the sentence “It was really delicious, but the waiter was way too slow” . Aspect categories are commonly selected from a predefined set ({food quality, service speed, …}). Notation: a = aspect term, c = aspect category, o = opinion term, s = sentiment polarity. In case of an implicit aspect, aspect term a is set to ’NULL’ . The listed tasks are equivalent to those reported in the literature review by Zhang et al. (2022)
Option
Description
Default
Server Configuration
--backend
Start only backend server
–
--backend-port
Backend server port
8000
--frontend-port
Frontend server port
3000
--backend-ip
Backend server IP address
localhost
--frontend-ip
Frontend server IP address
localhost
Appendix
Table 4: CLI options for AnnoABSA. AnnoABSA offers extensive customization across server settings, annotation logic, and AI integration.
Figure 4: Prompt used for RAG-based suggestion prediction. The prompt includes a task description with explanations of sentiment elements, ten in-context demonstrations, and the target text for aspect prediction. The few-shot examples shown are taken from the Coursera dataset and include annotations for ASQP
Aspect-Based Sentiment Analysis (ABSA) requires high-quality datasets to train reliable models. However, existing annotation tools treat output as flat files, leaving researchers to manually consolidate multi-annotator data, reconstruct relational structures, and compute reliability metrics through custom scripts. This paper introduces ACAT (Aspect-based sentiment analysis Collaborative Annotation Tool), a web-based platform natively supporting four ABSA workflows: (1) Aspect-Category Sentiment Analysis, (2) Clause-Level Segmentation, (3) Aspect-Term Sentiment Analysis with character-level position tracking, and (4) Aspect Sentiment Triplet Extraction with dual span offset preservation. Its core contribution is an automated Extract, Transform, Load (ETL) pipeline that aligns collaborative annotations and computes Inter-Annotator Agreement (IAA) metrics directly at export, yielding training-ready datasets. In a preliminary validation on 1,002 restaurant reviews with two annotators of differing expertise, ACAT achieves a median annotation time of 31.58 seconds and a raw IAA ranging from 0.78 to 0.86 across all tasks.
Training models for Aspect-Based Sentiment Analysis (ABSA) tasks requires manually annotated data, which is expensive and time-consuming to obtain. This paper introduces LA-ABSA, a novel approach that leverages Large Language Model (LLM)-generated annotations to fine-tune lightweight models for complex ABSA tasks. We evaluate our approach on five datasets for Target Aspect Sentiment Detection (TASD) and Aspect Sentiment Quad Prediction (ASQP). Our approach outperformed previously reported augmentation strategies and achieved competitive performance with LLM-prompting in low-resource scenarios, while providing substantial energy efficiency benefits. For example, using 50 annotated examples for in-context learning (ICL) to guide the annotation of unlabeled data, LA-ABSA achieved an F1 score of 49.85 for ASQP on the SemEval Rest16 dataset, closely matching the performance of ICL prompting with Gemma-3-27B (51.10), while requiring significantly lower computational resources.
Nils Constantin Hellwig, Jakob Fehle, Udo Kruschwitz +1
Media Informatics Group, University of Regensburg, Regensburg, Germany · Information Science Group, University of Regensburg, Regensburg, Germany
Aspect-Based Sentiment Analysis (ABSA) enables fine-grained opinion analysis by identifying sentiments toward specific aspects or targets within a text. While ABSA has been widely studied for English, research on other languages such as German remains limited, largely due to the lack of high-quality annotated datasets. This paper examines how different annotation sources influence the development of German ABSA. To this end, an existing dataset is re-annotated by experts to establish a ground truth, which serves as a reference for evaluating annotations produced by students, crowdworkers, Large Language Models (LLMs), and experts. Annotation quality is compared using Inter-Annotator Agreement (IAA) and its impact on downstream model performance for different ABSA subtasks. The evaluation focuses on Aspect Category Sentiment Analysis (ACSA) and Target Aspect Sentiment Detection (TASD). We apply State-of-the-Art (SOTA) methods for ABSA, including BERT-, T5-, and LLaMA-based approaches to assess performance differences, spanning fine-tuning and in-context learning with instruction prompts. The findings provide practical insights into trade-offs between annotation reliability and efficiency, offering guidance for dataset construction in under-resourced Natural Language Processing (NLP) scenarios.
Niklas Donhauser, Jakob Fehle, Nils Constantin Hellwig +3
Media Informatics Group, University of Regensburg, Regensburg, Germany · Information Science Group, University of Regensburg, Regensburg, Germany