| | import type { AgentStrategy, ModelModeType, RETRIEVE_TYPE, ToolItem, TtsAutoPlay } from '@/types/app' |
| | import type { |
| | RerankingModeEnum, |
| | } from '@/models/datasets' |
| | import type { FileUpload } from '@/app/components/base/features/types' |
| | export type Inputs = Record<string, string | number | object> |
| |
|
| | export enum PromptMode { |
| | simple = 'simple', |
| | advanced = 'advanced', |
| | } |
| |
|
| | export type PromptItem = { |
| | role?: PromptRole |
| | text: string |
| | } |
| |
|
| | export type ChatPromptConfig = { |
| | prompt: PromptItem[] |
| | } |
| |
|
| | export type ConversationHistoriesRole = { |
| | user_prefix: string |
| | assistant_prefix: string |
| | } |
| | export type CompletionPromptConfig = { |
| | prompt: PromptItem |
| | conversation_histories_role: ConversationHistoriesRole |
| | } |
| |
|
| | export type BlockStatus = { |
| | context: boolean |
| | history: boolean |
| | query: boolean |
| | } |
| |
|
| | export enum PromptRole { |
| | system = 'system', |
| | user = 'user', |
| | assistant = 'assistant', |
| | } |
| |
|
| | export type PromptVariable = { |
| | key: string |
| | name: string |
| | type: string |
| | default?: string | number |
| | required?: boolean |
| | options?: string[] |
| | max_length?: number |
| | is_context_var?: boolean |
| | enabled?: boolean |
| | config?: Record<string, any> |
| | icon?: string |
| | icon_background?: string |
| | } |
| |
|
| | export type CompletionParams = { |
| | max_tokens: number |
| | temperature: number |
| | top_p: number |
| | presence_penalty: number |
| | frequency_penalty: number |
| | stop?: string[] |
| | } |
| |
|
| | export type ModelId = 'gpt-3.5-turbo' | 'text-davinci-003' |
| |
|
| | export type PromptConfig = { |
| | prompt_template: string |
| | prompt_variables: PromptVariable[] |
| | } |
| |
|
| | export type MoreLikeThisConfig = { |
| | enabled: boolean |
| | } |
| |
|
| | export type SuggestedQuestionsAfterAnswerConfig = MoreLikeThisConfig |
| |
|
| | export type SpeechToTextConfig = MoreLikeThisConfig |
| |
|
| | export type TextToSpeechConfig = { |
| | enabled: boolean |
| | voice?: string |
| | language?: string |
| | autoPlay?: TtsAutoPlay |
| | } |
| |
|
| | export type CitationConfig = MoreLikeThisConfig |
| |
|
| | export type AnnotationReplyConfig = { |
| | id: string |
| | enabled: boolean |
| | score_threshold: number |
| | embedding_model: { |
| | embedding_provider_name: string |
| | embedding_model_name: string |
| | } |
| | } |
| |
|
| | export type ModerationContentConfig = { |
| | enabled: boolean |
| | preset_response?: string |
| | } |
| | export type ModerationConfig = MoreLikeThisConfig & { |
| | type?: string |
| | config?: { |
| | keywords?: string |
| | api_based_extension_id?: string |
| | inputs_config?: ModerationContentConfig |
| | outputs_config?: ModerationContentConfig |
| | } & Partial<Record<string, any>> |
| | } |
| |
|
| | export type RetrieverResourceConfig = MoreLikeThisConfig |
| | export type AgentConfig = { |
| | enabled: boolean |
| | strategy: AgentStrategy |
| | max_iteration: number |
| | tools: ToolItem[] |
| | } |
| | |
| | export type ModelConfig = { |
| | provider: string |
| | model_id: string |
| | mode: ModelModeType |
| | configs: PromptConfig |
| | opening_statement: string | null |
| | more_like_this: MoreLikeThisConfig | null |
| | suggested_questions: string[] | null |
| | suggested_questions_after_answer: SuggestedQuestionsAfterAnswerConfig | null |
| | speech_to_text: SpeechToTextConfig | null |
| | text_to_speech: TextToSpeechConfig | null |
| | file_upload: FileUpload | null |
| | retriever_resource: RetrieverResourceConfig | null |
| | sensitive_word_avoidance: ModerationConfig | null |
| | annotation_reply: AnnotationReplyConfig | null |
| | dataSets: any[] |
| | agentConfig: AgentConfig |
| | } |
| | export type DatasetConfigItem = { |
| | enable: boolean |
| | value: number |
| | } |
| |
|
| | export type DatasetConfigs = { |
| | retrieval_model: RETRIEVE_TYPE |
| | reranking_model: { |
| | reranking_provider_name: string |
| | reranking_model_name: string |
| | } |
| | top_k: number |
| | score_threshold_enabled: boolean |
| | score_threshold: number | null | undefined |
| | datasets: { |
| | datasets: { |
| | enabled: boolean |
| | id: string |
| | }[] |
| | } |
| | reranking_mode?: RerankingModeEnum |
| | weights?: { |
| | vector_setting: { |
| | vector_weight: number |
| | embedding_provider_name: string |
| | embedding_model_name: string |
| | } |
| | keyword_setting: { |
| | keyword_weight: number |
| | } |
| | } |
| | reranking_enable?: boolean |
| | } |
| |
|
| | export type DebugRequestBody = { |
| | inputs: Inputs |
| | query: string |
| | completion_params: CompletionParams |
| | model_config: ModelConfig |
| | } |
| |
|
| | export type DebugResponse = { |
| | id: string |
| | answer: string |
| | created_at: string |
| | } |
| |
|
| | export type DebugResponseStream = { |
| | id: string |
| | data: string |
| | created_at: string |
| | } |
| |
|
| | export type FeedBackRequestBody = { |
| | message_id: string |
| | rating: 'like' | 'dislike' |
| | content?: string |
| | from_source: 'api' | 'log' |
| | } |
| |
|
| | export type FeedBackResponse = { |
| | message_id: string |
| | rating: 'like' | 'dislike' |
| | } |
| |
|
| | |
| | export type LogSessionListQuery = { |
| | keyword?: string |
| | start?: string |
| | end?: string |
| | page: number |
| | limit: number |
| | } |
| |
|
| | export type LogSessionListResponse = { |
| | data: { |
| | id: string |
| | conversation_id: string |
| | query: string |
| | message: string |
| | answer: string |
| | created_at: string |
| | }[] |
| | total: number |
| | page: number |
| | } |
| |
|
| | |
| | export type LogSessionDetailResponse = { |
| | id: string |
| | conversation_id: string |
| | model_provider: string |
| | query: string |
| | inputs: Record<string, string | number | object>[] |
| | message: string |
| | message_tokens: number |
| | answer: string |
| | answer_tokens: number |
| | provider_response_latency: number |
| | from_source: 'api' | 'log' |
| | } |
| |
|
| | export type SavedMessage = { |
| | id: string |
| | answer: string |
| | } |
| |
|