Verbal Verdict is the best use of generative AI I’ve seen.
Excerpts:
The Verbal Verdict demo drops me into an interrogation room with basic facts about the case to my left, and on the other side of a glass window are three suspects I can call one at a time for questioning. There are no prompts or briefings—I just have to start asking questions, either by typing them or speaking them into a microphone
The responses are mostly natural, and at times add just a bit more information for me to follow up on.
Mostly. Sometimes, the AI goes entirely off the rails and starts typing gibberish
There are, of course, still many limitations to this implementation of an LLM in a game. Kristelijn said that they are using a pretty “censored” model, and also adding their own restrictions, to make sure the LLM doesn’t say anything harmful. It also makes what should be a very small game much larger (the demo is more than 7GB), because it runs the model locally on your machine. Kristelijn said that running the model locally helps Savanna Developments with privacy concerns. If the LLM runs locally it doesn’t have to see or handle what players are typing. And it also is better for game preservation because if the game doesn’t need to connect to an online server it can keep running even if Savanna Developments shuts down.
it’s pretty hard to “write” different voices for them. They all kind of speak similarly. One character in the full version of the game, for example, speaks in short sentences to convey a certain attitude, but that doesn’t come close to the characterization you’d see in a game like L.A. Noire, where character dialogue is meticulously written to convey personality.
NOTE: I just downloaded the game and on my first attempted launch, it complained that the port it wanted was not open. My only option was to close the game. I ran netstat and did not see the port listed, so I tried again. THAT time, it complained about my older video card :-/ The warning is clunky and there's a typo, too (within -> withing). It says (if I transcribed accurately):
You are using an: NVIDIA GEOFORCE GTX 1080. This video card is currently not recognized withing the recommended specs. We only support a limited amount of NVIDIA GTX graphics cards, all NVIDIA RTX graphics cards or all AMD RX graphics cards since the local AI requires a lot of performance.
So please note that the game might not work properly. Refer to the Steam guide for more information.
It likely starts the LLM it uses as a service, and it requires running on a port. They could of course have rewritten it to not use a port and instead use other mechanisms possible when you're in control of the code but then that requires modification of the LLM project they use and would make updating its version harder so such a thing would be reserved for the full release or skipped all together because it's not really a big deal. All this assuming that they do use one of the hundreds of open source local LLM projects floating around Github.
(They could easily move to an ipc mechanism that doesn't require binding a port on a network interface but that'd require time and effort and why bother when the goal is to ship something fast and cheap while the AI hype is strong)
Sounds like a fun way to directly mess with their model though.
The warning message said the port was not open, but my guess is that the message was inexact. I doubt the port was ever restricted at all. In fact -- and with no evidence one way or the other -- it wouldn't surprise me if the only issue was my old video card and the 'port' error was simply the first error message the game found on initial launch. For my theory to make sense, though, some initial setup piece must have completed on 1st launch such that the 2nd launch had a newly made config file or something and that extra piece let me proceed to a more accurate error.
It is probably easier. I used to run a program that ran its own mini server-like process to send input to other open programs. It used local ports. It didn't need internet, but it did need ports. My first guess is that programmers already know a bunch of dev libraries that deal with ports so it is easier to use that than write something else from scratch.