关于 tavus-cvi-knowledge
Tavus CVI Knowledge Base & Memories 介绍为 Tavus persona 提供文档检索和持久记忆的功能,面向配置对话 persona 的开发者。它可将上传或抓取的资料与跨对话保留的上下文结合使用。
主要功能
- 01添加 PDF、文本文件和网站
- 02抓取单页或多页网站
- 03按 ID 或标签关联文档
- 04选择检索速度与质量
- 05通过 memory store 保留上下文
- 06在多个 persona 间共享记忆
适用场景
- 01让支持 persona 查询产品文档
- 02在后续对话中复用用户上下文
- 03在销售与支持 persona 间共享对话记忆
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ tavus-engineering/ tavus-skills --skill tavus-cvi-knowledge安装后在 Claude Code 中输入/tavus-cvi-knowledge确认已加载。
详细介绍
Tavus CVI 知识库与记忆
让你的角色能够访问文档并拥有持久记忆。
知识库(RAG)
上传角色在对话中可参考的文档。
步骤 1:创建文档
curl -X POST https://tavusapi.com/v2/documents \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"document_name": "Product FAQ",
"document_url": "https://example.com/faq.pdf",
"tags": ["support", "faq"]
}'
响应:
{
"document_id": "d1234567890",
"status": "processing"
}
支持的来源
- PDF:PDF 文件的直接 URL
- 文本文件:纯文本文档
- 网站:单个页面或抓取的网站
网站抓取
单个页面(默认):
{
"document_name": "Landing Page",
"document_url": "https://example.com/features"
}
多页面抓取:
{
"document_name": "Full Docs",
"document_url": "https://docs.example.com",
"crawl_pages": true
}
步骤 2:在对话中使用
按文档 ID:
{
"persona_id": "p123",
"replica_id": "r456",
"document_ids": ["d1234567890", "d0987654321"]
}
按标签:
{
"persona_id": "p123",
"replica_id": "r456",
"document_tags": ["support", "faq"]
}
附加到角色(始终可用)
此角色的所有对话中均可使用的文档:
curl -X POST https://tavusapi.com/v2/personas \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"persona_name": "Support Agent",
"pipeline_mode": "full",
"system_prompt": "You are a helpful support agent...",
"document_ids": ["d1234567890"],
"document_tags": ["support"]
}'
检索策略
优化搜索速度与质量:
{
"persona_id": "p123",
"document_ids": ["d123"],
"retrieval_strategy": "balanced"
}
选项:
speed- 速度最快,适合简单查询quality- 结果最佳,但速度较慢balanced- 默认选项,平衡速度与质量
管理文档
# List documents
curl https://tavusapi.com/v2/documents \
-H "x-api-key: YOUR_API_KEY"
# Get document status
curl https://tavusapi.com/v2/documents/{document_id} \
-H "x-api-key: YOUR_API_KEY"
# Delete document
curl -X DELETE https://tavusapi.com/v2/documents/{document_id} \
-H "x-api-key: YOUR_API_KEY"
记忆(持久上下文)
跨与同一用户的对话记住信息。
工作原理
- 为对话分配一个
memory_store键 - 角色在对话期间形成记忆
- 之后使用同一键的对话可访问这些记忆
创建带记忆的对话
{
"persona_id": "p123",
"replica_id": "r456",
"memory_stores": ["user_alice_persona_sales"]
}
记忆存储命名
使用一致且唯一的标识符:
user_{user_id}_persona_{persona_id}- 针对每个用户和每个角色user_{user_id}- 用户在所有角色间共享session_{session_id}- 针对每个会话
重要:不要在键中使用角色名称(名称可能会更改)。
示例:回访用户
首次对话:
{
"persona_id": "p_coach",
"memory_stores": ["user_alice_coaching"]
}
用户提到:“我正在为 4 月的马拉松进行训练。”
几天后的第二次对话:
{
"persona_id": "p_coach",
"memory_stores": ["user_alice_coaching"]
}
角色会记住马拉松目标,并能在对话中提及。
多个记忆存储
在不同上下文间共享记忆:
{
"persona_id": "p123",
"memory_stores": [
"user_alice_global",
"user_alice_sales_specific"
]
}
用例:多角色记忆
用户先与销售角色交谈,然后与支持角色交谈:
// Sales conversation
{
"persona_id": "p_sales",
"memory_stores": ["user_alice"]
}
// Support conversation (later)
{
"persona_id": "p_support",
"memory_stores": ["user_alice"]
}
支持角色了解销售角色讨论过的内容。
结合知识库与记忆
功能齐全的支持 Agent:
# Create persona with knowledge base
curl -X POST https://tavusapi.com/v2/personas \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"persona_name": "Premium Support",
"pipeline_mode": "full",
"system_prompt": "You are a premium support agent. Reference the knowledge base for product info. Remember user preferences and past issues.",
"document_tags": ["support", "product-docs"],
"default_replica_id": "rfe12d8b9597"
}'
# Start conversation with user memory
curl -X POST https://tavusapi.com/v2/conversations \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"persona_id": "p_premium_support",
"memory_stores": ["user_12345_support"],
"document_ids": ["d_urgent_issue_docs"]
}'
现在,角色可以:
- 从文档中查找产品信息
- 记住该用户过去遇到的问题
- 基于之前的对话继续交流
评论
支持 Markdown