::: spoiler We are at a phase where AI is like the first microprocessors; think Apple II or Commodore 64 era hardware. These showed potential, but it was only truly useful with lots of peripheral systems and an enormous amount of additional complexity. Most of the time, advanced systems beyond the cheap consumer toys of this era used several of the processors and other systems together.
Similarly, now AI as we have access to it, is capable, but has a narrow scope. Making it useful requires a ton of specialized peripherals. These are called RAG and agents. RAG is augmented retrieval of information from a database. Agents are collections of multiple AI's to do a given task where they have different jobs and complement each other.
It is currently possible to make a very highly specialized AI agent for a niche task and have it perform okay within the publicly available and well documented tool chains, but it is still hard to realize. Such a system must use info that was already present in the base training. Then there are ways to improve access to this information through further training.
With RAG, it is super difficult to subdivide a reference source into chunks that will allow the AI to find the relevant information in complex ways. Generally this takes a ton of tuning to get it right.
The AI tools available publicly are extremely oversimplified to make them accessible. All are based around the Transformers library. Go read the first page of Transformers documentation on Hugging Face's website. It clearly states that it is only a basic example implementation that prioritizes accessibility over completeness. In truth, if the real complexity of these systems was made the default interface we all see, no one would play with AI at all. Most people, myself included, struggle with sed and complex regular expressions. AI in its present LLM form is basically turning all of human language into a solvable math problem using regular expressions and equations. This is the ultimate nerd battle between English teachers and Math teachers where the math teachers have won the war; all language is now math too.
I've been trying to learn this stuff for over a year and barely scratched the surface of what is possible just in the model loader code that preprocess the input. There is a ton going on under the surface. All errors are anything but if you get into the weeds. Models do not hallucinate in the sense that most people see errors. The errors are due to the massive oversimplifications made to make the models accessible in a general context. The AI alignment problem is a thing and models do hallucinate but the scientific meaning is far more nuanced and specific than the common errors from generalized use.