In the previous lesson we looked inside an agent: percepts, actions, rationality, types of agent according to what they use to decide. In this one we change scale and classify AI systems as a whole. It is a less technical lesson but a very necessary one, because expressions circulate around AI ("general AI", "superintelligence", "the AI is conscious", "this is just a chatbot") that mix what exists with what is speculated. Marta needs to know what she can ask for today and what is science fiction when a vendor presents her with a product; Diego needs to understand why the assistant they are evaluating "remembers" the conversation and the 2015 system did not. We will look at three ways of classifying AI (by capability, by functionality and by other useful technical dichotomies), with comparison tables, and we will bring the classifications down to NovaMarket's nine use cases. We will finish with a very short code example that illustrates the difference between a reactive system and one with memory.

Contents

  1. Why classify AI (and why there are several classifications)
  2. Classification by capability: narrow AI, general AI and superintelligence
  3. What really exists today: the case of large language models
  4. Classification by functionality: reactive, limited memory, theory of mind, self-awareness
  5. Other useful dichotomies: symbolic vs sub-symbolic, discriminative vs generative, cloud vs device
  6. Bringing it home: classifying NovaMarket's nine use cases
  7. Example in Python: reactive (stateless) vs with memory

  1. Why classify AI (and why there are several classifications)

There is no single "official" taxonomy of AI. The ones we will see answer different questions:

Classification Question it answers What it is useful for at NovaMarket
By capability (narrow / general / superintelligence) How broad is the range of tasks the system can perform? Calibrating expectations: knowing what exists and what is speculative
By functionality (reactive / limited memory / theory of mind / self-awareness) What information does the system use to decide? Does it have memory? Does it model others? Understanding what each use case needs (with or without memory, with or without a model of the customer)
By technical approach (symbolic / sub-symbolic; discriminative / generative; cloud / device) How is it built and where does it run? Choosing technique and architecture; anticipating costs, explainability and privacy

The three overlap and complement each other. One and the same system (for example, the customer-service assistant) is at once narrow AI, limited-memory, sub-symbolic and generative, and can run in the cloud. Learning to attach all the labels to a system is a quick way of understanding it.

  1. Classification by capability: narrow AI, general AI and superintelligence

This is the most popular classification outside the technical world and the one that generates the most confusion.

2.1 Narrow or weak AI (ANI, Artificial Narrow Intelligence)

Systems designed and trained for one task or a bounded set of tasks. They can far outperform humans at that task and be completely incapable outside it. Deep Blue played chess better than Kasparov, but it did not know how to play draughts nor did it understand what a game is. AlphaGo mastered Go but could not read an email. A fraud detector does not know how to recommend products.

Characteristics:

  • The range of tasks is fixed by the design and by the training data.
  • It does not transfer what it has learned to new domains without human intervention (retraining, redesign).
  • It has no general understanding of the world nor goals of its own: it optimises the performance measure it was given (remember 02-01).
  • It is all the AI that exists today, including the most impressive systems.

The adjective "weak" does not mean "not powerful": it means "of limited scope". Narrow AI is what generates all of today's economic value and what NovaMarket is going to deploy.

2.2 General or strong AI (AGI, Artificial General Intelligence)

A hypothetical system with the ability to understand, learn and apply knowledge in any intellectual domain at the level of a person: learning a new task from a few examples, transferring what it has learned from one field to another, reasoning about never-seen problems, setting goals and planning over the long term. It is the founding dream of Dartmouth (01-01) and it remains a research goal, not a product. There is no consensus either on its operational definition (what exam should it pass?) or on whether, when or how it will be achieved; estimates from serious experts range from "within a few years" to "perhaps never with current techniques".

2.3 Superintelligence (ASI, Artificial Superintelligence)

A hypothetical system that would surpass human intelligence in practically every domain, including scientific creativity and social skills. It is entirely speculative. It is discussed in philosophy, in long-term risk policy and in science fiction; it has no bearing on the decisions Marta and Diego must take this year. It is worth knowing the term so as not to be impressed by it.

2.4 Comparison table

Narrow AI (ANI) General AI (AGI) Superintelligence (ASI)
Range of tasks One or a few, fixed in advance Any human intellectual task All, above human level
Transfer between domains Very limited; requires retraining Like a person: learns from what it has learned Superior to human
Understanding of the world Statistical/functional, not general General General and superior
Status in 2026 Exists (all current systems) Does not exist; research and debate Does not exist; speculation
Examples Deep Blue, AlphaGo, fraud detectors, recommenders, conversational assistants, language models None None
Relevance for NovaMarket Total: it is what gets bought, built and deployed None in practice today; worth understanding the debate None

  1. What really exists today: the case of large language models

Honesty is needed here, because this is where the public gets most confused. The large language models (LLMs) behind today's conversational assistants seem to defy the classification: they write code, summarise contracts, translate, answer questions on medicine and history, draft emails... Is that not "general"?

The majority position in the technical community, and the one this course adopts, is the following:

  • LLMs are narrow AI with a very broad domain: their task is a single one (predicting and generating plausible text from a context), but since human text talks about almost everything, that single task appears general. They are extraordinarily versatile within language (and, in multimodal versions, images and audio), but:
    • They do not learn continuously from experience: what they "know" was fixed at training; the current conversation is temporary context, not learning (we will see this in more detail in 05-05).
    • They make mistakes no competent person would make (inventing citations, failing at elementary arithmetic, contradicting themselves), which suggests their "understanding" is different from the human kind.
    • They have no goals of their own and do not act in the world on their own initiative; the "agentic" systems that surround them add tools and decision loops (the agents of 02-01), but the goal still comes from outside.
  • At the same time, it is an open debate. Some researchers argue that these models already show "sparks" of generality and that the boundary between ANI and AGI is gradual, not a leap. Others argue that the current architecture has structural limits. Both positions have serious advocates; what is not serious is declaring the debate closed in either direction.

Practical consequence for NovaMarket: an LLM can be an excellent component of the customer-service assistant (case 7) or of the review classifier (case 4), but it remains a bounded tool that must be evaluated on its task, with its data, and surrounded by controls. Treating it as a "general employee" who understands the business is the expectations mistake that lesson 01-01 taught us to avoid with the AI winters.

  1. Classification by functionality: reactive, limited memory, theory of mind, self-awareness

This classification, proposed in 2016 by the researcher Arend Hintze, orders systems by the information they use to decide. The first two levels exist; the last two are hypothetical. It fits naturally with the types of agent from 02-01.

4.1 Reactive machines

They respond only to the current input, with no memory of the past or model of the future beyond what they have programmed. Given the same input, always the same output. They correspond to the simple reflex agent.

Real examples:

  • Deep Blue (1997): it evaluated the current board position and searched for moves; it did not learn from previous games nor remember those of the same session.
  • Rule-based spam filters or simple classifiers that evaluate each email independently.
  • Diego's rule "amount > €300 → review": it looks only at the current order.
  • An object detector that analyses each frame without relating it to the previous one.

Being reactive does not mean being dumb: Deep Blue was a reactive machine. It means their behaviour does not depend on history.

4.2 Limited memory

They use the current input plus a window of past information, with which they build an internal state or a temporal model. They correspond to the model-based reflex agent (and, when the memory feeds a trained model, to the learning agent).

Real examples:

  • Autonomous vehicles: they track the position and speed of other cars over the last few seconds to predict their trajectory.
  • Modern conversational assistants: they keep the conversation history (the "context window") to respond coherently. Our ModelBasedAgent from 02-01 is a minimal version.
  • Recommenders: they use the customer's purchase and browsing history.
  • Demand forecasting: it uses the sales time series of the last weeks or years.

Almost all useful AI today is at this level. The memory is "limited" because the system does not accumulate lifelong experience like a person: it remembers a window (the last messages, the last seconds, the history it is given) or what was fixed at training.

4.3 Theory of mind

Systems that would model the beliefs, intentions, emotions and goals of other agents (people or other machines) and adjust their behaviour accordingly, as we humans do when negotiating or consoling someone. It is a research goal in social robotics and multi-agent systems. There are partial advances (systems that detect emotions in the voice or anticipate a user's intent), but no system with a general theory of mind exists. Do not confuse this with an LLM writing as if it understood emotions: producing empathetic text is a linguistic skill learned from human texts, not an internal representation of the interlocutor's mind (although, again, the boundary is debated).

4.4 Self-awareness

Systems that would be aware of themselves: a representation of their own internal state, of their desires, an understanding that they "exist". It is purely hypothetical and philosophically controversial (there is not even agreement on how to detect it). No current system has it, and the occasional press claims that a chatbot "has become conscious" rest on the model generating text that talks about consciousness, which is exactly what one would expect from a model trained on human texts.

4.5 Comparison table

Level What it uses to decide Exists? Examples Equivalent type of agent (02-01)
Reactive Only the current input Yes Deep Blue, business rules, simple filters Simple reflex
Limited memory Current input + window of the past Yes (most of today's AI) Autonomous cars, conversational assistants, recommenders, forecasting Model-based reflex, learning
Theory of mind + model of others' beliefs and intentions Only partially, in research Social robotics prototypes Goal/utility-based in multi-agent environments (partial)
Self-awareness + model of itself No None (not applicable)

  1. Other useful dichotomies: symbolic vs sub-symbolic, discriminative vs generative, cloud vs device

These three distinctions are technical and very practical: they come up constantly in architecture decisions.

5.1 Symbolic vs sub-symbolic (connectionist) AI

This is the great historical divide that already appeared in 01-01.

  • Symbolic AI (or "GOFAI", Good Old-Fashioned AI): it represents knowledge with human-readable symbols (facts, rules, logic) and reasons by manipulating them. It is the AI of expert systems (MYCIN, XCON), of logic, of classical search and planning. Advantages: explainable (you can read the rule that fired), it does not need massive data, it allows expert knowledge to be incorporated directly. Disadvantages: the knowledge has to be written by hand (the "knowledge acquisition bottleneck" that sank expert systems), it is brittle in unforeseen situations and it struggles with perception (images, speech, free text). Modules 3 and 6 are mostly symbolic.
  • Sub-symbolic or connectionist AI: the knowledge is distributed across numbers (weights of a neural network, parameters of a statistical model) that are fitted from data; there are no readable rules. It is machine learning and, above all, deep learning. Advantages: it learns from data without anyone writing the rules, excellent at perception and complex patterns, it scales with more data and compute. Disadvantages: opaque (black box), it needs a lot of data, it can learn biases from the data (02-03 and 02-04), hard to correct "by hand". Modules 4 and 5 are sub-symbolic.
Symbolic Sub-symbolic
Representation Symbols, rules, logic Numbers, weights, vectors
Where the knowledge comes from Written by human experts Learned from data
Explainability High Low (requires additional techniques)
Need for data Low High
Strength Reasoning, business rules, planning Perception, language, statistical patterns
Weakness Brittleness, cost of maintaining the rules Opacity, bias, cost of data and compute
Dominant eras 1956-1990 2012-present
Course modules 3 and 6 4 and 5

The current trend is neuro-symbolic or hybrid AI: combining both (for example, an LLM that drafts the reply but a rules engine that decides which returns are accepted). For NovaMarket this is very relevant: the return and warranty rules (case 8) have to be explainable and auditable, so they will be symbolic, whereas review classification (case 4) will be sub-symbolic.

5.2 Discriminative vs generative AI

  • Discriminative: given an input, it decides or predicts something about it: a class (is this review positive or negative?), a number (how many units will we sell?), a score (what is the probability of return?). The output is a label or a value. It is most of "classical" machine learning (module 4).
  • Generative: it produces new content with the same form as the data it learned from: text, images, audio, code, synthetic data. The output is a complex object. It is the generative AI that has dominated the scene since 2022 (05-05).
Discriminative Generative
Input → output Content → label/value Instruction or context → content
Question it answers "What is this?" / "How much will it be?" "Create something like this"
NovaMarket examples Classifying reviews, forecasting demand, scoring return risk Drafting the assistant's replies, generating product descriptions, summarising incidents
Typical risks False positives/negatives, bias Making up information ("hallucinations"), inappropriate content, copyright
Evaluation Relatively clear (right/wrong) Hard (what is a "good" reply?)

Many systems combine both: the assistant classifies the customer's intent (discriminative) and then drafts the reply (generative).

5.3 AI in the cloud vs on the device (edge)

This is a dichotomy about where the model runs, not about what it does:

  • In the cloud: the model runs on remote servers; the device sends the data and receives the result. It allows huge models and centralised updates, but it requires connectivity, introduces latency, has a per-use cost and forces data to be sent out (privacy, GDPR).
  • On the device (edge AI, on-device): the model runs on the phone, camera, van or warehouse terminal itself. It works offline, responds instantly and the data never leave the device, but the model must be small and updating it is more laborious.
Cloud Device (edge)
Model size No practical limit Limited by memory and battery
Latency Network + compute Minimal
Connectivity Essential Not required
Privacy Data travel Data stay put
Cost Per use (scales with volume) Upfront hardware
NovaMarket example Conversational assistant with an LLM, overnight demand forecasting Barcode reader with damage detection in the warehouse, driver navigation without coverage

Diego, worried about costs, will find a concrete decision here: 3,000 orders/day with several calls to a cloud model per order has a cost that must be budgeted; a check on the warehouse terminal does not.

  1. Bringing it home: classifying NovaMarket's nine use cases

Let us apply the three classifications to the use-case table we fixed in 01-03. The classification is approximate (some cases admit several solutions) and reflects the most likely solution for NovaMarket:

# Use case Capability Functionality Symbolic / sub-symbolic Discriminative / generative Cloud / edge
1 Product recommendation Narrow Limited memory (customer history) Sub-symbolic (co-purchases, ML) Discriminative (scores products) Cloud
2 Demand forecasting Narrow Limited memory (time series) Sub-symbolic (ML on history) Discriminative (predicts quantities) Cloud (overnight process)
3 Fraud and return-risk detection Narrow Reactive on each order; limited memory if it uses customer history Hybrid: explainable rules + ML Discriminative (scores risk) Cloud
4 Review classification Narrow Reactive (each review is evaluated on its own) Sub-symbolic (NLP) Discriminative (class/sentiment) Cloud
5 Delivery route optimisation Narrow Limited memory (position, traffic, stops completed) Symbolic (search and optimisation) with ML time estimates Discriminative / none (it optimises, it does not generate content) Cloud for planning; edge in the driver's navigator
6 Assigning orders to a warehouse Narrow Reactive (per-order decision with current stock) Symbolic (rules and optimisation) None / discriminative Cloud
7 Customer-service assistant Narrow Limited memory (conversation history) Sub-symbolic (LLM) with symbolic control rules Generative (drafts) + discriminative (detects intent) Cloud
8 Return and warranty rules Narrow Reactive (evaluates each request against the rules) Symbolic (expert system) None (it decides) Cloud or on-premises
9 Incident diagnosis Narrow Limited memory (symptoms accumulated in the diagnostic conversation) Symbolic (rules) with ML to suggest likely causes Discriminative (likely cause) Cloud

Readings of the table:

  • All are narrow AI. None requires or comes close to general AI. This is normal and desirable: the valuable projects are bounded ones.
  • Most are limited-memory, and the reactive ones (3, 4, 6, 8) are reactive because each decision stands on its own. Compare with the environment properties of 02-01: episodic environments admit reactive systems; sequential ones demand memory.
  • Symbolic where explanation and auditing are needed (8, 6, part of 5 and 9); sub-symbolic where there is perception and patterns (1, 2, 4, 7). And several hybrids, which is the trend.
  • Only one is clearly generative (7). The rest are discriminative or optimisers. It is a good reminder that "AI" is not a synonym for "generative AI", however much the latter dominates the news.
  • Almost everything runs in the cloud, with edge exceptions where connectivity or latency rule (warehouse, van).

  1. Example in Python: reactive (stateless) vs with memory

The following example, deliberately minimal, shows the difference between a reactive machine and a limited-memory one using the NovaMarket assistant. It is the same idea as ReflexAgent versus ModelBasedAgent from 02-01, reduced to the essentials and applied to a different problem: detecting when a customer is insisting.

def reactive_assistant(message):
    """Reactive machine: the reply depends ONLY on the current message."""
    if "urgent" in message.lower():
        return "I understand the urgency. I'm looking into your case right now."
    return "Thank you for your message. I'll look into it."


class AssistantWithMemory:
    """Limited memory: keeps the last few messages and decides with them."""

    def __init__(self, window=3):
        self.history = []         # window of previous messages
        self.window = window      # maximum size of the memory

    def answer(self, message):
        self.history.append(message.lower())
        self.history = self.history[-self.window:]   # LIMITED memory: only the last N
        urgent_count = sum("urgent" in m for m in self.history)
        if urgent_count >= 2:
            return "I can see you've sent several messages flagging urgency. I'll pass you on to a person."
        if "urgent" in message.lower():
            return "I understand the urgency. I'm looking into your case right now."
        return "Thank you for your message. I'll look into it."


conversation = [
    "Hello, my order hasn't arrived",
    "It's urgent, I need it for tomorrow",
    "I repeat, it's URGENT",
]

print("--- Reactive ---")
for m in conversation:
    print(reactive_assistant(m))

print("--- With memory ---")
assistant = AssistantWithMemory(window=3)
for m in conversation:
    print(assistant.answer(m))

Output:

--- Reactive ---
Thank you for your message. I'll look into it.
I understand the urgency. I'm looking into your case right now.
I understand the urgency. I'm looking into your case right now.
--- With memory ---
Thank you for your message. I'll look into it.
I understand the urgency. I'm looking into your case right now.
I can see you've sent several messages flagging urgency. I'll pass you on to a person.

Explanation:

  • reactive_assistant is a pure function: same input, same output, always. On the third message it repeats exactly the same reply as on the second, because for it, it is as if the second had never happened. That "it doesn't notice I'm insisting" is what exasperated the customers of the 2015 chatbot.
  • AssistantWithMemory stores the messages in self.history and trims the list to the last window messages (self.history[-self.window:]). That line is literally the "limited memory": the system remembers a window, not the customer's whole life. LLM-based assistants work analogously: their context window is finite and whatever falls outside it is forgotten.
  • The decision uses the memory: it counts how many recent messages contain "urgent" (sum("urgent" in m for m in self.history); in Python True is worth 1, so the sum counts matches) and, if there are two or more, it escalates to a person.
  • Try setting window=1: the assistant with memory behaves exactly like the reactive one, because a window of one message is having no memory. It is a neat way of seeing that "reactive" is the special case "memory of size one".

Common Mistakes and Tips

  • Calling an LLM "general AI" because it does many things. Breadth of domain is not generality of capability. Evaluate each concrete use as what it is: a narrow task with its own errors.
  • Dismissing narrow AI as "weak". The adjective describes the scope, not the power or the value. All of NovaMarket's return on investment will come from narrow AI.
  • Confusing "has memory" with "learns". The assistant with memory remembers the conversation but does not change its rules; the recommender that retrains learns but may not remember the session. They are different things: memory is state; learning is modifying the decision function (module 4).
  • Believing that a system that talks about emotions has theory of mind or consciousness. Generating text about X is not having X. When a vendor uses that language, ask for task metrics, not adjectives.
  • Choosing sub-symbolic by default. If the decision must be explainable and auditable (returns, warranties, legal compliance), a symbolic or hybrid approach is usually better, even if it seems "less advanced".
  • Forgetting where the model runs. Cloud vs device shapes costs, latency and privacy. Decide it early and record it in the PEAS.
  • Tip: for any system, attach the five labels (capability, functionality, symbolic/sub-symbolic, discriminative/generative, cloud/edge). If you cannot fill in one of them, you do not yet understand the system.

Exercises

Exercise 1: Labelling familiar systems

Classify the following systems with the five labels from section 6: (a) the spell checker of a word processor; (b) a car with automatic emergency braking that detects pedestrians; (c) a text-to-image generator; (d) the MYCIN expert system from 01-01. Briefly justify each label.

Exercise 2: A vendor and their promises

A vendor presents Marta with a "cognitive assistant with a general understanding of the business that learns continuously from every conversation and understands the customer's emotions". Write the three questions Marta should ask to separate what exists from what is exaggeration, and what answers would be acceptable.

Exercise 3: Extending the assistant's memory

Modify AssistantWithMemory so that, in addition to the message window, it keeps an unbounded counter of how many messages in total the customer has sent in the conversation and, if it exceeds 6, appends the phrase " (Long conversation: a supervisor has been notified)" to the end of any reply. Is it still "limited memory"? Explain your reasoning.

Solutions

Solution 1.

System Capability Functionality Sym./Sub-sym. Discr./Gen. Cloud/Edge
(a) Spell checker Narrow Reactive (it looks at the current word or sentence; modern versions with sentence context still have no memory across documents) Historically symbolic (dictionary + rules); today often sub-symbolic (language models) Discriminative (flags an error / suggests a correction) Device traditionally; cloud in online editors
(b) Emergency braking Narrow Limited memory (it tracks the pedestrian's trajectory over the last few instants) Sub-symbolic (computer vision) with symbolic braking-decision rules Discriminative (is there a pedestrian? risk of collision?) Edge, necessarily (latency and absence of network)
(c) Image generator Narrow (although very versatile) Reactive in essence (each request is generated from the current instruction; some products add session memory) Sub-symbolic Generative Cloud (large models), although there are reduced versions on device
(d) MYCIN Narrow (bacterial infections only) Limited memory (it accumulated the doctor's answers during the consultation in order to reason) Symbolic (if-then rules with certainty factors) Discriminative (diagnosis and treatment) Local execution on a computer of the time (cloud does not apply)

Solution 2. Possible questions:

  1. "What exactly does 'learns continuously' mean? Does the model change its parameters with every conversation, or does it store a history that it consults?" Acceptable answer: the latter (limited memory plus, perhaps, periodic supervised retraining). A model that modified itself with every conversation would be hard to control and audit, and in general it is not what is on offer.
  2. "Does 'general understanding of the business' mean it has been trained or configured with our policies, catalogue and data? How is it updated when they change?" Acceptable answer: it describes a concrete process for ingesting documents and data (and its cost); if the answer is "it understands everything by itself", it is exaggeration.
  3. "'Understands emotions': does that refer to a tone/sentiment classifier with a measured accuracy rate, or to something more? What is its precision and with what data was it measured?" Acceptable answer: a sentiment detector with concrete metrics and the possibility of testing it with NovaMarket reviews. Any allusion to "real empathy" or "theory of mind" is marketing.

Solution 3.

class AssistantWithMemory2(AssistantWithMemory):
    def __init__(self, window=3):
        super().__init__(window)
        self.total_messages = 0

    def answer(self, message):
        self.total_messages += 1
        reply = super().answer(message)
        if self.total_messages > 6:
            reply += " (Long conversation: a supervisor has been notified)"
        return reply

It is still limited memory: the system keeps a very compressed summary of the past (a counter) plus a window of messages; it neither accumulates nor learns from all its experience with all customers, nor does it modify how it decides. The "limitation" is not just the size of the window, but that the memory is bounded to the task and the session, and that it does not change the agent's function. When what is stored begins to modify the decision rules permanently, we enter learning, the subject of module 4.

Conclusion

In this lesson we have learned to classify AI systems from three points of view. By capability: narrow AI (all that exists, including large language models, whose apparent generality is the subject of an open debate but which remain bounded tools that must be evaluated on their task), general AI (a research goal, not a product) and superintelligence (speculation). By functionality: reactive and limited-memory machines (the ones that exist, equivalent to the reflex and model-based agents of 02-01), and theory of mind and self-awareness (hypothetical). And by technical approach: symbolic versus sub-symbolic (explainability and expert knowledge versus learning from data and perception, with the hybrid trend), discriminative versus generative (deciding versus creating) and cloud versus device (where it runs and what that implies for cost, latency and privacy). We have labelled NovaMarket's nine use cases (all narrow AI, mostly limited-memory, a mix of symbolic and sub-symbolic, a single clearly generative case) and we have seen in a few lines of Python that a reactive system is simply one with a memory of size one.

All these classifications have something in common: sub-symbolic systems, which are most of what NovaMarket is going to build, depend entirely on the data they are trained on. In the next lesson, Data as the Raw Material of AI, we will look at what types of data exist, what their life cycle is, how their quality is measured, where biases come from and what must be borne in mind with personal data, finally opening NovaMarket's CSV files to meet their real problems.

Fundamentals of Artificial Intelligence (AI)

Module 1: Introduction to Artificial Intelligence

Module 2: Basic Principles of AI

Module 3: Algorithms in AI

Module 4: Machine Learning

Module 5: Neural Networks and Deep Learning

Module 6: Logic and Expert Systems

Module 7: Tools and Programming Languages in AI

Module 8: Projects and Case Studies

Module 9: Exercises and Practice

Module 10: Additional Resources

© Copyright 2026. All rights reserved