TransBridge 配置指南 ⚙️

April 23, 2025 · View on GitHub

目录

配置文件概述

TransBridge 使用 YAML 格式的配置文件。默认配置文件名为 config.yml,您也可以通过命令行参数指定其他配置文件:

./transbridge -config custom_config.yml

服务器配置

服务器配置部分控制 TransBridge 的基本运行参数。

server:
  port: 8080           # 服务监听端口
  host: "0.0.0.0"      # 服务监听地址,默认所有地址

提供商配置

提供商配置是最核心的部分,支持配置多个翻译服务提供商。

OpenAI 配置示例

providers:
  - provider: "openai"
    api_url: "https://api.openai.com/v1/chat/completions"  # API 地址
    api_key: "your-api-key"                                # API 密钥
    timeout: 30                                            # 请求超时时间(秒)
    is_default: true                                       # 是否为默认提供商
    models:
      - name: "gpt-3.5-turbo"                             # 模型名称
        weight: 10                                         # 负载均衡权重
        max_tokens: 2000                                   # 最大 token 数
        temperature: 0.3                                   # 温度参数

ChatGLM 配置示例

providers:
  - provider: "chatglm"
    api_url: "http://localhost:8000/v1/chat/completions"
    timeout: 30
    is_default: false
    models:
      - name: "chatglm3-6b"
        weight: 5
        max_tokens: 2000
        temperature: 0.3

Ollama 配置示例

providers:
  - provider: "ollama"
    api_url: "http://localhost:11434/api/chat"
    timeout: 30
    is_default: false
    models:
      - name: "llama2"
        weight: 5
        max_tokens: 2000
        temperature: 0.3

提供商配置参数说明

参数说明默认值是否必填
provider提供商类型-
api_urlAPI 接口地址-
api_keyAPI 密钥-部分必填
timeout请求超时时间(秒)30
is_default是否为默认提供商false

模型配置参数说明

参数说明默认值是否必填
name模型名称-
weight负载均衡权重1
max_tokens最大生成 token 数2000
temperature采样温度0.3

缓存配置

缓存配置支持内存缓存和 Redis 缓存两种方式,可以同时启用。

内存缓存配置

cache:
  enabled: true                # 是否启用缓存
  types: ["memory"]           # 缓存类型:memory 或 redis
  memory:
    ttl:
      value: "1h"            # 缓存过期时间(支持:30s, 5m, 2h, 1d, 1w, permanent)
    max_size: 10000          # 最大缓存条目数

Redis 缓存配置

cache:
  enabled: true
  types: ["redis"]
  redis:
    host: "localhost"         # Redis 服务器地址
    port: 6379               # Redis 端口
    password: ""             # Redis 密码
    db: 0                    # Redis 数据库编号
    ttl:
      value: "24h"          # 缓存过期时间

缓存配置参数说明

参数说明默认值是否必填
enabled是否启用缓存false
types缓存类型列表[]
ttl.value缓存过期时间"1h"
max_size最大缓存条目数10000

types 可以取值 ["memory"] ["redis"] 和["memory", "redis"]

认证配置

配置 API 访问认证信息。

transapi:
  tokens:                    # API 密钥列表
    - "your-api-key-1"
    - "your-api-key-2"

日志配置

配置日志记录相关参数。

log:
  enabled: true                        # 是否启用日志
  file_path: "logs/translation.log"    # 日志文件路径
  max_size: 100                        # 单个日志文件最大大小(MB)
  max_age: 30                         # 日志文件保留天数
  max_backups: 10                     # 最大备份文件数
  queue_size: 1000                    # 异步日志队列大小

完整配置示例

下面是一个包含所有主要配置项的完整示例:

server:
  port: 8080
  host: "0.0.0.0"
  read_timeout: 30
  write_timeout: 30

providers:
  - provider: "openai"
    api_url: "https://api.openai.com/v1/chat/completions"
    api_key: "your-openai-key"
    timeout: 30
    is_default: true
    models:
      - name: "gpt-3.5-turbo"
        weight: 10
        max_tokens: 2000
        temperature: 0.3

  - provider: "ollama"
    api_url: "http://localhost:11434/api/chat"
    timeout: 30
    is_default: false
    models:
      - name: "llama2"
        weight: 5
        max_tokens: 2000
        temperature: 0.3

cache:
  enabled: true
  types: ["memory", "redis"]
  memory:
    ttl:
      value: "1h"
    max_size: 10000
  redis:
    host: "localhost"
    port: 6379
    password: ""
    db: 0
    ttl:
      value: "24h"

transapi:
  tokens:
    - "your-api-key-1"
    - "your-api-key-2"

log:
  enabled: true
  file_path: "logs/translation.log"
  max_size: 100
  max_age: 30
  max_backups: 10
  queue_size: 1000

prompt:
  template: "Translate the following {{source_lang}} content to {{target_lang}}: {{input}}"