System 1 vs. System 2: explicados
Autoria: Prompt Engineering · Assistir no YouTube
Vídeo de autoria do canal indicado, não da IANIA; todos os direitos pertencem ao criador. Transcrição, resumo e tradução gerados automaticamente; o conteúdo no idioma original é preservado na versão em idioma original.
Idioma original: inglês
Vídeo original: System 1 vs System 2 Explained · Canal: Prompt Engineering · 10:10 · Assistir no YouTube
Tópicos: Agentes de IA, Avaliação e benchmarks de IA, Engenharia de prompts e contexto, Modelos de IA
O vídeo explica a diferença entre System 1, que responde em uma única passagem, e System 2, que resolve problemas em etapas, registrando resultados intermediários. Um exemplo de cadeia de gerentes mostra como um modelo de uma única passagem pode chegar perto da resposta, mas parar antes do necessário. O vídeo destaca que System 1 continua sendo útil para tarefas simples e recomenda encaminhar casos de baixa confiança para um modelo com raciocínio em etapas. A escolha entre os dois depende de quantas etapas são necessárias para chegar à resposta.
Pontos-chave
Seção intitulada “Pontos-chave”- System 1 responde em uma única passagem, sem elaborar resultados intermediários.
- System 2 usa a mesma pilha de camadas em um ciclo, registrando etapas que pode reutilizar.
- Problemas que exigem encadear resultados podem levar modelos de uma única passagem a responder uma pergunta mais simples do que a solicitada.
- System 1 é adequado para classificações e perguntas cuja resposta está visível de imediato.
- Dividir uma pergunta complexa em partes mais simples e combinar as respostas em código pode melhorar a precisão.
- Uma pontuação de confiança pode ajudar a encaminhar casos difíceis a um modelo com raciocínio em etapas.
- A pontuação de confiança não deve ser usada sem validação; o limiar deve ser ajustado para cada aplicação.
- Uma regra prática é contar quantas etapas o modelo precisa para chegar à resposta.
Capítulos
Seção intitulada “Capítulos”| Início | Capítulo | Resumo |
|---|---|---|
| 00:00 | O exemplo da cadeia de gerentes | Uma pergunta sobre subir níveis na cadeia de gerentes ilustra como modelos diferentes podem produzir respostas distintas. |
| 02:08 | Uma passagem versus raciocínio em etapas | O vídeo compara a passagem única do System 1 com o ciclo do System 2, que registra e reutiliza etapas intermediárias. |
| 04:46 | Testes e limites do System 1 | Testes com cadeias cada vez maiores mostram que o modelo de uma passagem perde precisão quando a tarefa exige várias etapas. |
| 08:02 | Combinar os sistemas e escolher um modelo | O vídeo propõe encaminhar respostas de baixa confiança para o System 2 e escolher o sistema conforme o número de etapas necessárias. |
Citações
Seção intitulada “Citações”System 1 é a parte de você que responde no piloto automático. — 01:37
System 1 é uma olhada; System 2 é a mesma olhada em um ciclo, com anotações. — 04:46
Isso não torna o System 1 mais fraco. — 06:26
Se a resposta está visível em uma olhada, use o System 1. — 09:40
Conceitos e entidades
Seção intitulada “Conceitos e entidades”- System 1 (conceito): Modo de resposta automática que, em modelos, corresponde a uma única passagem pelo modelo.
- System 2 (conceito): Modo de raciocínio em etapas que registra resultados intermediários e os reutiliza.
- Thinking, Fast and Slow (conceito): Livro de Daniel Kahneman citado como origem dos termos System 1 e System 2.
- Daniel Kahneman (pessoa): Autor associado à distinção entre pensamento rápido e pensamento deliberado apresentada no vídeo.
- chain of thought (conceito): Registro de etapas intermediárias que pode ser lido e usado nas passagens seguintes.
- confidence score (conceito): Pontuação apresentada junto à resposta e sugerida como sinal para encaminhar casos a um modelo mais deliberativo.
- Transformer (modelo): Arquitetura mencionada em relação aos limites de resolver certos problemas sem raciocínio em etapas.
Tradução completa (pt-BR)
Seção intitulada “Tradução completa (pt-BR)”00:00 Peter Liljeqvist, todo mundo está falando sobre modelos system one e system two. Mas vejo muita confusão sobre qual é, de fato, a diferença entre eles e quando usar cada um. Então, neste vídeo, quero esclarecer isso de verdade. E não vamos falar apenas sobre modelos system one e system two, mas também sobre quando usar cada um. Para deixar isso concreto, vamos começar com um exemplo bem simples. Aqui está uma lista de quem gerencia quem em uma pequena empresa. Há três cadeias separadas de
00:32 pessoas, e os fatos foram embaralhados de propósito. Então, não dá simplesmente para ler a lista de cima para baixo. A pergunta é bem simples: comece por Mo e suba quatro níveis na hierarquia de gerentes. Em quem você chega? Dei essa tarefa a dois modelos. O primeiro é Chev, que responde sem escrever nada, quase instantaneamente. E diz Eli. O segundo é current 3.8 com o modo de raciocínio ativado. Basicamente, ele escreveu sua cadeia de pensamento,
01:05 e a resposta final a que chegou foi Gus, que está correta. Mas a questão é que Chev não estava chutando. Eli está exatamente três níveis acima de Mo. Chev estava no caminho certo, mas parou um passo antes. E esse passo que faltou é a verdadeira diferença entre o pensamento system one e system two. Ao final deste vídeo, você vai saber por que ele para ali e o que isso significa para os seus próprios problemas ao selecionar que tipo de modelo usar.
01:37 Esses termos vêm do livro de Daniel Kahneman, Thinking Fast and Slow. System one é a parte de você que responde no piloto automático. Você vê um rosto e simplesmente sabe que a pessoa está com raiva. System two é a parte que resolve as coisas passo a passo, como ao fazer matemática, quando é preciso guardar os resultados ao longo do caminho. Em um modelo, system one é uma única passagem para frente.
02:08 Sua entrada passa por uma pilha fixa de camadas apenas uma vez. Um bom modelo mental é pensar nisso como olhar para um problema uma única vez. O que quer que o modelo consiga resolver nesse único olhar, é isso que ele terá de responder. Há problemas que exigem mais de um olhar, e é aí que os modelos system one falham. Geve foi basicamente criado em torno dessa ideia. Seu texto e suas perguntas digitadas entram
02:38 e, então, o modelo executa uma única passagem, e você recebe de volta uma probabilidade para as respostas que permitiu. Quando dizem que ele não pode alucinar, é porque precisa escolher entre as respostas que você forneceu. Então, ele pode estar completamente errado com confiança, mas vai responder apenas com uma das opções selecionadas. Teoricamente, um modelo de chat com o raciocínio desativado funciona da mesma forma. Cada token é um olhar para o problema,
03:11 e não há espaço para ele resolver nada antes. Então, no nosso exemplo, quando perguntei a Gwen, ela respondeu Tia, que está apenas um nível acima. O que acontece quando uma pergunta exige mais do que um único olhar? É aí que system two entra em cena. Em um modelo, system two não é um tipo diferente de cérebro nem uma arquitetura diferente. É a mesma pilha de camadas executada em um loop. A diferença é que, a cada
03:41 passagem, o modelo anota um passo e, na passagem seguinte, lê esse passo de volta. Basicamente, é assim que se parece a cadeia de pensamento. A ideia é que, a cada passo, o modelo faça anotações e, no passo seguinte, possa reutilizá-las. Então, no nosso exemplo, na primeira passagem, o modelo poderia escrever algo como: “O gerente de Mo é Tia”. Depois, na passagem seguinte, ele leria “Tia” e encontraria o gerente de Tia.
04:14 Então, cada passo cria aqui um resultado que não existia antes. E o passo seguinte basicamente se apoia nesse resultado. É como quando fazemos matemática, por exemplo, multiplicar 17 por 24. Há um artigo muito interessante que mostra que verificar se dois pontos em um grafo estão conectados provavelmente está fora do alcance de um transformer que precisa responder imediatamente. E nossa cadeia de gerentes é exatamente esse
04:46 tipo de problema. O interessante é que, se você deixar o modelo escrever cada passo, ele consegue responder a esse tipo de pergunta. Certo, aqui vai uma maneira bem simples de pensar nisso: system one é um único olhar; system two é o mesmo olhar em um loop, com anotações. Aqui está um experimento divertido que você pode fazer. Faço a mesma pergunta a Jeff, friend com o raciocínio desativado, e a Fran, friend com o raciocínio ativado
05:16 com cadeias cada vez mais longas. Com um único passo, todos acertam. É só uma consulta simples. Mas, assim que é necessário um segundo passo, os dois modelos de um único olhar começam a falhar. E, depois de alguns passos, quase não acertam nada. O modelo com raciocínio ativado permanece quase perfeito o tempo todo. A única coisa que cresce são as anotações. Mas a questão é que o modelo não fica mais inteligente se você deixa ele pensar por mais tempo.
05:51 Ele só dá mais passos com anotações. Quando examinei os resultados, encontrei algo muito interessante. Lembra de Eli? Quando vi onde as respostas erradas de Jev chegavam, a maioria não era aleatória. Não importava se eu perguntasse por dois, três ou quatro níveis: a resposta mais comum era a pessoa três níveis acima. Ele segue pela cadeia certa e chega ao limite praticamente sempre no mesmo ponto. Meu palpite é que é assim que um único olhar
06:26 se apresenta do lado de fora. Ele chega mais ou menos até aqui, e não vai além. Não sabemos o que há dentro de Jev, então não posso dizer exatamente por que o limite fica naquele ponto. Mas há uma conclusão muito importante: isso não torna system one mais fraco. É a ferramenta certa sempre que a resposta está visível em um único olhar. Coisas como: “Este chamado é sobre cobrança?” “É urgente?” “Menciona
06:56 algum fundo?” Você pode fazer muitas perguntas a um modelo de um único olhar sobre essa entrada simples, tudo de uma vez. E é aí que Jev é realmente muito bom. Ele falha quando você lhe apresenta uma pergunta que, sem que isso fique óbvio, exige várias etapas. Daniel chama isso de substituição. System one responde discretamente a uma pergunta mais fácil. Quando perguntei a Jev: “Este e-mail é phishing?”, em um conjunto de dados difícil que mencionei no meu vídeo anterior,
07:31 ele foi tão bom quanto jogar uma moeda, porque estava respondendo: “Isto parece phishing?” Mas, quando dividi a mesma pergunta em perguntas menores, em que o modelo analisava uma característica específica e depois combinava as respostas no código, a precisão aumentou significativamente. Há mais uma coisa que Jeff fornece em cada resposta: a pontuação de confiança. É aí que isso fica ainda mais
08:02 útil. Nas perguntas sobre cadeias, à medida que elas ficavam profundas demais para um único olhar, a confiança caía junto com a precisão. É exatamente assim que Daniel descreve o funcionamento conjunto desses dois sistemas. System one responde primeiro; depois, system two entra em ação quando algo parece estranho. O modelo mental aqui é que você pode projetar um sistema em que os níveis system one e system two trabalhem juntos.
08:35 Nessa configuração, você usa um modelo de um único olhar para responder a tudo e mantém a pontuação de confiança. Os casos abaixo de determinado limite de confiança são encaminhados ao modelo com raciocínio ativado. Isso pode incluir coisas como tool calls em um harness inter-tick, em que system one faz as tool calls; mas, nas tool calls em que não há confiança, você as passa de volta para system two ou para modelos com raciocínio, que podem analisá-las de forma mais abrangente e, então, tomar uma
09:07 decisão. E acho que é assim que a maioria dos sistemas do futuro será projetada. No entanto, não dá para confiar cegamente na pontuação de confiança que ele fornece. É uma probabilidade calibrada, não exatamente a confiança que o modelo atribui à resposta. Então, para qualquer aplicação, recomendo muito ajustar esse limite antes de decidir usá-lo. Certo, então como escolher entre modelos system one e system two? O modelo mental mais simples é simplesmente
09:40 contar quantos passos os modelos precisariam dar para chegar a uma resposta. Se a resposta estiver visível em um único olhar, essa é uma situação para system one. Se você precisa de um resultado que ainda não tem, e o modelo precisa criar os resultados em várias etapas diferentes, é aí que você vai querer usar system two. Ou você mesmo divide a pergunta em partes que possam ser resolvidas com um único olhar e depois as combina no código. No próximo vídeo, vou construir
10:10 isso em um agent, em que os modelos de raciocínio fazem o planejamento e Jeff cuida das centenas de pequenas decisões intermediárias. O código dos testes da cadeia está na descrição do vídeo. Então, se quiser, você pode brincar com ele e ver até onde consegue levar um modelo System 1. Enfim, espero que isso tenha sido útil. Obrigado por assistir e, como sempre, até a próxima.
Transcrição original
[00:00] Peter Liljeqvist, everybody’s talking about system one and system two models. But I see a lot of confusion about what the difference between them actually is. And when you would use which one. So, in this video, I really want to clear that up. And we’re going to not only talk about system one and system two models, but when to use which. Now, to make it concrete, let’s start with a very simple example. Here is a list of who manages who at a small company. There are three separate chains of
[00:32] people, and the facts are shuffled around intentionally. So, you can’t just read down the list. Now, the question is very simple. Start at Mo and go four managers up. Who do you end at? I gave this to two models. The first is Chev, which gives you an answer without writing anything out, almost instantly. And it says Eli. The second is current 3.8 with thinking turned on. It basically wrote its chain of thought,
[01:05] and the final answer that it came up with is Gus, which is correct. But the thing is that Chev was not guessing. Eli is exactly three levels up from Mo. Now, Chev was on the right track, but it stopped one step short. And this missing step is the real difference between system one and system two thinking. By the end of this video, you will know why it stops there. And what that means for your own problems if you’re selecting which type of models to use.
[01:37] Now, these terms come from Daniel’s Kahneman’s book, Thinking Fast and Slow. System one is the part of you that answers on autopilot. You see a face, you just know it’s angry. System two is the part that works things out step-by-step, like doing mathematics, where you have to hold on to the results along the way. In a model, system one is single forward pass.
[02:08] Your input goes through a fixed stack of layers only once. A good mental model of this is to think of it as one look at a problem. Whatever the model can work out in that one look, it has to answer that. Now, there are problems which will need more than one look, and this is where system one models fail. Geve is basically built around this whole idea. Your text and your typed questions go
[02:38] in. Then the model runs a single pass, and you get back a probability for the answers you allowed. When they say it cannot hallucinate, it has to pick from the answers that you have provided. So, it can be confidently wrong, but it’s going to answer only from the selected options. Now, theoretically, a chat model with thinking turned off works the same way. Every token is one look at the problem,
[03:11] and it doesn’t have any room to work anything out first. So, in our example, when I asked Gwen, it answered Tia, which is just one level up. So, what happens when a question needs more than just one look? That’s where system two comes into play. In a model, system two is not a different kind of brain or a different kind of architecture. It’s the same stack of layers run in a loop. Now, the difference is that each time
[03:41] around, the model writes one step down, and on the next pass, it reads that step back. This is basically what the chain of thought looks like. Now, the whole idea is that at every step the model takes notes and on the next step the model can reuse those notes. So, in our example, in the first pass the model might write something like Mo’s manager is Tia. And then in the next pass it’s going to read Tia and find Tia’s manager.
[04:14] So, every step here creates a result that did not exist before. And the next step basically builds on top of that results. Just like when you’re doing mathematics, for example, multiplying 17 by 24. There’s a very interesting paper on this showing that checking whether two points in a graph are connected is probably out of reach for a transformer that has to answer straight away. And our manager chain is exactly that
[04:46] kind of problem. Now, the interesting thing is that if you let the model write out its step, it can answer those type of questions. Okay, so here’s a very simple way to think. System one is one look, system two is the same look in a loop with notes. So, here’s a fun experiment that you can run yourself. I give Jeff, friend with thinking off, and Fran, friend with thinking on, the same kind of question
[05:16] with chains getting longer and longer. With a single step, they all get it right. That’s just a simple lookup. But as soon as the second step is needed, both one look model starts to slip. And a few steps in, they’re getting almost nothing right. The thinking model stays near perfect the whole way. The only thing that grow is its notes. But the thing is that the model is not getting smarter if you let it think for longer.
[05:51] It’s just taking more steps with nodes. Now, when I was looking at the results, I found something really interesting. So, remember Eli, when I looked at where Jev’s wrong answers landed, most of them were not random. Whether I asked for two, three, or four levels, its most common answer was the person three levels up. It walks up to the right chain and runs out at about the same place almost every single time. My guess is that’s what one look
[06:26] looks like from the outside. It gets you about this far and no further. We do not know what’s inside Jev, so I can’t really say why limit sits there exactly. But, one very important takeaway, this does not make system one weaker. It’s the right tool whenever the answer is visible in one look. Things like, is this ticket about billing? Is it urgent? Does it mention
[06:56] any fund? You can ask a one-look model lots of questions about that simple input all at once. And this is where Jev is actually really good. Where it slips is when you hand it a question that secretly needs steps. Daniel calls this substitution. System one quietly answers an easier question instead. When I asked Jev, is this email fishing? on a hard data set that I mentioned in my previous video,
[07:31] it was as bad as a coin flip because it was answering, does this looks like fishing? But, when I broke down the same question into smaller question where the model was looking at a specific feature and then combine the answer and code, the accuracy jumped significantly. There’s one more thing Jeff gives you with every answer, which is the confidence score. This is where it becomes even more
[08:02] useful. So, on the chain questions as they got too deep for one look its confidence dropped right along with its accuracy. This is exactly how Daniel describes these two systems working together. System one answers first, then system two steps in when something feels off. Now, the mental model to think about this is that you can design a system where both system one and system two levels are going to be working together.
[08:35] Now, in this setup you use one look model to answer everything and you keep the confidence score. Things that are lower than a certain confidence threshold, they are going to be handed over to the thinking model. This can be things like tool calls in a inter-tick harness where system one makes the tool calls but on tool calls where it’s not confident, you pass it back on to system two or thinking models which can actually look at it more comprehensively and then make a
[09:07] decision. And this is how I think most of the future systems are going to be designed. However, you can’t blindly trust the confidence score that it is outputting. It’s skilled probability, so not really the confidence that the model is assigning to it. So, for any application, I highly recommend to fine-tune that threshold before you decide to use it. Okay, so how do you select between system one and system two models? Now, the easiest mental model is just
[09:40] count the number of steps that the models would need in order to get to an answer. If the answer is visible in one look, that’s your system one. If you need a result you don’t have yet, and the model has to create the results in multiple different steps, that’s where you want to use system two. Or you break the question into one-look pieces yourself and then combine them in code. In the next video, I’m going to build
[10:10] this into an agent where the thinking models does the planning and Jeff handles the hundreds of small decisions in between. The code for the chain tests is in the video description. So, if you want, you can play around with it and see how further you can push a system one model. Anyways, I hope this was helpful. Thanks for watching and as always, see you in the next one.