{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,9,8]],"date-time":"2026-09-08T18:07:40Z","timestamp":1788890860927,"version":"build-2803163510"},"reference-count":81,"publisher":"Public Library of Science (PLoS)","issue":"9","license":[{"start":{"date-parts":[[2026,9,8]],"date-time":"2026-09-08T00:00:00Z","timestamp":1788825600000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":["www.plosone.org"],"crossmark-restriction":false},"short-container-title":["PLoS One"],"abstract":"<jats:p>\n                    Large language models such as ChatGPT, Gemini, Claude and DeepSeek now generate text that is routinely indistinguishable from human writing, yet virtually every deployed detector answers only one binary question: human or AI. This is the wrong question for the settings that matter most. Digital forensics needs to know\n                    <jats:italic>which<\/jats:italic>\n                    model produced a text; academic-integrity adjudication needs to know whether a human was involved at all; and neither can be answered by a single probability, least of all for the hybrid human-AI drafts that now dominate real-world writing. This paper addresses that gap with SiBot, an end-to-end framework that reformulates AI-text detection as fine-grained multi-class source attribution and carries it through to public deployment. We construct two purpose-built corpora using a controlled bank of 3,000 prompts spanning six subject domains and five task types: a 66,000-sample corpus covering 22 AI sources, and a 30,000-sample corpus covering 10 classes that explicitly models five pure sources and four human-AI collaboration workflows; both are publicly released as the TXD-22 benchmark dataset. On the 22-class corpus we benchmark twelve feature-classifier combinations and find that TF-IDF with Random Forest attains 68.2% accuracy and an AUC of 0.742. On the 10-class corpus we benchmark fifteen classical, deep-learning and fine-tuned transformer baselines, and propose a hybrid architecture that fuses sparse TF-IDF lexical features with DeBERTa contextual embeddings at the feature level before Random Forest classification. The proposed hybrid attains 92.38% accuracy, 92.41% precision, 92.38% recall and 92.31% F1 under prompt-aware 10-fold cross-validation, a 17.73-point gain over the strongest fine-tuned transformer (DeBERTa, 74.65%) and a 34.30-point gain over TF-IDF with Random Forest alone, with non-overlapping 95% confidence intervals. An ablation confirms that both branches are necessary, and SHAP and LIME analyses expose the lexical evidence behind individual decisions. Because the 10-class hybrid is both substantially more accurate and interpretable, it is the model served by the live SiBot platform; the 22-class model is reported here as a research benchmark, and extending the deployment to all 22 classes is left to future work. In a controlled three-way benchmark against QuillBot, Turnitin, ZeroGPT and TextGuard, SiBot is the only system that names the generating model of AI text (Gemini, 96.7% confidence) and the only one that recognises hybrid provenance (97.7% confidence, against verdicts ranging from 0% to 76% among the commercial tools on the identical input).\n                  <\/jats:p>","DOI":"10.1371\/journal.pone.0357405","type":"journal-article","created":{"date-parts":[[2026,9,8]],"date-time":"2026-09-08T17:24:05Z","timestamp":1788888245000},"page":"e0357405","update-policy":"https:\/\/doi.org\/10.1371\/journal.pone.corrections_policy","source":"Crossref","is-referenced-by-count":0,"title":["SiBot: A hybrid framework for fine-grained semantic attribution of AI-generated text and its production deployment"],"prefix":"10.1371","volume":"21","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-9219-230X","authenticated-orcid":true,"given":"Md. Sadiq","family":"Iqbal","sequence":"first","affiliation":[{"name":"Dhaka University of Engineering and Technology","place":["Gazipur, Bangladesh"],"department":["Department of Computer Science and Engineering"]}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Mohammod","family":"Abul Kashem","sequence":"additional","affiliation":[{"name":"Dhaka University of Engineering and Technology","place":["Gazipur, Bangladesh"],"department":["Department of Computer Science and Engineering"]}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"340","published-online":{"date-parts":[[2026,9,8]]},"reference":[{"issue":"2","key":"pone.0357405.ref001","doi-asserted-by":"crossref","first-page":"87","DOI":"10.1007\/BF01830689","article-title":"Authorship attribution","volume":"28","author":"DI Holmes","year":"1994","journal-title":"Comput Hum"},{"issue":"3","key":"pone.0357405.ref002","doi-asserted-by":"crossref","first-page":"111","DOI":"10.1093\/llc\/13.3.111","article-title":"The evolution of stylometry in humanities scholarship","volume":"13","author":"DI Holmes","year":"1998","journal-title":"Literary and Linguistic Computing"},{"key":"pone.0357405.ref003","article-title":"Hidden technical debt in machine learning systems","volume":"28","author":"D Sculley","year":"2015","journal-title":"Advances in Neural Information Processing Systems"},{"key":"pone.0357405.ref004","unstructured":"OpenAI. GPT-2: 1.5B release. https:\/\/openai.com\/research\/gpt-2-1-5b-release. 2019."},{"key":"pone.0357405.ref005","doi-asserted-by":"crossref","unstructured":"Gehrmann S, Strobelt H, Rush AM. GLTR: Statistical detection and visualization of generated text. In: ACL 2019: System Demonstrations, 2019. 111\u20136.","DOI":"10.18653\/v1\/P19-3019"},{"key":"pone.0357405.ref006","doi-asserted-by":"crossref","unstructured":"Uchendu A, Le T, Shu K, Lee D. Authorship attribution for neural text generation. EMNLP. 2020;2020:8384\u201395.","DOI":"10.18653\/v1\/2020.emnlp-main.673"},{"key":"pone.0357405.ref007","doi-asserted-by":"crossref","DOI":"10.7717\/peerj-cs.443","article-title":"Feature-based detection of automated language models: tackling GPT-2, GPT-3 and Grover","volume":"7","author":"L Fr\u00f6hling","year":"2021","journal-title":"PeerJ Comput Sci"},{"key":"pone.0357405.ref008","unstructured":"Pagnoni A, Liu T, Li Y. Ivy: A benchmark for fine-grained detection of text from multiple language models. 2022. https:\/\/doi.org\/arXiv:2203.10054"},{"key":"pone.0357405.ref009","volume-title":"Designing machine learning systems: An iterative process for production-ready applications","author":"C Huyen","year":"2022"},{"key":"pone.0357405.ref010","unstructured":"Mitchell E, Lee Y, Khazatsky A, Manning CD, Finn C. DetectGPT: Zero-shot machine-generated text detection using probability curvature. ICML. 2023;2023:24950\u201366."},{"issue":"7","key":"pone.0357405.ref011","doi-asserted-by":"crossref","first-page":"100779","DOI":"10.1016\/j.patter.2023.100779","article-title":"GPT detectors are biased against non-native English writers","volume":"4","author":"W Liang","year":"2023","journal-title":"Patterns (N Y)"},{"key":"pone.0357405.ref012","first-page":"27489","article-title":"Paraphrasing evades detectors of AI-generated text, but retrieval is an effective defense","volume":"36","author":"K Krishna","year":"2023","journal-title":"NeurIPS"},{"issue":"8","key":"pone.0357405.ref013","first-page":"456","article-title":"Stylometric analysis of ChatGPT-generated essays: A comparative study with human-authored texts","volume":"14","author":"M Seraj","year":"2023","journal-title":"IJACSA"},{"key":"pone.0357405.ref014","volume-title":"TXD-22: A large-scale benchmark dataset for multi-class AI-generated and mixed-source text identification","author":"MS Iqbal"},{"key":"pone.0357405.ref015","unstructured":"OpenAI. GPT-2: 1.5B release. 2019. https:\/\/openai.com\/research\/gpt-2-1-5b-release"},{"key":"pone.0357405.ref016","doi-asserted-by":"crossref","unstructured":"Gehrmann S, Strobelt H, Rush AM. GLTR: Statistical detection and visualization of generated text. In: ACL 2019: System Demonstrations, 2019. 111\u20136.","DOI":"10.18653\/v1\/P19-3019"},{"key":"pone.0357405.ref017","unstructured":"Mitchell E, Lee Y, Khazatsky A, Manning CD, Finn C. DetectGPT: Zero-shot machine-generated text detection using probability curvature. ICML. 2023;2023:24950\u201366."},{"key":"pone.0357405.ref018","unstructured":"OpenAI. AI classifier for indicating AI-written text. https:\/\/openai.com\/blog\/new-ai-classifier-for-indicating-ai-written-text. 2023."},{"key":"pone.0357405.ref019","unstructured":"ZeroGPT. ZeroGPT: AI content detector. https:\/\/www.zerogpt.com"},{"key":"pone.0357405.ref020","unstructured":"QuillBot. QuillBot AI detector. https:\/\/quillbot.com\/ai-content-detector. 2023."},{"issue":"1","key":"pone.0357405.ref021","doi-asserted-by":"crossref","first-page":"9","DOI":"10.1002\/asi.20961","article-title":"Computational methods in authorship attribution","volume":"60","author":"M Koppel","year":"2009","journal-title":"JASIST"},{"issue":"3","key":"pone.0357405.ref022","doi-asserted-by":"crossref","first-page":"111","DOI":"10.1093\/llc\/13.3.111","article-title":"The evolution of stylometry in humanities scholarship","volume":"13","author":"DI Holmes","year":"1998","journal-title":"Literary and Linguistic Computing"},{"issue":"7","key":"pone.0357405.ref023","doi-asserted-by":"crossref","first-page":"100779","DOI":"10.1016\/j.patter.2023.100779","article-title":"GPT detectors are biased against non-native English writers","volume":"4","author":"W Liang","year":"2023","journal-title":"Patterns (N Y)"},{"key":"pone.0357405.ref024","first-page":"27489","article-title":"Paraphrasing evades detectors of AI-generated text, but retrieval is an effective defense","volume":"36","author":"K Krishna","year":"2023","journal-title":"NeurIPS"},{"issue":"8","key":"pone.0357405.ref025","first-page":"456","article-title":"Stylometric analysis of ChatGPT-generated essays","volume":"14","author":"M Seraj","year":"2023","journal-title":"IJACSA"},{"key":"pone.0357405.ref026","doi-asserted-by":"crossref","unstructured":"Kumarage T, Liu H. Neural authorship attribution: stylometric analysis on large language models. 2023. https:\/\/doi.org\/arXiv:2308.07305","DOI":"10.1109\/CyberC58899.2023.00019"},{"key":"pone.0357405.ref027","doi-asserted-by":"crossref","unstructured":"Uchendu A, Le T, Shu K, Lee D. Authorship attribution for neural text generation. EMNLP 2020;2020:8384\u201395.","DOI":"10.18653\/v1\/2020.emnlp-main.673"},{"key":"pone.0357405.ref028","doi-asserted-by":"crossref","DOI":"10.7717\/peerj-cs.443","article-title":"Feature-based detection of automated language models","volume":"7","author":"L Fr\u00f6hling","year":"2021","journal-title":"PeerJ Computer Science"},{"key":"pone.0357405.ref029","unstructured":"Pagnoni A, Liu T, Li Y. Ivy: A benchmark for fine-grained detection of text from multiple language models. 2022."},{"key":"pone.0357405.ref030","unstructured":"Ghosal S, Dutta S, Das D. Semantic drift in large language models: A comparative analysis across model generations. 2023. https:\/\/doi.org\/10.48550\/arXiv.2305.16327"},{"key":"pone.0357405.ref031","article-title":"Hidden technical debt in machine learning systems","volume":"28","author":"D Sculley","year":"2015","journal-title":"NeurIPS"},{"key":"pone.0357405.ref032","volume-title":"Designing machine learning systems","author":"C Huyen","year":"2022"},{"key":"pone.0357405.ref033","unstructured":"Hugging Face. Hugging Face Spaces. https:\/\/huggingface.co\/spaces"},{"key":"pone.0357405.ref034","unstructured":"Hugging Face. Transformers documentation. https:\/\/huggingface.co\/docs\/transformers. 2023."},{"key":"pone.0357405.ref035","unstructured":"FastAPI. FastAPI framework documentation. https:\/\/fastapi.tiangolo.com. 2023."},{"key":"pone.0357405.ref036","unstructured":"Supabase. Supabase: The open source Firebase alternative. https:\/\/supabase.com"},{"key":"pone.0357405.ref037","doi-asserted-by":"crossref","unstructured":"Dugan L, Hwang A, Trhl\u00edk F, Zhu A, Ludan JM, Xu H, et al. RAID: A shared benchmark for robust evaluation of machine-generated text detectors. In: ACL 2024 (Volume 1: Long Papers), 2024. 12463\u201392.","DOI":"10.18653\/v1\/2024.acl-long.674"},{"key":"pone.0357405.ref038","doi-asserted-by":"crossref","unstructured":"He X, Shen X, Chen Z, Backes M, Zhang Y. MGTBench: Benchmarking Machine-Generated Text Detection. In: Proceedings of the 2024 on ACM SIGSAC Conference on Computer and Communications Security, 2024. 2251\u201365. https:\/\/doi.org\/10.1145\/3658644.3670344","DOI":"10.1145\/3658644.3670344"},{"key":"pone.0357405.ref039","unstructured":"Bao G, Zhao Y, Teng Z, Yang L, Zhang Y. Fast-DetectGPT: Efficient zero-shot detection of machine-generated text via conditional probability curvature. In: ICLR 2024, 2024."},{"key":"pone.0357405.ref040","unstructured":"Hans A, Schwarzschild A, Cherepanova V, Kazemi H, Saha A, Goldblum M, et al. Spotting LLMs with Binoculars: Zero-shot detection of machine-generated text. In: ICML 2024, 2024. 17519\u201337."},{"issue":"2","key":"pone.0357405.ref041","doi-asserted-by":"crossref","first-page":"21","DOI":"10.1145\/3715073.3715076","article-title":"Authorship Attribution in the Era of LLMs: Problems, Methodologies, and Challenges","volume":"26","author":"B Huang","year":"2024","journal-title":"SIGKDD Explor"},{"key":"pone.0357405.ref042","doi-asserted-by":"crossref","unstructured":"La Cava L, Tagarelli A. OpenTuringBench: An open-model-based benchmark and framework for machine-generated text detection and attribution. In: EMNLP 2025, 2025. 26666\u201382.","DOI":"10.18653\/v1\/2025.emnlp-main.1354"},{"key":"pone.0357405.ref043","doi-asserted-by":"crossref","unstructured":"Bisxtray T, et al. I know which LLM wrote your code last summer: LLM-generated code stylometry for authorship attribution. 2025. https:\/\/doi.org\/10.48550\/arXiv.2506.17323","DOI":"10.1145\/3733799.3762964"},{"key":"pone.0357405.ref044","unstructured":"Chen J, Zhu X, Liu T, Chen Y, Chen X, Yuan Y, et al. LLM-as-a-Coauthor: Can mixed human-written and machine-generated text be detected?. In: Findings of NAACL 2024, 2024."},{"key":"pone.0357405.ref045","unstructured":"Thai K, Emi B, Masrour E, Iyyer M. EditLens: Quantifying the extent of AI editing in text. 2025. https:\/\/doi.org\/arXiv:2510.03154"},{"key":"pone.0357405.ref046","doi-asserted-by":"crossref","first-page":"979","DOI":"10.3390\/info16110979","article-title":"Differentiating between human-written and AI-generated texts using linguistic features automatically extracted from an online computational tool","volume":"16","author":"GP Georgiou","year":"2024","journal-title":"Information"},{"key":"pone.0357405.ref047","doi-asserted-by":"crossref","unstructured":"Bender EM, Koller A. Climbing towards NLU: On meaning, form, and understanding in the age of data. In: ACL 2020, 2020. 5185\u201398.","DOI":"10.18653\/v1\/2020.acl-main.463"},{"key":"pone.0357405.ref048","volume-title":"Designing machine learning systems","author":"C Huyen","year":"2022"},{"key":"pone.0357405.ref049","unstructured":"Wang Y, Mansurov J, Ivanov P, Jhamtani H. Large language models are few-shot fake news detectors. 2023. https:\/\/doi.org\/10.48550\/arXiv.2304.01937"},{"key":"pone.0357405.ref050","unstructured":"Ghosal S, Dutta S, Das D. Semantic drift in large language models. 2023. https:\/\/arxiv.org\/abs\/2305.16327"},{"key":"pone.0357405.ref051","first-page":"2825","article-title":"Scikit-learn: Machine learning in Python","volume":"12","author":"F Pedregosa","year":"2011","journal-title":"Journal of Machine Learning Research"},{"key":"pone.0357405.ref052","doi-asserted-by":"crossref","unstructured":"Devlin J, Chang MW, Lee K, Toutanova K. BERT: Pre-training of deep bidirectional transformers for language understanding. In: NAACL-HLT 2019, 2019. 4171\u201386.","DOI":"10.18653\/v1\/N19-1423"},{"issue":"5","key":"pone.0357405.ref053","doi-asserted-by":"crossref","first-page":"513","DOI":"10.1016\/0306-4573(88)90021-0","article-title":"Term-weighting approaches in automatic text retrieval","volume":"24","author":"G Salton","year":"1988","journal-title":"Information Processing & Management"},{"key":"pone.0357405.ref054","unstructured":"Lan Z, Chen M, Goodman S, Gimpel K, Sharma P, Soricut R. ALBERT: A lite BERT for self-supervised learning of language representations. In: 2020."},{"key":"pone.0357405.ref055","article-title":"Attention is all you need","volume":"30","author":"A Vaswani","year":"2017","journal-title":"NeurIPS"},{"key":"pone.0357405.ref056","unstructured":"Liu Y, et al. RoBERTa: A robustly optimized BERT pretraining approach. 2019. https:\/\/doi.org\/10.48550\/arXiv.1907.11692"},{"key":"pone.0357405.ref057","unstructured":"He P, Liu X, Gao J, Chen W. DeBERTa: Decoding-enhanced BERT with disentangled attention. In: ICLR 2021, 2021."},{"issue":"1","key":"pone.0357405.ref058","doi-asserted-by":"crossref","first-page":"5","DOI":"10.1023\/A:1010933404324","article-title":"Random Forests","volume":"45","author":"L Breiman","year":"2001","journal-title":"Machine Learning"},{"key":"pone.0357405.ref059","doi-asserted-by":"crossref","unstructured":"Chen T, Guestrin C. XGBoost: A scalable tree boosting system. In: KDD 2016, 2016. 785\u201394.","DOI":"10.1145\/2939672.2939785"},{"key":"pone.0357405.ref060","article-title":"LightGBM: A highly efficient gradient boosting decision tree","volume":"30","author":"G Ke","year":"2017","journal-title":"NeurIPS"},{"key":"pone.0357405.ref061","volume-title":"The elements of statistical learning","author":"T Hastie","edition":"2"},{"key":"pone.0357405.ref062","unstructured":"Joblib Development Team. Joblib: Running Python functions as pipeline jobs. https:\/\/joblib.readthedocs.io. 2023."},{"key":"pone.0357405.ref063","volume-title":"Patterns of enterprise application architecture","author":"M Fowler","year":"2002"},{"key":"pone.0357405.ref064","unstructured":"Vercel. Vercel: Development and deployment platform. https:\/\/vercel.com"},{"key":"pone.0357405.ref065","unstructured":"Ram\u00edrez S. FastAPI in production: Deployment patterns. https:\/\/fastapi.tiangolo.com\/deployment\/. 2023."},{"key":"pone.0357405.ref066","volume-title":"Natural language processing with Python","author":"S Bird","year":"2009"},{"key":"pone.0357405.ref067","volume-title":"RESTful web services","author":"L Richardson","year":"2007"},{"key":"pone.0357405.ref068","volume-title":"Learning React","author":"A Banks","year":"2020","edition":"2"},{"key":"pone.0357405.ref069","volume-title":"Speech and language processing","author":"D Jurafsky","year":"2023","edition":"3"},{"issue":"3","key":"pone.0357405.ref070","doi-asserted-by":"crossref","first-page":"538","DOI":"10.1002\/asi.21001","article-title":"A survey of modern authorship attribution methods","volume":"60","author":"E Stamatatos","year":"2009","journal-title":"JASIST"},{"key":"pone.0357405.ref071","article-title":"Hybrid CNN-GRU model with spotted hyena optimisation for AI-generated text detection","author":"M Ragab","year":"2024","journal-title":"Comparative literature"},{"key":"pone.0357405.ref072","unstructured":"Alhijawi B, et al. A deep learning framework for detecting LLM-generated scientific content. 2024."},{"key":"pone.0357405.ref073","unstructured":"Abbas A. An automated framework for AI-generated text detection. 2023."},{"key":"pone.0357405.ref074","article-title":"GANNET-optimised deep learning for ChatGPT-generated text detection","author":"A Alshareef","year":"2024","journal-title":"Comparative literature"},{"key":"pone.0357405.ref075","article-title":"BiLSTM with attention for AI-generated text detection","author":"J Blake","year":"2024","journal-title":"Comparative literature"},{"key":"pone.0357405.ref076","article-title":"Deep learning classification of AI-generated versus human text","author":"A Kayabas","year":"2024","journal-title":"Comparative literature"},{"key":"pone.0357405.ref077","unstructured":"Kim S, et al. Student-generative AI interaction patterns in academic writing. Comparative Literature. 2023."},{"key":"pone.0357405.ref078","unstructured":"Kapoor R, et al. AI-based evaluation frameworks and automation tools. Comparative literature. 2023."},{"key":"pone.0357405.ref079","first-page":"4765","article-title":"A unified approach to interpreting model predictions","volume":"30","author":"SM Lundberg","year":"2017","journal-title":"NeurIPS"},{"key":"pone.0357405.ref080","doi-asserted-by":"crossref","unstructured":"Ribeiro MT, Singh S, Guestrin C. Why should I trust you? Explaining the predictions of any classifier. In: KDD 2016, 2016. 1135\u201344.","DOI":"10.1145\/2939672.2939778"},{"key":"pone.0357405.ref081","unstructured":"Turnitin. AI writing detection. https:\/\/www.turnitin.com\/solutions\/ai-writing. 2023. Accessed 2023 October 1."}],"container-title":["PLOS One"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dx.plos.org\/10.1371\/journal.pone.0357405","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,9,8]],"date-time":"2026-09-08T17:24:22Z","timestamp":1788888262000},"score":1,"resource":{"primary":{"URL":"https:\/\/dx.plos.org\/10.1371\/journal.pone.0357405"}},"subtitle":[],"editor":[{"given":"Toqir","family":"Rana","sequence":"first","affiliation":[{"name":"The University of Lahore","place":["PAKISTAN"]}],"role":[{"vocabulary":"crossref","role":"editor"}]}],"short-title":[],"issued":{"date-parts":[[2026,9,8]]},"references-count":81,"journal-issue":{"issue":"9","published-online":{"date-parts":[[2026,9,8]]}},"URL":"https:\/\/doi.org\/10.1371\/journal.pone.0357405","relation":{},"ISSN":["1932-6203"],"issn-type":[{"value":"1932-6203","type":"electronic"}],"subject":[],"published":{"date-parts":[[2026,9,8]]}}}