mirror of
https://github.com/xinnan-tech/xiaozhi-esp32-server.git
synced 2026-07-26 09:03:54 +08:00
@@ -71,6 +71,7 @@ docker logs -f mcp-endpoint-server
|
|||||||
请你保留好上面两个`接口地址`,下一步要用到。
|
请你保留好上面两个`接口地址`,下一步要用到。
|
||||||
|
|
||||||
# 2、全模块部署时,怎么配置MCP接入点
|
# 2、全模块部署时,怎么配置MCP接入点
|
||||||
|
首先,你要开启MCP接入点功能。在智控台,点击顶部`参数字典`,在下拉菜单中,点击`系统功能配置`页面。在页面上勾选`MCP接入点`,点击`保存配置`。在`角色配置`页面,点击`编辑功能`按钮,即可看到`mcp接入点`功能。
|
||||||
|
|
||||||
如果你是全模块部署,使用管理员账号,登录智控台,点击顶部`参数字典`,选择`参数管理`功能。
|
如果你是全模块部署,使用管理员账号,登录智控台,点击顶部`参数字典`,选择`参数管理`功能。
|
||||||
|
|
||||||
|
|||||||
@@ -238,9 +238,11 @@ docker-compose -f docker-compose.yml up -d
|
|||||||
在弹框中,点击"Create new Key"按钮,生成一个API Key。复制这个`API Key`,你稍后会用到。
|
在弹框中,点击"Create new Key"按钮,生成一个API Key。复制这个`API Key`,你稍后会用到。
|
||||||
|
|
||||||
# 第二步 配置到智控台
|
# 第二步 配置到智控台
|
||||||
确保你的智控台版本是`0.8.7`或以上。使用超级管理员账号登录到智控台。在顶部导航栏中,点击`模型配置`,在左侧导航栏中,点击`知识库`。
|
确保你的智控台版本是`0.8.7`或以上。使用超级管理员账号登录到智控台。
|
||||||
|
|
||||||
在列表中找到`RAG_RAGFlow`,点击`编辑`按钮。
|
首先,你要先开启知识库功能。在顶部导航栏中,点击`参数字典`,在下拉菜单中,点击`系统功能配置`页面。在页面上勾选`知识库`,点击`保存配置`。即可在导航栏看到`知识库`功能。
|
||||||
|
|
||||||
|
在顶部导航栏中,点击`模型配置`,在左侧导航栏中,点击`知识库`。在列表中找到`RAG_RAGFlow`,点击`编辑`按钮。
|
||||||
|
|
||||||
在`服务地址`中,填写`http://你的ragflow服务的局域网IP:8008`,例如我的ragflow服务的局域网IP是`192.168.1.100`,那么我就填写`http://192.168.1.100:8008`。
|
在`服务地址`中,填写`http://你的ragflow服务的局域网IP:8008`,例如我的ragflow服务的局域网IP是`192.168.1.100`,那么我就填写`http://192.168.1.100:8008`。
|
||||||
|
|
||||||
|
|||||||
@@ -164,6 +164,8 @@ http://192.168.1.25:8005/voiceprint/health?key=abcd
|
|||||||
# 2、全模块部署时,怎么配置声纹识别
|
# 2、全模块部署时,怎么配置声纹识别
|
||||||
|
|
||||||
## 第一步 配置接口
|
## 第一步 配置接口
|
||||||
|
首先,你要开启声纹识别功能。在智控台,点击顶部`参数字典`,在下拉菜单中,点击`系统功能配置`页面。在页面上勾选`声纹识别`,点击`保存配置`。即可在新建智能体的卡片上看到`声纹识别`按钮。
|
||||||
|
|
||||||
如果你是全模块部署,使用管理员账号,登录智控台,点击顶部`参数字典`,选择`参数管理`功能。
|
如果你是全模块部署,使用管理员账号,登录智控台,点击顶部`参数字典`,选择`参数管理`功能。
|
||||||
|
|
||||||
然后搜索参数`server.voice_print`,此时,它的值应该是`null`值。
|
然后搜索参数`server.voice_print`,此时,它的值应该是`null`值。
|
||||||
|
|||||||
@@ -478,6 +478,7 @@ export default {
|
|||||||
.function-column {
|
.function-column {
|
||||||
position: relative;
|
position: relative;
|
||||||
width: auto;
|
width: auto;
|
||||||
|
height:700px;
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
border-right: 1px solid #EBEEF5;
|
border-right: 1px solid #EBEEF5;
|
||||||
@@ -485,6 +486,12 @@ export default {
|
|||||||
overflow-x: hidden;
|
overflow-x: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.mcp-access-point {
|
||||||
|
position: relative;
|
||||||
|
z-index: 1;
|
||||||
|
background: white;
|
||||||
|
}
|
||||||
|
|
||||||
.function-column::-webkit-scrollbar {
|
.function-column::-webkit-scrollbar {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1278,6 +1278,7 @@ export default {
|
|||||||
'featureManagement.confirm': 'Bestätigen',
|
'featureManagement.confirm': 'Bestätigen',
|
||||||
'featureManagement.cancel': 'Abbrechen',
|
'featureManagement.cancel': 'Abbrechen',
|
||||||
'featureManagement.resetSuccess': 'Funktionskonfiguration erfolgreich zurückgesetzt',
|
'featureManagement.resetSuccess': 'Funktionskonfiguration erfolgreich zurückgesetzt',
|
||||||
|
'featureManagement.noChanges': 'Keine Änderungen zum Speichern',
|
||||||
|
|
||||||
// Feature names and descriptions
|
// Feature names and descriptions
|
||||||
'feature.voiceprintRecognition.name': 'Stimmerkennung',
|
'feature.voiceprintRecognition.name': 'Stimmerkennung',
|
||||||
|
|||||||
@@ -1278,6 +1278,7 @@ export default {
|
|||||||
'featureManagement.confirm': 'Confirm',
|
'featureManagement.confirm': 'Confirm',
|
||||||
'featureManagement.cancel': 'Cancel',
|
'featureManagement.cancel': 'Cancel',
|
||||||
'featureManagement.resetSuccess': 'Feature configuration reset successfully',
|
'featureManagement.resetSuccess': 'Feature configuration reset successfully',
|
||||||
|
'featureManagement.noChanges': 'No changes to save',
|
||||||
|
|
||||||
// Feature names and descriptions
|
// Feature names and descriptions
|
||||||
'feature.voiceprintRecognition.name': 'Voiceprint Recognition',
|
'feature.voiceprintRecognition.name': 'Voiceprint Recognition',
|
||||||
|
|||||||
@@ -1278,6 +1278,7 @@ export default {
|
|||||||
'featureManagement.confirm': 'Xác nhận',
|
'featureManagement.confirm': 'Xác nhận',
|
||||||
'featureManagement.cancel': 'Hủy bỏ',
|
'featureManagement.cancel': 'Hủy bỏ',
|
||||||
'featureManagement.resetSuccess': 'Cấu hình tính năng đã được đặt lại thành công',
|
'featureManagement.resetSuccess': 'Cấu hình tính năng đã được đặt lại thành công',
|
||||||
|
'featureManagement.noChanges': 'Không có thay đổi nào để lưu',
|
||||||
|
|
||||||
// Feature names and descriptions
|
// Feature names and descriptions
|
||||||
'feature.voiceprintRecognition.name': 'Nhận dạng giọng nói',
|
'feature.voiceprintRecognition.name': 'Nhận dạng giọng nói',
|
||||||
|
|||||||
@@ -1278,6 +1278,7 @@ export default {
|
|||||||
'featureManagement.confirm': '确定',
|
'featureManagement.confirm': '确定',
|
||||||
'featureManagement.cancel': '取消',
|
'featureManagement.cancel': '取消',
|
||||||
'featureManagement.resetSuccess': '功能配置重置成功',
|
'featureManagement.resetSuccess': '功能配置重置成功',
|
||||||
|
'featureManagement.noChanges': '没有需要保存的更改',
|
||||||
|
|
||||||
// 功能名称和描述
|
// 功能名称和描述
|
||||||
'feature.voiceprintRecognition.name': '声纹识别',
|
'feature.voiceprintRecognition.name': '声纹识别',
|
||||||
|
|||||||
@@ -1278,6 +1278,7 @@ export default {
|
|||||||
'featureManagement.confirm': '確定',
|
'featureManagement.confirm': '確定',
|
||||||
'featureManagement.cancel': '取消',
|
'featureManagement.cancel': '取消',
|
||||||
'featureManagement.resetSuccess': '功能配置重置成功',
|
'featureManagement.resetSuccess': '功能配置重置成功',
|
||||||
|
'featureManagement.noChanges': '沒有需要儲存的更改',
|
||||||
|
|
||||||
// 功能名稱和描述
|
// 功能名稱和描述
|
||||||
'feature.voiceprintRecognition.name': '聲紋識別',
|
'feature.voiceprintRecognition.name': '聲紋識別',
|
||||||
|
|||||||
@@ -503,13 +503,13 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.feature-card-item:hover {
|
.feature-card-item:hover {
|
||||||
border-color: #9cc6ef;
|
border-color: #869bf0;
|
||||||
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
||||||
transform: translateY(-2px);
|
transform: translateY(-2px);
|
||||||
}
|
}
|
||||||
|
|
||||||
.feature-card-item.feature-enabled {
|
.feature-card-item.feature-enabled {
|
||||||
border-color: #409eff;
|
border-color:#5778ff;
|
||||||
box-shadow: 0 4px 16px rgba(95, 112, 243, 0.2);
|
box-shadow: 0 4px 16px rgba(95, 112, 243, 0.2);
|
||||||
transform: translateY(-2px);
|
transform: translateY(-2px);
|
||||||
}
|
}
|
||||||
@@ -525,6 +525,15 @@ export default {
|
|||||||
transform: scale(1.2);
|
transform: scale(1.2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.feature-checkbox ::v-deep .el-checkbox__input.is-checked .el-checkbox__inner {
|
||||||
|
background-color: #5778ff;
|
||||||
|
border-color: #5778ff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.feature-checkbox ::v-deep .el-checkbox__input.is-checked + .el-checkbox__label {
|
||||||
|
color: #5778ff;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
.feature-name {
|
.feature-name {
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
|
|||||||
@@ -58,7 +58,7 @@
|
|||||||
<el-form-item label="上下文源:" class="context-provider-item">
|
<el-form-item label="上下文源:" class="context-provider-item">
|
||||||
<div style="display: flex; align-items: center; justify-content: space-between;">
|
<div style="display: flex; align-items: center; justify-content: space-between;">
|
||||||
<span style="color: #606266; font-size: 13px;">
|
<span style="color: #606266; font-size: 13px;">
|
||||||
已成功添加 {{ currentContextProviders.length }} 个源。<a href="https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/master/docs/context-provider-integration.md" target="_blank" class="doc-link">如何部署上下文源</a>
|
已成功添加 {{ currentContextProviders.length }} 个源。<a href="https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/context-provider-integration.md" target="_blank" class="doc-link">如何部署上下文源</a>
|
||||||
</span>
|
</span>
|
||||||
<el-button
|
<el-button
|
||||||
class="edit-function-btn"
|
class="edit-function-btn"
|
||||||
@@ -1359,6 +1359,26 @@ export default {
|
|||||||
justify-content: flex-end;
|
justify-content: flex-end;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.chat-history-options ::v-deep .el-radio-button {
|
||||||
|
border-color: #5778ff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-history-options ::v-deep .el-radio-button .el-radio-button__inner {
|
||||||
|
color: #5778ff;
|
||||||
|
border-color: #5778ff;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-history-options ::v-deep .el-radio-button.is-active .el-radio-button__inner {
|
||||||
|
background-color: #5778ff;
|
||||||
|
border-color: #5778ff;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-history-options ::v-deep .el-radio-button .el-radio-button__inner:hover {
|
||||||
|
color: #5778ff;
|
||||||
|
}
|
||||||
|
|
||||||
.header-actions {
|
.header-actions {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
@@ -1412,7 +1432,7 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.doc-link {
|
.doc-link {
|
||||||
color: #1677ff;
|
color: #5778ff;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
margin-left: 4px;
|
margin-left: 4px;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user