Book Chat

When I began restoring Antilogicalism earlier this month, my initial goal was to preserve a website I'd started back in 2016. What followed was a much larger undertaking: recovering the original WordPress installation, rebuilding the website on GitHub Pages, restoring its digital collection, and developing a full-text search engine capable of searching more than 280,000 pages across hundreds of books. But I wanted to take the project a step further. The Bookshelf made it possible to browse the collection, and Library Search made it possible to search the actual contents of the books. I began wondering whether we could build something that would allow readers to have a conversation with the library itself. That question became the Antilogicalism Reading Companion.

We started with a single book: Aristotle's Nicomachean Ethics. The first version was a local experiment running on my computer. Using Ollama and small language models such as Llama 3.2 and Qwen3, we began developing a system that could retrieve relevant passages from Aristotle's text and use them to answer questions. The goal wasn't simply to make a chatbot that sounded knowledgeable about Aristotle. It was to build a system that could distinguish between what the original text actually said and what a language model might otherwise generate from its training. That distinction turned out to be one of the most challenging parts of the project.

Over many iterations, we experimented with retrieval strategies, passage selection, evidence verification, answer composition, and citation accuracy. We tested questions about virtue, practical wisdom, and philosophical interpretation, examining whether the responses were genuinely supported by the source material. There were plenty of unsuccessful experiments along the way. Some answers sounded convincing but lacked sufficient textual support. Others retrieved the right passages but struggled to explain them coherently. Improving one part of the system sometimes revealed weaknesses somewhere else. The experience demonstrated how difficult it can be to build an AI system that does more than produce plausible answers, particularly when the objective is to ground those answers in a specific collection of primary sources.

Eventually, the project grew beyond the limitations of the original local prototype. We moved toward a cloud-hosted architecture using Cloudflare Workers, integrating AI inference with the library's existing search infrastructure. Rather than building an entirely separate collection for the chatbot, we could take advantage of the substantial work already invested in extracting, repairing, organizing, and indexing the books. The same infrastructure that made it possible to search hundreds of thousands of pages could now support a conversational interface. What began as an experiment with a single work of ancient philosophy gradually became a system capable of retrieving material from across the entire collection.

Today, the Reading Companion is live on Antilogicalism, with access to all 642 books in the digital library. Visitors can ask questions across philosophy, religion, literature, history, science, and other subjects. The system searches for relevant passages and attempts to construct explanations grounded in the original texts, with citations and links that allow readers to examine the evidence themselves. It's an important milestone, but the system is still under active development. Cross-disciplinary retrieval, complex questions, source reliability, and the quality of AI-generated explanations remain areas we're actively improving. Expanding from one carefully tested book to hundreds of works across different disciplines introduces challenges that a single-book prototype simply couldn't reveal.

What's particularly interesting to me is how the different parts of Antilogicalism are beginning to work together. The Bookshelf provides a structured way to discover important works, while Library Search allows readers to investigate specific words, passages, and concepts. The Reading Companion adds another way of engaging with that material through natural-language questions. Meanwhile, automated RSS feeds and social media content curation help connect the historical collection with contemporary discussions in philosophy, science, literature, and culture. These aren't entirely separate projects. They're different parts of a larger effort to make knowledge easier to discover, explore, and connect, while preserving access to the original works themselves.

Much of the development has been accomplished through an iterative, AI-assisted process. I've been using ChatGPT as a development partner to help design architectures, write and revise code, troubleshoot problems, and evaluate results. My role has involved defining the goals, testing implementations, examining failures, and deciding how the system should evolve. It's been a practical education in software development, information retrieval, language models, and the difficulties of building systems that do more than produce convincing answers. The process has also reinforced the importance of verification, particularly when working with AI-generated code and systems intended to provide reliable information.

Ultimately, I don't want the Reading Companion to replace the experience of reading a book. I want it to help people find their way into difficult texts, discover connections between thinkers, and return to the original sources with a better understanding of what they're reading. Antilogicalism began ten years ago as a collection of ideas and resources, and it's gradually becoming something more interactive: a digital environment for exploring the relationships between those ideas. The Reading Companion represents another step toward that vision, and although there's still considerable work ahead, it's now publicly available and free to use.