mirror of
https://github.com/infiniflow/ragflow.git
synced 2025-12-08 20:42:30 +08:00
### What problem does this PR solve? Feat: Displays the embedded page of the chat module #3221 Feat: Let the agen operator support the selection of tts model #3221 ### Type of change - [x] New Feature (non-breaking change which adds functionality)
181 lines
3.3 KiB
TypeScript
181 lines
3.3 KiB
TypeScript
import { MessageType } from '@/constants/chat';
|
|
|
|
export interface PromptConfig {
|
|
empty_response: string;
|
|
parameters: Parameter[];
|
|
prologue: string;
|
|
system: string;
|
|
tts?: boolean;
|
|
quote: boolean;
|
|
keyword: boolean;
|
|
refine_multiturn: boolean;
|
|
use_kg: boolean;
|
|
}
|
|
|
|
export interface Parameter {
|
|
key: string;
|
|
optional: boolean;
|
|
}
|
|
|
|
export interface LlmSetting {
|
|
Creative: Variable;
|
|
Custom: Variable;
|
|
Evenly: Variable;
|
|
Precise: Variable;
|
|
}
|
|
|
|
export interface Variable {
|
|
frequency_penalty?: number;
|
|
max_tokens?: number;
|
|
presence_penalty?: number;
|
|
temperature?: number;
|
|
top_p?: number;
|
|
llm_id?: string;
|
|
}
|
|
|
|
export interface IDialog {
|
|
create_date: string;
|
|
create_time: number;
|
|
description: string;
|
|
icon: string;
|
|
id: string;
|
|
dialog_id: string;
|
|
kb_ids: string[];
|
|
kb_names: string[];
|
|
language: string;
|
|
llm_id: string;
|
|
llm_setting: Variable;
|
|
llm_setting_type: string;
|
|
name: string;
|
|
prompt_config: PromptConfig;
|
|
prompt_type: string;
|
|
status: string;
|
|
tenant_id: string;
|
|
update_date: string;
|
|
update_time: number;
|
|
vector_similarity_weight: number;
|
|
similarity_threshold: number;
|
|
top_k: number;
|
|
top_n: number;
|
|
meta_data_filter: MetaDataFilter;
|
|
}
|
|
|
|
interface MetaDataFilter {
|
|
manual: Manual[];
|
|
method: string;
|
|
}
|
|
|
|
interface Manual {
|
|
key: string;
|
|
op: string;
|
|
value: string;
|
|
}
|
|
|
|
export interface IConversation {
|
|
create_date: string;
|
|
create_time: number;
|
|
dialog_id: string;
|
|
id: string;
|
|
avatar: string;
|
|
message: Message[];
|
|
reference: IReference[];
|
|
name: string;
|
|
update_date: string;
|
|
update_time: number;
|
|
is_new: true;
|
|
}
|
|
|
|
export interface Message {
|
|
content: string;
|
|
role: MessageType;
|
|
doc_ids?: string[];
|
|
prompt?: string;
|
|
id?: string;
|
|
audio_binary?: string;
|
|
data?: any;
|
|
files?: File[];
|
|
chatBoxId?: string;
|
|
}
|
|
|
|
export interface IReferenceChunk {
|
|
id: string;
|
|
content: null;
|
|
document_id: string;
|
|
document_name: string;
|
|
dataset_id: string;
|
|
image_id: string;
|
|
similarity: number;
|
|
vector_similarity: number;
|
|
term_similarity: number;
|
|
positions: number[];
|
|
doc_type?: string;
|
|
}
|
|
|
|
export interface IReference {
|
|
chunks: IReferenceChunk[];
|
|
doc_aggs: Docagg[];
|
|
total: number;
|
|
}
|
|
|
|
export interface IReferenceObject {
|
|
chunks: Record<string, IReferenceChunk>;
|
|
doc_aggs: Record<string, Docagg>;
|
|
}
|
|
|
|
export interface IAnswer {
|
|
answer: string;
|
|
reference?: IReference;
|
|
conversationId?: string;
|
|
prompt?: string;
|
|
id?: string;
|
|
audio_binary?: string;
|
|
data?: any;
|
|
chatBoxId?: string;
|
|
}
|
|
|
|
export interface Docagg {
|
|
count: number;
|
|
doc_id: string;
|
|
doc_name: string;
|
|
url?: string;
|
|
}
|
|
|
|
// interface Chunk {
|
|
// chunk_id: string;
|
|
// content_ltks: string;
|
|
// content_with_weight: string;
|
|
// doc_id: string;
|
|
// docnm_kwd: string;
|
|
// img_id: string;
|
|
// important_kwd: any[];
|
|
// kb_id: string;
|
|
// similarity: number;
|
|
// term_similarity: number;
|
|
// vector_similarity: number;
|
|
// }
|
|
|
|
export interface IToken {
|
|
create_date: string;
|
|
create_time: number;
|
|
tenant_id: string;
|
|
token: string;
|
|
update_date?: any;
|
|
update_time?: any;
|
|
beta: string;
|
|
}
|
|
|
|
export interface IStats {
|
|
pv: [string, number][];
|
|
uv: [string, number][];
|
|
speed: [string, number][];
|
|
tokens: [string, number][];
|
|
round: [string, number][];
|
|
thumb_up: [string, number][];
|
|
}
|
|
|
|
export interface IExternalChatInfo {
|
|
avatar?: string;
|
|
title: string;
|
|
prologue?: string;
|
|
}
|