mcpField
T
tavus-cvi-knowledge

tavus-cvi-knowledge

github.com/tavus-engineeringAgent 工作流960 次安装40 周前更新
代码仓库

关于 tavus-cvi-knowledge

Tavus CVI Knowledge Base & Memories 介绍为 Tavus persona 提供文档检索和持久记忆的功能,面向配置对话 persona 的开发者。它可将上传或抓取的资料与跨对话保留的上下文结合使用。

主要功能

  1. 01添加 PDF、文本文件和网站
  2. 02抓取单页或多页网站
  3. 03按 ID 或标签关联文档
  4. 04选择检索速度与质量
  5. 05通过 memory store 保留上下文
  6. 06在多个 persona 间共享记忆

适用场景

  1. 01让支持 persona 查询产品文档
  2. 02在后续对话中复用用户上下文
  3. 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"

记忆(持久上下文)

跨与同一用户的对话记住信息。

工作原理
  1. 为对话分配一个 memory_store 键
  2. 角色在对话期间形成记忆
  3. 之后使用同一键的对话可访问这些记忆
创建带记忆的对话
{
  "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