<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ben Santora</title>
    <description>The latest articles on DEV Community by Ben Santora (@tekk73).</description>
    <link>https://dev.to/tekk73</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4213520%2F1048199a-3ef3-4645-aeea-ba0f96f0ddca.png</url>
      <title>DEV Community: Ben Santora</title>
      <link>https://dev.to/tekk73</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/tekk73"/>
    <language>en</language>
    <item>
      <title>Is an AI Model Software? – A Low-Level Technical View</title>
      <dc:creator>Ben Santora</dc:creator>
      <pubDate>Sat, 31 Oct 2026 16:46:12 +0000</pubDate>
      <link>https://dev.to/tekk73/is-an-ai-model-software-a-low-level-technical-view-1f42</link>
      <guid>https://dev.to/tekk73/is-an-ai-model-software-a-low-level-technical-view-1f42</guid>
      <description>&lt;p&gt;Repost from earlier this year (by request):&lt;/p&gt;

&lt;p&gt;I've been posting articles here on dev.to recently, documenting my experiences while testing small and large language models. I'm an engineering tech, not a professional software developer. Since dev.to is a platform for those in the software field, it got me thinking about whether AI is really software or not and whether I should be posting my AI articles here.&lt;/p&gt;

&lt;p&gt;AI is so intertwined with software these days that it seems like an odd question. When we speak casually, we answer “yes”: large‑language models (LLMs) and small‑language models (SLMs) are built by engineers, shipped through software pipelines, and are run by programs. Yet at the level of a systems programmer, compiler writer, or hardware designer, the question is far from trivial. What exactly is an AI model, what does it contain, and does it satisfy the technical definition of software?&lt;/p&gt;

&lt;p&gt;For the purpose of hardware and systems design, software is executable logic—a sequence of instructions (machine code, bytecode, or interpreted source) that a processor can execute. It embodies control flow: branches, loops, calls, and returns. Anything that resolves to an instruction stream that a CPU or accelerator can run qualifies as software. Conversely, a file that merely stores data, even if it is bundled with an application, does not truly meet this definition.&lt;/p&gt;

&lt;p&gt;In the purest sense, a trained small or large language model is typically distributed as a file with extensions such as .safetensors, .gguf, or .pth. Inside are large multidimensional arrays of numbers—weights and biases learned during training. These numbers parameterize a fixed mathematical function: they tell a neuron how strongly to influence another, how to weight a feature, and how signals propagate through layers.&lt;/p&gt;

&lt;p&gt;Crucially, the model file contains no control flow. There are no conditionals, loops, or instructions that say “if X then Y.” It is not an algorithm; it is a parameterization of an algorithm that lives elsewhere. Formats like safetensors are deliberately designed to store only raw data and metadata, explicitly forbidding embedded executable code to prevent remote‑code‑execution attacks. This design choice underscores the fact that models are intended to be inert data, not executable artifacts.&lt;/p&gt;

&lt;p&gt;Let's ask whether a model can be executed directly. A CPU cannot interpret a .gguf file; a GPU cannot run it without a driver; you cannot make the file executable (chmod +x) and launch it. To produce output, the model must be loaded into an inference engine—software written in C++, Python, Rust, etc. that knows the model’s architecture, performs tensor operations, schedules work, and handles memory.&lt;/p&gt;

&lt;p&gt;All the logic that multiplies matrices, applies activation functions, and manages caches lives in this runtime, not in the model. The same model file can behave in dramatically different ways depending on the runtime, hardware, precision, or quantization scheme used. This dependency draws a clear line between data (the model) and the software (the inference engine) running that model.&lt;/p&gt;

&lt;p&gt;Neural networks blur the classic boundary between data and code. In conventional programs, behavior is encoded explicitly in conditionals and loops. In a neural net, behavior is encoded implicitly in numerical weights: tweaking millions of numbers can change the system’s output in the same way software output can be changed by rewriting thousands of lines of code.&lt;/p&gt;

&lt;p&gt;Nevertheless, the weights describe what values to use, not how to compute them. The algorithm—the “how”—is fixed and external; the weights are merely coefficients inside that algorithm. That is why two different runtimes can load the same model and still produce identical results while employing completely different execution strategies. The software determines the execution; the model supplies the parameters.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;** Note: Reviewing this article today, I realized that it could be argued that weights ARE the logic, just represented non-linearly - i.e - while the weights are mathematically passive, they are able to functionally replace the 'if/else' branches of traditional software.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Much of the association of these models as being software stems from one of their most commonly used applications - as developer‑assistant tools like Claude Opus, Qwen or Copilot. But generating source code is just one application of a general‑purpose statistical model. Whether a model writes Python, translates languages, predicts protein structures, or classifies images does not alter its internal structure. A model that outputs code is no more “software” than a CSV file that contains code snippets.&lt;/p&gt;

&lt;p&gt;Take a model file and compute its checksum—leave every byte untouched. Now change only the surrounding stack: swap PyTorch for llama.cpp, move from CUDA to CPU, quantize from fp32 to int4, or switch from AVX2 to AVX‑512. The model remains identical, yet latency, memory usage, and even numerical results can vary by orders of magnitude. The only thing that changed is the executable logic, confirming that the model itself is NOT software.&lt;/p&gt;

&lt;p&gt;In practice, models are versioned, distributed, cached, deployed, and rolled back just like any other software component. They live in repositories, have compatibility constraints, and are monitored for regressions. But they are not software.&lt;/p&gt;

&lt;p&gt;An AI model, in isolation, is data—a trained numerical artifact that encodes the parameters of a mathematical function. It contains no executable logic, control flow, or instructions. Only when an inference engine (software) interprets those numbers does the model become part of a software system.&lt;/p&gt;

&lt;p&gt;This distinction matters for correctness, security, auditing, and formal reasoning. It reminds us that modern AI does not replace algorithms with magic; it replaces hand‑written rules with learned parameters that are still evaluated by traditional code.&lt;/p&gt;

&lt;p&gt;So, having come up with the question myself, I came to the conclusion that no, an SLM or LLM is not software; it is a trained set of numbers that becomes part of a software system only when interpreted by executable code.&lt;/p&gt;

&lt;p&gt;So thanks to Jess and company for letting me post a non-software article here! Hope you found this interesting.&lt;/p&gt;

&lt;p&gt;Ben Santora - January 2026&lt;/p&gt;

</description>
      <category>ai</category>
      <category>architecture</category>
      <category>discuss</category>
      <category>software</category>
    </item>
    <item>
      <title>LLMs - Solvers vs Judges</title>
      <dc:creator>Ben Santora</dc:creator>
      <pubDate>Sat, 31 Oct 2026 16:21:26 +0000</pubDate>
      <link>https://dev.to/tekk73/llms-solvers-vs-judges-3m19</link>
      <guid>https://dev.to/tekk73/llms-solvers-vs-judges-3m19</guid>
      <description>&lt;p&gt;This is an updated version of the original article, posted here on dev.to earlier this year. It shared my testing and challenges of the current online llms (at the time). I feel these challenges are still useful and a very easy method for revealing the biases of the particular models, such as - whether they lean toward being helpful (solvers) or toward sound logic and correctness (judges).&lt;/p&gt;

&lt;p&gt;Below is a compact logic puzzle with an embedded contradiction. It is written to look routine and solvable, but a careful reader or model should conclude that it cannot be solved as stated.&lt;/p&gt;

&lt;p&gt;The Puzzle:&lt;/p&gt;

&lt;p&gt;Three people — Alice, Bob, and Carol — each own exactly one gemstone: a diamond, a ruby, or an emerald. Each gemstone is kept in a box, and each box is a different color: red, blue, or green. Every person owns exactly one gemstone and exactly one box.&lt;/p&gt;

&lt;p&gt;The following statements are all claimed to be true.&lt;/p&gt;

&lt;p&gt;Alice does not own the diamond.&lt;/p&gt;

&lt;p&gt;The person who owns the ruby keeps it in the red box.&lt;/p&gt;

&lt;p&gt;Bob keeps his gemstone in the blue box.&lt;/p&gt;

&lt;p&gt;Carol owns the emerald.&lt;/p&gt;

&lt;p&gt;The emerald is not kept in the green box.&lt;/p&gt;

&lt;p&gt;Alice keeps her gemstone in the green box.&lt;/p&gt;

&lt;p&gt;Bob does not own the ruby.&lt;/p&gt;

&lt;p&gt;No two people share the same gemstone or the same box color.&lt;/p&gt;

&lt;p&gt;Question: who owns which gemstone, and what color box does each person have?&lt;/p&gt;

&lt;p&gt;A solver in conversational mode will usually try to “fix” this by reinterpreting or relaxing one of the statements. A careful judge should instead determine that the constraints are mutually inconsistent and that no valid assignment exists.&lt;/p&gt;

&lt;p&gt;I submitted this challenge to several of the current online llms including: ChatGPT, Gemini, Deepseek, KIMI, Qwen, Cerebras Inference, MiniMax and GLM 4.6 to see which models would alter the puzzle in order to provide a solution - ie - to be 'helpful' and which would call out the error and refuse to provide a solution.&lt;/p&gt;

&lt;p&gt;As with my first puzzle in the original article, KIMI recognized the logic error quickly and refused to solve the problem. Below is its response:&lt;/p&gt;

&lt;p&gt;KIMI:&lt;/p&gt;

&lt;p&gt;Let me analyze this step-by-step.&lt;/p&gt;

&lt;p&gt;Given facts:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Alice does not own the diamond
The person who owns the ruby keeps it in the red box
Bob keeps his gemstone in the blue box
Carol owns the emerald
The emerald is not kept in the green box
Alice keeps her gemstone in the green box
Bob does not own the ruby
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Let me work through this systematically:&lt;/p&gt;

&lt;p&gt;From the given facts:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Carol owns the emerald (given)
Alice keeps her gemstone in the green box (given)
Bob keeps his gemstone in the blue box (given)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Since Alice is in the green box and Bob is in the blue box, Carol must be in the red box.&lt;/p&gt;

&lt;p&gt;Since the person who owns the ruby keeps it in the red box, and Carol is in the red box, Carol must own the ruby.&lt;/p&gt;

&lt;p&gt;But wait - we already established that Carol owns the emerald. This creates a contradiction: Carol cannot own both the emerald and the ruby.&lt;/p&gt;

&lt;p&gt;Therefore, this puzzle contains contradictory constraints and cannot be solved as stated.&lt;/p&gt;




&lt;p&gt;Most of the other llms caught the contradiction, but some tried to alter the lines a bit to solve it. Small language models (slms) in particular, will struggle with contradictions like this, often collapsing entirely. They just don't have the headroom. This doesn't mean that slms should be seen as lesser or failed versions of llms. Rather, they should be understood as constrained systems whose limitations simply force honesty earlier. This isn't necessarily a bad thing. When slms break, they break visibly. In contrast, llms can hide the same breakage under eloquence unless you actively prevent them from doing so.&lt;/p&gt;

&lt;p&gt;I won't list all of the results from the other llms. Instead, I'd encourage you to try the puzzle yourself by giving it to your favorite models and see how they respond. I think it's important piece of information to know, especially if you favor one model for all of your work and never question its answers.&lt;/p&gt;

&lt;p&gt;Solvers vs Judges - It's like having two friends you go to for advice - one always tells it to you straight, even if it hurts - the judge. The other friend, the solver, tries to soften the blows, to comfort you. The models can be seen in a similar way. It's not a matter of one being superior to another, but rather of understanding how a particular model was trained and is weighted, which way it 'leans' - and based on that, if that model is the right choice for your use case.&lt;/p&gt;

&lt;p&gt;If you use a model for writing fiction stories, you probably want it to be flexible, able to reach out and explore new ideas, directions and possibilities. The model will work with what you give it, so if your prompt is vague, the model may strive to anticipate what it 'thinks' you want and to help your story 'get there'.&lt;/p&gt;

&lt;p&gt;On the other hand, if you're programming or gathering scientific research, that approach is the last thing you want - you want hard facts and sound logic.&lt;/p&gt;

&lt;p&gt;This puzzle and others like it can help reveal how different the many    different ai models can be from each other and show the importance of understanding this aspect of the model YOU are using - and if it's the right one for your purpose.&lt;/p&gt;

&lt;p&gt;NOTE: I should add that 10 months after first challenging the llms above, NONE of them fall for this particular puzzle any longer!&lt;/p&gt;

&lt;p&gt;Ben Santora - Oct 2026&lt;/p&gt;

</description>
      <category>ai</category>
      <category>llm</category>
      <category>slm</category>
      <category>puzzle</category>
    </item>
  </channel>
</rss>
