Skip to content

Commit 98f4a2b

Browse files
committed
fix web bugs and docs
1 parent c54a289 commit 98f4a2b

File tree

7 files changed

+388
-102
lines changed

7 files changed

+388
-102
lines changed

docs/content/7.knowledgebase/1.knowledgebase.md

Lines changed: 89 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)