[{"data":1,"prerenderedAt":447},["ShallowReactive",2],{"{\"path\":[\"services\",\"onyx\"],\"query\":null,\"headers\":{\"Accept\":\"application/json\"}}":3,"listing-c35e315e-343c-422b-ba16-2f637477eec0-0-{}":428},{"page":4,"templates":304,"_listing_pages":303,"navigation":407,"breadcrumbs":422},{"@id":5,"@type":6,"UID":7,"allow_discussion":8,"blocks":9,"blocks_layout":234,"changeNote":21,"contributors":261,"created":262,"creators":263,"description":265,"effective":266,"exclude_from_nav":8,"expires":267,"id":268,"is_folderish":93,"items":269,"items_total":282,"language":283,"layout":286,"lock":287,"modified":288,"nav_title":267,"next_item":289,"parent":290,"preview_caption_link":267,"preview_image_link":267,"previous_item":298,"relatedItems":299,"review_state":295,"rights":21,"subjects":300,"table_of_contents":267,"title":301,"type_title":297,"version":302,"versioning_enabled":93,"working_copy":267,"working_copy_of":267,"_listing_pages":303},"https://pretagovsite-api.fly.dev/services/onyx","Document","13af81a454b147439e3e8735448420cb",false,{"084cf362-22d0-4de9-8a46-e811fa802585":10,"15b71052-b9b3-4869-81e5-bc1a420d37cf":18,"23d2a083-36ef-478f-afa4-a32935da1e7d":50,"25f9e2cd-ced2-49d2-a7d4-dc535cb20648":57,"2e8586d3-8101-4845-9cfa-c95041fe5c48":63,"4e36469d-a965-4b41-a209-a2cb702a5a1e":99,"4f9c6784-6b9d-4d0c-88fa-47f1a5bbf706":105,"5ab09244-f190-4418-971c-abc9ef4ee71a":126,"5b877aad-c85d-498b-9b5f-de92893702b0":133,"5ee0c983-3630-4874-89fd-626e9b3e564b":139,"6ebc672e-f8a8-4193-b2fb-22ba0edfe9db":145,"728329b0-037f-4e1e-af54-96a89c8d6f45":151,"93eded13-4f23-4380-84f1-8b3586f46585":157,"97b13370-86e1-48bd-9cc8-4f270274e456":163,"ab70000e-b9a2-44e0-9ae4-b61fd11c807b":173,"ad637917-2150-4f8f-98d6-87e27b4a152e":179,"b3fce1ac-da97-474c-b669-929af4cfd4d0":185,"bd138b1a-ae3e-472f-ab36-c39e26a16c0e":191,"cb7a9a36-0fd4-4842-a119-8e5fd7de7bdb":192,"d4e8c268-b9b2-4711-b23b-9641b5c092f0":198,"d5642349-bad4-45c2-9028-efc7da43ce1d":204,"e4265532-9f27-4200-b422-2aca4af319f3":210,"e9979132-26f2-4389-8e92-7ec4f4c21245":216,"f08f77bc-7f40-4075-95ae-4cd6544226f0":222,"f230300d-085d-4eb8-b33e-af6173187663":228},{"@type":11,"plaintext":12,"value":13},"slate","Annual reports, investigation summaries and other regulatory documents have multi-page tables, footnotes and inconsistent layouts. Standard PDF-to-text tools miss those. We swapped Onyx's PDF extractor for one based on PyMuPDF layout analysis, with cross-page table merging. For Excel inputs we added named-table parsing and column unpivoting.",[14],{"children":15,"type":17},[16],{"text":12},"p",{"@type":19,"align":20,"alt":21,"image_scales":22,"size":48,"url":49},"image","right","",{"image":23},[24],{"content-type":25,"download":26,"filename":27,"height":28,"scales":29,"size":46,"width":47},"image/png","@@images/image-360-53ed75790de68b91b2750585cb0a471e.png","Screenshot 2025-06-03 at 2.43.49 pm.png",148,{"icon":30,"mini":34,"thumb":38,"tile":42},{"download":31,"height":32,"width":33},"@@images/image-32-64ea9e0d72b7531264353745a6ae8784.png",13,32,{"download":35,"height":36,"width":37},"@@images/image-200-71502caa90ae37cbb848fa13765b49f1.png",82,200,{"download":39,"height":40,"width":41},"@@images/image-128-58657684cd518a70bf41449d640ad76c.png",52,128,{"download":43,"height":44,"width":45},"@@images/image-64-2d0d68a63298c2101479198e9b087b0e.png",26,64,16763,360,"m","https://pretagovsite-api.fly.dev/services/onyx/screenshot-2025-06-03-at-2-43-49-pm.png",{"@type":11,"plaintext":51,"value":52},"Data sources that aren't documents",[53],{"children":54,"type":56},[55],{"text":51},"h3",{"@type":11,"plaintext":58,"value":59},"For workloads that aren't 24/7, we run Onyx in a scale-to-zero configuration on Fly.io. The single Onyx worker is split into eight specialised workers, each suspended when idle. Cost between requests is zero.",[60],{"children":61,"type":17},[62],{"text":58},{"@type":64,"blocks":65,"blocks_layout":95,"columns":98,"variation":94},"gridBlock",{"c35e315e-343c-422b-ba16-2f637477eec0":66},{"@type":67,"fieldMapping":68,"itemDefaults_cardStyle":74,"limit":75,"querystring":76,"variation":94},"listing",{"@id":69,"description":70,"effective":71,"image":19,"subjects":72,"title":73},"href","description","date","subjects","title","overlay",3,{"query":77,"sort_on":91,"sort_order":92,"sort_order_boolean":93},[78,82,87],{"i":79,"o":80,"v":81},"path","plone.app.querystring.operation.string.path","/case-studies::1",{"i":83,"o":84,"v":85},"Subject","plone.app.querystring.operation.selection.any",[86],"ai-search",{"i":88,"o":84,"v":89},"portal_type",[6,90],"CaseStudy","effective","descending",true,"teaser",{"items":96},[97],"c35e315e-343c-422b-ba16-2f637477eec0",2,{"@type":11,"plaintext":100,"value":101},"Scale-to-zero hosting",[102],{"children":103,"type":56},[104],{"text":100},{"@type":106,"blocks":107,"blocks_layout":116,"slotId":119,"styles":120,"templateId":124,"templateInstanceId":125},"section",{"cta-btn":108},{"@type":109,"buttonColor":110,"buttonSize":111,"href":112,"title":115},"button","white","btn-lg",[113],{"@id":114},"https://pretagovsite-api.fly.dev/contact-info","Contact us for a free review of your project",{"items":117},[118],"cta-btn","cta",{"backgroundColor":121,"padding":122,"textAlign":123},"gradient-8","large","center","/templates/contact-cta","tpl-a906274a42",{"@type":11,"plaintext":127,"value":128},"Two pilots",[129],{"children":130,"type":132},[131],{"text":127},"h2",{"@type":11,"plaintext":134,"value":135},"Onyx is an open-source platform for AI search across your own data. 17,000+ GitHub stars. Netflix, Thales Group, Ramp and UC San Diego run it in production. We deploy and customise Onyx for governments, regulators and enterprises in Australia and the UK.",[136],{"children":137,"type":17},[138],{"text":134},{"@type":11,"plaintext":140,"value":141},"For organisations that want AI search on a public site, we ship a pop-out chat widget that drops into any frontend. Streaming responses, markdown rendering, persistent sessions. Talks to Onyx through the existing token API.",[142],{"children":143,"type":17},[144],{"text":140},{"@type":11,"plaintext":146,"value":147},"The mainstream products in this space are Glean, Microsoft Copilot and Coveo. They're closed SaaS. Your data leaves your boundary, your roadmap depends on theirs, and your pricing is whatever they decide it is next year. For most companies that's fine. For regulators, healthcare providers and public-sector organisations with data-sovereignty obligations, it isn't.",[148],{"children":149,"type":17},[150],{"text":146},{"@type":11,"plaintext":152,"value":153},"Standard RAG breaks tables. Rows and columns get split into fragments, so questions like \"what was total revenue last year\" return partial answers or no answer at all. We added a parallel SQL pathway. Onyx still does the semantic search; alongside, the question hits a generated SQL query that computes the answer across the full table. End users get a real number instead of a list of links.",[154],{"children":155,"type":17},[156],{"text":152},{"@type":11,"plaintext":158,"value":159},"PDFs that aren't print-ready",[160],{"children":161,"type":56},[162],{"text":158},{"@type":109,"buttonColor":164,"buttonShape":165,"buttonSize":21,"buttonVariant":166,"linkMode":167,"searchPath":168,"searchQuery":171,"title":172},"primary","pill","soft","search",[169],{"@id":170},"/case-studies","facet.Subject=ai-search","View all AI search case studies",{"@type":11,"plaintext":174,"value":175},"What we add on top",[176],{"children":177,"type":132},[178],{"text":174},{"@type":11,"plaintext":180,"value":181},"An embeddable chatbot widget",[182],{"children":183,"type":56},[184],{"text":180},{"@type":11,"plaintext":186,"value":187},"Multilingual health information. Translated medical resources in 60+ languages. A user asks for COVID vaccine information in Arabic and gets the right document in the right language.",[188],{"children":189,"type":17},[190],{"text":186},{"@type":73},{"@type":11,"plaintext":193,"value":194},"Regulator complaints and oversight. PowerBI dashboards, annual reports, media releases, investigation summaries. A user asks how many complaints were upheld in 2024 and gets a number with citations, not a list of links.",[195],{"children":196,"type":17},[197],{"text":193},{"@type":11,"plaintext":199,"value":200},"Why open source",[201],{"children":202,"type":132},[203],{"text":199},{"@type":11,"plaintext":205,"value":206},"PretaGov has run two Onyx pilots for AU and UK clients. The extensions below are things we needed and built.",[207],{"children":208,"type":17},[209],{"text":205},{"@type":11,"plaintext":211,"value":212},"Related work",[213],{"children":214,"type":132},[215],{"text":211},{"@type":11,"plaintext":217,"value":218},"Tables and structured data",[219],{"children":220,"type":56},[221],{"text":217},{"@type":11,"plaintext":223,"value":224},"Onyx is MIT-licensed. You run it where you want, on whichever LLM you choose (OpenAI, Anthropic, or self-hosted via Ollama or vLLM). You can audit which document chunks went into which answer. It ships as a complete product: 40+ connectors, role-based access control, SSO via OIDC, SAML and OAuth2, document-level permissions, an admin UI, and hybrid search with reranking. Initial deployment usually takes a day.",[225],{"children":226,"type":17},[227],{"text":223},{"@type":11,"plaintext":229,"value":230},"Beyond Onyx's 40+ shipped connectors, we've added PowerBI dashboard scraping, table extraction from csv / xlsx / pptx files embedded in web pages, and sitemap improvements that discover linked files (not just linked pages). Our DiscoveryConnector interface makes crawl pruning correct rather than approximate.",[231],{"children":232,"type":17},[233],{"text":229},{"items":235},[236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260],"bd138b1a-ae3e-472f-ab36-c39e26a16c0e","15b71052-b9b3-4869-81e5-bc1a420d37cf","5b877aad-c85d-498b-9b5f-de92893702b0","d4e8c268-b9b2-4711-b23b-9641b5c092f0","6ebc672e-f8a8-4193-b2fb-22ba0edfe9db","f08f77bc-7f40-4075-95ae-4cd6544226f0","ab70000e-b9a2-44e0-9ae4-b61fd11c807b","d5642349-bad4-45c2-9028-efc7da43ce1d","e9979132-26f2-4389-8e92-7ec4f4c21245","728329b0-037f-4e1e-af54-96a89c8d6f45","93eded13-4f23-4380-84f1-8b3586f46585","084cf362-22d0-4de9-8a46-e811fa802585","23d2a083-36ef-478f-afa4-a32935da1e7d","f230300d-085d-4eb8-b33e-af6173187663","ad637917-2150-4f8f-98d6-87e27b4a152e","5ee0c983-3630-4874-89fd-626e9b3e564b","4e36469d-a965-4b41-a209-a2cb702a5a1e","25f9e2cd-ced2-49d2-a7d4-dc535cb20648","5ab09244-f190-4418-971c-abc9ef4ee71a","cb7a9a36-0fd4-4842-a119-8e5fd7de7bdb","b3fce1ac-da97-474c-b669-929af4cfd4d0","e4265532-9f27-4200-b422-2aca4af319f3","2e8586d3-8101-4845-9cfa-c95041fe5c48","97b13370-86e1-48bd-9cc8-4f270274e456","4f9c6784-6b9d-4d0c-88fa-47f1a5bbf706",[],"2026-06-02T09:39:59",[264],"admin","Open-source AI search, deployed and extended for governments, regulators, and enterprises that can't send their data to a vendor.","2023-08-22T15:01:00+00:00",null,"onyx",[270],{"@id":49,"@type":271,"description":21,"effective":272,"end":267,"getObjSize":273,"head_title":267,"image_field":19,"image_scales":274,"mime_type":25,"nav_title":267,"review_state":267,"start":267,"title":27,"type_title":271},"Image","1969-12-31T00:00:00+00:00","16.4 KB",{"image":275},[276],{"content-type":25,"download":26,"filename":27,"height":28,"scales":277,"size":46,"width":47},{"icon":278,"mini":279,"thumb":280,"tile":281},{"download":31,"height":32,"width":33},{"download":35,"height":36,"width":37},{"download":39,"height":40,"width":41},{"download":43,"height":44,"width":45},1,{"title":284,"token":285},"English","en","document_view",{"locked":8,"stealable":93},"2026-06-02T09:40:00",{},{"@id":291,"@type":6,"description":292,"effective":293,"end":267,"getObjSize":267,"head_title":267,"image_field":267,"image_scales":294,"mime_type":267,"nav_title":267,"review_state":295,"start":267,"title":296,"type_title":297},"https://pretagovsite-api.fly.dev/services","Strategy, build, and operate — for software your organisation can't afford to get wrong.","2023-06-13T16:58:00+00:00",{},"published","Services","Page",{},[],[],"Onyx AI integration","current",{},{"/templates/contact-cta-info":305,"/templates/contact-cta":361},{"@components":306,"@id":323,"@type":6,"UID":324,"allow_discussion":8,"blocks":325,"blocks_layout":337,"changeNote":21,"contributors":340,"created":341,"creators":342,"description":343,"effective":267,"exclude_from_nav":93,"expires":267,"id":344,"is_folderish":93,"items":345,"items_total":346,"language":347,"layout":286,"lock":348,"modified":349,"nav_title":267,"next_item":350,"parent":351,"preview_caption_link":267,"preview_image_link":267,"previous_item":357,"relatedItems":358,"review_state":295,"rights":21,"subjects":359,"table_of_contents":267,"title":360,"type_title":297,"version":302,"versioning_enabled":93,"working_copy":267,"working_copy_of":267},{"actions":307,"aliases":309,"breadcrumbs":311,"contextnavigation":313,"navigation":315,"navroot":317,"types":319,"workflow":321},{"@id":308},"https://pretagovsite-api.fly.dev/templates/contact-cta-info/@actions",{"@id":310},"https://pretagovsite-api.fly.dev/templates/contact-cta-info/@aliases",{"@id":312},"https://pretagovsite-api.fly.dev/templates/contact-cta-info/@breadcrumbs",{"@id":314},"https://pretagovsite-api.fly.dev/templates/contact-cta-info/@contextnavigation",{"@id":316},"https://pretagovsite-api.fly.dev/templates/contact-cta-info/@navigation",{"@id":318},"https://pretagovsite-api.fly.dev/templates/contact-cta-info/@navroot",{"@id":320},"https://pretagovsite-api.fly.dev/templates/contact-cta-info/@types",{"@id":322},"https://pretagovsite-api.fly.dev/templates/contact-cta-info/@workflow","https://pretagovsite-api.fly.dev/templates/contact-cta-info","contactctainfo000000000000000000",{"cta-section":326},{"@type":106,"blocks":327,"blocks_layout":332,"fixed":93,"readOnly":93,"slotId":119,"styles":334,"templateId":335,"templateInstanceId":336},{"cta-btn":328},{"@type":109,"buttonColor":110,"buttonSize":111,"href":329,"title":331},[330],{"@id":114},"Contact us for more information",{"items":333},[118],{"backgroundColor":121,"padding":122,"textAlign":123},"/templates/contact-cta-info","tpl-contact-cta-info-def",{"items":338},[339],"cta-section",[],"2026-06-19T18:39:44+00:00",[264],"Reusable contact call-to-action. Edit here to update every page that uses it.","contact-cta-info",[],0,{"title":284,"token":285},{"locked":8,"stealable":93},"2026-06-22T05:55:00+00:00",{},{"@id":352,"@type":353,"description":354,"effective":272,"end":267,"getObjSize":267,"head_title":267,"image_field":267,"image_scales":355,"mime_type":267,"nav_title":267,"review_state":295,"start":267,"title":356,"type_title":353},"https://pretagovsite-api.fly.dev/templates","Folder","Reusable content templates (edited centrally, applied across pages).",{},"Templates",{},[],[],"Contact CTA — More information",{"@components":362,"@id":379,"@type":6,"UID":380,"allow_discussion":8,"blocks":381,"blocks_layout":391,"changeNote":21,"contributors":393,"created":394,"creators":395,"description":343,"effective":267,"exclude_from_nav":93,"expires":267,"id":396,"is_folderish":93,"items":397,"items_total":346,"language":398,"layout":286,"lock":399,"modified":349,"nav_title":267,"next_item":400,"parent":401,"preview_caption_link":267,"preview_image_link":267,"previous_item":403,"relatedItems":404,"review_state":295,"rights":21,"subjects":405,"table_of_contents":267,"title":406,"type_title":297,"version":302,"versioning_enabled":93,"working_copy":267,"working_copy_of":267},{"actions":363,"aliases":365,"breadcrumbs":367,"contextnavigation":369,"navigation":371,"navroot":373,"types":375,"workflow":377},{"@id":364},"https://pretagovsite-api.fly.dev/templates/contact-cta/@actions",{"@id":366},"https://pretagovsite-api.fly.dev/templates/contact-cta/@aliases",{"@id":368},"https://pretagovsite-api.fly.dev/templates/contact-cta/@breadcrumbs",{"@id":370},"https://pretagovsite-api.fly.dev/templates/contact-cta/@contextnavigation",{"@id":372},"https://pretagovsite-api.fly.dev/templates/contact-cta/@navigation",{"@id":374},"https://pretagovsite-api.fly.dev/templates/contact-cta/@navroot",{"@id":376},"https://pretagovsite-api.fly.dev/templates/contact-cta/@types",{"@id":378},"https://pretagovsite-api.fly.dev/templates/contact-cta/@workflow","https://pretagovsite-api.fly.dev/templates/contact-cta","contactcta0000000000000000000000",{"cta-section":382},{"@type":106,"blocks":383,"blocks_layout":387,"fixed":93,"readOnly":93,"slotId":119,"styles":389,"templateId":124,"templateInstanceId":390},{"cta-btn":384},{"@type":109,"buttonColor":110,"buttonSize":111,"href":385,"title":115},[386],{"@id":114},{"items":388},[118],{"backgroundColor":121,"padding":122,"textAlign":123},"tpl-contact-cta-def",{"items":392},[339],[],"2026-06-19T18:39:45+00:00",[264],"contact-cta",[],{"title":284,"token":285},{"locked":8,"stealable":93},{},{"@id":352,"@type":353,"description":354,"effective":272,"end":267,"getObjSize":267,"head_title":267,"image_field":267,"image_scales":402,"mime_type":267,"nav_title":267,"review_state":295,"start":267,"title":356,"type_title":353},{},{},[],[],"Contact CTA — Free review",[408,412,416,419],{"label":409,"route":410,"items":411,"cols":98,"width":98},"About","/about",[],{"label":413,"route":414,"items":415,"cols":98,"width":98},"Insights","/blog",[],{"label":417,"route":170,"items":418,"cols":98,"width":98},"Work",[],{"label":296,"route":420,"items":421,"cols":98,"width":98},"/services",[],{"@id":423,"items":424,"root":427},"https://pretagovsite-api.fly.dev/services/onyx/@breadcrumbs",[425,426],{"@id":291,"title":296},{"@id":5,"title":301},"https://pretagovsite-api.fly.dev",{"items":429,"paging":443},[430,435,439],{"@uid":97,"@type":94,"cardStyle":74,"readOnly":93,"href":431,"description":432,"date":433,"title":434},"https://pretagovsite-api.fly.dev/case-studies/onyx-multilingual-health-translation","Customised Onyx deployment for a national health body — AI search across translated medical resources, returning the right document in the language the user reads.","2025-06-01T00:00:00+00:00","Multilingual health AI search in 60+ languages",{"@uid":97,"@type":94,"cardStyle":74,"readOnly":93,"href":436,"description":437,"date":433,"title":438},"https://pretagovsite-api.fly.dev/case-studies/onyx-ai-regulator-complaints","Customised Onyx deployment for a government oversight agency — natural-language search across investigation summaries, annual reports, media releases, and PowerBI complaints data.","AI search across regulator complaints and oversight data",{"@uid":97,"@type":94,"cardStyle":74,"readOnly":93,"href":440,"description":21,"date":441,"title":442},"https://pretagovsite-api.fly.dev/case-studies/aisearchpubicsector","2023-07-12T21:29:00+00:00","AI Conversational Search pilot for Independent Public Sector Body",{"start":346,"size":444,"total":75,"seen":75,"currentPage":346,"totalPages":282,"totalItems":75,"pages":445,"prev":267,"next":267},6,[446],{"start":346,"page":282},1782201118487]