@@ -5,12 +5,24 @@ navigation:
55 icon : i-lucide-database
66---
77
8- VeADK 支持将结构化或文档型知识作为 Agent 的外部知识源接入。开发者可选择自建知识库,或使用火山引擎现有知识库。自建知识库与使用火山引擎现有知识库的最大区别是:知识文档的分片和数据库维护。VeADK 中知识库的创建如下:
8+ ## 概述
9+
10+ VeADK 基于 Llama-index 作为知识库的主要处理入口。开发者可上传文本、文件、目录,我们会为您进行自动切片。
11+
12+ 创建知识库时,您必须要提供您的 ` app_name ` (将会用来自动构建索引名称),或指定一个知识库的索引:
913
1014``` python
11- from veadk.knowledgebase.knowledgebase import KnowledgeBase
15+ from veadk.knowledgebase import KnowledgeBase
16+
17+ # 通过指定 `app_name`
18+ knowledgebase = KnowledgeBase(
19+ backend = " local" , app_name = " my_app_name"
20+ )
1221
13- knowledgebase = KnowledgeBase(backend = ... )
22+ # 通过指定 `index`
23+ knowledgebase = KnowledgeBase(
24+ backend = " local" , index = " my_index"
25+ )
1426```
1527
1628知识库中的 backend 字段定义如下:
@@ -23,39 +35,91 @@ knowledgebase = KnowledgeBase(backend=...)
2335| redis | Redis 数据库,但不具备向量搜索功能 |
2436| mysql | MySQL 数据库,但不具备向量搜索功能 |
2537
26- ## 自建知识库
38+ ## 使用知识库
2739
28- 自建知识库需要开发者本地进行知识文档的切片,并维护一个数据库(或云数据库)来存储知识文档。
40+ 以下示例通过建设一个智能客服 Agent,来说明知识库的能力:
2941
30- 以下示例通过使用 opensearch 定义一个如下的自建知识库:
3142
32- ``` python
33- from veadk import Agent
34- from veadk.knowledgebase.knowledgebase import KnowledgeBase
43+ :: code-tree { default-value =" agent.py " }
44+
45+ ``` markdown[qa.md]
46+ # 智能客服知识库
47+
48+ ## 1. 公司简介
49+
50+ VE科技是一家专注于智能客服与知识管理的高科技公司。我们的核心产品是 **智能客服系统**,通过自然语言处理与知识库检索,为企业客户提供高效、智能的自动化客服解决方案。
51+
52+ ---
53+
54+ ## 2. 产品功能说明
55+
56+ - **自动问答**:基于知识库,快速响应常见问题。
57+ - **多渠道接入**:支持网页、App、微信、飞书等渠道。
58+ - **智能推荐**:根据上下文推荐相关答案。
59+ - **数据分析**:提供用户问题统计与客服绩效报告。
60+ - **自助知识库管理**:支持非技术人员快速编辑知识内容。
61+
62+ ---
63+
64+ ## 3. 常见问题 (FAQ)
3565
36- knowledgebase = KnowledgeBase(backend = " opensearch" )
37- knowledgebase.add(
38- knowledgebase_data, app_name = app_name, user_id = user_id, session_id = session_id
39- ) # knowledgebase_data 应当是已切片完成的格式,定义为`list[str]`
66+ ### Q1: 智能客服系统支持哪些语言?
4067
41- # 将知识库挂载至Agent
42- agent = Agent(knowledgebase = knowledgebase)
68+ A1: 目前支持 **中文** 和 **英文**,后续将逐步增加日语、韩语等多语言支持。
69+
70+ ### Q2: 系统可以接入现有的 CRM 吗?
71+
72+ A2: 可以。我们的系统支持通过 API 与主流 CRM 系统(如 Salesforce、Zoho、金蝶)进行无缝集成。
73+
74+ ### Q3: 如果机器人无法回答用户问题,会怎么办?
75+
76+ A3: 系统会自动将问题转接至人工客服,并在后台记录该问题,方便管理员补充到知识库。
77+
78+ ### Q4: 知识库内容多久更新一次?
79+
80+ A4: 知识库支持 **实时更新**,管理员提交后即可立即生效。
81+
82+ ---
83+
84+ ## 4. 联系我们
85+
86+ - 官网:[https://www.example.com](https://www.example.com)
87+ - 客服邮箱:support@ve
88+ - 服务热线:400-123-4567
4389```
4490
45- ## 火山知识库
91+ ``` python[agent.py]
92+ import asyncio
4693
47- VeADK 中提供了火山引擎支持的知识库 [ VikingDB] ( https://www.volcengine.com/docs/84313/1254437 ) ,支持用户直接上传本地文档,文档切片和存储维护均在云上自动执行:
94+ from veadk import Agent, Runner
95+ from veadk.knowledgebase import KnowledgeBase
96+ from veadk.memory import ShortTermMemory
4897
49- ``` python
50- from veadk import Agent
51- from veadk.knowledgebase.knowledgebase import KnowledgeBase
98+ app_name = "app"
99+ user_id = "user"
100+ session_id = "session"
101+
102+ knowledgebase = KnowledgeBase(backend="local", app_name=app_name)
103+ knowledgebase.add_from_files(files=["./qa.md"])
52104
53- FILE_PATH = ...
105+ agent = Agent(
106+ name="customer_service",
107+ instruction="Answer customer's questions according to your knowledgebase.",
108+ knowledgebase=knowledgebase,
109+ )
110+
111+ runner = Runner(
112+ agent=agent,
113+ short_term_memory=ShortTermMemory(),
114+ app_name=app_name,
115+ user_id=user_id,
116+ )
54117
55- knowledgebase = KnowledgeBase(backend = " viking" )
56- knowledgebase.add(
57- FILE_PATH , app_name = app_name, user_id = user_id, session_id = session_id
118+ response = asyncio.run(
119+ runner.run(messages="你们的产品叫什么?都有什么功能?", session_id=session_id)
58120)
59121
60- agent = Agent( knowledgebase = knowledgebase )
122+ print(response )
61123```
124+
125+ ::
0 commit comments