Introduce Plugins (#13836)

Signed-off-by: yihong0618 <zouzou0208@gmail.com>
Signed-off-by: -LAN- <laipz8200@outlook.com>
Signed-off-by: xhe <xw897002528@gmail.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: takatost <takatost@gmail.com>
Co-authored-by: kurokobo <kuro664@gmail.com>
Co-authored-by: Novice Lee <novicelee@NoviPro.local>
Co-authored-by: zxhlyh <jasonapring2015@outlook.com>
Co-authored-by: AkaraChen <akarachen@outlook.com>
Co-authored-by: Yi <yxiaoisme@gmail.com>
Co-authored-by: Joel <iamjoel007@gmail.com>
Co-authored-by: JzoNg <jzongcode@gmail.com>
Co-authored-by: twwu <twwu@dify.ai>
Co-authored-by: Hiroshi Fujita <fujita-h@users.noreply.github.com>
Co-authored-by: AkaraChen <85140972+AkaraChen@users.noreply.github.com>
Co-authored-by: NFish <douxc512@gmail.com>
Co-authored-by: Wu Tianwei <30284043+WTW0313@users.noreply.github.com>
Co-authored-by: 非法操作 <hjlarry@163.com>
Co-authored-by: Novice <857526207@qq.com>
Co-authored-by: Hiroki Nagai <82458324+nagaihiroki-git@users.noreply.github.com>
Co-authored-by: Gen Sato <52241300+halogen22@users.noreply.github.com>
Co-authored-by: eux <euxuuu@gmail.com>
Co-authored-by: huangzhuo1949 <167434202+huangzhuo1949@users.noreply.github.com>
Co-authored-by: huangzhuo <huangzhuo1@xiaomi.com>
Co-authored-by: lotsik <lotsik@mail.ru>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com>
Co-authored-by: nite-knite <nkCoding@gmail.com>
Co-authored-by: Jyong <76649700+JohnJyong@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: gakkiyomi <gakkiyomi@aliyun.com>
Co-authored-by: CN-P5 <heibai2006@gmail.com>
Co-authored-by: CN-P5 <heibai2006@qq.com>
Co-authored-by: Chuehnone <1897025+chuehnone@users.noreply.github.com>
Co-authored-by: yihong <zouzou0208@gmail.com>
Co-authored-by: Kevin9703 <51311316+Kevin9703@users.noreply.github.com>
Co-authored-by: -LAN- <laipz8200@outlook.com>
Co-authored-by: Boris Feld <lothiraldan@gmail.com>
Co-authored-by: mbo <himabo@gmail.com>
Co-authored-by: mabo <mabo@aeyes.ai>
Co-authored-by: Warren Chen <warren.chen830@gmail.com>
Co-authored-by: JzoNgKVO <27049666+JzoNgKVO@users.noreply.github.com>
Co-authored-by: jiandanfeng <chenjh3@wangsu.com>
Co-authored-by: zhu-an <70234959+xhdd123321@users.noreply.github.com>
Co-authored-by: zhaoqingyu.1075 <zhaoqingyu.1075@bytedance.com>
Co-authored-by: 海狸大師 <86974027+yenslife@users.noreply.github.com>
Co-authored-by: Xu Song <xusong.vip@gmail.com>
Co-authored-by: rayshaw001 <396301947@163.com>
Co-authored-by: Ding Jiatong <dingjiatong@gmail.com>
Co-authored-by: Bowen Liang <liangbowen@gf.com.cn>
Co-authored-by: JasonVV <jasonwangiii@outlook.com>
Co-authored-by: le0zh <newlight@qq.com>
Co-authored-by: zhuxinliang <zhuxinliang@didiglobal.com>
Co-authored-by: k-zaku <zaku99@outlook.jp>
Co-authored-by: luckylhb90 <luckylhb90@gmail.com>
Co-authored-by: hobo.l <hobo.l@binance.com>
Co-authored-by: jiangbo721 <365065261@qq.com>
Co-authored-by: 刘江波 <jiangbo721@163.com>
Co-authored-by: Shun Miyazawa <34241526+miya@users.noreply.github.com>
Co-authored-by: EricPan <30651140+Egfly@users.noreply.github.com>
Co-authored-by: crazywoola <427733928@qq.com>
Co-authored-by: sino <sino2322@gmail.com>
Co-authored-by: Jhvcc <37662342+Jhvcc@users.noreply.github.com>
Co-authored-by: lowell <lowell.hu@zkteco.in>
Co-authored-by: Boris Polonsky <BorisPolonsky@users.noreply.github.com>
Co-authored-by: Ademílson Tonato <ademilsonft@outlook.com>
Co-authored-by: Ademílson Tonato <ademilson.tonato@refurbed.com>
Co-authored-by: IWAI, Masaharu <iwaim.sub@gmail.com>
Co-authored-by: Yueh-Po Peng (Yabi) <94939112+y10ab1@users.noreply.github.com>
Co-authored-by: Jason <ggbbddjm@gmail.com>
Co-authored-by: Xin Zhang <sjhpzx@gmail.com>
Co-authored-by: yjc980121 <3898524+yjc980121@users.noreply.github.com>
Co-authored-by: heyszt <36215648+hieheihei@users.noreply.github.com>
Co-authored-by: Abdullah AlOsaimi <osaimiacc@gmail.com>
Co-authored-by: Abdullah AlOsaimi <189027247+osaimi@users.noreply.github.com>
Co-authored-by: Yingchun Lai <laiyingchun@apache.org>
Co-authored-by: Hash Brown <hi@xzd.me>
Co-authored-by: zuodongxu <192560071+zuodongxu@users.noreply.github.com>
Co-authored-by: Masashi Tomooka <tmokmss@users.noreply.github.com>
Co-authored-by: aplio <ryo.091219@gmail.com>
Co-authored-by: Obada Khalili <54270856+obadakhalili@users.noreply.github.com>
Co-authored-by: Nam Vu <zuzoovn@gmail.com>
Co-authored-by: Kei YAMAZAKI <1715090+kei-yamazaki@users.noreply.github.com>
Co-authored-by: TechnoHouse <13776377+deephbz@users.noreply.github.com>
Co-authored-by: Riddhimaan-Senapati <114703025+Riddhimaan-Senapati@users.noreply.github.com>
Co-authored-by: MaFee921 <31881301+2284730142@users.noreply.github.com>
Co-authored-by: te-chan <t-nakanome@sakura-is.co.jp>
Co-authored-by: HQidea <HQidea@users.noreply.github.com>
Co-authored-by: Joshbly <36315710+Joshbly@users.noreply.github.com>
Co-authored-by: xhe <xw897002528@gmail.com>
Co-authored-by: weiwenyan-dev <154779315+weiwenyan-dev@users.noreply.github.com>
Co-authored-by: ex_wenyan.wei <ex_wenyan.wei@tcl.com>
Co-authored-by: engchina <12236799+engchina@users.noreply.github.com>
Co-authored-by: engchina <atjapan2015@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: 呆萌闷油瓶 <253605712@qq.com>
Co-authored-by: Kemal <kemalmeler@outlook.com>
Co-authored-by: Lazy_Frog <4590648+lazyFrogLOL@users.noreply.github.com>
Co-authored-by: Yi Xiao <54782454+YIXIAO0@users.noreply.github.com>
Co-authored-by: Steven sun <98230804+Tuyohai@users.noreply.github.com>
Co-authored-by: steven <sunzwj@digitalchina.com>
Co-authored-by: Kalo Chin <91766386+fdb02983rhy@users.noreply.github.com>
Co-authored-by: Katy Tao <34019945+KatyTao@users.noreply.github.com>
Co-authored-by: depy <42985524+h4ckdepy@users.noreply.github.com>
Co-authored-by: 胡春东 <gycm520@gmail.com>
Co-authored-by: Junjie.M <118170653@qq.com>
Co-authored-by: MuYu <mr.muzea@gmail.com>
Co-authored-by: Naoki Takashima <39912547+takatea@users.noreply.github.com>
Co-authored-by: Summer-Gu <37869445+gubinjie@users.noreply.github.com>
Co-authored-by: Fei He <droxer.he@gmail.com>
Co-authored-by: ybalbert001 <120714773+ybalbert001@users.noreply.github.com>
Co-authored-by: Yuanbo Li <ybalbert@amazon.com>
Co-authored-by: douxc <7553076+douxc@users.noreply.github.com>
Co-authored-by: liuzhenghua <1090179900@qq.com>
Co-authored-by: Wu Jiayang <62842862+Wu-Jiayang@users.noreply.github.com>
Co-authored-by: Your Name <you@example.com>
Co-authored-by: kimjion <45935338+kimjion@users.noreply.github.com>
Co-authored-by: AugNSo <song.tiankai@icloud.com>
Co-authored-by: llinvokerl <38915183+llinvokerl@users.noreply.github.com>
Co-authored-by: liusurong.lsr <liusurong.lsr@alibaba-inc.com>
Co-authored-by: Vasu Negi <vasu-negi@users.noreply.github.com>
Co-authored-by: Hundredwz <1808096180@qq.com>
Co-authored-by: Xiyuan Chen <52963600+GareArc@users.noreply.github.com>
This commit is contained in:
Yeuoly
2025-02-17 17:05:13 +08:00
committed by GitHub
parent 222df44d21
commit 403e2d58b9
3272 changed files with 66339 additions and 281594 deletions

View File

@@ -1,5 +1,6 @@
import type { LangFuseConfig, LangSmithConfig, OpikConfig, TracingProvider } from '@/app/(commonLayout)/app/(appDetailLayout)/[appId]/overview/tracing/type'
import type { App, AppSSO, AppTemplate, SiteConfig } from '@/types/app'
import type { Dependency } from '@/app/components/plugins/types'
/* export type App = {
id: string
@@ -87,6 +88,7 @@ export type DSLImportResponse = {
current_dsl_version?: string
imported_dsl_version?: string
error: string
leaked_dependencies: Dependency[]
}
export type AppSSOResponse = { enabled: AppSSO['enable_sso'] }

View File

@@ -1,23 +1,23 @@
import type { I18nText } from '@/i18n/language'
export type CommonResponse = {
export interface CommonResponse {
result: 'success' | 'fail'
}
export type OauthResponse = {
export interface OauthResponse {
redirect_url: string
}
export type SetupStatusResponse = {
export interface SetupStatusResponse {
step: 'finished' | 'not_started'
setup_at?: Date
}
export type InitValidateStatusResponse = {
export interface InitValidateStatusResponse {
status: 'finished' | 'not_started'
}
export type UserProfileResponse = {
export interface UserProfileResponse {
id: string
name: string
email: string
@@ -33,13 +33,13 @@ export type UserProfileResponse = {
created_at?: string
}
export type UserProfileOriginResponse = {
export interface UserProfileOriginResponse {
json: () => Promise<UserProfileResponse>
bodyUsed: boolean
headers: any
}
export type LangGeniusVersionResponse = {
export interface LangGeniusVersionResponse {
current_version: string
latest_version: string
version: string
@@ -49,7 +49,7 @@ export type LangGeniusVersionResponse = {
current_env: string
}
export type TenantInfoResponse = {
export interface TenantInfoResponse {
name: string
created_at: string
providers: Array<{
@@ -80,14 +80,14 @@ export enum ProviderName {
Tongyi = 'tongyi',
ChatGLM = 'chatglm',
}
export type ProviderAzureToken = {
export interface ProviderAzureToken {
openai_api_base?: string
openai_api_key?: string
}
export type ProviderAnthropicToken = {
export interface ProviderAnthropicToken {
anthropic_api_key?: string
}
export type ProviderTokenType = {
export interface ProviderTokenType {
[ProviderName.OPENAI]: string
[ProviderName.AZURE_OPENAI]: ProviderAzureToken
[ProviderName.ANTHROPIC]: ProviderAnthropicToken
@@ -110,14 +110,14 @@ export type ProviderHosted = Provider & {
quota_used: number
}
export type AccountIntegrate = {
export interface AccountIntegrate {
provider: 'google' | 'github'
created_at: number
is_bound: boolean
link: string
}
export type IWorkspace = {
export interface IWorkspace {
id: string
name: string
plan: string
@@ -137,7 +137,7 @@ export type ICurrentWorkspace = Omit<IWorkspace, 'current'> & {
}
}
export type DataSourceNotionPage = {
export interface DataSourceNotionPage {
page_icon: null | {
type: string | null
url: string | null
@@ -156,7 +156,7 @@ export type NotionPage = DataSourceNotionPage & {
export type DataSourceNotionPageMap = Record<string, DataSourceNotionPage & { workspace_id: string }>
export type DataSourceNotionWorkspace = {
export interface DataSourceNotionWorkspace {
workspace_name: string
workspace_id: string
workspace_icon: string | null
@@ -166,7 +166,7 @@ export type DataSourceNotionWorkspace = {
export type DataSourceNotionWorkspaceMap = Record<string, DataSourceNotionWorkspace>
export type DataSourceNotion = {
export interface DataSourceNotion {
id: string
provider: string
is_bound: boolean
@@ -181,12 +181,12 @@ export enum DataSourceProvider {
jinaReader = 'jinareader',
}
export type FirecrawlConfig = {
export interface FirecrawlConfig {
api_key: string
base_url: string
}
export type DataSourceItem = {
export interface DataSourceItem {
id: string
category: DataSourceCategory
provider: DataSourceProvider
@@ -195,15 +195,15 @@ export type DataSourceItem = {
updated_at: number
}
export type DataSources = {
export interface DataSources {
sources: DataSourceItem[]
}
export type GithubRepo = {
export interface GithubRepo {
stargazers_count: number
}
export type PluginProvider = {
export interface PluginProvider {
tool_name: string
is_enabled: boolean
credentials: {
@@ -211,7 +211,7 @@ export type PluginProvider = {
} | null
}
export type FileUploadConfigResponse = {
export interface FileUploadConfigResponse {
batch_count_limit: number
image_file_size_limit?: number | string // default is 10MB
file_size_limit: number // default is 15MB
@@ -234,14 +234,14 @@ export type InvitationResponse = CommonResponse & {
invitation_results: InvitationResult[]
}
export type ApiBasedExtension = {
export interface ApiBasedExtension {
id?: string
name?: string
api_endpoint?: string
api_key?: string
}
export type CodeBasedExtensionForm = {
export interface CodeBasedExtensionForm {
type: string
label: I18nText
variable: string
@@ -252,17 +252,17 @@ export type CodeBasedExtensionForm = {
max_length?: number
}
export type CodeBasedExtensionItem = {
export interface CodeBasedExtensionItem {
name: string
label: any
form_schema: CodeBasedExtensionForm[]
}
export type CodeBasedExtension = {
export interface CodeBasedExtension {
module: string
data: CodeBasedExtensionItem[]
}
export type ExternalDataTool = {
export interface ExternalDataTool {
type?: string
label?: string
icon?: string
@@ -274,7 +274,7 @@ export type ExternalDataTool = {
} & Partial<Record<string, any>>
}
export type ModerateResponse = {
export interface ModerateResponse {
flagged: boolean
text: string
}

View File

@@ -10,15 +10,15 @@ export enum DataSourceType {
}
export enum DatasetPermission {
'onlyMe' = 'only_me',
'allTeamMembers' = 'all_team_members',
'partialMembers' = 'partial_members',
onlyMe = 'only_me',
allTeamMembers = 'all_team_members',
partialMembers = 'partial_members',
}
export enum ChunkingMode {
'text' = 'text_model', // General text
'qa' = 'qa_model', // General QA
'parentChild' = 'hierarchical_model', // Parent-Child
text = 'text_model', // General text
qa = 'qa_model', // General QA
parentChild = 'hierarchical_model', // Parent-Child
}
export type DataSet = {
@@ -457,6 +457,7 @@ export type SegmentDetailModel = {
position: number
document_id: string
content: string
sign_content: string
word_count: number
tokens: number
keywords: string[]
@@ -525,6 +526,7 @@ export type Segment = {
id: string
document: Document
content: string
sign_content: string
position: number
word_count: number
tokens: number

View File

@@ -10,25 +10,25 @@ export enum PromptMode {
advanced = 'advanced',
}
export type PromptItem = {
export interface PromptItem {
role?: PromptRole
text: string
}
export type ChatPromptConfig = {
export interface ChatPromptConfig {
prompt: PromptItem[]
}
export type ConversationHistoriesRole = {
export interface ConversationHistoriesRole {
user_prefix: string
assistant_prefix: string
}
export type CompletionPromptConfig = {
export interface CompletionPromptConfig {
prompt: PromptItem
conversation_histories_role: ConversationHistoriesRole
}
export type BlockStatus = {
export interface BlockStatus {
context: boolean
history: boolean
query: boolean
@@ -40,7 +40,7 @@ export enum PromptRole {
assistant = 'assistant',
}
export type PromptVariable = {
export interface PromptVariable {
key: string
name: string
type: string // "string" | "number" | "select",
@@ -55,7 +55,7 @@ export type PromptVariable = {
icon_background?: string
}
export type CompletionParams = {
export interface CompletionParams {
max_tokens: number
temperature: number
top_p: number
@@ -66,12 +66,12 @@ export type CompletionParams = {
export type ModelId = 'gpt-3.5-turbo' | 'text-davinci-003'
export type PromptConfig = {
export interface PromptConfig {
prompt_template: string
prompt_variables: PromptVariable[]
}
export type MoreLikeThisConfig = {
export interface MoreLikeThisConfig {
enabled: boolean
}
@@ -79,7 +79,7 @@ export type SuggestedQuestionsAfterAnswerConfig = MoreLikeThisConfig
export type SpeechToTextConfig = MoreLikeThisConfig
export type TextToSpeechConfig = {
export interface TextToSpeechConfig {
enabled: boolean
voice?: string
language?: string
@@ -88,7 +88,7 @@ export type TextToSpeechConfig = {
export type CitationConfig = MoreLikeThisConfig
export type AnnotationReplyConfig = {
export interface AnnotationReplyConfig {
id: string
enabled: boolean
score_threshold: number
@@ -98,7 +98,7 @@ export type AnnotationReplyConfig = {
}
}
export type ModerationContentConfig = {
export interface ModerationContentConfig {
enabled: boolean
preset_response?: string
}
@@ -113,14 +113,14 @@ export type ModerationConfig = MoreLikeThisConfig & {
}
export type RetrieverResourceConfig = MoreLikeThisConfig
export type AgentConfig = {
export interface AgentConfig {
enabled: boolean
strategy: AgentStrategy
max_iteration: number
tools: ToolItem[]
}
// frontend use. Not the same as backend
export type ModelConfig = {
export interface ModelConfig {
provider: string // LLM Provider: for example "OPENAI"
model_id: string
mode: ModelModeType
@@ -138,12 +138,12 @@ export type ModelConfig = {
dataSets: any[]
agentConfig: AgentConfig
}
export type DatasetConfigItem = {
export interface DatasetConfigItem {
enable: boolean
value: number
}
export type DatasetConfigs = {
export interface DatasetConfigs {
retrieval_model: RETRIEVE_TYPE
reranking_model: {
reranking_provider_name: string
@@ -172,39 +172,39 @@ export type DatasetConfigs = {
reranking_enable?: boolean
}
export type DebugRequestBody = {
export interface DebugRequestBody {
inputs: Inputs
query: string
completion_params: CompletionParams
model_config: ModelConfig
}
export type DebugResponse = {
export interface DebugResponse {
id: string
answer: string
created_at: string
}
export type DebugResponseStream = {
export interface DebugResponseStream {
id: string
data: string
created_at: string
}
export type FeedBackRequestBody = {
export interface FeedBackRequestBody {
message_id: string
rating: 'like' | 'dislike'
content?: string
from_source: 'api' | 'log'
}
export type FeedBackResponse = {
export interface FeedBackResponse {
message_id: string
rating: 'like' | 'dislike'
}
// Log session list
export type LogSessionListQuery = {
export interface LogSessionListQuery {
keyword?: string
start?: string // format datetime(YYYY-mm-dd HH:ii)
end?: string // format datetime(YYYY-mm-dd HH:ii)
@@ -212,7 +212,7 @@ export type LogSessionListQuery = {
limit: number // default 20. 1-100
}
export type LogSessionListResponse = {
export interface LogSessionListResponse {
data: {
id: string
conversation_id: string
@@ -226,7 +226,7 @@ export type LogSessionListResponse = {
}
// log session detail and debug
export type LogSessionDetailResponse = {
export interface LogSessionDetailResponse {
id: string
conversation_id: string
model_provider: string
@@ -240,7 +240,7 @@ export type LogSessionDetailResponse = {
from_source: 'api' | 'log'
}
export type SavedMessage = {
export interface SavedMessage {
id: string
answer: string
}