Skip to content

Commit 570c891

Browse files
fix: scrollbar
1 parent 8ee575b commit 570c891

File tree

4 files changed

+184
-174
lines changed

4 files changed

+184
-174
lines changed

ui/src/components/ai-chat/component/knowledge-source-component/index.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@
6262
</div>
6363
<!-- 知识库引用/执行详情 dialog -->
6464
<el-dialog
65-
class="chat-source-dialog"
65+
class="scrollbar-dialog"
6666
:title="dialogTitle"
6767
v-model="dialogVisible"
6868
destroy-on-close

ui/src/styles/component.scss

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@
5050
align-items: flex-start;
5151
height: 100%;
5252
width: 100%;
53+
margin: 0;
5354
}
5455
.el-radio__label {
5556
width: 100%;
@@ -216,7 +217,7 @@
216217
}
217218

218219
// 带滚动条dialog
219-
.chat-source-dialog {
220+
.scrollbar-dialog {
220221
padding: 16px !important;
221222
.el-dialog__header {
222223
padding: 4px 16px 12px 12px;

ui/src/views/application/component/ParamSettingDialog.vue

Lines changed: 167 additions & 160 deletions
Original file line numberDiff line numberDiff line change
@@ -1,179 +1,186 @@
11
<template>
22
<el-dialog
3+
class="scrollbar-dialog"
34
align-center
45
:title="$t('common.paramSetting')"
5-
class="param-dialog"
66
v-model="dialogVisible"
7-
style="width: 550px"
7+
width="550px"
88
append-to-body
99
:close-on-click-modal="false"
1010
:close-on-press-escape="false"
1111
>
1212
<el-scrollbar max-height="550">
13-
<el-form label-position="top" ref="paramFormRef" :model="form" v-loading="loading">
14-
<el-form-item :label="$t('views.application.dialog.selectSearchMode')">
15-
<el-radio-group
16-
v-model="form.knowledge_setting.search_mode"
17-
class="card__radio"
18-
@change="changeHandle"
19-
>
20-
<el-card
21-
shadow="never"
22-
class="mb-16"
23-
:class="form.search_mode === 'embedding' ? 'active' : ''"
24-
>
25-
<el-radio value="embedding" size="large">
26-
<p class="mb-4">
27-
{{ $t('views.application.dialog.vectorSearch') }}
28-
</p>
29-
<el-text type="info">{{
30-
$t('views.application.dialog.vectorSearchTooltip')
31-
}}</el-text>
32-
</el-radio>
33-
</el-card>
34-
<el-card
35-
shadow="never"
36-
class="mb-16"
37-
:class="form.knowledge_setting.search_mode === 'keywords' ? 'active' : ''"
38-
>
39-
<el-radio value="keywords" size="large">
40-
<p class="mb-4">
41-
{{ $t('views.application.dialog.fullTextSearch') }}
42-
</p>
43-
<el-text type="info">{{
44-
$t('views.application.dialog.fullTextSearchTooltip')
45-
}}</el-text>
46-
</el-radio>
47-
</el-card>
48-
<el-card
49-
shadow="never"
50-
:class="form.knowledge_setting.search_mode === 'blend' ? 'active' : ''"
13+
<div class="p-8">
14+
<el-form label-position="top" ref="paramFormRef" :model="form" v-loading="loading">
15+
<el-form-item :label="$t('views.application.dialog.selectSearchMode')">
16+
<el-radio-group
17+
v-model="form.knowledge_setting.search_mode"
18+
class="card__radio"
19+
@change="changeHandle"
5120
>
52-
<el-radio value="blend" size="large">
53-
<p class="mb-4">
54-
{{ $t('views.application.dialog.hybridSearch') }}
55-
</p>
56-
<el-text type="info">{{
57-
$t('views.application.dialog.hybridSearchTooltip')
58-
}}</el-text>
59-
</el-radio>
60-
</el-card>
61-
</el-radio-group>
62-
</el-form-item>
63-
<el-row :gutter="20">
64-
<el-col :span="12">
65-
<el-form-item>
66-
<template #label>
67-
<div class="flex align-center">
68-
<span class="mr-4">{{ $t('views.application.dialog.similarityThreshold') }}</span>
69-
<el-tooltip
70-
effect="dark"
71-
:content="$t('views.application.dialog.similarityTooltip')"
72-
placement="right"
73-
>
74-
<AppIcon iconName="app-warning" class="app-warning-icon"></AppIcon>
75-
</el-tooltip>
76-
</div>
77-
</template>
78-
<el-input-number
79-
v-model="form.knowledge_setting.similarity"
80-
:min="0"
81-
:max="form.knowledge_setting.search_mode === 'blend' ? 2 : 1"
82-
:precision="3"
83-
:step="0.1"
84-
:value-on-clear="0"
85-
controls-position="right"
86-
class="w-full"
87-
/>
88-
</el-form-item>
89-
</el-col>
90-
<el-col :span="12">
91-
<el-form-item :label="$t('views.application.dialog.topReferences')">
92-
<el-input-number
93-
v-model="form.knowledge_setting.top_n"
94-
:min="1"
95-
:max="10000"
96-
:value-on-clear="1"
97-
controls-position="right"
98-
class="w-full"
99-
/>
100-
</el-form-item>
101-
</el-col>
102-
</el-row>
103-
104-
<el-form-item :label="$t('views.application.dialog.maxCharacters')">
105-
<el-slider
106-
v-model="form.knowledge_setting.max_paragraph_char_number"
107-
show-input
108-
:show-input-controls="false"
109-
:min="500"
110-
:max="100000"
111-
class="custom-slider"
112-
/>
113-
</el-form-item>
21+
<el-card
22+
shadow="never"
23+
class="mb-16"
24+
:class="form.search_mode === 'embedding' ? 'active' : ''"
25+
>
26+
<el-radio value="embedding" size="large">
27+
<p class="mb-4">
28+
{{ $t('views.application.dialog.vectorSearch') }}
29+
</p>
30+
<el-text type="info">{{
31+
$t('views.application.dialog.vectorSearchTooltip')
32+
}}</el-text>
33+
</el-radio>
34+
</el-card>
35+
<el-card
36+
shadow="never"
37+
class="mb-16"
38+
:class="form.knowledge_setting.search_mode === 'keywords' ? 'active' : ''"
39+
>
40+
<el-radio value="keywords" size="large">
41+
<p class="mb-4">
42+
{{ $t('views.application.dialog.fullTextSearch') }}
43+
</p>
44+
<el-text type="info">{{
45+
$t('views.application.dialog.fullTextSearchTooltip')
46+
}}</el-text>
47+
</el-radio>
48+
</el-card>
49+
<el-card
50+
shadow="never"
51+
:class="form.knowledge_setting.search_mode === 'blend' ? 'active' : ''"
52+
>
53+
<el-radio value="blend" size="large">
54+
<p class="mb-4">
55+
{{ $t('views.application.dialog.hybridSearch') }}
56+
</p>
57+
<el-text type="info">{{
58+
$t('views.application.dialog.hybridSearchTooltip')
59+
}}</el-text>
60+
</el-radio>
61+
</el-card>
62+
</el-radio-group>
63+
</el-form-item>
64+
<el-row :gutter="10">
65+
<el-col :span="12">
66+
<el-form-item>
67+
<template #label>
68+
<div class="flex align-center">
69+
<span class="mr-4">{{
70+
$t('views.application.dialog.similarityThreshold')
71+
}}</span>
72+
<el-tooltip
73+
effect="dark"
74+
:content="$t('views.application.dialog.similarityTooltip')"
75+
placement="right"
76+
>
77+
<AppIcon iconName="app-warning" class="app-warning-icon"></AppIcon>
78+
</el-tooltip>
79+
</div>
80+
</template>
81+
<el-input-number
82+
v-model="form.knowledge_setting.similarity"
83+
:min="0"
84+
:max="form.knowledge_setting.search_mode === 'blend' ? 2 : 1"
85+
:precision="3"
86+
:step="0.1"
87+
:value-on-clear="0"
88+
controls-position="right"
89+
class="w-full"
90+
/>
91+
</el-form-item>
92+
</el-col>
93+
<el-col :span="12">
94+
<el-form-item :label="$t('views.application.dialog.topReferences')">
95+
<el-input-number
96+
v-model="form.knowledge_setting.top_n"
97+
:min="1"
98+
:max="10000"
99+
:value-on-clear="1"
100+
controls-position="right"
101+
class="w-full"
102+
/>
103+
</el-form-item>
104+
</el-col>
105+
</el-row>
106+
<el-form-item :label="$t('views.application.dialog.maxCharacters')">
107+
<el-slider
108+
v-model="form.knowledge_setting.max_paragraph_char_number"
109+
show-input
110+
:show-input-controls="false"
111+
:min="500"
112+
:max="100000"
113+
class="custom-slider"
114+
/>
115+
</el-form-item>
114116

115-
<el-form-item
116-
v-if="!isWorkflowType"
117-
:label="$t('views.application.dialog.noReferencesAction')"
118-
>
119-
<el-form
120-
label-position="top"
121-
ref="noReferencesformRef"
122-
:model="noReferencesform"
123-
:rules="noReferencesRules"
124-
:hide-required-asterisk="true"
125-
class="w-full"
117+
<el-form-item
118+
v-if="!isWorkflowType"
119+
:label="$t('views.application.dialog.noReferencesAction')"
126120
>
127-
<el-radio-group
128-
v-model="form.knowledge_setting.no_references_setting.status"
129-
class="radio-block-avatar"
121+
<el-form
122+
label-position="top"
123+
ref="noReferencesformRef"
124+
:model="noReferencesform"
125+
:rules="noReferencesRules"
126+
:hide-required-asterisk="true"
127+
class="w-full"
130128
>
131-
<el-radio value="ai_questioning">
132-
<p>
133-
{{ $t('views.application.dialog.continueQuestioning') }}
134-
</p>
135-
</el-radio>
129+
<el-radio-group
130+
v-model="form.knowledge_setting.no_references_setting.status"
131+
class="radio-block-avatar"
132+
>
133+
<el-radio value="ai_questioning">
134+
<p>
135+
{{ $t('views.application.dialog.continueQuestioning') }}
136+
</p>
137+
</el-radio>
136138

137-
<el-radio value="designated_answer">
138-
<p>{{ $t('views.application.dialog.provideAnswer') }}</p>
139-
<el-form-item
140-
v-if="form.knowledge_setting.no_references_setting.status === 'designated_answer'"
141-
prop="designated_answer"
142-
>
143-
<el-input
144-
v-model="noReferencesform.designated_answer"
145-
:rows="2"
146-
type="textarea"
147-
maxlength="2048"
148-
:placeholder="defaultValue['designated_answer']"
149-
/>
150-
</el-form-item>
151-
</el-radio>
152-
</el-radio-group>
153-
</el-form>
154-
</el-form-item>
139+
<el-radio value="designated_answer">
140+
<p>{{ $t('views.application.dialog.provideAnswer') }}</p>
141+
<el-form-item
142+
v-if="
143+
form.knowledge_setting.no_references_setting.status === 'designated_answer'
144+
"
145+
prop="designated_answer"
146+
>
147+
<el-input
148+
v-model="noReferencesform.designated_answer"
149+
:rows="2"
150+
type="textarea"
151+
maxlength="2048"
152+
:placeholder="defaultValue['designated_answer']"
153+
/>
154+
</el-form-item>
155+
</el-radio>
156+
</el-radio-group>
157+
</el-form>
158+
</el-form-item>
159+
<el-form-item @click.prevent v-if="!isWorkflowType">
160+
<template #label>
161+
<div class="flex align-center">
162+
<span class="mr-4">{{
163+
$t('views.application.form.problemOptimization.label')
164+
}}</span>
165+
</div>
166+
</template>
167+
<el-switch size="small" v-model="form.problem_optimization"></el-switch>
168+
</el-form-item>
169+
<el-form-item
170+
v-if="form.problem_optimization"
171+
:label="$t('views.application.form.prompt.label')"
172+
>
173+
<el-input
174+
v-model="form.problem_optimization_prompt"
175+
:rows="6"
176+
type="textarea"
177+
maxlength="2048"
178+
:placeholder="defaultPrompt"
179+
/>
180+
</el-form-item>
155181

156-
<el-form-item @click.prevent v-if="!isWorkflowType">
157-
<template #label>
158-
<div class="flex align-center">
159-
<span class="mr-4">{{ $t('views.application.form.problemOptimization.label') }}</span>
160-
</div>
161-
</template>
162-
<el-switch size="small" v-model="form.problem_optimization"></el-switch>
163-
</el-form-item>
164-
<el-form-item
165-
v-if="form.problem_optimization"
166-
:label="$t('views.application.form.prompt.label')"
167-
>
168-
<el-input
169-
v-model="form.problem_optimization_prompt"
170-
:rows="6"
171-
type="textarea"
172-
maxlength="2048"
173-
:placeholder="defaultPrompt"
174-
/>
175-
</el-form-item>
176-
</el-form>
182+
</el-form>
183+
</div>
177184
</el-scrollbar>
178185

179186
<template #footer>

0 commit comments

Comments
 (0)