Claude 企业内网接入与安全网关部署实战指南
Claude 私有化部署方案|附完整命令
说明:严格意义上,Claude(Anthropic 官方模型)目前并不提供“把模型权重下载到本地服务器并离线运行”的私有化部署方式。因此,本文所说的“Claude 私有化部署方案”,主要指在企业内网中构建一套私有可控、安全合规、统一接入 Claude 能力的部署架构,包括:
- 企业内网部署 AI 网关;
- 通过受控网络访问 Claude API;
- 对请求、日志、鉴权、审计、限流进行私有化管理;
- 可选接入 AWS Bedrock 或 Google Vertex AI;
- 可选部署开源大模型作为本地替代方案。
如果你的目标是“完全离线、本地运行 Claude 模型权重”,目前无法实现;如果你的目标是“企业内部安全、统一、可审计地使用 Claude”,本文方案可以落地。
一、为什么企业需要 Claude 私有化部署方案?
Claude 是 Anthropic 推出的高性能大语言模型,在长文本理解、代码生成、知识问答、文档总结、客服机器人、Agent 自动化等场景中表现非常优秀。很多企业希望将 Claude 接入到内部业务系统中,例如:
- 内部知识库问答;
- 合同、制度、招投标文档分析;
- 研发代码助手;
- 客服智能回复;
- 数据分析助手;
- 自动化办公 Agent;
- 业务流程审批辅助;
- 企业私有文档总结。
但是,企业在使用 Claude 时通常会遇到几个现实问题:
1. 数据安全问题
业务系统中的内容往往包含客户信息、合同信息、源代码、财务数据、研发文档等敏感内容。如果所有员工都直接使用外部 API 或第三方工具,企业无法有效控制数据流向。
2. 账号与权限难以管理
如果每个团队或员工单独申请 Claude API Key,就会造成密钥分散、权限混乱、费用不可控的问题。一旦某个 API Key 泄露,还可能造成严重安全风险。
3. 调用成本无法统一统计
企业需要知道哪个部门、哪个项目、哪个接口调用了多少模型,花费了多少费用。直接调用 Claude API 很难做到完整的成本归集。
4. 缺少审计与合规能力
在金融、政企、医疗、制造等行业中,AI 调用日志、用户身份、请求内容、返回内容、数据脱敏记录等都可能需要审计。
5. 网络访问受限
很多企业服务器部署在内网环境中,无法直接访问外部 API;或者只能通过指定出口访问外部服务。因此需要一个统一的 AI 网关来进行流量转发和安全控制。
二、Claude 私有化部署的正确理解
首先要明确一点:
Claude 官方模型不能像 Llama、Qwen、DeepSeek、Mistral 那样下载权重到本地 GPU 服务器上运行。
Claude 的官方使用方式通常有以下几类:
| 方式 | 是否本地运行权重 | 适合场景 |
|---|---|---|
| Anthropic API | 否 | 直接调用 Claude 官方 API |
| AWS Bedrock Claude | 否 | 企业云上合规调用,适合 AWS 用户 |
| Google Vertex AI Claude | 否 | 企业云上合规调用,适合 GCP 用户 |
| 企业 AI 网关代理 Claude | 否 | 内网统一接入、审计、限流、脱敏 |
| 本地部署开源模型替代 Claude | 是 | 完全离线、数据不出内网 |
因此,企业常见的“Claude 私有化部署”通常不是部署 Claude 权重,而是部署一套Claude 私有化接入平台。
一个比较成熟的架构如下:
员工 / 内部系统
|
| HTTPS / 内网 API
v
企业 AI 网关
|
| 鉴权、审计、限流、脱敏、日志、计费
v
模型路由层
|
|-----------------------------|
| |
v v
Claude API / Bedrock / Vertex 本地开源大模型
这样做的好处是:
- 员工不直接接触 Claude API Key;
- 所有请求统一经过企业内网网关;
- 可以记录调用日志;
- 可以做敏感信息脱敏;
- 可以配置模型路由;
- 可以限制不同用户的调用额度;
- 可以在 Claude 不可用时切换到本地模型;
- 可以支持 OpenAI 兼容接口,降低业务系统改造成本。
三、推荐部署架构
本文采用一种较通用的方案:
- 使用 Docker Compose 部署;
- 使用 LiteLLM Proxy 作为统一 AI 网关;
- 使用 PostgreSQL 存储配置与日志;
- 使用 Redis 做缓存与限流辅助;
- 使用 Nginx 做反向代理与 HTTPS 入口;
- 可选接入 Anthropic Claude API;
- 可选接入 AWS Bedrock Claude;
- 可选接入 本地 Ollama / vLLM 开源模型。
部署完成后,内部业务可以通过 OpenAI 兼容接口访问 Claude,例如:
curl http://ai-gateway.example.com/v1/chat/completions \
-H "Authorization: Bearer sk-internal-demo" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-3-5-sonnet",
"messages": [
{
"role": "user",
"content": "请总结这份合同中的风险点。"
}
]
}'
四、服务器准备
建议配置如下。
1. 基础配置
如果只是做 Claude API 网关,服务器配置不需要太高:
| 组件 | 推荐配置 |
|---|---|
| CPU | 4 核以上 |
| 内存 | 8GB 以上 |
| 磁盘 | 100GB SSD |
| 系统 | Ubuntu 22.04 LTS / Ubuntu 24.04 LTS |
| 网络 | 可访问 Anthropic / AWS / GCP 对应 API 地址 |
如果还要部署本地开源模型,则需要 GPU,例如:
| 模型规模 | GPU 建议 |
|---|---|
| 7B | 16GB 显存 |
| 14B | 24GB 显存 |
| 32B | 48GB 以上显存 |
| 70B | 80GB 以上显存或多卡 |
2. 更新系统
sudo apt update
sudo apt upgrade -y
安装基础工具:
sudo apt install -y \
curl \
wget \
git \
vim \
htop \
net-tools \
ca-certificates \
gnupg \
lsb-release \
ufw
设置时区:
sudo timedatectl set-timezone Asia/Shanghai
timedatectl
五、安装 Docker 与 Docker Compose
1. 卸载旧版本 Docker
sudo apt remove -y docker docker-engine docker.io containerd runc || true
2. 安装 Docker 官方源
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) \
signed-by=/etc/apt/keyrings/docker.gpg] \
https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
3. 安装 Docker
sudo apt update
sudo apt install -y \
docker-ce \
docker-ce-cli \
containerd.io \
docker-buildx-plugin \
docker-compose-plugin
4. 启动 Docker
sudo systemctl enable docker
sudo systemctl start docker
查看版本:
docker --version
docker compose version
将当前用户加入 Docker 用户组:
sudo usermod -aG docker $USER
重新登录后验证:
docker ps
六、创建部署目录
创建统一目录:
sudo mkdir -p /opt/claude-private-deploy
sudo chown -R $USER:$USER /opt/claude-private-deploy
进入目录:
cd /opt/claude-private-deploy
创建子目录:
mkdir -p \
litellm \
nginx \
postgres \
redis \
logs \
certs
七、配置环境变量
创建 .env 文件:
vim .env
写入以下内容:
# PostgreSQL
POSTGRES_USER=litellm
POSTGRES_PASSWORD=ChangeMe_Postgres_Strong_Password
POSTGRES_DB=litellm
# Redis
REDIS_PASSWORD=ChangeMe_Redis_Strong_Password
# LiteLLM
LITELLM_MASTER_KEY=sk-internal-master-change-me
LITELLM_SALT_KEY=change-me-random-salt-key
# Anthropic Claude API
ANTHROPIC_API_KEY=sk-ant-xxxxxxxxxxxxxxxxxxxxxxxx
# 可选:AWS Bedrock
AWS_ACCESS_KEY_ID=your_aws_access_key
AWS_SECRET_ACCESS_KEY=your_aws_secret_key
AWS_REGION_NAME=us-east-1
# 可选:管理后台账号
UI_USERNAME=admin
UI_PASSWORD=ChangeMe_Admin_Strong_Password
修改权限:
chmod 600 .env
注意事项:
LITELLM_MASTER_KEY是内部访问网关的主密钥;ANTHROPIC_API_KEY是 Claude 官方 API Key;- 生产环境中不要使用示例密码;
- 建议使用密码管理系统或 KMS 管理密钥;
.env文件不要提交到 Git 仓库。
八、配置 LiteLLM
创建配置文件:
vim litellm/config.yaml
写入以下配置:
model_list:
- model_name: claude-3-5-sonnet
litellm_params:
model: anthropic/claude-3-5-sonnet-20241022
api_key: os.environ/ANTHROPIC_API_KEY
- model_name: claude-3-5-haiku
litellm_params:
model: anthropic/claude-3-5-haiku-20241022
api_key: os.environ/ANTHROPIC_API_KEY
- model_name: claude-3-opus
litellm_params:
model: anthropic/claude-3-opus-20240229
api_key: os.environ/ANTHROPIC_API_KEY
general_settings:
master_key: os.environ/LITELLM_MASTER_KEY
database_url: postgresql://litellm:ChangeMe_Postgres_Strong_Password@postgres:5432/litellm
store_model_in_db: true
store_prompts_in_spend_logs: true
litellm_settings:
request_timeout: 120
num_retries: 2
success_callback: ["langfuse"]
failure_callback: ["langfuse"]
如果你不需要 Langfuse 回调,可以把下面两行删除:
success_callback: ["langfuse"]
failure_callback: ["langfuse"]
更简化的生产版本可以写成:
model_list:
- model_name: claude-3-5-sonnet
litellm_params:
model: anthropic/claude-3-5-sonnet-20241022
api_key: os.environ/ANTHROPIC_API_KEY
- model_name: claude-3-5-haiku
litellm_params:
model: anthropic/claude-3-5-haiku-20241022
api_key: os.environ/ANTHROPIC_API_KEY
general_settings:
master_key: os.environ/LITELLM_MASTER_KEY
database_url: postgresql://litellm:ChangeMe_Postgres_Strong_Password@postgres:5432/litellm
store_model_in_db: true
litellm_settings:
request_timeout: 120
num_retries: 2
注意:
database_url中的数据库密码需要和.env文件里的POSTGRES_PASSWORD保持一致。
九、编写 Docker Compose 文件
在部署目录创建 docker-compose.yml:
vim docker-compose.yml
写入以下内容:
services:
postgres:
image: postgres:16
container_name: claude-postgres
restart: always
environment:
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_DB: ${POSTGRES_DB}
volumes:
- ./postgres/data:/var/lib/postgresql/data
networks:
- claude-net
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}"]
interval: 10s
timeout: 5s
retries: 5
redis:
image: redis:7
container_name: claude-redis
restart: always
command: redis-server --requirepass ${REDIS_PASSWORD}
volumes:
- ./redis/data:/data
networks:
- claude-net
healthcheck:
test: ["CMD", "redis-cli", "-a", "${REDIS_PASSWORD}", "ping"]
interval: 10s
timeout: 5s
retries: 5
litellm:
image: ghcr.io/berriai/litellm:main-latest
container_name: claude-litellm
restart: always
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
env_file:
- .env
environment:
DATABASE_URL: postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres:5432/${POSTGRES_DB}
STORE_MODEL_IN_DB: "True"
command:
[
"--config", "/app/config.yaml",
"--port", "4000",
"--num_workers", "4"
]
volumes:
- ./litellm/config.yaml:/app/config.yaml
- ./logs:/app/logs
ports:
- "4000:4000"
networks:
- claude-net
nginx:
image: nginx:1.27
container_name: claude-nginx
restart: always
depends_on:
- litellm
ports:
- "80:80"
- "443:443"
volumes:
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf
- ./certs:/etc/nginx/certs
- ./logs/nginx:/var/log/nginx
networks:
- claude-net
networks:
claude-net:
driver: bridge
十、配置 Nginx 反向代理
创建 Nginx 配置:
vim nginx/default.conf
如果暂时只使用 HTTP,可以写入:
server {
listen 80;
server_name ai-gateway.example.com;
client_max_body_size 50m;
location / {
proxy_pass http://litellm:4000;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 300s;
proxy_connect_timeout 60s;
proxy_send_timeout 300s;
}
}
如果使用 HTTPS,可以配置:
server {
listen 80;
server_name ai-gateway.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name ai-gateway.example.com;
ssl_certificate /etc/nginx/certs/fullchain.pem;
ssl_certificate_key /etc/nginx/certs/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
client_max_body_size 50m;
location / {
proxy_pass http://litellm:4000;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 300s;
proxy_connect_timeout 60s;
proxy_send_timeout 300s;
}
}
如果你有内网 CA 证书,把证书放到:
certs/fullchain.pem
certs/privkey.pem
也可以使用自签名证书测试:
openssl req -x509 -nodes -days 365 \
-newkey rsa:2048 \
-keyout certs/privkey.pem \
-out certs/fullchain.pem \
-subj "/CN=ai-gateway.example.com"
十一、启动服务
在 /opt/claude-private-deploy 目录执行:
docker compose pull
docker compose up -d
查看容器状态:
docker compose ps
查看日志:
docker compose logs -f litellm
如果正常,会看到 LiteLLM 在 4000 端口启动。
检查接口:
curl http://127.0.0.1:4000/health
或通过 Nginx:
curl http://127.0.0.1/health
十二、调用 Claude 测试
使用 OpenAI 兼容格式调用:
curl http://127.0.0.1:4000/v1/chat/completions \
-H "Authorization: Bearer sk-internal-master-change-me" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-3-5-sonnet",
"messages": [
{
"role": "user",
"content": "请用中文解释一下什么是企业级AI网关。"
}
],
"temperature": 0.7
}'
通过 Nginx 调用:
curl http://ai-gateway.example.com/v1/chat/completions \
-H "Authorization: Bearer sk-internal-master-change-me" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-3-5-sonnet",
"messages": [
{
"role": "user",
"content": "请给出一个合同审查助手的提示词模板。"
}
]
}'
如果使用 HTTPS:
curl https://ai-gateway.example.com/v1/chat/completions \
-H "Authorization: Bearer sk-internal-master-change-me" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-3-5-haiku",
"messages": [
{
"role": "user",
"content": "请总结AI私有化部署的核心价值。"
}
]
}'
十三、生成内部 API Key
生产环境中不建议所有人共用 master_key。可以通过 LiteLLM 管理接口创建不同的虚拟 Key。
创建一个普通业务 Key:
curl http://127.0.0.1:4000/key/generate \
-H "Authorization: Bearer sk-internal-master-change-me" \
-H "Content-Type: application/json" \
-d '{
"models": ["claude-3-5-sonnet", "claude-3-5-haiku"],
"duration": "30d",
"metadata": {
"team": "legal",
"project": "contract-review"
}
}'
创建带预算限制的 Key:
curl http://127.0.0.1:4000/key/generate \
-H "Authorization: Bearer sk-internal-master-change-me" \
-H "Content-Type: application/json" \
-d '{
"models": ["claude-3-5-haiku"],
"max_budget": 20,
"budget_duration": "30d",
"duration": "30d",
"metadata": {
"team": "customer-service",
"project": "faq-bot"
}
}'
使用新生成的 Key 调用:
curl http://ai-gateway.example.com/v1/chat/completions \
-H "Authorization: Bearer sk-xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-3-5-haiku",
"messages": [
{
"role": "user",
"content": "请生成一段客服欢迎语。"
}
]
}'
十四、配置防火墙
如果只允许内网访问,建议关闭公网端口或限制来源 IP。
启用 UFW:
sudo ufw enable
允许 SSH:
sudo ufw allow 22/tcp
允许 HTTP 和 HTTPS:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
如果只允许某个内网网段访问:
sudo ufw allow from 192.168.1.0/24 to any port 443 proto tcp
拒绝其他访问:
sudo ufw deny 4000/tcp
查看状态:
sudo ufw status verbose
更推荐的方式是不要暴露 4000 端口,只通过 Nginx 暴露服务。可以把 docker-compose.yml 中 LiteLLM 的端口映射:
ports:
- "4000:4000"
改成只监听本机:
ports:
- "127.0.0.1:4000:4000"
或者完全去掉端口映射,让 Nginx 在 Docker 网络中访问它。
十五、接入 AWS Bedrock Claude
如果企业使用 AWS,并且希望通过 AWS Bedrock 调用 Claude,可以在 litellm/config.yaml 中增加:
model_list:
- model_name: bedrock-claude-sonnet
litellm_params:
model: bedrock/anthropic.claude-3-5-sonnet-20241022-v2:0
aws_region_name: os.environ/AWS_REGION_NAME
aws_access_key_id: os.environ/AWS_ACCESS_KEY_ID
aws_secret_access_key: os.environ/AWS_SECRET_ACCESS_KEY
完整示例:
model_list:
- model_name: claude-3-5-sonnet
litellm_params:
model: anthropic/claude-3-5-sonnet-20241022
api_key: os.environ/ANTHROPIC_API_KEY
- model_name: bedrock-claude-sonnet
litellm_params:
model: bedrock/anthropic.claude-3-5-sonnet-20241022-v2:0
aws_region_name: os.environ/AWS_REGION_NAME
aws_access_key_id: os.environ/AWS_ACCESS_KEY_ID
aws_secret_access_key: os.environ/AWS_SECRET_ACCESS_KEY
general_settings:
master_key: os.environ/LITELLM_MASTER_KEY
database_url: postgresql://litellm:ChangeMe_Postgres_Strong_Password@postgres:5432/litellm
store_model_in_db: true
重启 LiteLLM:
docker compose restart litellm
测试调用:
curl http://ai-gateway.example.com/v1/chat/completions \
-H "Authorization: Bearer sk-internal-master-change-me" \
-H "Content-Type: application/json" \
-d '{
"model": "bedrock-claude-sonnet",
"messages": [
{
"role": "user",
"content": "请解释AWS Bedrock接入Claude的优势。"
}
]
}'
十六、接入本地开源模型作为备用
如果企业希望在 Claude 不可用、成本过高或涉及敏感数据时自动切换到本地模型,可以部署 Ollama 或 vLLM。
下面以 Ollama 为例。
1. 安装 Ollama
curl -fsSL https://ollama.com/install.sh | sh
启动服务:
sudo systemctl enable ollama
sudo systemctl start ollama
下载模型,例如 Qwen2.5:
ollama pull qwen2.5:7b
测试模型:
ollama run qwen2.5:7b
2. 修改 Ollama 监听地址
创建或修改 systemd 配置:
sudo systemctl edit ollama
写入:
[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"
重载并重启:
sudo systemctl daemon-reload
sudo systemctl restart ollama
测试接口:
curl http://127.0.0.1:11434/api/tags
3. LiteLLM 接入 Ollama
修改 litellm/config.yaml:
model_list:
- model_name: claude-3-5-sonnet
litellm_params:
model: anthropic/claude-3-5-sonnet-20241022
api_key: os.environ/ANTHROPIC_API_KEY
- model_name: local-qwen
litellm_params:
model: ollama/qwen2.5:7b
api_base: http://host.docker.internal:11434
general_settings:
master_key: os.environ/LITELLM_MASTER_KEY
database_url: postgresql://litellm:ChangeMe_Postgres_Strong_Password@postgres:5432/litellm
store_model_in_db: true
在 Linux Docker 中,host.docker.internal 可能不可用,可以在 docker-compose.yml 的 litellm 服务中加入:
extra_hosts:
- "host.docker.internal:host-gateway"
然后重启:
docker compose up -d
调用本地模型:
curl http://ai-gateway.example.com/v1/chat/completions \
-H "Authorization: Bearer sk-internal-master-change-me" \
-H "Content-Type: application/json" \
-d '{
"model": "local-qwen",
"messages": [
{
"role": "user",
"content": "请用中文介绍本地开源大模型的优势。"
}
]
}'
十七、数据脱敏与安全策略
Claude 私有化接入的重点不是“模型在不在本地”,而是“数据是否可控”。建议在网关层实现以下能力:
1. 敏感字段脱敏
常见敏感信息包括:
- 身份证号;
- 手机号;
- 银行卡号;
- 客户姓名;
- 地址;
- 邮箱;
- 合同编号;
- 内部系统账号;
- 源代码仓库地址;
- 密钥、Token、密码。
可以在业务系统调用 AI 网关之前先做脱敏,也可以在网关层增加自定义中间件。例如:
import re
def mask_sensitive_text(text: str) -> str:
text = re.sub(r'1[3-9]\d{9}', '【手机号】', text)
text = re.sub(r'\d{17}[\dXx]', '【身份证号】', text)
text = re.sub(r'\b\d{16,19}\b', '【银行卡号】', text)
text = re.sub(r'[\w\.-]+@[\w\.-]+\.\w+', '【邮箱】', text)
return text
2. 最小权限原则
不同部门使用不同 Key:
| 部门 | 可用模型 | 限额策略 |
|---|---|---|
| 法务 | Claude Sonnet | 月预算限制 |
| 客服 | Claude Haiku | 高频低成本 |
| 研发 | Claude Sonnet + 本地模型 | 按项目限制 |
| 财务 | 仅本地模型或强脱敏后调用 | 严格审计 |
3. 禁止员工直接使用外部 Key
企业应统一将 Claude API Key 保存在服务端,不允许员工在浏览器、桌面工具、脚本中直接保存官方 Key。
4. 日志分级
建议区分:
- 访问日志;
- 请求元数据;
- Token 消耗;
- 费用日志;
- 错误日志;
- 审计日志;
- 原始 Prompt 日志。
对于高度敏感业务,不建议保存完整 Prompt 和 Completion;可以只保存摘要、哈希或脱敏后的内容。
十八、监控与运维
1. 查看服务状态
docker compose ps
2. 查看 LiteLLM 日志
docker compose logs -f litellm
3. 查看 Nginx 日志
docker compose logs -f nginx
或:
tail -f logs/nginx/access.log
tail -f logs/nginx/error.log
4. 重启服务
docker compose restart
只重启 LiteLLM:
docker compose restart litellm
5. 更新镜像
docker compose pull
docker compose up -d
6. 备份数据库
docker exec claude-postgres pg_dump \
-U litellm \
-d litellm \
> backup_litellm_$(date +%F).sql
恢复数据库:
cat backup_litellm_2025-01-01.sql | \
docker exec -i claude-postgres psql \
-U litellm \
-d litellm
十九、常见问题
1. Claude 能否完全离线部署?
不能。Claude 官方没有开放模型权重,也不支持企业将权重下载到本地服务器离线运行。
2. 那为什么还叫 Claude 私有化部署?
这里的“私有化”指的是企业内部私有化部署接入层、网关层、安全层和审计层,而不是私有化部署 Claude 模型权重。
3. 数据会不会被 Claude 用于训练?
这取决于你使用的服务方式和对应协议。企业应仔细阅读 Anthropic API、AWS Bedrock、Google Vertex AI 的数据使用政策,并签订企业级数据保护协议。
4. 是否建议直接让业务系统调用 Anthropic API?
不建议。企业级场景更推荐统一 AI 网关,便于密钥管理、权限控制、成本统计和审计。
5. 如何做到完全数据不出内网?
如果要求完全数据不出内网,就不能使用 Claude API,只能部署本地开源模型,例如 Qwen、DeepSeek、Llama、Mistral 等。
二十、总结
Claude 的能力非常强,但企业在落地时不能只关注模型效果,还必须关注安全、合规、权限、成本和运维。由于 Claude 官方目前不支持权重级本地部署,因此最合理的企业级方案是:
- 在内网部署 AI 网关;
- 将 Claude API Key 托管在服务端;
- 所有业务系统通过统一网关访问;
- 对调用进行鉴权、审计、限流和计费;
- 对敏感数据进行脱敏;
- 根据业务敏感度选择 Claude、Bedrock、Vertex 或本地开源模型;
- 对高敏场景使用本地模型兜底。
如果你的目标是“像部署私有系统一样管控 Claude”,本文方案是可落地的;如果你的目标是“完全离线部署 Claude 权重”,目前无法实现,只能选择开源模型替代。企业真正需要的不是简单地把模型接进来,而是建立一套可控、可审计、可持续扩展的 AI 基础设施。