Skip to content

实例配置

实例 (Instance) 和工作者 (Worker) 是 WebAI2API 的核心配置概念。

概念说明

Instance (浏览器实例)

一个 Instance 代表一个独立的浏览器进程,具有:

  • 独立的用户数据目录
  • 独立的 Cookie 和登录状态
  • 可选的专属代理配置

Worker (工作者)

Worker 是 Instance 内的一个标签页,负责与特定平台交互。同一 Instance 下的多个 Worker:

  • 共享浏览器数据和登录状态
  • 共享代理配置
  • 可以是不同的适配器类型

配置结构

yaml
backend:
  pool:
    instances:
      - name: "browser_default"    # 实例 ID
        userDataMark: "01"         # 数据目录标识 (可选)
        proxy:                      # 实例级代理 (可选)
          enable: true
          type: socks5
          host: 127.0.0.1
          port: 1080
        workers:                    # Worker 列表
          - name: "worker1"
            type: lmarena
          - name: "worker2"
            type: zai_is

Instance 配置项

配置项类型必填说明
namestring实例唯一标识,用于日志和 Cookie 获取
userDataMarkstring数据目录标识,留空使用默认目录
proxyobject实例级代理配置,参见代理设置
workersarrayWorker 配置列表

数据目录

  • 默认位置: data/camoufoxUserData
  • 设置 userDataMark 后: data/camoufoxUserData_{mark}

Worker 配置项

配置项类型必填说明
namestringWorker 唯一标识(全局唯一)
typestring适配器类型
mergeTypesarray聚合模式的适配器列表 (type=merge 时必填)
mergeMonitorstring空闲时监控的后端 (可选)

适配器类型

类型说明
lmarenaLMArena 图片生成
lmarena_textLMArena 文本生成
gemini_bizGemini Business 图片生成
gemini_biz_textGemini Business 文本生成
geminiGoogle Gemini
zai_iszAI 图片生成
nanobananafree_aiNano Banana Free
merge聚合模式(单标签多后端)

聚合模式 (Merge)

聚合模式允许在单个标签页中支持多个后端,实现故障转移:

yaml
workers:
  - name: "merged_worker"
    type: merge
    mergeTypes: [gemini_biz, lmarena, zai_is]
    mergeMonitor: gemini_biz  # 空闲时挂机监控的后端

聚合模式优势

  • 节省浏览器资源
  • 自动故障转移
  • 统一登录状态

配置示例

单实例单 Worker

yaml
instances:
  - name: "default"
    workers:
      - name: "worker1"
        type: lmarena

多实例隔离

yaml
instances:
  # 实例 1: 美国代理
  - name: "browser_us"
    userDataMark: "us"
    proxy:
      enable: true
      type: socks5
      host: us-proxy.example.com
      port: 1080
    workers:
      - name: "us_worker"
        type: lmarena

  # 实例 2: 日本代理
  - name: "browser_jp"
    userDataMark: "jp"
    proxy:
      enable: true
      type: socks5
      host: jp-proxy.example.com
      port: 1080
    workers:
      - name: "jp_worker"
        type: lmarena

聚合模式

yaml
instances:
  - name: "browser_merged"
    workers:
      - name: "all_in_one"
        type: merge
        mergeTypes: [gemini_biz, lmarena, zai_is]
        mergeMonitor: gemini_biz