• jj4211@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    4 hours ago

    I assumed that but everything I have seen as I dug deeper has been that at some level that is what is happening. If it is ‘reasoning’, it’s generating a ‘reasoning chain’ next token by next token and using that to influence the final output tokens. The reasoning chain is discarded and since the actual output is a continuation of the reasoning chain it may conceptually be described as allowing the model to ‘rethink’ things, but even as the generation of a ‘reasoning chain’ has results that more closely resemble reasoning, it is still a scenario where it’s building it one token at a time and we get to see meaning as an emergent property, rather than trying to find words to build to a more abstract concept like humans do. It just gets to throw away the intermediate work and the extra tokens manage to improve the ‘accuracy’ of the preserved final output.

    • rumba@lemmy.zip
      link
      fedilink
      English
      arrow-up
      3
      ·
      4 hours ago

      The interesting bits are when it derives the likely hood of something being correct and does more passes, or splits the data apart in the first pass and opens up new context processes with specialized instructions to handle it. The code stuff goes full on ororborus on some models, writes out the code on one pass, checks for issues on another pass, runs the code looking for errors on a third pass and goes back to step 1 if it fails.

      They’re getting a lot out of it for it primarily just being a weighted token generator wrapped in an orchestrator.

      • jj4211@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 hours ago

        Particularly software development with very good and very quick tests allow rerolling and that is very appealing in those scenarios. Problems being that very good tests are rarer than people like to think and sometimes it just gets stuck in a loop. At work the other week someone set it at the task of fixing a bunch of build warnings that had accumulated over the years. It succeeded after burning through tokens to take 30 tries at it. It’s solution after all that hard thinking? It put // @ts-nocheck at the top of every file and called it a day.

        But superficially, someone handed it a chore and didn’t have to think about it, and if no one looked deeper, then it was able to get to the desired behavior simply by rerunning the given task over and over without human intervention until it worked. Which is also broadly relatable as there’s a lot of humans in the industry acting broadly the same, but I’ve always been frustrated by those folks anyway.