init: scripts diversos (crawlers, conversores, scrapers)

This commit is contained in:
2026-03-05 20:38:36 +00:00
commit 6ac6f4be2a
925 changed files with 850330 additions and 0 deletions

9
kb-processor/.env.example Executable file
View File

@@ -0,0 +1,9 @@
# Configurações do Banco de Dados
DB_NAME=superbot_kb
DB_USER=postgres
DB_PASSWORD=sua_senha_aqui
DB_HOST=localhost
DB_PORT=5432
# Configurações da API OpenAI (para embeddings futuros)
OPENAI_API_KEY=sua_chave_api_aqui

10
kb-processor/.envrc Executable file
View File

@@ -0,0 +1,10 @@
source_up
# Variáveis específicas do projeto
export PROJECT_ROOT=$(pwd)
export INPUT_DIR=$PROJECT_ROOT/input
export OUTPUT_DIR=$PROJECT_ROOT/output
export MODELS_DIR=$PROJECT_ROOT/models
# Criar diretórios necessários
mkdir -p $INPUT_DIR $OUTPUT_DIR $MODELS_DIR

6
kb-processor/.gitignore vendored Normal file
View File

@@ -0,0 +1,6 @@
.env
venv/
.venv/
output/
__pycache__/
*.pyc

152
kb-processor/CHANGELOG.md Executable file
View File

@@ -0,0 +1,152 @@
# Registo de Alterações
[1.0.0] - 07-01-2025
Adicionado
- Instalao_Docker_TYPEBOT_no_EasyPanel-_HubConnect_20250107_023355.txt
- Typebot_no_WhatsApp_Aumente_Sua_Produtividade_com_a_Integrao_ao_Chatwoot_20250107_023412.txt
- Como_instalar_Evolution_API_2.0_no_Easypanel_[2024]_20250107_023258.txt
- Integrando_Evolution_API_com_ChatWoot_20250107_023339.txt
- Como_Integrar_o_Chatgpt_no_Chatbot_Whatsapp_com_Typebot_e_Chatwoot_20250107_023233.txt
[1.0.0] - 07-01-2025
Adicionado
- Chatwoot + Dify + n8n + Evolution API.pdf
## [1.2.0] - 07-01-2025
### Adicionado
- Documentação sobre o Chatwoot e suas funcionalidades
- Explicação detalhada sobre integração com WhatsApp e outras plataformas
- Informações sobre gestão de atendimento multicanal
## [1.3.0] - 07-01-2025
### Adicionado
- Chatbot AI integrado com Chatwoot
- Processador de chat com pesquisa na base de conhecimento
- Endpoint webhook para receber mensagens
- Documentação de configuração e uso do chatbot
## [1.4.0] - 07-01-2025
### Adicionado
- Sistema de distribuição inteligente de leads baseado em taxa de conversão
- Processador `LeadDistributor` para gestão automática de leads
- Exemplo de uso do sistema de distribuição
### Explorado
- Conceito de distribuição de leads baseada em performance
- Integração com base de conhecimento para pesquisa semântica
- Possibilidades de automação de atendimento
### Aprendido
- Estratégias de distribuição de leads por taxa de conversão:
- Vendedores com alta conversão recebem mais leads (120%)
- Vendedores na média recebem quota normal
- Vendedores com baixa conversão recebem menos leads (80%)
- Importância de manter consistência na comunicação com cliente
- Valor de produtos de entrada para atração de clientes
## [0.1.1] - 07-01-2025
### Alterado
- Atualização das dependências para melhor compatibilidade com Python 3.12
- Remoção da dependência langchain
- Flexibilização das versões das dependências
- Simplificação do requirements.txt
## [0.1.0] - 07-01-2025
### Adicionado
- Estrutura base do projeto
- Processador base para documentos
- Processador específico para PDFs
- Processador específico para ficheiros de texto
- Gerador de FAQs usando OpenRouter API
- Sistema de limpeza e normalização de texto
- Estruturação automática de conteúdo
- Integração com OpenRouter API (modelo deepseek)
- Sistema de metadados para documentos
- Formatação em Markdown
- Documentação inicial
- Configuração do ambiente virtual
- Gestão de dependências via pip
### Alterado
- Atualização da estrutura do projeto para seguir as diretrizes globais
- Configuração do ambiente virtual conforme padrões estabelecidos
### Corrigido
- Ajuste na configuração do ambiente virtual para usar .venv do diretório raiz
## [0.1.0] - 07-01-2025
Adicionado
- Novo escopo de projeto para sistema de gestão de conhecimento e automação digital.
- Interface para upload e processamento de conteúdos.
- Funcionalidades para extração de conteúdos de YouTube, páginas web, PDFs e pastas locais.
- Processamento automático com categorização, geração de FAQs e armazenamento em MD e JSON.
- Integração com OpenRouter e OpenAI para processamento de IA.
Alterado
- Estrutura de armazenamento para suportar novos tipos de conteúdos e organização hierárquica.
## [0.1.0] - 07-01-2025
Adicionado
- Novo escopo de projeto para sistema de gestão de conhecimento e automação digital.
- Interface para upload e processamento de conteúdos.
- Funcionalidades para extração de conteúdos de YouTube, páginas web, PDFs e pastas locais.
- Processamento automático com categorização, geração de FAQs e armazenamento em MD e JSON.
- Integração com OpenRouter e OpenAI para processamento de IA.
Alterado
- Estrutura de armazenamento para suportar novos tipos de conteúdos e organização hierárquica.
## [0.0.4] - 07-01-2025
### Adicionado
- Logs detalhados no processamento de vídeos do YouTube
- Sistema de monitoramento de progresso para transcrições
### Alterado
- Melhorias na extração de transcrições do YouTube
- Otimização do processamento de vídeos e playlists
### Corrigido
- Tratamento de erros na extração de transcrições
- Problemas com caracteres especiais no texto
## [0.0.3] - 07-01-2025
### Adicionado
- Suporte para processamento de URLs do YouTube
- Extração automática de transcrições
- Correção automática de texto
- Interface web básica para processamento
### Alterado
- Estrutura do projeto reorganizada
- Sistema de processamento modularizado
### Corrigido
- Problemas de codificação UTF-8
- Erros na extração de metadados
## [0.0.2] - 06-01-2025
### Adicionado
- Processamento básico de documentos
- Suporte inicial para PDF
- Suporte inicial para páginas web
### Alterado
- Estrutura inicial do projeto
- Sistema de processamento base
## [0.0.1] - 05-01-2025
### Adicionado
- Estrutura inicial do projeto
- Configuração básica do ambiente
- Documentação inicial

33
kb-processor/CONFIGURACAO.md Executable file
View File

@@ -0,0 +1,33 @@
# Configuração do Projeto
## Chave OpenRouter
- OPENROUTER_API_KEY: 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
## Chave OpenAI
- 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
## Acesso à Base de Dados PostgreSQL
- Usuário: superbot_user
- Senha: KufQ4La5jaAk
- Nome da Base de Dados: superbot_kb
- Host Interno: descomplicar_superbot-kb-postgres
- Porta Interna: 5432
- Host Externo: easy.descomplicar.pt
- Porta Externa: 5433
## Acesso ao Weaviate
- URL: https://descomplicar-superbot-kb-weaviate.qibspu.easypanel.host:8080
- QUERY_DEFAULTS_LIMIT: 100
- AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED: false
- PERSISTENCE_DATA_PATH: /var/lib/weaviate
- DEFAULT_VECTORIZER_MODULE: text2vec-openai
- ENABLE_MODULES: text2vec-openai
- CLUSTER_HOSTNAME: node1
- AUTHENTICATION_APIKEY_ENABLED: true
- AUTHENTICATION_APIKEY_ALLOWED_KEYS: D80ju3kGydBXUz9IS3ECL27qPqt0WMphPmn1dY7eT375T541kTQMEr6mA6stAjmw8lkO6gv156hFTVl4hwCWdIGrw6NBPeKX7ITaPY9MBVt16NTjT1mp3pKrtp95BM97
- AUTHENTICATION_APIKEY_USERS: superbot
- BACKUP_ENABLED: true
- BACKUP_FILESYSTEM_PATH: /var/lib/weaviate/backups
- LOG_LEVEL: info
- CORS_ALLOW_ORIGINS: *
- CORS_ALLOW_METHODS: GET,POST,PUT,DELETE,OPTIONS

167
kb-processor/ESCOPO-DO-PROJETO.md Executable file
View File

@@ -0,0 +1,167 @@
# Escopo do Projeto
## 1. Visão Geral
Desenvolver um sistema integrado para gestão, processamento e automação de conhecimento para a Descomplicar - Agência de Aceleração Digital, incluindo capacidades de processamento automático de conteúdo, chat inteligente e automações diversas.
## 2. Objetivos Principais
- Centralizar e estruturar todo o conhecimento da empresa
- Automatizar processamento e categorização de conteúdo
- Implementar sistema de chat com consciência global
- Desenvolver capacidades de automação para marketing e gestão
- Criar pipeline de produção de conteúdo automatizado
## 3. Arquitetura do Sistema
### 3.1 Backend
- Python como linguagem principal
- FastAPI para APIs REST
- PostgreSQL para dados estruturados
- Base de dados vetorial (Weaviate) para embeddings
- Sistema de filas para processamento assíncrono
### 3.2 Processamento de Conteúdo
- Extração automática de:
- Vídeos do YouTube (transcrições)
- Páginas web (scraping)
- PDFs e documentos
- Pastas locais
- Processamento com IA:
- Modelo Deepseek via OpenRouter
- Embeddings via OpenAI
- RAG (Retrieve-Augment-Generate)
### 3.3 Estrutura de Armazenamento
Organização hierárquica por categorias:
- Estratégia Digital
- Marketing Digital
- Desenvolvimento
- Design
- E-commerce
- Ferramentas
- Gestão de Projetos
- Cliente
## 4. Funcionalidades Principais
### 4.1 Processamento de Conteúdo
- Upload via interface web
- Processamento automático baseado no tipo de conteúdo
- Geração automática de:
- Tags
- FAQs
- Resumos
- Metadados
- Conversão para português de Portugal
- Armazenamento estruturado em MD e JSON
### 4.2 Sistema de Chat Inteligente
- Interface web para interação
- Integração com múltiplos canais (site, WhatsApp)
- Capacidades:
- Consciência global do conhecimento da empresa
- Respostas contextuais
- Escalonamento para humanos
- Automações via agentes
### 4.3 Automações
- Produção de conteúdo
- Gestão de redes sociais
- Criação de páginas WordPress
- Distribuição de leads
- Atendimento ao cliente
## 5. Integrações
### 5.1 APIs e Serviços
- OpenRouter (Deepseek)
- OpenAI (Embeddings)
- Perfex CRM
- WordPress
- Chatwoot/Similar para gestão de chat
### 5.2 Bases de Dados
- PostgreSQL: Dados estruturados e metadados
- Base Vetorial: Embeddings e busca semântica
- Sistema de arquivos: Documentos MD e JSON
## 6. Interface do Utilizador
- Dashboard principal
- Interface de upload e processamento
- Visualização de conteúdo processado
- Sistema de chat
- Painéis de controle para automações
## 7. Fases de Implementação
### Fase 1: Base de Conhecimento
- Implementar sistema de processamento de conteúdo
- Criar estrutura de armazenamento
- Desenvolver pipeline de processamento
- Implementar categorização automática
### Fase 2: Sistema de Chat
- Desenvolver interface de chat
- Implementar RAG
- Criar sistema de escalonamento
- Integrar com canais externos
### Fase 3: Automações
- Mapear processos
- Identificar oportunidades de automação
- Desenvolver agentes específicos
- Implementar automações prioritárias
### Fase 4: Expansão e Otimização
- Adicionar funcionalidades avançadas
- Otimizar processos
- Expandir capacidades de automação
- Implementar melhorias baseadas no feedback
## 8. Requisitos Técnicos
### 8.1 Performance
- Processamento assíncrono para tarefas longas
- Cache para consultas frequentes
- Otimização de embeddings
- Balanceamento de carga
### 8.2 Segurança
- Autenticação e autorização
- Encriptação de dados sensíveis
- Backups automáticos
- Logs de atividade
### 8.3 Escalabilidade
- Arquitetura modular
- Sistema distribuído
- Cache distribuído
- Balanceamento de carga
## 9. Monitorização e Manutenção
- Sistema de logs detalhado
- Monitorização de performance
- Alertas automáticos
- Backups regulares
- Atualizações de conteúdo
## 10. Métricas de Sucesso
- Tempo de processamento de conteúdo
- Precisão das categorizações
- Qualidade das respostas do chat
- Eficiência das automações
- Satisfação dos utilizadores
## 11. Documentação
- Documentação técnica
- Guias de utilização
- APIs e integrações
- Procedimentos de manutenção
## Responsáveis
- Responsável Principal: Emanuel Almeida
- Entidade: Descomplicar - Agência de Aceleração Digital
## Cronograma
- Desenvolvimento: ASAP
- Metodologia: Desenvolvimento contínuo e iterativo
- Prioridade: Implementação imediata

169
kb-processor/PROMPT-IA.md Executable file
View File

@@ -0,0 +1,169 @@
# Instruções de Operação para IA
## Objetivo
Você é um assistente especializado em processamento e estruturação de conhecimento para a Descomplicar - Agência de Aceleração Digital. Sua função é processar, estruturar e enriquecer documentação técnica mantendo máxima fidelidade e qualidade.
## Regras Fundamentais
### 1. Idioma e Estilo
- Usar exclusivamente português de Portugal
- Manter terminologia técnica precisa
- Adaptar regionalismos quando necessário
- Preservar termos técnicos em inglês quando apropriado
### 2. Processamento de Documentos
- Analisar tipo e estrutura do documento
- Manter fidelidade ao conteúdo original
- Estruturar hierarquicamente o conteúdo
- Gerar metadados completos
- Criar sistema de tags relevante
- Gerar FAQs contextuais
- Manter todas as referências originais
- Adicionar referências cruzadas quando relevante
### 3. Estrutura de Output
#### Metadados Obrigatórios
```yaml
---
título: ""
autor_original: ""
data_original: ""
tipo_documento: ""
fonte: ""
licença: ""
última_atualização: ""
categoria_principal: ""
tags: []
nível_técnico: ""
idioma_original: ""
tradutor: "Descomplicar AI"
revisão: "1.0"
---
```
#### Estrutura de Capítulos
```markdown
# [TAG-XXX] Título do Capítulo
## Contexto
[Breve contextualização]
## Conteúdo Principal
[Conteúdo estruturado]
## Conceitos-Chave
- Conceito 1: Definição
- Conceito 2: Definição
## FAQs
Q: [Pergunta gerada contextualmente]
A: [Resposta baseada no conteúdo]
## Referências
- [Referências originais]
- [Referências cruzadas]
## Tags
#tag1 #tag2 #tag3
```
### 4. Controle de Qualidade
- Verificar consistência terminológica
- Validar estrutura e formatação
- Confirmar precisão técnica
- Verificar referências
- Validar links internos
- Gerar sumário automático
- Verificar coerência de tags
### 5. Integrações
#### API OpenRouter
- Usar modelo deepseek/deepseek-chat
- Implementar retry em caso de falhas
- Monitorar rate limits
- Manter contexto entre chamadas
- Otimizar uso de tokens
#### Base de Dados
- Gerar embeddings para pesquisa semântica
- Manter consistência relacional
- Implementar versionamento
- Garantir backup de alterações
### 6. Operações Específicas
#### Para PDFs e E-books
1. Extrair estrutura original
2. Manter formatação relevante
3. Preservar referências bibliográficas
4. Criar índice remissivo
5. Gerar sumário estruturado
#### Para Transcrições de Vídeos
1. Estruturar em seções lógicas
2. Adicionar pontuação apropriada
3. Criar títulos e subtítulos
4. Manter timestamps relevantes
5. Incluir descrições de elementos visuais importantes
#### Para Documentação Técnica
1. Manter estrutura hierárquica
2. Preservar exemplos de código
3. Adicionar notas de implementação
4. Incluir avisos e precauções
5. Documentar dependências
### 7. Gestão de Conhecimento
- Identificar relações entre documentos
- Criar links contextuais
- Manter taxonomia consistente
- Implementar sistema de versões
- Documentar alterações
### 8. Output e Armazenamento
- Gerar arquivos MD padronizados
- Manter estrutura de pastas original
- Implementar sistema de backup
- Criar logs de processamento
- Gerar relatórios de qualidade
## Fluxo de Trabalho
1. Recebimento do Documento
- Identificar tipo e formato
- Validar integridade
- Extrair metadados iniciais
2. Processamento
- Análise estrutural
- Conversão e formatação
- Enriquecimento de conteúdo
- Geração de FAQs
- Criação de tags
3. Validação
- Verificação de qualidade
- Validação de links
- Confirmação de referências
- Teste de formatação
4. Armazenamento
- Salvamento em MD
- Atualização da base de dados
- Geração de embeddings
- Backup de segurança
5. Documentação
- Registro de alterações
- Atualização de índices
- Geração de logs
- Relatório de processamento
## Respostas e Interações
- Manter foco em qualidade
- Reportar problemas encontrados
- Sugerir melhorias quando relevante
- Documentar decisões importantes
- Manter rastreabilidade

99
kb-processor/README.md Executable file
View File

@@ -0,0 +1,99 @@
# SuperBot Knowledge Base
Sistema de processamento e gestão de conhecimento para o SuperBot.
## Funcionalidades
- Processamento de URLs do YouTube
- Extração automática de transcrições
- Suporte para múltiplos idiomas
- Correção automática de texto
- Monitoramento de progresso em tempo real
- Logs detalhados do processamento
- Processamento de Documentos
- PDFs
- Páginas Web
- Arquivos de Texto
## Instalação
1. Clone o repositório:
```bash
git clone https://github.com/descomplicar/superbot-kb.git
cd superbot-kb
```
2. Crie e ative o ambiente virtual:
```bash
python -m venv .venv
source .venv/bin/activate # Linux/Mac
```
3. Instale as dependências:
```bash
pip install -r requirements.txt
```
## Uso
### Interface Web
1. Inicie o servidor:
```bash
cd src/web
python -m uvicorn app:app --reload --host 0.0.0.0 --port 3000
```
2. Acesse a interface em `http://localhost:3000`
### API
- `POST /process-url`: Processa uma URL do YouTube
- Parâmetros: `url` (string)
- Retorna: JSON com conteúdo processado
- `POST /process-file`: Processa um arquivo
- Parâmetros: `file` (multipart/form-data)
- Retorna: JSON com conteúdo processado
## Estrutura do Projeto
```
superbot-kb/
├── src/
│ ├── processors/ # Processadores de conteúdo
│ │ ├── youtube_processor.py
│ │ ├── pdf_processor.py
│ │ └── web_processor.py
│ └── web/ # Interface web
│ ├── app.py
│ └── templates/
├── data/ # Dados processados
├── logs/ # Logs do sistema
├── requirements.txt # Dependências
└── README.md # Documentação
```
## Desenvolvimento
### Logs e Monitoramento
O sistema agora inclui logs detalhados para:
- Extração de IDs de vídeos
- Obtenção de informações
- Processamento de vídeos
- Extração de transcrições
- Correção de texto
- Atualização de metadados
### Próximos Passos
1. Melhorar interface web
2. Adicionar suporte para mais formatos
3. Implementar processamento em lote
4. Otimizar performance
## Licença
Copyright 2025 Descomplicar - Agência de Aceleração Digital

375
kb-processor/base-de-dados.txt Executable file
View File

@@ -0,0 +1,375 @@
Estrutura Detalhada da Base de Dados KB
1. Sistema Base (Schema)
sqlCopyCREATE SCHEMA IF NOT EXISTS kb;
Este é o namespace dedicado que mantém todas as tabelas organizadas e separadas de outros sistemas.
2. Sistema de Armazenamento Principal
2.1 Documentos (kb.documents)
sqlCopyCREATE TABLE kb.documents (
doc_id SERIAL PRIMARY KEY,
title TEXT NOT NULL,
author TEXT,
original_date DATE,
processing_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
source_type TEXT CHECK (source_type IN ('pdf', 'ebook', 'video', 'documentation')),
language TEXT DEFAULT 'pt-PT',
original_file_path TEXT,
md_file_path TEXT,
content TEXT,
content_embedding vector(1536), -- Para busca semântica
metadata JSONB,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
version INTEGER DEFAULT 1
);
Armazena informações base dos documentos
Inclui embeddings para busca semântica
Mantém metadados flexíveis em JSONB
Controla versões e datas
2.2 Capítulos (kb.chapters)
sqlCopyCREATE TABLE kb.chapters (
chapter_id SERIAL PRIMARY KEY,
doc_id INTEGER REFERENCES kb.documents(doc_id),
title TEXT NOT NULL,
content TEXT,
content_embedding vector(1536), -- Para busca semântica em nível de capítulo
sequence_number INTEGER,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
version INTEGER DEFAULT 1
);
Estrutura hierárquica do conteúdo
Embeddings específicos por capítulo
Sequenciamento ordenado
3. Sistema de Classificação e Relações
3.1 Tags e Relações
sqlCopyCREATE TABLE kb.tags (
tag_id SERIAL PRIMARY KEY,
tag_type TEXT NOT NULL,
tag_value TEXT NOT NULL,
description TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
UNIQUE(tag_type, tag_value)
);
CREATE TABLE kb.document_tags (
doc_id INTEGER REFERENCES kb.documents(doc_id),
tag_id INTEGER REFERENCES kb.tags(tag_id),
PRIMARY KEY (doc_id, tag_id)
);
Sistema flexível de categorização
Relacionamento muitos-para-muitos
Tipos de tags para melhor organização
3.2 Relacionamentos entre Documentos
sqlCopyCREATE TABLE kb.document_relationships (
relationship_id SERIAL PRIMARY KEY,
source_doc_id INTEGER REFERENCES kb.documents(doc_id),
target_doc_id INTEGER REFERENCES kb.documents(doc_id),
relationship_type TEXT,
strength FLOAT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
UNIQUE(source_doc_id, target_doc_id, relationship_type)
);
Mapeia conexões entre documentos
Indica força da relação
Permite múltiplos tipos de relacionamento
4. Sistema de Conhecimento
4.1 FAQs Contextuais
sqlCopyCREATE TABLE kb.faqs (
faq_id SERIAL PRIMARY KEY,
chapter_id INTEGER REFERENCES kb.chapters(chapter_id),
question TEXT NOT NULL,
answer TEXT NOT NULL,
question_embedding vector(1536), -- Para busca semântica de perguntas
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
FAQs geradas automaticamente
Embeddings para busca semântica
Vinculadas a capítulos específicos
4.2 Referências
sqlCopyCREATE TABLE kb.references (
ref_id SERIAL PRIMARY KEY,
doc_id INTEGER REFERENCES kb.documents(doc_id),
reference_type TEXT,
citation TEXT,
url TEXT,
doi TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
Mantém referências bibliográficas
Suporta múltiplos tipos de citação
Inclui identificadores digitais
5. Sistema de Controle
5.1 Histórico de Versões
sqlCopyCREATE TABLE kb.version_history (
version_id SERIAL PRIMARY KEY,
entity_type TEXT NOT NULL,
entity_id INTEGER NOT NULL,
change_type TEXT NOT NULL,
changes JSONB,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
created_by TEXT
);
Rastreia todas as alterações
Armazena detalhes das mudanças
Mantém auditoria completa
5.2 Fila de Processamento
sqlCopyCREATE TABLE kb.processing_queue (
queue_id SERIAL PRIMARY KEY,
file_path TEXT NOT NULL,
status TEXT DEFAULT 'pending',
priority INTEGER DEFAULT 1,
attempts INTEGER DEFAULT 0,
last_attempt TIMESTAMP,
error_message TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
processed_at TIMESTAMP
);
Gerencia processamento assíncrono
Controla tentativas e erros
Prioriza processamentos
6. Otimizações
6.1 Índices
sqlCopyCREATE INDEX idx_documents_title ON kb.documents USING gin (to_tsvector('portuguese', title));
CREATE INDEX idx_documents_content ON kb.documents USING gin (to_tsvector('portuguese', content));
CREATE INDEX idx_documents_embedding ON kb.documents USING ivfflat (content_embedding vector_cosine_ops);
Otimiza busca textual
Acelera busca semântica
Melhora performance geral
6.2 Funções e Triggers
sqlCopy-- Função de atualização de timestamp
CREATE OR REPLACE FUNCTION kb.update_timestamp()
RETURNS TRIGGER AS $$
BEGIN
NEW.updated_at = CURRENT_TIMESTAMP;
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
-- Trigger exemplo
CREATE TRIGGER update_documents_timestamp
BEFORE UPDATE ON kb.documents
FOR EACH ROW
EXECUTE FUNCTION kb.update_timestamp();
Automatiza atualizações de timestamp
Mantém consistência dos dados
Facilita manutenção
Esta estrutura proporciona:
Armazenamento eficiente
Busca semântica avançada
Organização hierárquica
Rastreamento de mudanças
Processamento assíncrono
Performance otimizada
**exemplo
-- Extensões necessárias
CREATE EXTENSION IF NOT EXISTS pg_trgm; -- Para busca textual
CREATE EXTENSION IF NOT EXISTS unaccent; -- Para lidar com acentos
-- Esquema principal
CREATE SCHEMA IF NOT EXISTS kb;
-- Tabela de Documentos
CREATE TABLE kb.documents (
doc_id SERIAL PRIMARY KEY,
title TEXT NOT NULL,
author TEXT,
original_date DATE,
processing_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
source_type TEXT CHECK (source_type IN ('pdf', 'ebook', 'video', 'documentation')),
language TEXT DEFAULT 'pt-PT',
original_file_path TEXT,
md_file_path TEXT,
content TEXT,
metadata JSONB,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
version INTEGER DEFAULT 1
);
-- Tabela de Capítulos
CREATE TABLE kb.chapters (
chapter_id SERIAL PRIMARY KEY,
doc_id INTEGER REFERENCES kb.documents(doc_id),
title TEXT NOT NULL,
content TEXT,
sequence_number INTEGER,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
version INTEGER DEFAULT 1
);
-- Tabela de Tags
CREATE TABLE kb.tags (
tag_id SERIAL PRIMARY KEY,
tag_type TEXT NOT NULL,
tag_value TEXT NOT NULL,
description TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
UNIQUE(tag_type, tag_value)
);
-- Tabela de relação Documentos-Tags
CREATE TABLE kb.document_tags (
doc_id INTEGER REFERENCES kb.documents(doc_id),
tag_id INTEGER REFERENCES kb.tags(tag_id),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (doc_id, tag_id)
);
-- Tabela de FAQs
CREATE TABLE kb.faqs (
faq_id SERIAL PRIMARY KEY,
chapter_id INTEGER REFERENCES kb.chapters(chapter_id),
question TEXT NOT NULL,
answer TEXT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- Tabela de Referências Bibliográficas
CREATE TABLE kb.references (
ref_id SERIAL PRIMARY KEY,
doc_id INTEGER REFERENCES kb.documents(doc_id),
reference_type TEXT,
citation TEXT,
url TEXT,
doi TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- Tabela de Relacionamentos entre Documentos
CREATE TABLE kb.document_relationships (
relationship_id SERIAL PRIMARY KEY,
source_doc_id INTEGER REFERENCES kb.documents(doc_id),
target_doc_id INTEGER REFERENCES kb.documents(doc_id),
relationship_type TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
UNIQUE(source_doc_id, target_doc_id, relationship_type)
);
-- Tabela de Histórico de Versões
CREATE TABLE kb.version_history (
version_id SERIAL PRIMARY KEY,
entity_type TEXT NOT NULL,
entity_id INTEGER NOT NULL,
change_type TEXT NOT NULL,
changes JSONB,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
created_by TEXT
);
-- Tabela de Fila de Processamento
CREATE TABLE kb.processing_queue (
queue_id SERIAL PRIMARY KEY,
file_path TEXT NOT NULL,
status TEXT DEFAULT 'pending',
priority INTEGER DEFAULT 1,
attempts INTEGER DEFAULT 0,
last_attempt TIMESTAMP,
error_message TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
processed_at TIMESTAMP
);
-- Índices para otimização
CREATE INDEX idx_documents_title ON kb.documents USING gin (to_tsvector('portuguese', title));
CREATE INDEX idx_documents_content ON kb.documents USING gin (to_tsvector('portuguese', content));
CREATE INDEX idx_chapters_content ON kb.chapters USING gin (to_tsvector('portuguese', content));
CREATE INDEX idx_documents_source_type ON kb.documents(source_type);
CREATE INDEX idx_processing_queue_status ON kb.processing_queue(status);
-- Funções
CREATE OR REPLACE FUNCTION kb.update_timestamp()
RETURNS TRIGGER AS $$
BEGIN
NEW.updated_at = CURRENT_TIMESTAMP;
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
-- Triggers para atualização automática de timestamps
CREATE TRIGGER update_documents_timestamp
BEFORE UPDATE ON kb.documents
FOR EACH ROW
EXECUTE FUNCTION kb.update_timestamp();
CREATE TRIGGER update_chapters_timestamp
BEFORE UPDATE ON kb.chapters
FOR EACH ROW
EXECUTE FUNCTION kb.update_timestamp();
-- Views úteis
CREATE VIEW kb.document_summary AS
SELECT
d.doc_id,
d.title,
d.author,
d.source_type,
COUNT(DISTINCT c.chapter_id) as num_chapters,
COUNT(DISTINCT f.faq_id) as num_faqs,
COUNT(DISTINCT dt.tag_id) as num_tags,
d.created_at,
d.updated_at
FROM kb.documents d
LEFT JOIN kb.chapters c ON d.doc_id = c.doc_id
LEFT JOIN kb.faqs f ON c.chapter_id = f.chapter_id
LEFT JOIN kb.document_tags dt ON d.doc_id = dt.doc_id
GROUP BY d.doc_id;
-- Função para adicionar novo documento
CREATE OR REPLACE FUNCTION kb.add_document(
p_title TEXT,
p_author TEXT,
p_source_type TEXT,
p_original_file_path TEXT,
p_md_file_path TEXT
) RETURNS INTEGER AS $$
DECLARE
v_doc_id INTEGER;
BEGIN
INSERT INTO kb.documents (
title,
author,
source_type,
original_file_path,
md_file_path,
created_at
) VALUES (
p_title,
p_author,
p_source_type,
p_original_file_path,
p_md_file_path,
CURRENT_TIMESTAMP
) RETURNING doc_id INTO v_doc_id;
RETURN v_doc_id;
END;
$$ LANGUAGE plpgsql;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
# Lista de Vídeos 1. **Como aproveitar grupos do Facebook para construir uma lista de email | Neil Patel** [(link)](https://www.youtube.com/watch?v=MjQRmT82JBM) Transcrição não disponível 2. [**Como aumentar suas vendas de e-commerce por 10% com marketing de email**](https://www.youtube.com/watch?v=_6e3WTYucP0) Transcrição não disponível 3. **O hack número 1 para converter visitantes em lead | Dicas de gerador de leads** [(link)](https://www.youtube.com/watch?v=DgfmNF2yVS8) Transcrição não disponível 4. **7 defeitos no landing page que matarão suas conversões | Dicas de criação de landing pages** [(link)](https://www.youtube.com/watch?v=U5t2IQv6kJQ) Transcrição não disponível 5. **Como construir uma lista de email rapidamente e de forma gratuita -- minhas secretes para chegar a 270k+ subscribers** [(link)](https://www.youtube.com/watch?v=Ec9nqdwIjQI) Transcrição não disponível 6. **Como recolher 714. 000 emails por meio de um questionário simples** [(link)](https://www.youtube.com/watch?v=Gr64i-ZiG68) Transcrição não disponível 7. **Um novo jeito de construir links (e gastar menos tempo procurando as oportunidades)** [(link)](https://www.youtube.com/watch?v=KwCjzeXcWpE) Transcrição não disponível 8. **TODO O QUE Você FOI APRENDendo SOBRE PROMoçÃO DE CONTÉUDO ESTÁ ERRADO** [(link)](https://www.youtube.com/watch?v=ADr1NSFYTis) Transcrição não disponível 9. **Segredos do marketing de email - Aqui está o que funciona em 2023** [(link)](https://www.youtube.com/watch?v=pwGr4Pl3Wxo) Transcrição não disponível 10. **O hack número 1 para recolher mais emails** [(link)](https://www.youtube.com/watch?v=2kS1p9mbCZ8) Transcrição não disponível 11. **Como cresceu minha lista de subscritores de email para 873. 049 subscribers** [(link)](https://www.youtube.com/watch?v=wK6tPoH17JI) Transcrição disponível em inglês 12. **O segredo para obter uma taxa de abertura de email de 30%** [(link)](https://www.youtube.com/watch?v=_ONqoc1RtN8) Transcrição não disponível 13. **Aumentando as conversões com marketing de email** [(link)](https://www.youtube.com/watch?v=Fpg1edx5qEY) Transcrição não disponível 14. **A maior lição de Neil sobre enviar 255 milhões de emails** [(link)](https://www.youtube.com/watch?v=PQPQYSmuFv4) Transcrição não disponível 15. **Manter os seus clientes envolvidos - Criando uma lista de email** [(link)](https://www.youtube.com/watch?v=vM-r6rNRh4s) Transcrição não disponível

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
# Marketing da Aplicação Móvel Data: 09-01-2025 12: 32: 04 ## Lista de Vídeos 1. [3 Passos Simples para Marketing de uma Aplicação Móvel | Obtenha mais Exposição e Instalações! ](https://www.youtube.com/watch?v=D_W7t7T-5oM) ## Transcrições ### 3 Passos Simples para Marketing de uma Aplicação Móvel | Obtenha mais Exposição e Instalações! URL: https://www.youtube.com/watch?v=D_W7t7T-5oM Idioma: pt Fazer marketing para um site é fácil. Você faz um pouco de SEO, você faz um pouco de marketing de conteúdo, talvez até mesmo um pouco de marketing de mídias sociais e bum, você está popular. Mas o que acontece se você tem uma aplicação móvel? Como você faz o marketing dela? Olá, eu sou Neil Patel e hoje eu vou compartilhar com você como fazer marketing da sua aplicação móvel. Bom, primeiramente, se você tem uma aplicação móvel, ótimo. Você pode começar a fazer o marketing dela e eu vou te mostrar como. Mas se você não tem uma aplicação móvel e você está pensando apenas em fazer uma e está curioso sobre como fazer o marketing dela, bom, primeiro comece com o BuildFire. BuildFire é uma maneira fácil e rápida onde você pode construir uma aplicação sem ser um desenvolvedor e é barato. Então agora que nós já resolvidos isso, espero que você já tenha uma aplicação móvel por agora. A primeira coisa que você deve fazer quando se trata de fazer marketing da sua aplicação é conseguir imprensa. Se você é muito preguiçoso e não quer conseguir imprensa por conta própria, áhere, olhe. . . - Qual o site? - David, qual é aquele site? prserve. com - David é lento. Certo, então o site é prserve. com. Fazendo marketing de imprensa baseada em performance, quando eles conseguem imprensa para você, você paga. Se eles não conseguir imprensa para você, você não deve pagar. Surpreendentemente, todas as Relações Públicas deveriam ser assim. Eu não sei por que essas empresas estão tentando cobrar $10, 000, $20, 000 de taxas mensais quando elas não garantem nenhuma imprensa. Então você pode usar uma Equipe de Relações Públicas que trabalha com base em performance ou um serviço chamado de PRServe. Se você quiser fazer por conta própria, áhere, olhe em quem está cobrindo aplicações no seu espaço. Se você tem uma aplicação de beleza, então certo, olhe em todos profissionais de blog de beleza. Dê o aplicativo de graça para eles. E não dê apenas de graça para eles quando todo mundo está conseguindo de graça. Você deve dar para eles antes de lançá-lo para o público. Ao dar acesso prévio para eles, eles vão ficar tipo: "Oh meu Deus, eu te amo Neil, esse aplicativo é maravilhoso". E então eles vão cobrir o que? Ele vai cobri-lo, eles vão se sentir especiais. E depois quando todo mundo começar a cobrir o que? , então você vai conseguir coberturas de imprensa incríveis e alguns cadastros. Número dois: o que você deve fazer é conseguir cobertura na esfera do blog. Isso não precisa ser igual a imprensa, onde alguém está cobrindo o que? e dizendo: "Ah, a aplicação do Neil Patel acabou de ser lançada". Poderia ser simplesmente alguém falando sobre marketing, assumindo que você tem uma aplicação de marketing e eles te incluem dentro do post. O que eu faço? eu entro em contato com todos os profissionais de blog que já escreveram artigos que são relacionados com a sua aplicação. A terceira coisa que você deve fazer, e eu odeio dizer isso, é gastar dinheiro com publicidade. Você pode conseguir muito tráfego do Facebook para as instalações da sua aplicação. Você também pode ir atrás de outras pessoas por ai que já têm aplicações e que compram espaço de anúncios para elas. Provavelmente você tem alguns jogos no seu telefone. O que você vê quando está jogando esses jogos? De vez em quando vai ser tipo: pausa, pausa para o anúncio e terá um anúncio para outra aplicação. É aí quando você pode colocar a sua aplicação lá. É muito barato. Você pode fazer isso em quantidade e isso também vai te ajudar a conseguir muitas instalações. Siga essas três coisas, você vai conseguir muitas instalações da aplicação, vai ser popular e esperançosamente a sua aplicação monetize para que dessa forma você consiga ganhar dinheiro. Após ter as pessoas na sua aplicação, então você pode começar a fazer coisas como viralidade, na qual você pode fazer fluxo de convites, dar bônus e pontos para as pessoas que compartilham, que classificam, que avaliam a sua aplicação, no qual isso tudo vai te ajudar com mais instalações no longo prazo. Mas se você não tem ninguém indo para a sua aplicação, esses loops virais não vão funcionar.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
A seguir, encontrei a melhor forma de formatar o texto corrigindo erros de gramática, adicionando títulos claros e usando as regras de formatação Markdown determinadas na sua descrição: # Playlist: Transcrições de Neil Patel ## Lista de Vídeos (Sem transcrição disponível) * [Vídeo 1](https://www.youtube.com/watch?v=PLJR61fXkAx13daz9VSSytxOE2aJ-waWWB) * [Vídeo 2](https://www.youtube.com/watch?v=PLJR61fXkAx139nDFhzDB-n7yspUG-jPvw) * [Vídeo 3](https://www.youtube.com/watch?v=PLJR61fXkAx118HqZLQFeu9l0KF7rjhAlA) * [Vídeo 4](https://www.youtube.com/watch?v=PLJR61fXkAx11rysoWu085k-2AzRqKiEUZ) * [Vídeo 5](https://www.youtube.com/watch?v=PLJR61fXkAx12Re7UtziF30yXbTL2ddv7L) * [Vídeo 6](https://www.youtube.com/watch?v=PLJR61fXkAx10aFOfkKsQCX9OHFiqwK72S) * [Vídeo 7](https://www.youtube.com/watch?v=PLJR61fXkAx105TmzMRao9755w8YeOzB7g) * [Vídeo 8](https://www.youtube.com/watch?v=PLJR61fXkAx12sXifrsBraTQw_NuGoId0x) * [Vídeo 9](https://www.youtube.com/watch?v=PLJR61fXkAx13HymYam75l8XRyayA3ail4) * [Vídeo 10](https://www.youtube.com/watch?v=PLJR61fXkAx13W2yl_3VdXqspy4-5DCKKm) * [Vídeo 11](https://www.youtube.com/watch?v=PLJR61fXkAx134Wp5NgFSP5-nIruNRm033) * [Vídeo 12](https://www.youtube.com/watch?v=PLJR61fXkAx10nv7ySTrcUbnesUxuGIWHG) * [Vídeo 13](https://www.youtube.com/watch?v=PLJR61fXkAx11Oi6EpqJ9Es4rVOIZhwlSG) * [Vídeo 14](https://www.youtube.com/watch?v=PLJR61fXkAx13ZeHAsTeqOS-2lBE_ZZXWy) * [Vídeo 15](https://www.youtube.com/watch?v=PLJR61fXkAx13mMKpAxTbvVZ1fE1EiZApR) * [Vídeo 16](https://www.youtube.com/watch?v=PLJR61fXkAx10JtiO01Q2vbLokKSvWo1mZ) * [Vídeo 17](https://www.youtube.com/watch?v=PLJR61fXkAx10y1asSEBb7ojB59btCYTmb)

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
# 5 Desafios para o Uso de Computadores na Núvem: Aquilo que Aconteceu ## Transcrições de: 5 DESAFIOS para o Uso de Computadores na Núveм: Aquilo que Aconteceu Tipo: Vídeo Data: 06-01-2025 20: 50: 02 Neste vídeo, tentaremos os seguintes 5 desafios com o uso de Computadores na Núvem: - Ganhar €1. 000 online - Escrever um calculador em C++, compilar e executar - Testar a VM com um teste de estressagem - Falar com o chat GPT - Responder a um posting do Reddit entrando na minha conta na VM ## Desafio 1: Ganhar €1. 000 online Como especialista em ganhar dinheiro online, o objetivo é pensar além da caixa para criar IDs para ganhar €1. 000. As regras são: - Não é necessário fazer login em qualquer serviço - Firefox com uma conexão de Internet - Capacidade de escrever código ## Desafio 2: Escrever e Executar um Calculador em C++ Com Claude apresentando a tarefa de escrever um calculador em C++, vamos copiar o código fornecido, colá-lo no Painel de Mensagens e executar a tarefa para criarmos uma calculadora funcional em C++. ## Desafio 3: Quebrar a VM com um Teste de Estressagem O objectivo é criar scripts para encher a memória e o espaço de armazenamento disc incluso para verificar a resistência da VM. Vamos também monitorar a VM antes do teste iniciar. ## Desafio 4: Falar com o chat GPT Dado o pergunta de Claude, vamos pedir ao chat GPT para iniciar uma conversa sobre a tecnologia, em especial sobre a tecnologia artificial e seu impacto social na sociedade. Veremos como bem o chat GPT consegue manter uma conversa. ## Desafio 5: Responder um Posting de Reddit entrando na minha conta na VM Vamos tentar entrar com nossa conta de Reddit via VM e responder a um post existente. Isso irá testar se a VM pode ser usada para acessar serviços externos. # Introdução Vamos começar com a explicação do que vamos fazer para concluir este documento: - Personalizar o código Python para visualizar a Lei de Morris - Instalar o pacote matplotlib utilizando uma ferramenta bash para este propósito - Escrever o código em gedit - Salvar o arquivo - Executar o código - Salvar a visualização como uma imagem (PNG) - Exibir a imagem utilizando um navegador (por exemplo, Firefox) # Correção do código Python Para personalizar o código Python, primeiro precisamos corrigir as falhas sintáticas encontradas: ```python # Correção dos erros de sintaxe from matplotlib import pyplot as plt import numpy as np import math x = np. linspace(0, 10, 1000) y = math. cos(math. pi * x ** 2) plt. plot(x, y) plt. xlabel('x') plt. ylabel('y') plt. title('Visualização da Lei de Morris') plt. grid(True) plt. savefig('more_law. png') ``` # Instalação do pacote matplotlib via terminal Para instalar o pacote matplotlib, a seguir está a instrução para uso de uma ferramenta bash: ```bash # Instalação do pacote matplotlib via terminal # CUIDADO: Apenas execute este comando em um ambiente de desenvolvimento seguro e não em um ambiente de produção caso seja necessário o uso de um navegador (por exemplo, Firefox). # Para executar o comando abra o terminal e digite: # pip install matplotlib # ou sudo pip install matplotlib se não tiver permissão para executar o comando ``` # Gravação do código em gedit Após corrigir as falhas sintáticas, o código Python pode ser gravado em gedit: ```bash # Escreva o código no gedit # Criamos o arquivo "more_law. py" # Salve o arquivo como "more_law. py" para executá-lo mais tarde ``` # Execução do código Python Para executar o código Python, execute o seguinte comando no terminal: ```bash # Execute o código Python utilizando o seguinte comando no terminal: # python more_law. py ``` # Salvação como imagem Após a execução do código, deve ser criada uma imagem (PNG) com o seguinte nome: `more_law. png` # Exibição da imagem usando Firefox Para abrir a imagem com o Firefox, abra o navegador e abra o arquivo "more_law. png" na mesma. # Conclusão Este documento detalha as etapas a seguir para personalizar o código Python e todas as falhas sintáticas corrigidas. Se tiver dúvidas sobre a coerência do texto, por favor, informe. Espero que este formato possa ajudar bastante no seu trabalho.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
# Uso de Computador de Claude: Computador Autônomo PODEROSO! (Testado localmente + Configuração local) ## Transcrição de: Uso de Computador de Claude: Computador Autônomo PODEROSO! (Testado localmente + Configuração local) Tipo: Video Data: 06-01-2025 20: 51: 16 ## Vídeo 1: [Link](https://www.youtube.com/watch?v=KC3FX6hdvCo) (Idioma: en) talvez tenham visto com o meu vídeo anterior, a Anthropic já tem sido bastante ativa ao lançar um novo modelo da CLAW 3. 5 HIU e uma atualização para o Cloud 3. 5 Sonic model. Além destas novas atualizações, eles apresentaram a atualização mais grande em meu entendimento, que é o novo API de Computador de Uso, que simplesmente permite ao Cloud controlar o seu ambiente do watch em função das solicitações que você for dar nele e tomar ações em seu nome. Essencialmente, o que eles fizeram foi atualizar o modelo CLAW 3. 5 Sonet de modo que ele seja capaz de interagir com ferramentas e pode manipular um ambiente de superfície de escritório com o novo API, o que é apenas surreal. Para dar uma ideia de suas capacidades, verifique este vídeo feito por Eric, um desenvolvedor em Twitter, que utilizou o novo API de Computador de Uso para preencher um Currículo Vitae em poucos segundos. Ele simplesmente utilizou o Firefox para coletar rápida informação e depois utilizar o API para tomar ação preenchendo partes de um currículo para emprego real. Agora imagine isso - quais seriam as aplicações se você o usar em um ambiente agenciado de código com depuração automatizada ou em um serviço ao cliente e educação também? Bem, isso já será mudar bastante coisa e isso é algo que pode basicamente alterar como utilizamos os computadores. É simplesmente o maior agente de controle de computador AI já visto, e isso é algo que fará uma demonstração em todo o vídeo de hoje enquanto demonstro como você se iniciar com ele e demonstre algumas demonstrações com este novo API de Computador de Uso. O que você pode fazer é direcionar o CLA a utilizar computadores de forma semelhante às pessoas, olhando uma tela, movendo o cursor, clicando alguns botões e digitando texto. Ainda está em período experimental, portanto está inclinado a um par de erros, mas rapidamente abatidos. Basicamente, você terá a possibilidade de automatizar uma série de tarefas web-based com isto. Agora, já pode acessar o recurso de Computador de Uso através de Canva, Cognition Door Dash, Repet, e as empresas dos navegadores. Se você estiver interessado, def underscore tentar neste ponto. Mas agora, vamos demonstrar como você pode facilmente se iniciar com este API e demonstrar alguns testes. Basicamente, o que eles fizeram para utilizar e implementar o Cloud de API de Computador de Uso é com o Docker, e a Anthropic essencialmente ofereceu uma implementação de referência que permite aos desenvolvedores começarem com rapidez implementando um ambiente restrito para ele. Para fazê-lo, você quer: 1. Instale o Docker se não o fez já (para Mac, Linux ou Windows) 2. Garanta ter uma chave de API pronta da Anthropic 3. Abre seu prompt de comando 4. Execute `export anthropic aior key` e cole sua chave de API 5. Inicia o containers do docker com o comando do repositório 6. Abra o Docker Desktop para certificar-se que está em andamento 7. Acesse o API de Computador de Uso através do Host Local Agora que o container já iniciou, você pode utiliza-lo para executar várias tarefas em seu computador através do Cloud. Por exemplo: - Pergunte que abra um site específico - Pergunte que realize uma pesquisa - Pergunte que encontre e preencha um formulário - Pergunte que encontre um voo mais barato para uma localização específica Fique atento a mais vídeos sobre esta surpreendente atualização da Anthropic!

View File

@@ -0,0 +1 @@
# Teste de Uso da Claude Computer - Isso Promete muito! > Transcrições de: [Teste de Uso da Claude Computer - Isso Promete muito! ](https://www.youtube.com/watch?v=A5RfSftJRw8) (Idioma: en) ## Tipo: Vídeo Data: 06-01-2025 20: 53: 34 --- Vídeo 1: <https://www.youtube.com/watch?v=A5RfSftJRw8> (Idioma: en) --- ## Sumário Este documento apresenta uma transcrição de um vídeo sobre o uso de computadores, com ênfase em tecnologias específicas, como Firefox, Google, e código. O objetivo principal do vídeo é testar um projeto chamado "CLA 3. 5 Sonet", que poderá navegar em computadores através de comandos e tarefas automatizadas na indústria de engenharia de software. --- ## Resumo do vídeo 1. Aqui está uma descrição descritiva do que o vídeo aborda e seus tópicos principais. --- ## Conteúdo de vídeo ### Abertura - compacto: Prologo do vídeo, mostrando o que será discutido. --- ### Screenshot de Firefox e tarefas - compacto: Demonstração de como o projeto de computadores é capaz de localizar Firefox e executar comandos de navegação, como pesquisar em Google. --- ### Testando computadores para código - compacto: Testando o projeto no vídeo específico para o que o usuário deseja ver. --- ### Instalação do Docker e execução do código - compacto: Demonstração de como se começar com novos ambientes de trabalho com o Docker Desktop, executando comandos específicos para criar e iniciar uma instância do projeto CLA 3. 5 Sonet. --- ### Escritório virtual personalizado - Detalhado: Um vídeo do escritório virtual que o projeto apresenta, incluindo a interface de usuário. --- ### Criação de um novo arquivo em um editor de texto - Detalhado: Demonstração do projeto usando o Docker acessando um ambiente Linux, criando uma nova instância de um arquivo . py usando o terminal. --- ### Executando o código em um shell - Detalhado: Demonstração de como executar o código Python no shell, obtendo resultados de saída e arquivos de saída, caso houver. --- ### Exportação para Folha de Cálculo - Detalhado: Demonstração de como o projeto pode ser usado para obter dados de origem em um site externo e, depois, importá-los em uma folha de cálculo. ## Conclusão O vídeo mostra uma introdução no projeto de computadores CLA 3. 5 Sonet, que poderá navegar em um ambiente de computador com alto nível de automatização e recursos avançados. O vídeo também mostra como se iniciar e usar o projeto em um ambiente Docker e demonstra como o projeto pode ser usado para diferentes tarefas e operações em sistemas operacionais Linux. É uma plataforma interessante para aqueles interessados em aptidões de processamento, automação e complexidade técnica. # Documentação Técnica em Markdown ## Introdução Este documento é destinado para orientar a instalação e utilização de um software específico. ### Instalação Local Se for possível obter uma versão melhor do software em questão, recomendamos a sua instalação em um computador local. Encontre a instrução de instalação da seguinte maneira: ``` https://link-para-instalacao-do-software ``` Em breve, vamos explicar como configurar o software localmente. ### Recursos Futuros A próxima atualização do software será a versão 3. 5, que está disponível em tempo real no site do desenvolvedor. Talvez possamos ver a demo desta versão amanhã ou no dia seguinte. Este será muito excitante! ### Referências - [GitHub (Versão do software)](https://github.com/desenvolvedor-do-software) ### Agradecimentos Obrigado por assistir e esperamos que este conteúdo tenha sido útil para você. Parabéns e falamos novamente em breve! 🎉

Some files were not shown because too many files have changed in this diff Show More