Introdução geral
O Suna é um agente de IA de uso geral de código aberto desenvolvido pela Kortix AI, hospedado no GitHub, com base na licença Apache 2.0, permitindo que os usuários façam download, modifiquem e hospedem o agente gratuitamente. Ele ajuda os usuários em tarefas complexas, como navegação na Web, gerenciamento de arquivos, rastreamento de dados e implantação de sites por meio de diálogo em linguagem natural. O Suna foi desenvolvido com base em uma arquitetura modular que inclui um backend Python/FastAPI, um frontend Next.js/React, um banco de dados Supabase e um sandbox Daytona para garantir segurança e flexibilidade. Ele oferece suporte à integração com grandes modelos de linguagem, como OpenAI, Anthropic e outros, com Tavily e RapidAPI fornecem serviços de pesquisa e dados em tempo real.
Lista de funções
- Automação do navegador Navegação automática em páginas da Web, preenchimento de formulários, extração de dados, suporte ao monitoramento de preços e rastreamento de conteúdo.
- Gerenciamento de documentos Arquivos: crie, edite e exclua arquivos, ofereça suporte ao processamento em lote e à conversão de formatos (por exemplo, CSV para JSON).
- Rastreamento e pesquisa na Web Rastreamento de conteúdo da Web e geração de relatórios estruturados por meio da pesquisa em tempo real da Tavily.
- operação de linha de comando Executa comandos do Linux e lida com tarefas do sistema na área restrita do Daytona.
- Implementação do site Implementação de sites estáticos no Cloudflare Pages para gerar links acessíveis ao público.
- Integração de API Conecte-se a serviços como LinkedIn, Zillow, etc. para obter dados profissionais, como informações sobre a empresa ou dados sobre a propriedade.
- análise de dados Processe dados JSON, CSV e XML para gerar gráficos ou relatórios visuais.
- Planejamento da missão : através de
todo.md
O sistema divide tarefas complexas, automatiza a execução e acompanha o progresso.
Usando a Ajuda
Processo de instalação
O Suna é compatível com auto-hospedagem e é adequado para usuários com experiência em desenvolvimento em Python e Node.js. Veja a seguir as etapas detalhadas de instalação:
- Preparação do ambiente ::
- Instale o Python 3.11+, o Node.js 20.x e o Git.
- Configure o Redis (Upstash ou instalação local recomendada).
- Crie um projeto do Supabase e obtenha o URL da API, a chave anônima e a chave da função de serviço.
- Registre-se para obter uma conta Daytona, configure
adamcohenhillel/kortix-suna:0.0.20
Espelhamento. - Obtenha o OpenAI ou Antrópica Chave de API.
- (Opcional) Obtenha as chaves Tavily e RapidAPI para aprimorar os recursos de pesquisa e dados.
- Clonagem da base de código ::
git clone https://github.com/kortix-ai/suna.git
cd suna
- Configuração do ambiente de back-end ::
- entrar em
backend
copie o diretório.env.example
por causa de.env
::cd backend cp .env.example .env
- compilador
.env
Preencha o seguinte:NEXT_PUBLIC_URL="http://localhost:3000" SUPABASE_URL=your_supabase_url SUPABASE_ANON_KEY=your_supabase_anon_key SUPABASE_SERVICE_ROLE_KEY=your_supabase_service_role_key REDIS_HOST=your_redis_host REDIS_PORT=6379 REDIS_PASSWORD=your_redis_password REDIS_SSL=True DAYTONA_API_KEY=your_daytona_api_key DAYTONA_SERVER_URL="https://app.daytona.io/api" DAYTONA_TARGET="us" ANTHROPIC_API_KEY=your_anthropic_api_key MODEL_TO_USE="anthropic/claude-3-7-sonnet-latest" TAVILY_API_KEY=your_tavily_api_key RAPID_API_KEY=your_rapid_api_key
- entrar em
- Configuração do banco de dados do Supabase ::
- Instale o Supabase CLI:
npm install -g @supabase/supabase
- Faça login e vincule o projeto:
supabase login supabase link --project-ref your_project_reference_id supabase db push
- Em Configurações do projeto > API de dados no console do Supabase, verifique se "basejump" aparece no esquema exposto.
- Instale o Supabase CLI:
- Configuração do ambiente de front-end ::
- entrar em
frontend
copie o diretório.env.example
por causa de.env.local
::cd ../frontend cp .env.example .env.local
- compilador
.env.local
::NEXT_PUBLIC_SUPABASE_URL=your_supabase_url NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key NEXT_PUBLIC_BACKEND_URL="http://localhost:8000/api" NEXT_PUBLIC_URL="http://localhost:3000"
- entrar em
- Instalação de dependências ::
- Front-end:
cd frontend npm install
- Extremidade traseira:
cd ../backend pip install -r requirements.txt
- Front-end:
- Início dos serviços ::
- Inicie o back-end:
cd backend python api.py
- Inicie o front end:
cd frontend npm run dev
- Abra seu navegador e acesse
http://localhost:3000
Se quiser usá-lo, é preciso registrar uma conta e usá-lo.
- Inicie o back-end:
- (Opcional) Implantação na nuvem ::
- Use os serviços de nuvem fornecidos pela Kortix via suna.so, eliminando a necessidade de configuração local.
Funções principais
Automação do navegador
O Suna usa o navegador Chromium para executar ações na Web. Por exemplo, digite "Extrair o preço do iPhone 14 da Amazon":
- A Suna abre a Amazon e procura o iPhone 14.
- Localize o elemento de preço e extraia os dados.
- Retorna o resultado ou o salva como um arquivo.
procedimento ::
- Digite um comando na tela de bate-papo, como "Extrair preços de um site".
- Suna Exibe o andamento da operação e retorna o resultado.
- Os dados podem ser exportados como CSV ou JSON.
Gerenciamento de documentos
O Suna suporta a criação e a edição de arquivos. Por exemplo, "Create report.txt to write sales data" (Criar relatório.txt para gravar dados de vendas):
- O Suna gera um arquivo e grava o conteúdo especificado.
- Oferece suporte ao processamento em lote, como a conversão de formatos de arquivo.
procedimento ::
- Digite um comando que especifique o nome e o conteúdo do arquivo.
- Suna Retorna uma visualização do caminho ou do conteúdo do arquivo.
- Você pode continuar com operações como "Convert file to PDF" (Converter arquivo em PDF).
Rastreamento e pesquisa na Web
A Suna se integra à Tavily para fornecer pesquisas em tempo real. Por exemplo, "Analyse the German car market" (Analisar o mercado de carros alemão):
- A Suna pesquisa páginas da Web relevantes e extrai dados.
- Limpeza de dados e geração de relatórios.
procedimento ::
- Digite o assunto da análise.
- A Suna planeja o processo de captura e exibe os resultados.
- Pode ser salvo como CSV, JSON ou PDF.
operação de linha de comando
O Suna executa comandos do Linux na área restrita do Daytona. Por exemplo, "list catalogue files" (listar arquivos do catálogo):
- Implementação da Suna
ls
, retorna o resultado. - Suporte a comandos complexos, como
grep
talvezsed
.
procedimento ::
- Digite uma descrição de comando ou tarefa.
- A Suna retorna a saída ou os resultados do processamento.
Implementação do site
A Suna oferece suporte à implantação de sites estáticos. Por exemplo, "Deploy my HTML project" (Implantar meu projeto HTML):
- Arquivo de validação da Suna, carregado no Cloudflare Pages.
- Retorna a URL pública.
procedimento ::
- Insira o caminho do projeto e as instruções de implantação.
- A Suna confirma e executa a implantação.
- Retornar ao link de acesso.
Operação da função em destaque
Planejamento da missão
Uso da Suna todo.md
Divida sistematicamente as tarefas. Por exemplo, "Planeje um itinerário de 10 dias para Londres":
- O Suna cria listas de tarefas (busca de voos, hotéis, eventos).
- Executar item por item e gerar arquivos de viagem.
procedimento ::
- Digite uma descrição da tarefa.
- Shows da Suna
todo.md
Planejar. - O usuário pode ajustar ou confirmar a implementação.
Integração de API
A Suna oferece suporte a APIs para LinkedIn, Zillow, etc., por exemplo, "Grab Barcelona company data":
- A Suna chama a API do LinkedIn para extrair informações da empresa.
- Gerar uma lista de leads de vendas.
procedimento ::
- Insira os requisitos de dados.
- A Suna configura a API e exibe os resultados.
- Pode ser exportado para o Excel.
cenário do aplicativo
- Pesquisa de mercado
A Suna rastreia dados do setor para gerar relatórios. Por exemplo, para analisar o mercado de saúde do Reino Unido, a Suna extrai dados do Google e do Crunchbase para reunir os principais participantes e o tamanho do mercado. - Suporte ao recrutamento
A Suna pode pesquisar candidatos no LinkedIn. Por exemplo, encontrar engenheiros de software juniores em Munique, filtrar por formação e experiência e gerar uma lista de candidatos. - Geração de conteúdo
A Suna gera relatórios ou itinerários. Por exemplo, planeje uma viagem corporativa de 7 dias de Paris à Califórnia, pesquise voos e atividades e produza um programa detalhado. - Vendas B2B
A Suna captura dados sobre clientes em potencial. Por exemplo, encontre empresas com 10 a 50 pessoas em Barcelona e gere informações de contato e modelos de e-mail personalizados. - Otimização de SEO
A Suna analisa o SEO do site para encontrar classificações de palavras-chave e tópicos ausentes. Por exemplo, ele analisa o site suna.so e gera relatórios com recomendações de otimização.
QA
- A Suna é adequada para usuários não técnicos?
Usuários não técnicos podem usar o serviço de nuvem via suna.so sem configuração. A auto-hospedagem requer um conhecimento técnico. - A Suna é totalmente gratuita?
O Suna é gratuito para código aberto, mas as implantações na nuvem ou as chamadas de API (por exemplo, Tavily, RapidAPI) podem incorrer em uma taxa. - Quais modelos são compatíveis com a Suna?
A Suna é compatível com OpenAI, Anthropic e outros modelos por meio do LiteLLM, e é recomendada. Claude ou GPT-4o. - Como faço para proteger a Suna?
A Suna usa o Daytona Sandbox para isolar as operações e proteger o sistema. Os usuários precisam gerenciar as chaves de API adequadamente.