1
1
import { useEffect , useRef , useState } from "react" ;
2
2
import { Checkbox , Panel , DefaultButton , Spinner , TextField , SpinButton , IDropdownOption , Dropdown } from "@fluentui/react" ;
3
3
4
- import styles from "./OneShot .module.css" ;
4
+ import styles from "./Ask .module.css" ;
5
5
6
6
import { askApi , configApi , ChatAppResponse , ChatAppRequest , RetrievalMode , VectorFieldOptions , GPT4VInput } from "../../api" ;
7
7
import { Answer , AnswerError } from "../../components/Answer" ;
@@ -175,11 +175,11 @@ export function Component(): JSX.Element {
175
175
} ;
176
176
177
177
return (
178
- < div className = { styles . oneshotContainer } >
179
- < div className = { styles . oneshotTopSection } >
178
+ < div className = { styles . askContainer } >
179
+ < div className = { styles . askTopSection } >
180
180
< SettingsButton className = { styles . settingsButton } onClick = { ( ) => setIsConfigPanelOpen ( ! isConfigPanelOpen ) } />
181
- < h1 className = { styles . oneshotTitle } > Ask your data</ h1 >
182
- < div className = { styles . oneshotQuestionInput } >
181
+ < h1 className = { styles . askTitle } > Ask your data</ h1 >
182
+ < div className = { styles . askQuestionInput } >
183
183
< QuestionInput
184
184
placeholder = "Example: Does my plan cover annual eye exams?"
185
185
disabled = { isLoading }
@@ -188,11 +188,11 @@ export function Component(): JSX.Element {
188
188
/>
189
189
</ div >
190
190
</ div >
191
- < div className = { styles . oneshotBottomSection } >
191
+ < div className = { styles . askBottomSection } >
192
192
{ isLoading && < Spinner label = "Generating answer" /> }
193
193
{ ! lastQuestionRef . current && < ExampleList onExampleClicked = { onExampleClicked } useGPT4V = { useGPT4V } /> }
194
194
{ ! isLoading && answer && ! error && (
195
- < div className = { styles . oneshotAnswerContainer } >
195
+ < div className = { styles . askAnswerContainer } >
196
196
< Answer
197
197
answer = { answer }
198
198
isStreaming = { false }
@@ -203,13 +203,13 @@ export function Component(): JSX.Element {
203
203
</ div >
204
204
) }
205
205
{ error ? (
206
- < div className = { styles . oneshotAnswerContainer } >
206
+ < div className = { styles . askAnswerContainer } >
207
207
< AnswerError error = { error . toString ( ) } onRetry = { ( ) => makeApiRequest ( lastQuestionRef . current ) } />
208
208
</ div >
209
209
) : null }
210
210
{ activeAnalysisPanelTab && answer && (
211
211
< AnalysisPanel
212
- className = { styles . oneshotAnalysisPanel }
212
+ className = { styles . askAnalysisPanel }
213
213
activeCitation = { activeCitation }
214
214
onActiveTabChanged = { x => onToggleTab ( x ) }
215
215
citationHeight = "600px"
@@ -229,34 +229,34 @@ export function Component(): JSX.Element {
229
229
isFooterAtBottom = { true }
230
230
>
231
231
< TextField
232
- className = { styles . oneshotSettingsSeparator }
232
+ className = { styles . askSettingsSeparator }
233
233
defaultValue = { promptTemplate }
234
234
label = "Override prompt template"
235
235
multiline
236
236
autoAdjustHeight
237
237
onChange = { onPromptTemplateChange }
238
238
/>
239
239
< SpinButton
240
- className = { styles . oneshotSettingsSeparator }
240
+ className = { styles . askSettingsSeparator }
241
241
label = "Retrieve this many search results:"
242
242
min = { 1 }
243
243
max = { 50 }
244
244
defaultValue = { retrieveCount . toString ( ) }
245
245
onChange = { onRetrieveCountChange }
246
246
/>
247
- < TextField className = { styles . oneshotSettingsSeparator } label = "Exclude category" onChange = { onExcludeCategoryChanged } />
247
+ < TextField className = { styles . askSettingsSeparator } label = "Exclude category" onChange = { onExcludeCategoryChanged } />
248
248
249
249
{ showSemanticRankerOption && (
250
250
< Checkbox
251
- className = { styles . oneshotSettingsSeparator }
251
+ className = { styles . askSettingsSeparator }
252
252
checked = { useSemanticRanker }
253
253
label = "Use semantic ranker for retrieval"
254
254
onChange = { onUseSemanticRankerChange }
255
255
/>
256
256
) }
257
257
258
258
< Checkbox
259
- className = { styles . oneshotSettingsSeparator }
259
+ className = { styles . askSettingsSeparator }
260
260
checked = { useSemanticCaptions }
261
261
label = "Use query-contextual summaries instead of whole documents"
262
262
onChange = { onUseSemanticCaptionsChange }
@@ -284,7 +284,7 @@ export function Component(): JSX.Element {
284
284
285
285
{ useLogin && (
286
286
< Checkbox
287
- className = { styles . oneshotSettingsSeparator }
287
+ className = { styles . askSettingsSeparator }
288
288
checked = { useOidSecurityFilter || requireAccessControl }
289
289
label = "Use oid security filter"
290
290
disabled = { ! isLoggedIn ( client ) || requireAccessControl }
@@ -293,7 +293,7 @@ export function Component(): JSX.Element {
293
293
) }
294
294
{ useLogin && (
295
295
< Checkbox
296
- className = { styles . oneshotSettingsSeparator }
296
+ className = { styles . askSettingsSeparator }
297
297
checked = { useGroupsSecurityFilter || requireAccessControl }
298
298
label = "Use groups security filter"
299
299
disabled = { ! isLoggedIn ( client ) || requireAccessControl }
@@ -306,4 +306,4 @@ export function Component(): JSX.Element {
306
306
) ;
307
307
}
308
308
309
- Component . displayName = "OneShot " ;
309
+ Component . displayName = "Ask " ;
0 commit comments