906 lines
44 KiB
Thrift
906 lines
44 KiB
Thrift
namespace go ocean.cloud.bot_common
|
||
|
||
|
||
struct AuthToken {
|
||
1: string service_id,
|
||
2: string access_key_id,
|
||
3: string secret_access_key,
|
||
4: string session_token,
|
||
5: string expired_time,
|
||
6: string current_time,
|
||
7: string upload_host,
|
||
8: string host_scheme,
|
||
}
|
||
|
||
struct PromptInfo {
|
||
1: optional string Prompt (api.body="prompt"), // 文本prompt
|
||
}
|
||
|
||
struct ModelInfo {
|
||
1: optional i64 ModelId (agw.js_conv="str", api.js_conv="true", api.body="model_id"), // 模型id
|
||
2: optional double Temperature (api.body="temperature") , // 温度,模型输出随机性,值越大越随机,越小越保守(0-1]
|
||
3: optional i32 MaxTokens (api.body="max_tokens") , // 回复最大Token数
|
||
4: optional double TopP (api.body="top_p") , // 另一种模型的输出随机性,值越大越随机[0,1]
|
||
5: optional double FrequencyPenalty (api.body="frequency_penalty") , // 频率惩罚,调整生成内容中的单词频率,正值单词越少见[-1.0,1.0]
|
||
6: optional double PresencePenalty (api.body="presence_penalty") , // 存在惩罚,调整生成内容中新词语频率,正值避免重复单词,用新词[-1.0,1.0]
|
||
7: optional ShortMemoryPolicy ShortMemoryPolicy (api.body="short_memory_policy") , // 上下文策略
|
||
8: optional i32 TopK (api.body="top_k") , // 生成时,采样候选集的大小
|
||
9: optional ModelResponseFormat ResponseFormat (api.body="response_format") , // 模型回复内容格式
|
||
10: optional ModelStyle ModelStyle (api.body="model_style") , // 用户选择的模型风格
|
||
}
|
||
|
||
enum ModelStyle {
|
||
Custom = 0
|
||
Creative = 1
|
||
Balance = 2
|
||
Precise = 3
|
||
}
|
||
enum ModelResponseFormat {
|
||
Text = 0,
|
||
Markdown = 1,
|
||
JSON = 2,
|
||
}
|
||
|
||
// 上下文允许传输的类型
|
||
enum ContextMode {
|
||
Chat = 0,
|
||
FunctionCall_1 = 1,
|
||
FunctionCall_2 = 2,
|
||
FunctionCall_3 = 3,
|
||
}
|
||
|
||
enum ModelFuncConfigType {
|
||
Plugin = 1
|
||
Workflow = 2
|
||
ImageFlow = 3
|
||
Trigger = 4
|
||
KnowledgeText = 5
|
||
KnowledgeTable = 6
|
||
KnowledgeAutoCall = 7
|
||
KnowledgeOnDemandCall = 8
|
||
Variable = 9
|
||
Database = 10
|
||
LongTermMemory = 11
|
||
FileBox = 12
|
||
Onboarding = 13
|
||
Suggestion = 14
|
||
ShortcutCommand = 15
|
||
BackGroundImage = 16
|
||
TTS = 17
|
||
MultiAgentRecognize = 18
|
||
KnowledgePhoto = 19
|
||
HookInfo = 20
|
||
}
|
||
|
||
enum ModelFuncConfigStatus {
|
||
FullSupport = 0
|
||
PoorSupport = 1
|
||
NotSupport = 2
|
||
}
|
||
|
||
struct ShortMemoryPolicy {
|
||
1: optional ContextMode ContextMode (api.body="context_mode") , // 上下文允许传输的类型
|
||
2: optional i32 HistoryRound (api.body="history_round"), // 上下文带的轮数
|
||
}
|
||
|
||
struct PluginInfo {
|
||
1: optional i64 PluginId (agw.js_conv="str", api.js_conv="true", api.body="plugin_id"), // 插件id
|
||
2: optional i64 ApiId (agw.js_conv="str", api.js_conv="true", api.body="api_id") , // api Id
|
||
3: optional string ApiName (api.body="api_name") , // api name O项目用
|
||
|
||
100: optional i64 ApiVersionMs (agw.js_conv="str", api.js_conv="true", api.body="api_version_ms"), // api version
|
||
}
|
||
|
||
struct WorkflowInfo {
|
||
1: optional i64 WorkflowId (agw.js_conv="str", api.js_conv="true", api.body="workflow_id"), // WorkflowId
|
||
2: optional i64 PluginId (agw.js_conv="str", api.js_conv="true", api.body="plugin_id") , // 插件id
|
||
3: optional i64 ApiId (agw.js_conv="str", api.js_conv="true", api.body="api_id") , // api Id
|
||
4: optional WorkflowMode FlowMode (agw.js_conv="str", api.body="flow_mode") // workflow or imageflow, 默认为workflow
|
||
5: optional string WorkflowName (api.body="workflow_name") , // workflow name
|
||
6: optional string Desc (api.body="desc", api.body="desc"),
|
||
7: optional list<PluginParameter> Parameters (api.body="parameters", api.body="parameters"),
|
||
8: optional string PluginIcon (api.body="plugin_icon", api.body="plugin_icon"),
|
||
}
|
||
struct PluginParameter {
|
||
1: optional string Name (api.body="name")
|
||
2: optional string Desc (api.body="desc")
|
||
3: optional bool Required (api.body="required")
|
||
4: optional string Type (api.body="type")
|
||
5: optional list<PluginParameter> SubParameters (api.body="sub_parameters")
|
||
6: optional string SubType (api.body="sub_type") // 如果Type是数组,则有subtype
|
||
}
|
||
|
||
enum WorkflowMode {
|
||
Workflow = 0
|
||
Imageflow = 1
|
||
SceneFlow = 2
|
||
ChatFlow = 3
|
||
All = 100
|
||
}
|
||
// onboarding内容生成模式
|
||
enum OnboardingMode {
|
||
NO_NEED = 1, // 不需要
|
||
USE_MANUAL = 2, // 人工指定内容(多语言支持由LLM兜底)
|
||
USE_LLM = 3, // 由LLM生成
|
||
}
|
||
|
||
struct OnboardingInfo { // 对应 Coze Opening Dialog
|
||
1: optional string Prologue (api.body="prologue") , // 开场白
|
||
2: optional list<string> SuggestedQuestions (api.body="suggested_questions") , // 建议问题
|
||
3: optional OnboardingMode OnboardingMode (api.body="onboarding_mode") , // 开场白模型
|
||
4: optional string CustomizedOnboardingPrompt (api.body="customized_onboarding_prompt"), // LLM生成,用户自定义 Prompt
|
||
5: optional SuggestedQuestionsShowMode SuggestedQuestionsShowMode (api.body="suggested_questions_show_mode") , // 开场白预设问题展示方式 默认0 随机展示
|
||
}
|
||
|
||
enum SuggestedQuestionsShowMode{
|
||
Random = 0,
|
||
All = 1,
|
||
}
|
||
|
||
enum SuggestReplyMode{
|
||
System = 0,
|
||
Custom = 1,
|
||
Disable = 2,
|
||
OriBot = 3, // agent专用,复用源Bot配置
|
||
}
|
||
|
||
// suggest
|
||
struct SuggestReplyInfo { // 对应 Coze Auto-Suggestion
|
||
1: optional SuggestReplyMode SuggestReplyMode (api.body="suggest_reply_mode") , // 建议问题模型
|
||
2: optional string CustomizedSuggestPrompt (api.body="customized_suggest_prompt"), // 用户自定义建议问题
|
||
3: optional string ChainTaskName (api.body="chain_task_name") , // 运行Prompt的ChainTask名称
|
||
}
|
||
|
||
// tts Voices
|
||
struct VoicesInfo { // 对应 Coze Voices
|
||
1: optional bool Muted (api.body="muted") , // 是否开启声音 true:禁用 false:开启
|
||
2: optional map<string,i64> I18nLangVoice (api.body="i18n_lang_voice"), // 多语音音色配置
|
||
7: optional map<string,string> I18nLangVoiceStr (api.body="i18n_lang_voice_str"), // 多语音音色配置, string类型
|
||
3: optional bool Autoplay (api.body="autoplay") , // 是否自动播放
|
||
4: optional map<string,i64> AutoplayVoice (api.body="autoplay_voice") , // 自动播放的音色
|
||
5: optional bool CloseVoiceCall (api.body="voice_call") , // 是否关闭语音通话,true:关闭 false:开启 默认为false
|
||
6: optional DefaultUserInputType DefaultUserInputType (api.body="default_user_input_type"), // 默认用户输入类型
|
||
}
|
||
|
||
enum DefaultUserInputType {
|
||
NotSet = 0, // 没设置
|
||
Text = 1, // 文字
|
||
Voice = 2, // 按住语音
|
||
Call = 3, // 语音通话
|
||
}
|
||
|
||
// AnswerActions
|
||
enum AnswerActionsMode {
|
||
Default = 1,
|
||
Customize = 2,
|
||
}
|
||
|
||
enum AnswerActionTriggerType {
|
||
Direct = 1, // 平台预设Trigger action
|
||
WebView = 2, // 点击Action 显示自定义的H5页面
|
||
SendMessage = 3, // 点击Action 发送自定义的用户消息
|
||
}
|
||
|
||
struct AnswerActionTriggerRule {
|
||
1: AnswerActionTriggerType Type (api.body="type") ,
|
||
2: bool NeedPreloading (api.body="need_preloading"),
|
||
3: map<string,string> TriggerData (api.body="trigger_data") , // 根据 AnswerActionTriggerType决定
|
||
}
|
||
|
||
struct ActionIcon {
|
||
1: string Type (api.body="type") , // 自定义的按钮 type 不用传
|
||
2: string DefaultUrl (api.body="default_url"), // 默认状态
|
||
3: string ActiveUrl (api.body="active_url") , // 按下按钮的状态
|
||
4: string DefaultUri (api.body="default_uri"), // 默认状态
|
||
5: string ActiveUri (api.body="active_uri") , // 按下按钮的状态
|
||
}
|
||
|
||
struct AnswerActionConfig {
|
||
1: string Key (api.body="key") , // 预制的只需要传key
|
||
2: string Name (api.body="name") , // 默认
|
||
3: ActionIcon Icon (api.body="icon") , // 下发uri
|
||
4: map<string,string> NameI18n (api.body="name_i18n") , // 存储用户i18的name
|
||
5: AnswerActionTriggerRule TriggerRule (api.body="trigger_rule"), // Direct 没有值; WebView 包含 webview_url和 webview_callback_psm两个key;SendMessage 包含send_message_prompt
|
||
6: i32 Position (api.body="position") , // 位置
|
||
}
|
||
|
||
struct AnswerActions {
|
||
1: AnswerActionsMode AnswerActionsMode (api.body="answer_actions_mode") ,
|
||
2: list<AnswerActionConfig> AnswerActionConfigs (api.body="answer_action_configs"),
|
||
}
|
||
|
||
// bot ext
|
||
struct BotExtInfo {
|
||
1: optional AnswerActions AnswerActions (api.body="answer_actions") ,
|
||
2: optional list<i32> CardIds (api.body="card_ids") ,
|
||
3: optional i32 PromptId (api.body="prompt_id") ,
|
||
4: optional string BotTemplateName (api.body="bot_template_name"),
|
||
5: optional bool UseUGCVoice (api.body="use_ugc_voice") ,
|
||
6: optional i32 AppId (api.body="app_id") ,
|
||
7: optional bool BindingMp (api.body="binding_mp") , // 是否绑定小程序标识
|
||
}
|
||
|
||
struct KnowledgeInfo {
|
||
1: optional string Id (api.body="id") , // 知识库id
|
||
2: optional string Name (api.body="name"), // 知识库名称
|
||
}
|
||
|
||
enum SearchStrategy {
|
||
SemanticSearch = 0, // 语义搜索
|
||
HybirdSearch = 1, // 混合搜索
|
||
FullTextSearch = 20, // 全文搜索
|
||
}
|
||
|
||
struct Knowledge {
|
||
1: optional list<KnowledgeInfo> KnowledgeInfo (api.body="knowledge_info") , // 知识库信息
|
||
2: optional i64 TopK (api.body="top_k") , // 召回最大数据量
|
||
3: optional double MinScore (api.body="min_score") , // 最小匹配度
|
||
4: optional bool Auto (api.body="auto") , // 自动召回
|
||
5: optional SearchStrategy SearchStrategy (api.body="search_strategy"), // 搜索策略
|
||
6: optional bool ShowSource (api.body="show_source"), // 是否展示来源
|
||
7: optional KnowledgeNoRecallReplyMode NoRecallReplyMode (api.body="no_recall_reply_mode"), // 无召回回复mode,默认0
|
||
8: optional string NoRecallReplyCustomizePrompt (api.body="no_recall_reply_customize_prompt"), // 无召回回复时自定义prompt,当NoRecallReplyMode=1时生效
|
||
9: optional KnowledgeShowSourceMode ShowSourceMode (api.body="show_source_mode"), // 来源展示方式 默认值0 卡片列表方式
|
||
10: optional RecallStrategy RecallStrategy (api.body="recall_strategy"), // 召回策略, 默认值为true
|
||
}
|
||
|
||
struct RecallStrategy {
|
||
1: optional bool UseRerank (api.body="use_rerank"),
|
||
2: optional bool UseRewrite (api.body="use_rewrite"),
|
||
3: optional bool UseNl2sql (api.body="use_nl2sql")
|
||
}
|
||
|
||
enum KnowledgeShowSourceMode{
|
||
ReplyBottom = 0,
|
||
CardList = 1,
|
||
}
|
||
|
||
|
||
enum KnowledgeNoRecallReplyMode{
|
||
Default = 0,
|
||
CustomizePrompt = 1,
|
||
}
|
||
|
||
enum SocietyVisibility {
|
||
Public = 1, // 对所有人可见
|
||
Anonymous = 2, // 仅对host可见
|
||
Custom = 3, // 自定义
|
||
}
|
||
struct SocietyVisibiltyConfig {
|
||
1: SocietyVisibility VisibilityType (api.body="visibility_type", go.tag="json:\"visibility_type,omitempty\"") , // 社会场景中可见性: Public = 1,Anonymous = 2
|
||
2: list<string> VisibilityRoles (api.body="visibility_roles", go.tag="json:\"visibility_roles,omitempty\""), // 可见角色列表
|
||
}
|
||
|
||
struct Variable {
|
||
1: optional string Key (api.body="key") , // key, Field
|
||
2: optional string Description (api.body="description") , // 描述
|
||
3: optional string DefaultValue (api.body="default_value"), // 默认值
|
||
4: optional bool IsSystem (api.body="is_system"), // 是否系统值系统值
|
||
5: optional bool PromptDisabled (api.body="prompt_disabled"), // 是否支持在Prompt中调用 默认支持
|
||
6: optional SocietyVisibiltyConfig SocietyVisibilityConfig (api.body="society_visibility_config", go.tag="json:\"society_visibility_config,omitempty\""), // 社会场景中可见性: Public = 1,Anonymous = 2
|
||
7: optional bool IsDisabled (api.body="is_disabled"), // 是否禁用,默认为false代表启用
|
||
}
|
||
|
||
struct TaskInfo { // coze 上的 Scheduled Tasks
|
||
1: optional bool UserTaskAllowed (api.body="user_task_allowed") , // 用户开启task任务
|
||
2: optional i64 EnablePresetTask (api.body="enable_preset_task"), // 允许预设任务
|
||
}
|
||
|
||
enum FieldItemType {
|
||
Text = 1, // 文本 String
|
||
Number = 2, // 数字 Integer
|
||
Date = 3, // 时间 Time
|
||
Float = 4, // float Number
|
||
Boolean = 5, // bool Boolean
|
||
}
|
||
|
||
struct FieldItem {
|
||
1: optional string Name (api.body="name") , // 字段名称
|
||
2: optional string Desc (api.body="desc") , // 字段描述
|
||
3: optional FieldItemType Type (api.body="type") , // 字段类型
|
||
4: optional bool MustRequired (api.body="must_required") , // 是否必填
|
||
5: optional i64 Id (agw.js_conv="str", api.js_conv="true", api.body="id"), // 字段Id 新增为0
|
||
6: optional string TypeStr (api.body="type_str") , // 字段类型 str
|
||
7: optional i64 AlterId (api.body="alterId") , // 字段类型 str
|
||
}
|
||
|
||
struct Database {
|
||
1: optional string TableId (api.body="table_id") , // table id
|
||
2: optional string TableName (api.body="table_name"), // table名称
|
||
3: optional string TableDesc (api.body="table_desc"), // table简介
|
||
4: optional list<FieldItem> FieldList (api.body="field_list"), // table字段信息
|
||
5: optional bool PromptDisabled (api.body="prompt_disabled"), // 是否支持在Prompt中调用 默认支持
|
||
6: optional BotTableRWMode RWMode (api.body="rw_mode"),
|
||
}
|
||
|
||
enum BotTableRWMode {
|
||
LimitedReadWrite = 1,
|
||
ReadOnly = 2,
|
||
UnlimitedReadWrite = 3,
|
||
RWModeMax = 4,
|
||
}
|
||
|
||
enum AgentType {
|
||
Start_Agent = 0,
|
||
LLM_Agent = 1,
|
||
Task_Agent = 2,
|
||
Global_Agent = 3,
|
||
Bot_Agent = 4,
|
||
}
|
||
|
||
//版本兼容:0-旧版本 1-可回退的新版本 2-不可回退的新版本 3-可回退的新版本(不再提示)
|
||
enum AgentVersionCompat{
|
||
OldVersion = 0
|
||
MiddleVersion = 1
|
||
NewVersion = 2
|
||
MiddleVersionNotPrompt = 3
|
||
}
|
||
|
||
struct Agent {
|
||
1 : i64 AgentId (agw.js_conv="str", api.js_conv="true", api.body="agent_id") ,
|
||
2 : string AgentName (api.body="agent_name") ,
|
||
3 : PromptInfo PromptInfo (api.body="prompt_info") , // prompt 信息
|
||
4 : list<PluginInfo> PluginInfoList (api.body="plugin_info_list") , // plugin列表
|
||
5 : Knowledge Knowledge (api.body="knowledge") , // 数据集
|
||
6 : list<WorkflowInfo> WorkflowInfoList (api.body="workflow_info_list") , // Workflow 列表
|
||
7 : ModelInfo ModelInfo (api.body="model_info") , // 模型配置
|
||
8 : list<Intent> Intents (api.body="intents") , // 意图信息
|
||
9 : AgentType AgentType (api.body="agent_type") ,
|
||
10: bool RootAgent (api.body="root_agent") , // 是否是rootagent
|
||
11: i64 ReferenceId (agw.js_conv="str", api.js_conv="true", api.body="reference_id"),
|
||
12: string FirstVersion (api.body="first_version") ,
|
||
13: string LastVersion (api.body="last_version") ,
|
||
14: AgentPosition AgentPosition (api.body="agent_position") ,
|
||
15: string IconUri (api.body="icon_uri") ,
|
||
16: JumpConfig JumpConfig (api.body="jump_config") ,
|
||
17: SuggestReplyInfo SuggestReplyInfo (api.body="suggest_reply_info") ,
|
||
18: string Description (api.body="description") ,
|
||
19: AgentVersionCompat VersionCompat (api.body="version_compat") , // multi_agent版本兼容字段
|
||
20: optional HookInfo HookInfo (api.body="hook_info") ,
|
||
21: optional string CurrentVersion (api.body="current_version") , //子bot当前版本
|
||
22: optional ReferenceInfoStatus ReferenceInfoStatus (api.body="reference_info_status") , // 1:有可用更新 2:被删除
|
||
23: optional ReferenceUpdateType UpdateType (api.body="update_type") , //子bot更新类型
|
||
}
|
||
|
||
struct AgentPosition{
|
||
1: double x,
|
||
2: double y,
|
||
}
|
||
|
||
enum MultiAgentSessionType{
|
||
Flow = 1
|
||
Host = 2
|
||
}
|
||
|
||
enum MultiAgentConnectorType {
|
||
Curve = 0
|
||
Straight = 1
|
||
}
|
||
|
||
struct Intent{
|
||
1: string IntentId (api.body="intent_id") ,
|
||
2: string Prompt (api.body="prompt") ,
|
||
3: i64 NextAgentId (agw.js_conv="str", api.js_conv="true", api.body="next_agent_id"),
|
||
4: MultiAgentSessionType SessionType (api.body="session_type")
|
||
}
|
||
|
||
enum BotMode{
|
||
SingleMode = 0,
|
||
MultiMode = 1,
|
||
WorkflowMode = 2,
|
||
}
|
||
|
||
enum BotSpecies { // bot种类
|
||
Default = 0, // 从flow创建
|
||
Function = 1, // 从coze创建
|
||
}
|
||
|
||
enum TimeCapsuleMode {
|
||
Off = 0, // 关
|
||
On = 1, // 开
|
||
}
|
||
enum DisablePromptCalling {
|
||
Off = 0,
|
||
On = 1,
|
||
}
|
||
|
||
// 时间胶囊信息
|
||
struct TimeCapsuleInfo {
|
||
1: optional TimeCapsuleMode TimeCapsuleMode (api.body="time_capsule_mode"),
|
||
2: optional DisablePromptCalling DisablePromptCalling (api.body="disable_prompt_calling"),
|
||
}
|
||
|
||
struct BotTagInfo {
|
||
1: optional TimeCapsuleInfo TimeCapsuleInfo (api.body="time_capsule_info"), // 时间胶囊信息 tag key : time_capsule
|
||
}
|
||
|
||
struct FileboxInfo{
|
||
1: optional FileboxInfoMode Mode,
|
||
}
|
||
enum FileboxInfoMode {
|
||
Off = 0,
|
||
On = 1,
|
||
}
|
||
|
||
enum BotStatus {
|
||
Deleted = 0
|
||
Using = 1
|
||
Banned = 2
|
||
}
|
||
|
||
enum BusinessType {
|
||
Default = 0
|
||
DouyinAvatar = 1
|
||
}
|
||
|
||
// bot信息
|
||
struct BotInfo {
|
||
1 : i64 BotId (agw.js_conv="str", api.js_conv="true", api.body="bot_id") , // bot id
|
||
2 : string Name (api.body="name") , // bot名称
|
||
3 : string Description (api.body="description") , // bot描述
|
||
4 : string IconUri (api.body="icon_uri") , // bot 图标uri
|
||
5 : string IconUrl (api.body="icon_url") , // bot 图标url
|
||
6 : i64 CreatorId (agw.js_conv="str", api.js_conv="true", api.body="creator_id") , // 创建人id
|
||
7 : i64 CreateTime (agw.js_conv="str", api.js_conv="true", api.body="create_time") , // 创建时间
|
||
8 : i64 UpdateTime (agw.js_conv="str", api.js_conv="true", api.body="update_time") , // 更新时间
|
||
9 : i64 ConnectorId (agw.js_conv="str", api.js_conv="true", api.body="connector_id"), // 业务线
|
||
10: string Version (api.body="version") , // 版本,毫秒
|
||
11: ModelInfo ModelInfo (api.body="model_info") , // 模型配置
|
||
12: PromptInfo PromptInfo (api.body="prompt_info") , // prompt 信息
|
||
13: list<PluginInfo> PluginInfoList (api.body="plugin_info_list") , // plugin列表
|
||
14: list<WorkflowInfo> WorkflowInfoList (api.body="workflow_info_list") , // Workflow 列表
|
||
15: OnboardingInfo OnboardingInfo (api.body="onboarding_info") , // 开场白
|
||
16: Knowledge Knowledge (api.body="knowledge") , // 数据集
|
||
17: list<Variable> VariableList (api.body="variable_list") , // kv存储
|
||
18: TaskInfo TaskInfo (api.body="task_info") , // 任务管理/预设任务
|
||
19: list<Database> DatabaseList (api.body="database_list") , // 数据表
|
||
20: SuggestReplyInfo SuggestReplyInfo (api.body="suggest_reply_info") , // 推荐问题
|
||
21: VoicesInfo VoicesInfo (api.body="voices_info") , // 音色配置
|
||
22: BotExtInfo BotExtInfo (api.body="bot_ext_info") , // 额外信息,扩展字段
|
||
23: BotMode BotMode (api.body="bot_mode") , // bot 类型,single agent or multi agent
|
||
24: list<Agent> Agents (api.body="agents") , // multi agent mode agent信息
|
||
25: BotSpecies BotSpecies (api.body="bot_species") , // Bot种类
|
||
26: BotTagInfo BotTagInfo (api.body="bot_tag_info") , // bot tag 信息,用户新增字段
|
||
27: FileboxInfo FileboxInfo (api.body="filebox_info") , // filebox 信息
|
||
28: MultiAgentInfo MultiAgentInfo (api.body="multi_agent_info") , // multi_agent结构体
|
||
29: list<BackgroundImageInfo> BackgroundImageInfoList (api.body="background_image_info_list") , // 背景图列表结构体
|
||
30: list<string> ShortcutSort (api.body="shortcut_sort") ,
|
||
31: BotStatus Status (api.body="status") , // bot状态
|
||
32: optional HookInfo HookInfo (api.body="hook_info") , // hook信息
|
||
33: UserQueryCollectConf UserQueryCollectConf (api.body="user_query_collect_conf") , // 用户query收集配置
|
||
34: LayoutInfo LayoutInfo (api.body="layout_info") , // workflow模式的编排信息
|
||
35: BusinessType BusinessType (api.body="business_type")
|
||
}
|
||
|
||
|
||
struct CommonKnowledge {
|
||
1: list<KnowledgeInfo> knowledge_infos , // 知识库信息
|
||
}
|
||
|
||
struct ShortcutCommandComponent { // panel参数
|
||
1 : string name //参数名字
|
||
2 : string description //参数描述
|
||
3 : string type // 输入类型 text、select、file
|
||
4 : optional string tool_parameter // 请求工具时,参数的key 对应tool的参数名称,没有则为不返回
|
||
5 : optional list<string> options // type为select时的可选项列表 or type为file时,支持哪些类型 image、doc、table、audio、video、zip、code、txt、ppt
|
||
6 : optional string default_value // 默认值 没配置时不返回
|
||
7 : bool is_hide // 是否隐藏不展示 线上bot tool类型的快捷指令不返回hide=true的component
|
||
}
|
||
|
||
struct ShortcutCommandToolInfo {
|
||
1: string name //
|
||
2: string type // tool类型 workflow plugin
|
||
}
|
||
|
||
struct ShortcutCommandInfo {
|
||
1: i64 id (api.js_conv="true") // 快捷指令id
|
||
2: string name // 快捷指令按钮名称
|
||
3: string command // 快捷指令
|
||
4: string description // 快捷指令描述
|
||
5: string query_template // 指令query模版
|
||
6: string icon_url // 快捷指令icon
|
||
7: optional list<ShortcutCommandComponent> components // 组件列表(参数列表)
|
||
8: optional ShortcutCommandToolInfo tool // tool信息
|
||
9: optional i64 agent_id (api.js_conv="true") //multi的指令时,该指令由哪个节点执行 没配置不返回
|
||
}
|
||
|
||
|
||
struct OpenAPIBotInfo {
|
||
1 : i64 bot_id (api.js_conv="true") , // bot id
|
||
2 : string name, // bot名称
|
||
3 : string description, // bot描述
|
||
4 : string icon_url, // bot图像url
|
||
5 : i64 create_time, // 创建时间
|
||
6 : i64 update_time, // 更新时间
|
||
7 : string version, // 版本
|
||
8 : PromptInfo prompt_info, // prompt 信息
|
||
9 : OnboardingInfo onboarding_info, // 开场白
|
||
10: BotMode bot_mode, // bot 类型,single agent or multi agent
|
||
// 11: optional list<VoiceData> voice_data_list, // 选择的语音信息
|
||
12: optional ModelInfo model_info, // 模型信息
|
||
13: list<PluginInfo> plugin_info_list, // 插件信息列表
|
||
14: optional CommonKnowledge knowledge // 知识库信息
|
||
15: list<WorkflowInfo> workflow_info_list, // workflow信息列表
|
||
16: list<ShortcutCommandInfo> shortcut_commands, // 快捷指令信息列表
|
||
// 17: list<Voice> voice_info_list, // 音色配置
|
||
18: string default_user_input_type, // 默认用户输入类型
|
||
19: SuggestReplyInfo suggest_reply_info, // 用户问题建议
|
||
20: BackgroundImageInfo background_image_info, // 背景图片
|
||
21: list<Variable> variables, // 变量列表
|
||
}
|
||
|
||
|
||
|
||
struct LayoutInfo {
|
||
1: string WorkflowId (api.body="workflow_id") , // workflowId
|
||
2: string PluginId (api.body="plugin_id") , // PluginId
|
||
}
|
||
|
||
struct UserQueryCollectConf {
|
||
1: bool IsCollected (api.body="is_collected") , // 是否开启收集开关
|
||
2: string PrivatePolicy (api.body="private_policy") , // 隐私协议链接
|
||
}
|
||
|
||
struct MultiAgentInfo {
|
||
1: MultiAgentSessionType SessionType (api.body="session_type") , // multi_agent会话接管方式
|
||
2: AgentVersionCompatInfo VersionCompatInfo (api.body="version_compat_info") , // multi_agent版本兼容字段 前端用
|
||
3: MultiAgentConnectorType ConnectorType (api.body="connector_type") , // multi_agent连线类型 前端用
|
||
}
|
||
|
||
struct AgentVersionCompatInfo {
|
||
1: AgentVersionCompat VersionCompat (api.body="version_compat") ,
|
||
2: string version
|
||
}
|
||
|
||
struct BackgroundImageInfo {
|
||
1: optional BackgroundImageDetail WebBackgroundImage (api.body="web_background_image") , // web端背景图
|
||
2: optional BackgroundImageDetail MobileBackgroundImage (api.body="mobile_background_image") , // 移动端背景图
|
||
}
|
||
|
||
struct BackgroundImageDetail {
|
||
1: optional string OriginImageUri (api.body="origin_image_uri") // 原始图片
|
||
2: optional string OriginImageUrl (api.body="origin_image_url")
|
||
3: optional string ImageUri (api.body="image_uri") // 实际使用图片
|
||
4: optional string ImageUrl (api.body="image_url")
|
||
5: optional string ThemeColor (api.body="theme_color")
|
||
6: optional GradientPosition GradientPosition (api.body="gradient_position") // 渐变位置
|
||
7: optional CanvasPosition CanvasPosition (api.body="canvas_position") // 裁剪画布位置
|
||
}
|
||
|
||
struct GradientPosition {
|
||
1: optional double Left (api.body="left")
|
||
2: optional double Right (api.body="right")
|
||
}
|
||
|
||
|
||
struct CanvasPosition {
|
||
1: optional double Width (api.body="width")
|
||
2: optional double Height (api.body="height")
|
||
3: optional double Left (api.body="left")
|
||
4: optional double Top (api.body="top")
|
||
}
|
||
|
||
|
||
// bot信息 for 更新
|
||
struct BotInfoForUpdate {
|
||
1: optional i64 BotId (agw.js_conv="str", api.js_conv="true",api.body="bot_id") // bot id
|
||
2: optional string Name (api.body="name") // bot名称
|
||
3: optional string Description (api.body="description") // bot描述
|
||
4: optional string IconUri (api.body="icon_uri") // bot 图标uri
|
||
5: optional string IconUrl (api.body="icon_url") // bot 图标url
|
||
6: optional i64 CreatorId (agw.js_conv="str", api.js_conv="true", api.body="creator_id") // 创建人id
|
||
7: optional i64 CreateTime (agw.js_conv="str", api.js_conv="true", api.body="create_time") // 创建时间
|
||
8: optional i64 UpdateTime (agw.js_conv="str", api.js_conv="true", api.body="update_time") // 更新时间
|
||
9: optional i64 ConnectorId (agw.js_conv="str", api.js_conv="true", api.body="connector_id") // 业务线
|
||
10: optional string Version (api.body="version") // 版本,毫秒
|
||
11: optional ModelInfo ModelInfo (api.body="model_info") // 模型配置
|
||
12: optional PromptInfo PromptInfo (api.body="prompt_info") // prompt 信息
|
||
13: optional list<PluginInfo> PluginInfoList (api.body="plugin_info_list") // plugin列表
|
||
14: optional list<WorkflowInfo> WorkflowInfoList (api.body="workflow_info_list") // Workflow 列表
|
||
15: optional OnboardingInfo OnboardingInfo (api.body="onboarding_info") // 开场白
|
||
16: optional Knowledge Knowledge (api.body="knowledge") // 数据集
|
||
17: optional list<Variable> VariableList (api.body="variable_list") // kv存储
|
||
18: optional TaskInfo TaskInfo (api.body="task_info") // 任务管理/预设任务
|
||
19: optional list<Database> DatabaseList (api.body="database_list") // 数据表
|
||
20: optional SuggestReplyInfo SuggestReplyInfo (api.body="suggest_reply_info") // 推荐问题
|
||
21: optional VoicesInfo VoicesInfo (api.body="voices_info") // 音色配置
|
||
22: optional BotExtInfo BotExtInfo (api.body="bot_ext_info") // 额外信息,扩展字段
|
||
23: optional BotMode BotMode (api.body="bot_mode") // bot 类型,single agent or multi agent
|
||
24: optional list<AgentForUpdate> Agents (api.body="agents") // multi agent mode agent信息
|
||
25: BotSpecies BotSpecies (api.body="bot_species") // Bot种类
|
||
26: optional BotTagInfo BotTagInfo (api.body="bot_tag_info") // bot tag 信息,用户新增字段
|
||
27: optional FileboxInfo FileboxInfo (api.body="filebox_info") // filebox 信息
|
||
28: optional MultiAgentInfo MultiAgentInfo (api.body="multi_agent_info") // multi_agent结构体
|
||
29: optional list<BackgroundImageInfo> BackgroundImageInfoList (api.body="background_image_info_list") // 背景图列表结构体
|
||
30: optional list<string> ShortcutSort (api.body="shortcut_sort")
|
||
31: optional HookInfo HookInfo (api.body="hook_info")
|
||
32: optional UserQueryCollectConf UserQueryCollectConf (api.body="user_query_collect_conf")// 用户query收集配置
|
||
33: optional LayoutInfo LayoutInfo(api.body="layout_info") // workflow模式的编排信息
|
||
}
|
||
|
||
struct AgentForUpdate {
|
||
1: optional i64 AgentId (agw.js_conv="str", api.js_conv="true", api.body="id") // agw字段名做了特殊映射 注意
|
||
2: optional string AgentName (api.body="name") // agw字段名做了特殊映射 注意
|
||
3: optional PromptInfo PromptInfo (api.body="prompt_info") // prompt 信息
|
||
4: optional list<PluginInfo> PluginInfoList (api.body="plugin_info_list") // plugin列表
|
||
5: optional Knowledge Knowledge (api.body="knowledge") // 数据集
|
||
6: optional list<WorkflowInfo> WorkflowInfoList (api.body="workflow_info_list") // Workflow 列表
|
||
7: optional ModelInfo ModelInfo (api.body="model_info") // 模型配置
|
||
8: optional list<Intent> Intents (api.body="intents") // 意图信息
|
||
9: optional AgentType AgentType (api.body="agent_type")
|
||
10: optional bool RootAgent (api.body="root_agent") // 是否是rootagent
|
||
11: optional i64 ReferenceId (agw.js_conv="str", api.js_conv="true", api.body="reference_id")
|
||
12: optional string FirstVersion (api.body="first_version")
|
||
13: optional string LastVersion (api.body="last_version")
|
||
14: optional AgentPosition Position (api.body="agent_position")
|
||
15: optional string IconUri (api.body="icon_uri")
|
||
16: optional JumpConfig JumpConfig (api.body="jump_config")
|
||
17: optional SuggestReplyInfo SuggestReplyInfo (api.body="suggest_reply_info")
|
||
18: optional string Description (api.body="description")
|
||
19: optional AgentVersionCompat VersionCompat (api.body="version_compat") // multi_agent版本兼容字段
|
||
20: optional HookInfo HookInfo (api.body="hook_info")
|
||
}
|
||
|
||
struct TableDetail {
|
||
1: optional string TableId // table id
|
||
2: optional string TableName // table名称
|
||
3: optional string TableDesc // table简介
|
||
4: optional list<FieldItem> FieldList // table字段信息
|
||
5: optional bool PromptDisabled (api.body="prompt_disabled"), // 是否支持在Prompt中调用 默认支持
|
||
}
|
||
|
||
struct TaskPluginInputField {
|
||
1: optional string Name
|
||
2: optional string Type // "Input", "Reference"
|
||
3: optional string Value
|
||
}
|
||
|
||
struct TaskPluginInput {
|
||
1: optional list<TaskPluginInputField> Params
|
||
}
|
||
|
||
struct TaskWebhookField {
|
||
1: optional string Name,
|
||
2: optional string Type,
|
||
3: optional string Description,
|
||
4: optional list<TaskWebhookField> Children,
|
||
}
|
||
|
||
struct TaskWebhookOutput {
|
||
1: optional list<TaskWebhookField> Params
|
||
}
|
||
|
||
struct TaskInfoDetail { // Tasks Detail
|
||
1: optional string TaskId // 任务唯一标识
|
||
2: optional string UserQuestion // 定时器触发时执行的 query,例如:提醒我喝水. 二期:TriggerType == "Time"
|
||
3: optional string CreateTime // 定时任务创建时间
|
||
4: optional string NextTime // 定时任务下次执行的时间点
|
||
5: optional i64 Status // 任务状态:有效/无效
|
||
6: optional i32 PresetType // 1-草稿,2-线上
|
||
7: optional string CronExpr // 定时任务的 crontab 表达式
|
||
8: optional string TaskContent // 处理过后的 UserQuestion,例如:喝水
|
||
9: optional string TimeZone // 时区
|
||
10: optional string TaskName // 任务名称
|
||
11: optional string TriggerType // "Time", "Event"
|
||
12: optional string Action // "Bot query", "Plugin", "Workflow"
|
||
13: optional string BotQuery // Action == "Bot query" 时的输入
|
||
14: optional string PluginName // plugin 和 workflow 都用这个字段
|
||
15: optional TaskPluginInput PluginInput // plugin 和 workflow 都用这个字段
|
||
16: optional string WebhookUrl // TriggerType == "Event"
|
||
17: optional string WebhookBearerToken // TriggerType == "Event"
|
||
18: optional TaskWebhookOutput WebhookOutput // TriggerType == "Event"
|
||
19: optional string OriginId // 溯源 ID。创建时生成,更新/发布不变
|
||
}
|
||
|
||
struct DraftBotInfoV2 {
|
||
1: BotInfo BotInfo
|
||
2: optional string CanvasData
|
||
3: optional i64 BaseCommitVersion
|
||
4: optional i64 CommitVersion
|
||
5: optional map<string,TableDetail> TableInfo // TableInfo
|
||
6: optional map<string, TaskInfoDetail> TaskInfo // taskInfo
|
||
}
|
||
|
||
enum BacktrackMode {
|
||
Current = 1
|
||
Previous = 2
|
||
Start = 3
|
||
MostSuitable = 4
|
||
}
|
||
|
||
enum RecognitionMode {
|
||
FunctionCall = 1
|
||
Independent = 2
|
||
}
|
||
|
||
struct JumpConfig {
|
||
1: BacktrackMode backtrack
|
||
2: RecognitionMode recognition
|
||
3: optional IndependentModeConfig independent_conf
|
||
}
|
||
|
||
enum IndependentTiming {
|
||
Pre = 1 // 判断用户输入(前置)
|
||
Post = 2 // 判断节点输出(后置)
|
||
PreAndPost = 3 // 前置模式和后置模式支持同时选择
|
||
}
|
||
enum IndependentRecognitionModelType {
|
||
SLM = 0 // 小模型
|
||
LLM = 1 // 大模型
|
||
}
|
||
struct IndependentModeConfig {
|
||
1: IndependentTiming judge_timing // 判断时机
|
||
2: i32 history_round
|
||
3: IndependentRecognitionModelType model_type
|
||
4: optional string model_id
|
||
5: optional string prompt
|
||
}
|
||
|
||
struct MessageFeedback {
|
||
1: MessageFeedbackType feedback_type // 反馈类型
|
||
2: list<MessageFeedbackDetailType> detail_types // 细分类型
|
||
3: string detail_content // 负反馈自定义内容,对应用户选择Others
|
||
}
|
||
|
||
enum MessageFeedbackType {
|
||
Default = 0
|
||
Like = 1
|
||
Unlike = 2
|
||
}
|
||
|
||
enum MessageFeedbackDetailType {
|
||
UnlikeDefault = 0
|
||
UnlikeHarmful = 1 // 有害信息
|
||
UnlikeIncorrect = 2 // 信息有误
|
||
UnlikeNotFollowInstructions = 3 // 未遵循指令
|
||
UnlikeOthers = 4 // 其他
|
||
}
|
||
|
||
enum Scene{
|
||
Default = 0,
|
||
Explore = 1,
|
||
BotStore = 2,
|
||
CozeHome = 3,
|
||
Playground = 4,
|
||
Evaluation = 5, // 评测平台
|
||
AgentAPP = 6,
|
||
PromptOptimize = 7, //prompt优化
|
||
GenerateAgentInfo = 8 // createbot的nl2bot功能
|
||
}
|
||
|
||
struct UserLabel {
|
||
1: string label_id
|
||
2: string label_name
|
||
3: string icon_uri
|
||
4: string icon_url
|
||
5: string jump_link
|
||
}
|
||
|
||
struct ChatV3ChatDetail {
|
||
1: required string ID (api.body = "id"),
|
||
2: required string ConversationID (api.body = "conversation_id"),
|
||
3: required string BotID (api.body = "bot_id"),
|
||
4: optional i32 CreatedAt (api.body = "created_at"),
|
||
5: optional i32 CompletedAt (api.body = "completed_at"),
|
||
6: optional i32 FailedAt (api.body = "failed_at"),
|
||
7: optional map<string, string> MetaData (api.body = "meta_data"),
|
||
8: optional LastError LastError (api.body = "last_error"),
|
||
9: required string Status (api.body = "status"),
|
||
10: optional Usage Usage (api.body = "usage"),
|
||
11: optional RequiredAction RequiredAction (api.body = "required_action")
|
||
12: optional string SectionID (api.body="section_id")
|
||
}
|
||
|
||
struct LastError {
|
||
1: required i32 Code (api.body = "code"),
|
||
2: required string Msg (api.body = "msg"),
|
||
}
|
||
|
||
struct Usage {
|
||
1: optional i32 TokenCount (api.body = "token_count"),
|
||
2: optional i32 OutputTokens (api.body = "output_count"),
|
||
3: optional i32 InputTokens (api.body = "input_count"),
|
||
}
|
||
|
||
struct RequiredAction {
|
||
1: string Type (api.body = "type"),
|
||
2: SubmitToolOutputs SubmitToolOutputs (api.body = "submit_tool_outputs")
|
||
}
|
||
|
||
struct SubmitToolOutputs {
|
||
1: list<InterruptPlugin> ToolCalls (api.body = "tool_calls")
|
||
}
|
||
|
||
struct InterruptPlugin {
|
||
1: string id
|
||
2: string type
|
||
3: InterruptFunction function
|
||
4: InterruptRequireInfo require_info
|
||
}
|
||
|
||
struct InterruptFunction {
|
||
1: string name
|
||
2: string arguments
|
||
}
|
||
|
||
struct InterruptRequireInfo {
|
||
1: list<string> infos
|
||
}
|
||
|
||
struct ChatV3MessageDetail {
|
||
1: required string ID (api.body = "id"),
|
||
2: required string ConversationID (api.body = "conversation_id"),
|
||
3: required string BotID (api.body = "bot_id"),
|
||
4: required string Role (api.body = "role"),
|
||
5: required string Type (api.body = "type"),
|
||
6: required string Content (api.body = "content"),
|
||
7: required string ContentType (api.body = "content_type"),
|
||
8: optional map<string, string> MetaData (api.body = "meta_data"),
|
||
9: required string ChatID (api.body = "chat_id")
|
||
10: optional string SectionID (api.body="section_id")
|
||
11: optional i64 CreatedAt (api.body = "created_at")
|
||
12: optional i64 UpdatedAt (api.body = "updated_at")
|
||
13: optional string ReasoningContent (api.body = "reasoning_content")
|
||
}
|
||
|
||
struct HookInfo {
|
||
1: optional list<HookItem> pre_agent_jump_hook // pre agent跳转hook
|
||
2: optional list<HookItem> post_agent_jump_hook // post agent跳转hook
|
||
3: optional list<HookItem> flow_hook // 流程hook
|
||
4: optional list<HookItem> atomic_hook // 原子能力hook
|
||
5: optional list<HookItem> llm_call_hook // 模型调用hook
|
||
6: optional list<HookItem> res_parsing_hook // 对话结果hook
|
||
7: optional list<HookItem> suggestion_hook // suggesion hook
|
||
}
|
||
struct HookItem {
|
||
1: optional string uri
|
||
2: optional list<string> filter_rules
|
||
3: optional bool strong_dep
|
||
4: optional i64 timeout_ms
|
||
}
|
||
|
||
//struct ContentAttachment {
|
||
// 1: required string FileID (api.body = "file_id")
|
||
//}
|
||
|
||
// struct MetaContent{
|
||
// 1: required string Type (api.body="type"),
|
||
// 2: optional string Text ( api.body="text"),
|
||
// 3: optional string FileID (api.body="file_id"),
|
||
// 4: optional string FileURL (api.body="file_url"),
|
||
// 5: optional string Card (api.body="card"),
|
||
// }
|
||
|
||
|
||
// struct EnterMessage {
|
||
// 1: required string Role (api.body = "role")
|
||
// 2: string Content(api.body = "content") // 内容
|
||
// 3: map<string,string> MetaData(api.body = "meta_data")
|
||
// 4: string ContentType(api.body = "content_type")//text/card/object_string
|
||
// 5: string Type(api.body = "type")
|
||
// }
|
||
|
||
// struct OpenMessageApi {
|
||
// 1: string Id(api.body = "id") // 主键ID
|
||
// 2: string BotId(api.body = "bot_id") // bot id //已TODO 所有的i64加注解str,入参和出参都要
|
||
// 3: string Role(api.body = "role")
|
||
// 4: string Content(api.body = "content") // 内容
|
||
// 5: string ConversationId(api.body = "conversation_id") // conversation id
|
||
// 6: map<string,string> MetaData(api.body = "meta_data")
|
||
// 7: string CreatedAt(api.body = "created_at") // 创建时间
|
||
// 8: string UpdatedAt(api.body = "updated_at") // 更新时间 //已TODO 时间改成int
|
||
// 9: string ChatId(api.body = "chat_id")
|
||
// 10: string ContentType(api.body = "content_type")
|
||
// 11: string Type(api.body = "type")
|
||
// }
|
||
|
||
enum ReferenceUpdateType {
|
||
ManualUpdate = 1
|
||
AutoUpdate = 2
|
||
}
|
||
|
||
enum ReferenceInfoStatus {
|
||
HasUpdates = 1 // 1:有可用更新
|
||
IsDelete = 2 // 2:被删除
|
||
}
|