本文指导您从零开始创建 Tair AI 网关实例、配置语义缓存插件、获取接入信息,并通过一个完整示例验证缓存生效。完成全部步骤约需 15 分钟。
前提条件
-
已注册阿里云账号并完成实名认证。
-
目标地域已有专有网络(VPC)和交换机。若没有,请先创建专有网络。
步骤一:创建 Tair 集群实例
语义缓存需要一个 Tair 实例作为存储后端。如果您已有 Tair 内存版集群实例,可跳过本步骤。
Tair 实例的地域需与后续创建的 Tair AI 网关实例保持一致。当前 Tair AI 网关仅支持华北 2(北京)地域,因此 Tair 实例也需选择该地域。
免费试用
公测期间提供免费试用实例,规格为Tair 内存型 - 集群架构(2 分片 × 1 GB),试用期为自创建之日起1 个月。
-
选择云数据库 Tair(兼容 Redis) > 内存型 2 GB - 集群架构,单击立即试用。
-
等待实例创建完成(约 1~3 分钟),在实例列表中复制实例 ID备用。
免费试用仅提供上述固定规格。如果您需要更高规格或更长使用时间,请通过Tair 控制台自行购买实例或对现有实例进行续费。购买时请确保选择Tair 企业版、内存存储介质和集群架构。
步骤二:创建 AI 网关实例
-
在 Tair 控制台左侧导航栏,单击Tair AI 网关实例。
-
单击创建实例,配置以下参数:
参数
建议值
说明
计费方式
按量付费
公测期间免费
地域和可用区
与 Tair 实例相同
必须在同一地域和可用区
专有网络 / 交换机
与 Tair 实例相同
网关需要通过内网访问 Tair
规格
标准型_2 节点
公测免费规格
插件选择
语义缓存
勾选后进入插件配置
说明如需同时开启Tair 全托管模式与LangCache 兼容模式,可选以下两种方式:
-
先为其中一个模式绑定Tair集群实例,等待 AI 网关实例创建完成后,在插件管理页面添加另一种模式的插件并绑定Tair集群实例。
-
提前准备两个Tair集群实例,供给两个模式的插件绑定。
-
-
单击下一步,进入插件配置页面。
步骤三:配置语义缓存插件
根据您的场景选择一种或两种模式。首次体验建议选择Tair 全托管模式。
Tair 全托管模式(推荐)
无需自建 LLM 调用链路,替换 Base URL 即可使用。
|
参数 |
默认值 |
说明 |
|
绑定 Tair 实例 |
- |
必填。粘贴步骤一获取的实例 ID |
|
模型平台 |
阿里云百炼平台 |
当前仅支持百炼,无需修改 |
|
缓存策略 |
语义缓存 |
如果只需精确匹配,改为精确缓存 |
|
缓存过期时间 |
0(永不过期) |
单位秒 |
|
Embedding 模型 |
text-embedding-v4 |
无需修改 |
|
相似度阈值 |
0.85 |
如果误命中多,调高到 0.9~0.95;如果命中率低,调低到 0.8 |
|
向量缓存过期时间 |
0(永不过期) |
如果答案有时效性,设置合适的秒数 |
LangCache 兼容模式
适合已有 LLM 调用链路、需要精细控制缓存的应用。
|
参数 |
默认值 |
说明 |
|
绑定 Tair 实例 |
- |
必填。粘贴步骤一获取的实例 ID |
|
缓存策略 |
混合缓存 |
先精确匹配,未命中再语义匹配,可根据需求自行修改为语义缓存、精确缓存 |
|
相似度阈值 |
0.85 |
范围 0~1 |
|
Embedding 模型 |
text-embedding-v4 |
用于向量化匹配 |
|
缓存过期时间 |
0(永不过期) |
单位秒 |
配置完成后,单击立即购买。等待实例状态变为运行中(约 5 分钟)。
步骤四:获取接入信息和设置白名单
-
在Tair AI 网关实例列表中,单击目标实例名称。
-
在接入信息区域获取:
信息
用途
格式示例
服务地址(Base URL)
替换 OpenAI SDK 中的 base_url
http://tk-bp1******.redis.rds.aliyuncs.comAPI Key
身份认证
sk-****若需要公网访问在接入信息下方网络访问区域单击公网访问右侧申请按钮。
-
在左侧菜单单击白名单设置,根据页面提示添加对应白名单。
步骤五:验证缓存效果
通过以下代码验证语义缓存已生效。核心验证逻辑:发送两个语义相似的问题,第二次应该显著更快(缓存命中)。
Tair 全托管模式验证
import time
from openai import OpenAI
client = OpenAI(
base_url="http://<您的服务地址>/compatible-mode/v1", # 替换为实际地址
api_key="<您的 API Key>" # 替换为实际 Key
)
# 第一次请求:缓存未命中,调用 LLM(较慢)
start = time.time()
resp1 = client.chat.completions.create(
model="qwen3.6-plus",
messages=[{"role": "user", "content": "什么是语义缓存?"}]
)
print(f"首次请求耗时: {time.time() - start:.2f}s")
print(f"回答: {resp1.choices[0].message.content[:100]}")
# 第二次请求:语义相似的问题,预期缓存命中
start = time.time()
resp2 = client.chat.completions.create(
model="qwen3.6-plus",
messages=[{"role": "user", "content": "语义缓存是什么意思?"}] # 语义相似
)
print(f"\n相似问题耗时: {time.time() - start:.2f}s")
print(f"回答: {resp2.choices[0].message.content[:100]}")
结果示例:
首次请求耗时: 41.67s
回答: **语义缓存(Semantic Caching)**是一种基于查询“含义”而非“字面完全匹配”的智能缓存技术。它主要应用于大语言模型(LLM)、自然语言处理(NLP)和搜索系统中,用于降低计算成本、减少 Token 消耗。
相似问题耗时: 0.17s
回答: **语义缓存(Semantic Caching)**是一种基于查询“含义”而非“字面完全匹配”的智能缓存技术。它主要应用于大语言模型(LLM)、自然语言处理(NLP)和搜索系统中,用于降低计算成本、减少 Token 消耗。
LangCache 兼容模式验证
LangCache 模式需要先手动插入缓存,再搜索验证。详见LangCache 兼容模式 API。
后续步骤
-
调整相似度阈值优化命中率:阈值越低命中越多但可能不够精确,阈值越高越精确但命中率下降。
-
配置 TTL 管理缓存时效性:对于答案可能过时的场景,设置合理的过期时间。
-
查看 API 完整能力:技术架构与接口说明。