|
import { FormInstance } from 'antd'; |
|
import { Node } from 'reactflow'; |
|
|
|
export interface DSLComponentList { |
|
id: string; |
|
name: string; |
|
} |
|
|
|
export interface IOperatorForm { |
|
onValuesChange?(changedValues: any, values: any): void; |
|
form?: FormInstance; |
|
node?: Node<NodeData>; |
|
nodeId?: string; |
|
} |
|
|
|
export interface IBeginForm { |
|
prologue?: string; |
|
} |
|
|
|
export interface IRetrievalForm { |
|
similarity_threshold?: number; |
|
keywords_similarity_weight?: number; |
|
top_n?: number; |
|
top_k?: number; |
|
rerank_id?: string; |
|
empty_response?: string; |
|
kb_ids: string[]; |
|
} |
|
|
|
export interface IGenerateForm { |
|
max_tokens?: number; |
|
temperature?: number; |
|
top_p?: number; |
|
presence_penalty?: number; |
|
frequency_penalty?: number; |
|
cite?: boolean; |
|
prompt: number; |
|
llm_id: string; |
|
parameters: { key: string; component_id: string }; |
|
} |
|
export interface ICategorizeItem { |
|
name: string; |
|
description?: string; |
|
examples?: string; |
|
to?: string; |
|
index: number; |
|
} |
|
|
|
export interface IGenerateParameter { |
|
id?: string; |
|
key: string; |
|
component_id?: string; |
|
} |
|
|
|
export interface IInvokeVariable extends IGenerateParameter { |
|
value?: string; |
|
} |
|
|
|
export type ICategorizeItemResult = Record< |
|
string, |
|
Omit<ICategorizeItem, 'name'> |
|
>; |
|
export interface ICategorizeForm extends IGenerateForm { |
|
category_description: ICategorizeItemResult; |
|
} |
|
|
|
export interface IRelevantForm extends IGenerateForm { |
|
yes: string; |
|
no: string; |
|
} |
|
|
|
export interface ISwitchCondition { |
|
items: ISwitchItem[]; |
|
logical_operator: string; |
|
to: string; |
|
} |
|
|
|
export interface ISwitchItem { |
|
cpn_id: string; |
|
operator: string; |
|
value: string; |
|
} |
|
|
|
export interface ISwitchForm { |
|
conditions: ISwitchCondition[]; |
|
end_cpn_id: string; |
|
no: string; |
|
} |
|
|
|
export type NodeData = { |
|
label: string; |
|
name: string; |
|
color: string; |
|
form: |
|
| IBeginForm |
|
| IRetrievalForm |
|
| IGenerateForm |
|
| ICategorizeForm |
|
| ISwitchForm; |
|
}; |
|
|
|
export type IPosition = { top: number; right: number; idx: number }; |
|
|
|
export interface BeginQuery { |
|
key: string; |
|
type: string; |
|
value: string; |
|
optional: boolean; |
|
name: string; |
|
options: (number | string | boolean)[]; |
|
} |
|
|