# Atualizações do Sherpa AI Server

### 1. Download de arquivos

Baixe todos os arquivos mais recentes pelos links antes da instalação.

### 2. Transferência de arquivos para o servidor

Após o download, transfira todos os arquivos para o servidor Linux de destino da maneira que preferir:

#### Via SCP/SFTP

```bash
# Copie os arquivos para o servidor
scp *.tar.gz *.tgz user@target-server:/path/to/installation/directory/
```

<details>

<summary>💡 Comentários sobre a transferência via SCP/SFTP</summary>

\*\*scp *.tar.gz .tgz user\@target-server:/path/to/installation/directory/* - copia os arquivos para o servidor remoto

* `scp` - secure copy (cópia segura)
* `*.tar.gz *.tgz` - padrões para seleção de arquivos
* `user@target-server` - credenciais de conexão
* `/path/to/installation/directory/` - caminho de destino no servidor

</details>

#### Via cliente SFTP

Use qualquer cliente SFTP (FileZilla, WinSCP, Cyberduck) para copiar os arquivos para o servidor.

#### Via pasta de rede

Se o servidor estiver acessível via SMB/CIFS, use o explorador do Windows ou o comando `copy`.

#### Verificação da transferência

```bash
# Conecte-se ao servidor
ssh user@target-server

# Vá para o diretório com os arquivos
cd /path/to/installation/directory

# Verifique a presença de todos os arquivos
ls -la *.tar.gz *.tgz

# Verifique os tamanhos dos arquivos
ls -lh *.tar.gz *.tgz
```

<details>

<summary>💡 Comentários sobre a verificação da transferência</summary>

**ssh user\@target-server** - conecta-se ao servidor remoto via SSH

* `ssh` - secure shell
* `user@target-server` - credenciais de conexão

**cd /path/to/installation/directory** - navega para o diretório com os arquivos

\*\*ls -la *.tar.gz .tgz* - mostra informações detalhadas sobre os arquivos baixados

* `-l` - formato longo
* `-a` - mostra arquivos ocultos

\*\*ls -lh *.tar.gz .tgz* - mostra os tamanhos dos arquivos em formato legível

* `-h` - human readable (Kb, Mb, Gb)

</details>

### 3. Parada de contêineres

```bash
# Pare todos os serviços em execução
docker compose down
```

<details>

<summary>💡 Comentários sobre a parada de contêineres</summary>

**docker compose down** - para todos os serviços do Docker Compose

* Para e remove contêineres, redes
* Mantém volumes e imagens

**Verificação da parada:** **docker ps -a | grep aiserver** - verifica o status dos contêineres

* `docker ps -a` - mostra todos os contêineres (incluindo os parados)
* `| grep aiserver` - filtra pelo nome aiserver

</details>

### 4. Carregamento de imagens Docker

```bash
# Crie um backup do arquivo .env
cp .env .env.backup
# Crie um backup da configuração
cp ./oais/backend/config ./oais/backend/config_backup

# Se certificados personalizados forem usados, copie-os para um local seguro
cp -r ./oais/backend/config/certs ./certs_backup

# Extraia os arquivos do cliente
tar -xvzf "$(ls client_files_*.tgz | sort -V | tail -n 1)"

# Torne os scripts executáveis
chmod +x sh_scripts/*.sh

# Se um backup dos certificados foi criado, restaure-os
cp -r ./certs_backup/* ./oais/backend/config/certs/

# Carregue todas as imagens Docker
sudo ./sh_scripts/load_all_docker_images.sh
```

<details>

<summary>💡 Comentários sobre o carregamento de imagens Docker</summary>

**Criação de backups:**

* `cp .env .env.backup` - backup do arquivo de configuração
* `cp ./oais/backend/config ./oais/backend/config_backup` - backup do diretório de configuração
* `cp -r ./oais/backend/config/certs ./certs_backup` - backup dos certificados SSL

**Extração e preparação:**

* `tar -xvzf "$(ls client_files_*.tgz | sort -V | tail -n 1)"` - extrai os arquivos mais recentes do cliente
* `chmod +x sh_scripts/*.sh` - torna os scripts executáveis
* `cp -r ./certs_backup/* ./oais/backend/config/certs/` - restaura os certificados

**sudo ./sh\_scripts/load\_all\_docker\_images.sh** - carrega todas as imagens Docker

**Verificação do carregamento:** **docker images | grep aiserver** - mostra as imagens carregadas do aiserver

</details>

### 5. Verificação de variáveis de ambiente

```bash
# Abra o arquivo .env para verificação
nano ./.env

# Verifique a presença das variáveis obrigatórias
grep -E "(POSTGRES_PASSWORD|X_API_TOKEN|HOST_IP)" .env

# Verifique a correção da sintaxe
cat .env | grep -v '^#' | grep '=' | wc -l
```

<details>

<summary>💡 Comentários sobre a verificação de variáveis de ambiente</summary>

**nano ./.env** - abre o arquivo de configuração no editor

**grep -E "(POSTGRES\_PASSWORD|X\_API\_TOKEN|HOST\_IP)" .env** - verifica a presença de variáveis-chave

* `-E` - expressões regulares estendidas
* Enumera as variáveis obrigatórias através de |

**cat .env | grep -v '^#' | grep '=' | wc -l** - conta o número de variáveis

* `cat .env` - exibe o conteúdo do arquivo
* `grep -v '^#'` - exclui comentários
* `grep '='` - mantém apenas as linhas com variáveis
* `wc -l` - conta o número de linhas

</details>

### 6. Início de contêineres

```bash
# Inicie os serviços básicos
docker compose up -d

# Ou inicie com serviços adicionais
# docker compose --profile whisper up -d
# docker compose --profile reranker up -d
# docker compose --profile full up -d
```

<details>

<summary>💡 Comentários sobre o início de contêineres</summary>

**docker compose up -d** - inicia os serviços básicos em segundo plano

* `-d` - modo destacado (background)

**Perfis para serviços adicionais:**

* `--profile whisper` - ativa o serviço de reconhecimento de fala
* `--profile reranker` - ativa o serviço de reordenação
* `--profile full` - ativa todos os serviços adicionais

**Verificação do início:**

* `docker compose ps` - mostra o status de todos os contêineres
* `docker compose logs -f aiserver` - mostra os logs de inicialização em tempo real

</details>

Após a atualização bem-sucedida, o sistema Sherpa AI Server está pronto para uso.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sherparpa.ru/pt/sherpa-ai/sherpa-ai-server/obnovleniya-sherpa-ai-server.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
