# Nós e conexões

> Veja o que é um nó, seus tipos de entrada e saída, como as conexões levam resultados entre nós e como os modos de conexão passam um resultado ou uma lista.

Source: https://nodaro.ai/pt-BR/docs/concepts/nodes-and-connections

Um **nó** é uma etapa de um workflow: ele faz uma única tarefa, como escrever um roteiro, gerar uma imagem ou mesclar um vídeo com o áudio dele. Uma **conexão** é a linha que leva o resultado de um nó para uma entrada de outro nó. Todo workflow no Nodaro é feito dessas duas partes, e os tipos de entradas e saídas decidem quais nós podem se conectar.

## Como um nó funciona
Um nó recebe dados pelas **entradas** na borda esquerda, faz a tarefa dele e passa o **resultado** pelas **saídas** na borda direita. Cada entrada tem um nome, uma cor e um ícone.

- **O cabeçalho** mostra o rótulo do nó. No Nodaro Cloud, ele também mostra o preço do nó em créditos e selos como `x5` quando uma lista faz o nó ser executado cinco vezes.
- **O corpo** mostra o conteúdo principal do nó: um prompt, a escolha de um seletor ou o resultado mais recente.
- **A faixa sob o nó** aparece quando você passa o mouse sobre o nó ou o seleciona. Ela reúne as principais configurações, como o modelo, e o botão **Executar**.

Workflow: Três tipos de dado entram em “Gerar imagem” por três entradas: texto, as palavras de um seletor e um personagem. A saída de imagem alimenta o quadro inicial de um vídeo.

- Texto → Gerar imagem (prompt)
- Iluminação → Gerar imagem (look)
- Personagem → Gerar imagem (entidades)
- Gerar imagem → Gerar vídeo (quadro inicial)

Um nó que cria algo novo, como [**Gerar imagem** (Generate Image)](https://nodaro.ai/docs/nodes/image/generate-image), executa um modelo e custa créditos. Outros nós apenas guardam ou transformam dados, como [**Texto** (Text)](https://nodaro.ai/docs/nodes/automate/text), [**Lista** (List)](https://nodaro.ai/docs/nodes/automate/list) ou os [seletores](https://nodaro.ai/docs/nodes/creative-controls), e são gratuitos. A [referência de nós](https://nodaro.ai/docs/nodes) documenta todos os nós.

## Tipos de entradas e saídas
A cor e o ícone de uma entrada ou de uma saída mostram o tipo de dado que ela leva. Uma conexão só é permitida entre uma saída e uma entrada de tipos compatíveis.

| Tipo | Cor | O que leva |
| --- | --- | --- |
| Texto | Azul | Prompts, roteiros, legendas e qualquer outro texto. |
| Imagem | Rosa | Imagens: arquivos enviados, imagens geradas, quadros iniciais e referências. |
| Vídeo | Violeta | Clipes de vídeo. |
| Áudio | Âmbar | Fala, música e efeitos sonoros. |
| Look | Índigo | O texto de um [seletor](https://nodaro.ai/docs/nodes/creative-controls), como uma escolha de iluminação ou de câmera. |
| Entidade | Rosa-claro | Um personagem, local, objeto, criatura, rosto ou voz que permanece igual em todas as gerações. Veja [Entidades e mídias](https://nodaro.ai/docs/concepts/assets-and-media). |
| Negativo | Vermelho | O que um modelo deve evitar. |
| Rosto | Laranja | Um rosto, para nós de rosto e de sincronização labial. |
| Máscara | Roxo | Uma máscara em preto e branco que marca a área a alterar. |
| Lista | Verde-azulado | Uma lista ou uma tabela de itens. Veja [Listas e lotes](https://nodaro.ai/docs/concepts/lists-and-batching). |
| Qualquer | Cinza | Mais de um tipo de dado, em nós de uso geral. |

Tipos relacionados compartilham uma família de cores, e algumas entradas têm um tom próprio para que você possa diferenciá-las em um mesmo nó. Por exemplo, [**Gerar vídeo** (Generate Video)](https://nodaro.ai/docs/nodes/video/generate-video) tem **Quadro inicial** rosa, **Quadro final** verde-azulado e **Refs. de imagem** violeta. Na dúvida, leia o nome da entrada.

- **Uma saída pode alimentar qualquer número de entradas.** Um nó [Texto](https://nodaro.ai/docs/nodes/automate/text) pode passar o mesmo prompt para dez nós de imagem.
- **Algumas entradas aceitam várias conexões.** **Referências**, em **Gerar imagem**, aceita várias imagens. Nessas entradas a ordem importa: a maioria dos modelos trata a primeira referência como a mais importante.
- **Algumas entradas são opcionais.** Um nó é executado só com as entradas de que precisa, por exemplo **Gerar vídeo** sem quadro final.

## Conectar dois nós
- **Arraste de uma saída até uma entrada.** Enquanto você arrasta, as entradas que aceitam a conexão se acendem.
- **Solte a conexão em uma área vazia do canvas.** O menu **Adicionar nó** abre só com os nós que podem se conectar ali. O nó que você escolher é conectado automaticamente.
- **Adicione um nó a partir de um nó selecionado.** Selecione um nó e pressione Tab. Com **Conexão automática** ativada no menu **Adicionar nó**, uma pequena caixa de diálogo permite dar um nome ao novo nó e escolher como ele se conecta, ou escolher **Não conectar (só adicionar)**.
- **Mova uma conexão.** Arraste a ponta de uma conexão até outra entrada.
- **Exclua uma conexão.** Clique nela e pressione Delete, ou clique no botão **Excluir conexão** que aparece sobre ela.

## Quais conexões são permitidas
- **Os tipos precisam ser compatíveis.** O editor recusa uma conexão que não se encaixa, por exemplo um nó [**Personagem** (Character Asset)](https://nodaro.ai/docs/nodes/assets/character) em uma entrada **Prompt**. A linha pisca e nenhuma conexão é feita.
- **Sem loops.** Uma conexão nunca pode voltar para um nó que vem antes dela. O editor recusa uma conexão que fecharia um loop, incluindo a conexão de um nó com ele mesmo.
- **O modelo decide algumas entradas.** Quando o modelo que você escolheu não usa uma entrada, ela fica esmaecida e mostra “não usado pelo modelo atual”. Tudo o que estiver conectado a ela é ignorado na execução.
- **Algumas entradas têm um máximo.** Quando uma entrada tem mais conexões do que o modelo aceita, as excedentes são marcadas com “Acima do limite do modelo — não será usado pelo modelo atual”. Reordene as conexões ou escolha outro modelo.
- **Entradas de mídia precisam de mídia de verdade.** Quando um nó recebe algo que não é um arquivo do tipo certo, por exemplo texto em uma entrada de vídeo, a execução é recusada antes de qualquer crédito ser gasto. A mensagem informa o nó e o valor que ele recebeu.

## Gerenciar as conexões de uma entrada
Clique em uma entrada para abrir o menu de conexões dela. O menu mostra **Nada conectado**, o número de conexões ou o número em relação ao máximo do modelo.

- **Focar** centraliza o canvas em um nó conectado, e **Desconectar** remove só essa conexão.
- Nas entradas em que a ordem importa, arraste as linhas para mudar a ordem. A primeira linha é a entrada principal.
- **Opcional** lista os nós do canvas que poderiam se conectar ali. Clique em **Conectar** para conectar um deles.
- **Adicionar** abre o menu **Adicionar nó** só com os nós compatíveis, e **Desconectar tudo** remove todas as conexões.

As saídas têm o mesmo menu: clique em uma saída para ver quais nós a usam e para conectá-la a mais nós.

## Modos de conexão
A maioria das saídas leva um resultado. Algumas levam vários: um nó [Lista](https://nodaro.ai/docs/nodes/automate/list), um nó [**Dividir texto** (Split Text)](https://nodaro.ai/docs/nodes/automate/split-text) ou um nó que você executou várias vezes. O **modo de conexão** decide o que passa pela conexão.

| Modo | O que passa | Quando usar |
| --- | --- | --- |
| **Selecionado** | O resultado selecionado no nó: normalmente o mais recente | Quase sempre. É o padrão. |
| **Item** | Um item, escolhido pela posição, como `1`, `3` ou `last` | Você sempre quer o mesmo item de uma lista ou de um lote de resultados. |
| **Cada item** | Todos os itens, um por um: o próximo nó é executado uma vez por item | Você quer um resultado para cada item. É o padrão das conexões que saem de **Lista** e de **Dividir texto**. |
| **Conjunto** | Todos os itens de uma vez, em uma única execução | O próximo nó combina itens, como [**Combinar vídeos** (Combine Videos)](https://nodaro.ai/docs/nodes/video/combine-videos) ou [**Mixar áudio** (Mix Audio)](https://nodaro.ai/docs/nodes/audio/mix-audio). É o padrão das conexões que entram em uma **Lista**. |

**Mude o modo.** Clique em uma conexão para selecioná-la e, depois, no pequeno botão de seta que aparece sobre ela. O menu **Saída** lista os quatro modos. Para **Item**, digite a posição na caixa ao lado.

**Escolha quais itens passam.** Com **Cada item** ou **Conjunto**, o menu ganha duas abas:

- **Intervalo** tem três campos: **De**, **Até** e **Passo**. Por exemplo, **De** `2` e **Até** `last` pulam o primeiro item, e **Passo** `2` passa um item sim, outro não.
- **Lista** aceita uma expressão curta:

| Você digita | Itens que passam |
| --- | --- |
| `1` | Item 1 |
| `1, 2, last` | Itens 1 e 2 e o último item |
| `1..5` | Itens 1 a 5 |
| `1..last` | Todos os itens |
| `1..last-1` | Todos os itens, exceto o último |
| `1..10:2` | Itens 1, 3, 5, 7 e 9 |
| `last..1:-1` | Todos os itens, em ordem inversa |
| `1, 3..5, last` | Item 1, itens 3 a 5 e o último item |

Uma expressão que o editor não consegue ler fica vermelha. Nesse caso, a conexão passa todos os itens, então um erro de digitação nunca interrompe o workflow.

**Leia o rótulo.** Uma conexão no modo **Selecionado** normalmente não tem rótulo. Em outro modo, um rótulo na conexão indica o modo, como `each` ou `bundle`, e um segundo rótulo mostra o intervalo, como `2..last`.

**Fique de olho nos créditos.** **Cada item** multiplica o custo do próximo nó pelo número de itens. Quando cinco itens chegam a um nó que custa 4 créditos, esse nó custa 20 créditos na execução. O botão **Executar** do nó mostra o total antes de você executá-lo.

## Dicas
- **Comece simples.** Mantenha todas as conexões no modo **Selecionado** até ter de fato uma lista para processar.
- **Mude uma coisa de cada vez.** Quando uma conexão não se comporta como você espera, altere uma configuração, execute o nó e veja o resultado.
- **Escolha o modo de acordo com o próximo nó.** Um nó que transforma uma coisa pede **Cada item**. Um nó que combina muitas coisas pede **Conjunto**. Uma escolha única pede **Item**.
- **Use Item para escolhas repetíveis.** `1` ou `last` continua funcionando quando uma nova execução muda o número de resultados.
- **Compartilhe uma seleção.** Quando vários nós precisam do mesmo subconjunto de uma lista, use um nó [**Selecionar itens** (Selector)](https://nodaro.ai/docs/nodes/automate/selector) em vez de definir o mesmo intervalo em cada conexão.

## Frequently asked questions

### O que é um nó no Nodaro?

Um nó é uma etapa de um workflow que faz uma única tarefa, como gerar uma imagem ou mesclar um vídeo com o áudio dele. Ele recebe dados pelas entradas na borda esquerda e passa o resultado pelas saídas na borda direita.

### Por que o editor recusa minha conexão?

Cada entrada aceita só alguns tipos de dado; por exemplo, um vídeo não pode entrar em uma entrada de prompt. O editor também recusa uma conexão que criaria um loop. Solte a conexão em uma área vazia do canvas para ver os nós compatíveis.

### O que significam as cores das entradas e saídas?

A cor e o ícone mostram o tipo de dado. Texto é azul, imagem é rosa, vídeo é violeta, áudio é âmbar e o texto dos seletores é índigo. Leia também o nome da entrada, porque tipos relacionados compartilham uma família de cores.

### Qual é a diferença entre os modos de conexão “Cada item” e “Conjunto”?

“Cada item” executa o próximo nó uma vez para cada item de uma lista, então cinco itens geram cinco resultados. “Conjunto” entrega a lista inteira ao próximo nó em uma única execução, o que serve para nós que combinam itens, como “Combinar vídeos”.

### Por que uma das entradas do meu nó está esmaecida?

O modelo que você escolheu não usa essa entrada. Tudo o que estiver conectado a ela é ignorado quando o nó é executado. Escolha um modelo compatível com a entrada ou remova a conexão.
