latexr 2 hours ago

> One major difference between prompts and traditional software is that the underlying engine that interprets prompts, the LLM, is not deterministic and so the same prompt can result in different results in different calls even using the same LLM. Also, because the types and varieties of LLMs are proliferating, it is even harder to ensure that the same prompt will produce the same result across different LLMs. In fact, LLMs are evolving rapidly and there are important tradeoffs that can be made between inference cost, output quality, and local models versus cloud-hosted models. The implication of this fact is that when the underlying model changes, the prompt may require changes as well, which suggests that prompts will require continuous tweaking as models evolve.

And in this paragraph you explained exactly why prompts are not programs. No one wants a program they can never rely on and have to constantly tweak, that’s an insane idea.

  • gessha 2 hours ago

    I agree with your sentiment but it technically is a program albeit a less-useful one.

    If you define a program as "a sequence or set of instructions in a programming language for a computer to execute" [1], a prompt follows the definition because it is a sequence of tokens that a LLM ingests and executes. The execution is in the form of creating context and other input.

    Now, is the non-deterministic property useful? Personally I don't think so but I think it's early to judge its usefulness because we're still figuring out its applications.

    [1] https://en.wikipedia.org/wiki/Computer_program