AI个人学习
和实操指南
TRAE

Suna:集成浏览器操作与数据分析的智能代理

综合介绍

Suna 是 Kortix AI 开发的一个开源通用 AI 代理,托管在 GitHub 上,基于 Apache 2.0 许可证,允许用户免费下载、修改和自托管。它通过自然语言对话帮助用户完成复杂任务,如网页浏览、文件管理、数据抓取和网站部署。Suna 采用模块化架构,包括 Python/FastAPI 后端、Next.js/React 前端、Supabase 数据库和 Daytona 沙盒,确保安全性和灵活性。它支持与 OpenAI、Anthropic 等大语言模型集成,并通过 Tavily 和 RapidAPI 提供实时搜索和数据服务。

Suna:集成浏览器操作与数据分析的智能代理-1


 

功能列表

  • 浏览器自动化 :自动导航网页、填写表单、提取数据,支持价格监控和内容抓取。
  • 文件管理 :创建、编辑、删除文件,支持批量处理和格式转换(如 CSV 转 JSON)。
  • 网页抓取与搜索 :通过 Tavily 实时搜索,抓取网页内容,生成结构化报告。
  • 命令行操作 :在 Daytona 沙盒中执行 Linux 命令,处理系统任务。
  • 网站部署 :将静态网站部署到 Cloudflare Pages,生成公开访问链接。
  • API 集成 :连接 LinkedIn、Zillow 等服务,获取专业数据,如公司信息或房产数据。
  • 数据分析 :处理 JSON、CSV、XML 数据,生成可视化图表或报告。
  • 任务规划 :通过 todo.md 系统分解复杂任务,自动执行并跟踪进度。

 

使用帮助

安装流程

Suna 支持自托管,适合有 Python 和 Node.js 开发经验的用户。以下是详细安装步骤:

  1. 准备环境 :
    • 安装 Python 3.11+、Node.js 20.x、Git。
    • 配置 Redis(推荐 Upstash 或本地安装)。
    • 创建 Supabase 项目,获取 API URL、匿名密钥和服务角色密钥。
    • 注册 Daytona 账户,配置 adamcohenhillel/kortix-suna:0.0.20 镜像。
    • 获取 OpenAI 或 Anthropic API 密钥。
    • (可选)获取 Tavily 和 RapidAPI 密钥,增强搜索和数据功能。
  2. 克隆代码库 :
git clone https://github.com/kortix-ai/suna.git
cd suna
  1. 配置后端环境 :
    • 进入 backend 目录,复制 .env.example 为 .env
      cd backend
      cp .env.example .env
      
    • 编辑 .env,填写以下内容:
      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
      
  2. 配置 Supabase 数据库 :
    • 安装 Supabase CLI:
      npm install -g @supabase/supabase
      
    • 登录并链接项目:
      supabase login
      supabase link --project-ref your_project_reference_id
      supabase db push
      
    • 在 Supabase 控制台的 Project Settings > Data API 中,确保 “basejump” 出现在 Exposed Schema。
  3. 配置前端环境 :
    • 进入 frontend 目录,复制 .env.example 为 .env.local
      cd ../frontend
      cp .env.example .env.local
      
    • 编辑 .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"
      
  4. 安装依赖 :
    • 前端:
      cd frontend
      npm install
      
    • 后端:
      cd ../backend
      pip install -r requirements.txt
      
  5. 启动服务 :
    • 启动后端:
      cd backend
      python api.py
      
    • 启动前端:
      cd frontend
      npm run dev
      
    • 打开浏览器,访问 http://localhost:3000,注册账户即可使用。
  6. (可选)云部署 :
    • 通过 suna.so 使用 Kortix 提供的云服务,免去本地配置。

主要功能操作

浏览器自动化

Suna 使用 Chromium 浏览器执行网页操作。例如,输入“从亚马逊提取 iPhone 14 价格”:

  • Suna 打开亚马逊,搜索 iPhone 14。
  • 定位价格元素,提取数据。
  • 返回结果或保存为文件。
    操作步骤 :
  1. 在聊天界面输入指令,如“提取某网站价格”。
  2. Suna 显示操作进度,返回结果。
  3. 可导出数据为 CSV 或 JSON。

文件管理

Suna 支持文件创建和编辑。例如,“创建 report.txt,写入销售数据”:

  • Suna 生成文件,写入指定内容。
  • 支持批量处理,如转换文件格式。
    操作步骤 :
  1. 输入指令,指定文件名和内容。
  2. Suna 返回文件路径或内容预览。
  3. 可继续操作,如“将文件转为 PDF”。

网页抓取与搜索

Suna 集成 Tavily 提供实时搜索。例如,“分析德国汽车市场”:

  • Suna 搜索相关网页,提取数据。
  • 清洗数据,生成报告。
    操作步骤 :
  1. 输入分析主题。
  2. Suna 规划抓取流程,显示结果。
  3. 可保存为 CSV、JSON 或 PDF。

命令行操作

Suna 在 Daytona 沙盒中运行 Linux 命令。例如,“列出目录文件”:

  • Suna 执行 ls,返回结果。
  • 支持复杂命令,如 grep 或 sed
    操作步骤 :
  1. 输入命令或任务描述。
  2. Suna 返回输出或处理结果。

网站部署

Suna 支持静态网站部署。例如,“部署我的 HTML 项目”:

  • Suna 验证文件,上传至 Cloudflare Pages。
  • 返回公开 URL。
    操作步骤 :
  1. 输入项目路径和部署指令。
  2. Suna 确认后执行部署。
  3. 返回访问链接。

特色功能操作

任务规划

Suna 使用 todo.md 系统分解任务。例如,“规划伦敦 10 天行程”:

  • Suna 创建任务清单(搜索航班、酒店、活动)。
  • 逐项执行,生成行程文档。
    操作步骤 :
  1. 输入任务描述。
  2. Suna 显示 todo.md 计划。
  3. 用户可调整或确认执行。

API 集成

Suna 支持 LinkedIn、Zillow 等 API。例如,“抓取巴塞罗那公司数据”:

  • Suna 调用 LinkedIn API,提取公司信息。
  • 生成销售线索列表。
    操作步骤 :
  1. 输入数据需求。
  2. Suna 配置 API,显示结果。
  3. 可导出为 Excel。

 

应用场景

  1. 市场研究
    Suna 可抓取行业数据,生成报告。例如,分析英国医疗市场,Suna 从 Google 和 Crunchbase 提取数据,整理主要玩家和市场规模。
  2. 招聘支持
    Suna 可从 LinkedIn 搜索候选人。例如,查找慕尼黑的初级软件工程师,筛选学历和经验,输出候选人列表。
  3. 内容生成
    Suna 可生成报告或行程。例如,规划巴黎到加州的 7 天公司旅行,搜索航班和活动,输出详细计划。
  4. B2B 销售
    Suna 可抓取潜在客户数据。例如,查找巴塞罗那 10-50 人公司,生成联系方式和个性化邮件模板。
  5. SEO 优化
    Suna 可分析网站 SEO,查找关键词排名和遗漏主题。例如,分析 suna.so,生成优化建议报告。

 

QA

  1. Suna 是否适合非技术用户?
    非技术用户可通过 suna.so 使用云服务,无需配置。自托管需要技术背景。
  2. Suna 是否完全免费?
    Suna 开源免费,但云部署或 API 调用(如 Tavily、RapidAPI)可能产生费用。
  3. Suna 支持哪些模型?
    Suna 通过 LiteLLM 支持 OpenAI、Anthropic 等模型,推荐使用 Claude 或 GPT-4o。
  4. 如何确保 Suna 安全?
    Suna 使用 Daytona 沙盒隔离操作,保护系统安全。用户需妥善管理 API 密钥。
未经允许不得转载:首席AI分享圈 » Suna:集成浏览器操作与数据分析的智能代理
zh_CN简体中文