1 Introduction  

2 Core concepts & architectures  

3 Analyzing: complexity, skills, tasks, and limits  

4 Evaluating: metrics, cost functions, datasets  

5 Solving with training  

6 Solving with hybridization (architecture composition)  

7 Solving with prompting  

8 Solving with reinforcement (experience loop, knowledge capitalization)  

9 Discussion: limitations and research topics for solving more complex QA and problems  

10 Conclusion  