拉丁美洲的中小企业正在越过“试用生成式 AI”的阶段,把模型接入客服、财务、物流、营销和生产现场。联合国相关估算显示,中小企业贡献了该地区超过 60% 的就业;当这些企业开始规模化采用 AI,关键问题便不再是“模型能不能生成内容”,而是“能否用合适的成本,稳定完成一项具体工作”。
Google Cloud 观察到,拉美中小企业使用其 AI 工具的数量同比增长 8 倍,其中巴西增长 9 倍。案例覆盖 Gemini 模型、Gemini Enterprise、Cloud Run、BigQuery、Google Kubernetes Engine 等产品,也呈现出一条清晰路线:从单点辅助工具出发,逐步延伸到数据平台、自动化服务和端到端云现代化。
真正的分水岭:按任务选择模型,而不是统一追求最强模型
成长型企业通常无法接受没有边界的 AI 预算。更务实的做法,是先按任务的价值、频率和复杂度分层:
| 任务类型 | 典型场景 | 选择重点 | 建议控制方式 |
|---|---|---|---|
| 高频、低复杂度 | 邮件摘要、字段提取、工单分类 | 低延迟、低单次成本 | 小模型、批处理、缓存 |
| 中等复杂度 | 营销素材改写、经营问答 | 输出质量、上下文长度 | 模板化提示词、人工抽检 |
| 高复杂度 | 数据分析、合规审查、跨系统决策 | 推理能力、可追溯性 | 强模型、审批节点、完整日志 |
| 高风险动作 | 付款、医疗判断、设备控制 | 安全与确定性 | AI 只提供建议,不直接执行 |
这种模型路由思路与拉美企业的实际案例相吻合。例如,外贸企业可以用快速模型从复杂货运邮件中提取订单号、港口和预计到达时间;遇到合同冲突、异常费用或缺失文件时,再把任务升级给能力更强的模型或人工处理。
这比“所有请求都调用最贵模型”更容易形成可持续的单位经济模型。团队还应记录每类任务的调用量、平均延迟、人工修正率和单次成功成本,而不是只观察 token 消耗。
AI 的价值来自工作流,而不只是聊天窗口
公开案例中的高价值项目,大多将模型嵌入了既有流程:
- 客服与呼叫中心:Nova Gestões 使用语音转文字和 Gemini Enterprise 实时翻译、分析客户通话,减少通话后的手工录入;Via Cristais 则用云联络中心加快高速公路事故的紧急分流。
- 物流与单据处理:KLog.co 将 Gemini Enterprise、BigQuery 和 Workspace 用于货物跟踪及运输文件处理,手工录入错误减少超过 90%,文档处理能力提高到原来的十倍。
- 营销与数据分析:Convert 通过 Looker、BigQuery 和 Cloud Run 运行五个专业智能体,让员工用自然语言查询业务数据,报告交付速度提高 65%,运营成本降低 32%。
- 生产现场知识检索:Romi 把基于 Gemini 的助手放进 CNC 机床的人机界面,让操作员从官方手册中获得答案,并取得对应教学视频的二维码。
- 客户沟通自动化:WeSpeak 在 WhatsApp、Instagram 等渠道处理酒店宾客互动,报告的自动解决率达到 85%,客户总体销售量提高两倍。
这些项目有一个共同结构:模型前面有明确输入,后面有业务系统或人工动作,中间还有权限、校验和监控。聊天界面只是入口,真正产生收益的是被重新设计的流程。
一个可运行的起点:把货运邮件变成结构化 JSON
下面是一个可以改造的最小项目:接收一封货运邮件,调用 Vertex AI 上的 Gemini 模型提取结构化字段,然后返回 JSON。它适合先验证“邮件整理是否值得自动化”,但示例不会直接更新 ERP;生产环境应增加字段校验、人工审批和身份认证。
运行前需要准备 Google Cloud 项目、已安装并登录的 gcloud,同时确认所选模型在目标区域可用。模型名称可以通过环境变量替换。
创建 requirements.txt:
Flask>=3.0,<4.0
gunicorn>=22.0,<24.0
google-genai>=1.0
创建 app.py:
import json
import os
from flask import Flask, jsonify, request
from google import genai
from google.genai.types import GenerateContentConfig
app = Flask(__name__)
client = genai.Client(
vertexai=True,
project=os.environ["GOOGLE_CLOUD_PROJECT"],
location=os.getenv("GOOGLE_CLOUD_LOCATION", "global"),
)
MODEL_ID = os.getenv("MODEL_ID", "gemini-2.5-flash")
SYSTEM_INSTRUCTION = """
You extract shipping data for an operations team.
Return JSON only with these keys:
shipment_id, carrier, origin, destination, eta, exception, confidence.
Use null for missing values. Do not invent information.
confidence must be a number between 0 and 1.
""".strip()
@app.post("/extract")
def extract():
payload = request.get_json(silent=True) or {}
email = payload.get("email", "").strip()
if not email:
return jsonify({"error": "email is required"}), 400
response = client.models.generate_content(
model=MODEL_ID,
contents=email,
config=GenerateContentConfig(
system_instruction=SYSTEM_INSTRUCTION,
temperature=0,
response_mime_type="application/json",
),
)
try:
result = json.loads(response.text)
except (TypeError, json.JSONDecodeError):
return jsonify({"error": "model returned invalid JSON"}), 502
result["requires_review"] = (
result.get("confidence", 0) < 0.85
or bool(result.get("exception"))
)
return jsonify(result)
@app.get("/health")
def health():
return {"status": "ok"}
创建 Dockerfile:
FROM python:3.12-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY app.py .
ENV PORT=8080
CMD exec gunicorn --bind :${PORT} --workers 1 --threads 8 app:app
部署到 Cloud Run:
export PROJECT_ID="your-project-id"
export REGION="us-central1"
export SERVICE_NAME="shipping-email-extractor"
gcloud config set project "$PROJECT_ID"
gcloud services enable run.googleapis.com cloudbuild.googleapis.com aiplatform.googleapis.com
gcloud iam service-accounts create shipping-ai --display-name="Shipping AI runtime"
gcloud projects add-iam-policy-binding "$PROJECT_ID" --member="serviceAccount:shipping-ai@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/aiplatform.user"
gcloud run deploy "$SERVICE_NAME" --source . --region "$REGION" --service-account="shipping-ai@$PROJECT_ID.iam.gserviceaccount.com" --set-env-vars="GOOGLE_CLOUD_PROJECT=$PROJECT_ID,GOOGLE_CLOUD_LOCATION=global,MODEL_ID=gemini-2.5-flash" --allow-unauthenticated
--allow-unauthenticated 只适合快速演示。正式环境应移除该选项,通过 IAM、API Gateway 或内部网络限制调用者。
部署完成后可以测试:
export SERVICE_URL="$(gcloud run services describe "$SERVICE_NAME" --region "$REGION" --format='value(status.url)')"
curl -s "$SERVICE_URL/extract" \
-H "Content-Type: application/json" \
-d '{"email":"Shipment LA-2048 left Buenos Aires with carrier ACME Logistics. Destination: Santos. ETA is 2026-04-18. Customs invoice is still missing."}'
预期会得到类似结果:
{
"shipment_id": "LA-2048",
"carrier": "ACME Logistics",
"origin": "Buenos Aires",
"destination": "Santos",
"eta": "2026-04-18",
"exception": "Customs invoice is missing",
"confidence": 0.96,
"requires_review": true
}
下一步可以把结果写入 BigQuery,用 Looker 跟踪异常率、处理时间和人工修正率;如果需要更新 ERP,则应通过任务队列执行,并加入幂等键、重试策略和审批规则,而不是让模型直接调用高权限接口。
从一个助手扩展到企业能力
AI 项目变多之后,团队容易遇到新的碎片化:每个部门维护一套提示词、重复接入数据、使用不同权限,成本也无人负责。此时需要把实验升级为共享平台能力:
- 统一数据层:把经过授权的经营数据集中到 BigQuery、Cloud Storage 或现有数据平台,定义字段口径与数据所有者。
- 标准化运行层:使用 Cloud Run 承载事件驱动和低运维服务;只有在需要复杂编排、特殊网络或长期运行负载时,再考虑 GKE。
- 建立智能体目录:登记负责人、模型、数据源、允许执行的动作、成本上限和停用方式。
- 保留业务证据:客服答案应关联知识来源,数据分析应保留查询语句,文档提取应保留原文位置。
- 衡量业务指标:像 Growth Digital、Convert 和 KLog.co 的案例一样,关注提案耗时、报告交付速度、错误率与处理容量,而不只统计生成了多少段文字。
采用前的检查清单
成长型企业不必从“企业级全能智能体”开始。一个高频、边界清楚、结果可验证的流程,往往更容易在数周内证明价值。上线前至少检查以下项目:
- 是否有不使用 AI 的基准成本和处理时间?
- 是否为不同复杂度的任务选择了不同模型?
- 低置信度、异常或高风险结果是否进入人工审核?
- 客户信息、医疗记录和商业数据是否遵循访问及保留政策?
- 是否记录模型版本、提示词版本、延迟、成本和人工修正?
- 服务失败时,员工能否回退到原有流程?
- 团队是否具备维护提示词、数据权限和评测集的基本技能?
拉美案例表明,中小企业并不需要复制大型企业的 AI 架构。它们更适合从一个可衡量的任务开始,用 Cloud Run 或企业 AI 平台降低交付门槛,再以 BigQuery 等数据工具连接后续分析。模型只是其中一层;把数据、权限、人员和业务动作组织起来,才是 AI 从演示走向日常生产的关键。