{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/arxiv-2510-00296","title":"Beyond Token Probes: Hallucination Detection via Activation Tensors with ACT-ViT","arxiv_id":"2510.00296","date":"2025-09-30","proceeding":"NeurIPS","authors":["Guy Bar-Shalom","Fabrizio Frasca","Yaniv Galron","Yftah Ziser","Haggai Maron"],"abstract":"Detecting hallucinations in Large Language Model-generated text is crucial for their safe deployment. While probing classifiers show promise, they operate on isolated layer-token pairs and are LLM-specific, limiting their effectiveness and hindering cross-LLM applications. In this paper, we introduce a novel approach to address these shortcomings. We build on the natural sequential structure of activation data in both axes (layers $\\times$ tokens) and advocate treating full activation tensors akin to images. We design ACT-ViT, a Vision Transformer-inspired model that can be effectively and efficiently applied to activation tensors and supports training on data from multiple LLMs simultaneously. Through comprehensive experiments encompassing diverse LLMs and datasets, we demonstrate that ACT-ViT consistently outperforms traditional probing techniques while remaining extremely efficient for deployment. In particular, we show that our architecture benefits substantially from multi-LLM training, achieves strong zero-shot performance on unseen datasets, and can be transferred effectively to new LLMs through fine-tuning. Full code is available at https://github.com/BarSGuy/ACT-ViT.","url_abs":"https://arxiv.org/abs/2510.00296","url_pdf":"https://arxiv.org/pdf/2510.00296","source":{"archive":null,"snapshot":"2025-07-28","note":"not in the Papers with Code archive (frozen at the snapshot)","row_kind":"graph","title_abstract_authors_date":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)"},"code_links":[],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2510.00296","atlas_url":"https://app.syntology.ai/?focus=2510.00296","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2510.00296"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/BarSGuy/ACT-ViT","reach":{"status":"ok"}}],"summary":{"unverified":12},"by_repo_kind":{"found_in_text":{"samples":12,"ran":0,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":12,"samples":[{"code_sha256_prefix":"6fd43933edbb0a68","entry":"get_checkpoint_path","repo":"BarSGuy/ACT-ViT","repo_kind":"found_in_text","path":"LA_training.py","file_url":"https://github.com/BarSGuy/ACT-ViT/blob/HEAD/LA_training.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"6fd43933edbb0a68"}},{"code_sha256_prefix":"652ec792ff3cbd56","entry":"get_chunk_from_index","repo":"BarSGuy/ACT-ViT","repo_kind":"found_in_text","path":"utils/check_data_files.py","file_url":"https://github.com/BarSGuy/ACT-ViT/blob/HEAD/utils/check_data_files.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"652ec792ff3cbd56"}},{"code_sha256_prefix":"7f1a547b005a3e7b","entry":"get_chunks_from_indices","repo":"BarSGuy/ACT-ViT","repo_kind":"found_in_text","path":"utils/check_data_files.py","file_url":"https://github.com/BarSGuy/ACT-ViT/blob/HEAD/utils/check_data_files.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"7f1a547b005a3e7b"}},{"code_sha256_prefix":"54fe0ebb44e203eb","entry":"get_train_test_datasets","repo":"BarSGuy/ACT-ViT","repo_kind":"found_in_text","path":"foundation_main.py","file_url":"https://github.com/BarSGuy/ACT-ViT/blob/HEAD/foundation_main.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"54fe0ebb44e203eb"}},{"code_sha256_prefix":"95f18e1bb9e32da9","entry":"initialize_dicts","repo":"BarSGuy/ACT-ViT","repo_kind":"found_in_text","path":"probing.py","file_url":"https://github.com/BarSGuy/ACT-ViT/blob/HEAD/probing.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"95f18e1bb9e32da9"}},{"code_sha256_prefix":"bafc15bec0d13d0a","entry":"load_indices_and_create_subsets","repo":"BarSGuy/ACT-ViT","repo_kind":"found_in_text","path":"foundation_main.py","file_url":"https://github.com/BarSGuy/ACT-ViT/blob/HEAD/foundation_main.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"bafc15bec0d13d0a"}},{"code_sha256_prefix":"3ac79ff639c4c1b7","entry":"load_label","repo":"BarSGuy/ACT-ViT","repo_kind":"found_in_text","path":"create_datasets_split.py","file_url":"https://github.com/BarSGuy/ACT-ViT/blob/HEAD/create_datasets_split.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"3ac79ff639c4c1b7"}},{"code_sha256_prefix":"bf97ae5da2485dee","entry":"load_model_and_validate_gpu","repo":"BarSGuy/ACT-ViT","repo_kind":"found_in_text","path":"utils/LLM_helpers.py","file_url":"https://github.com/BarSGuy/ACT-ViT/blob/HEAD/utils/LLM_helpers.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"bf97ae5da2485dee"}},{"code_sha256_prefix":"164dc66d3392a672","entry":"prepare_data_for_clf","repo":"BarSGuy/ACT-ViT","repo_kind":"found_in_text","path":"probing.py","file_url":"https://github.com/BarSGuy/ACT-ViT/blob/HEAD/probing.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"164dc66d3392a672"}},{"code_sha256_prefix":"60e5185492f08e13","entry":"prepare_run_dir","repo":"BarSGuy/ACT-ViT","repo_kind":"found_in_text","path":"foundation_main.py","file_url":"https://github.com/BarSGuy/ACT-ViT/blob/HEAD/foundation_main.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"60e5185492f08e13"}},{"code_sha256_prefix":"fef6a66fc8598e10","entry":"save_results","repo":"BarSGuy/ACT-ViT","repo_kind":"found_in_text","path":"probing.py","file_url":"https://github.com/BarSGuy/ACT-ViT/blob/HEAD/probing.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"fef6a66fc8598e10"}},{"code_sha256_prefix":"7a6b5a3a147aa7fa","entry":"str2bool","repo":"BarSGuy/ACT-ViT","repo_kind":"found_in_text","path":"utils/args.py","file_url":"https://github.com/BarSGuy/ACT-ViT/blob/HEAD/utils/args.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"7a6b5a3a147aa7fa"}}]},"arxiv_metadata":{"licence":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)","fields":["title","abstract","authors","date"],"primary_category":"cs.LG","source":"arxiv_api"},"syntology_extracted_results":null}