feat: 初始化考培练系统项目

- 从服务器拉取完整代码
- 按框架规范整理项目结构
- 配置 Drone CI 测试环境部署
- 包含后端(FastAPI)、前端(Vue3)、管理端

技术栈: Vue3 + TypeScript + FastAPI + MySQL
This commit is contained in:
111
2026-01-24 19:33:28 +08:00
commit 998211c483
1197 changed files with 228429 additions and 0 deletions

View File

@@ -0,0 +1,202 @@
app:
description: 考陪练的陪练后分析并给出报告
icon: 🤖
icon_background: '#FFEAD5'
mode: workflow
name: 通用-陪练分析报告-考陪练
use_icon_as_answer_icon: false
dependencies:
- current_identifier: null
type: marketplace
value:
marketplace_plugin_unique_identifier: langgenius/openrouter:0.0.22@99ef4cf4e08292c28806abaf24f295ed66e04e4b9e74385b487fd0767c7f56df
version: null
kind: app
version: 0.5.0
workflow:
conversation_variables: []
environment_variables: []
features:
file_upload:
allowed_file_extensions:
- .JPG
- .JPEG
- .PNG
- .GIF
- .WEBP
- .SVG
allowed_file_types:
- image
allowed_file_upload_methods:
- local_file
- remote_url
enabled: false
fileUploadConfig:
audio_file_size_limit: 50
batch_count_limit: 5
file_size_limit: 15
image_file_size_limit: 10
video_file_size_limit: 100
workflow_file_upload_limit: 10
image:
enabled: false
number_limits: 3
transfer_methods:
- local_file
- remote_url
number_limits: 3
opening_statement: ''
retriever_resource:
enabled: true
sensitive_word_avoidance:
enabled: false
speech_to_text:
enabled: false
suggested_questions: []
suggested_questions_after_answer:
enabled: false
text_to_speech:
enabled: false
language: ''
voice: ''
graph:
edges:
- data:
isInIteration: false
isInLoop: false
sourceType: start
targetType: llm
id: 1759259735113-source-1759345165645-target
source: '1759259735113'
sourceHandle: source
target: '1759345165645'
targetHandle: target
type: custom
zIndex: 0
- data:
isInIteration: false
isInLoop: false
sourceType: llm
targetType: end
id: 1759345165645-source-1759259743998-target
source: '1759345165645'
sourceHandle: source
target: '1759259743998'
targetHandle: target
type: custom
zIndex: 0
nodes:
- data:
selected: false
title: 开始
type: start
variables:
- default: ''
hint: ''
label: dialogue_history
max_length: 90000
options: []
placeholder: ''
required: true
type: paragraph
variable: dialogue_history
height: 88
id: '1759259735113'
position:
x: 80
y: 282
positionAbsolute:
x: 80
y: 282
selected: false
sourcePosition: right
targetPosition: left
type: custom
width: 242
- data:
outputs:
- value_selector:
- '1759345165645'
- text
value_type: string
variable: result
selected: true
title: 结束
type: end
height: 88
id: '1759259743998'
position:
x: 1037.0765156072616
y: 266
positionAbsolute:
x: 1037.0765156072616
y: 266
selected: true
sourcePosition: right
targetPosition: left
type: custom
width: 242
- data:
context:
enabled: false
variable_selector: []
model:
completion_params:
temperature: 0.7
mode: chat
name: google/gemini-2.5-flash
provider: langgenius/openrouter/openrouter
prompt_template:
- id: c5d3c09c-d33c-430a-a8f3-663627411364
role: system
text: "你是话术分析专家,用户是一家轻医美连锁品牌的员工,用户提交的是用户自己与顾客的对话记录,你做分析与评分。并严格按照以下格式输出。\n\
\n输出标准\n{\n \"analysis\": {\n \"total_score\": 88,\n \"score_breakdown\"\
: [\n {\"name\": \"开场技巧\", \"score\": 92, \"description\": \"开场自然,快速建立信任\"\
},\n {\"name\": \"需求挖掘\", \"score\": 90, \"description\": \"能够有效识别客户需求\"\
},\n {\"name\": \"产品介绍\", \"score\": 88, \"description\": \"产品介绍清晰,重点突出\"\
},\n {\"name\": \"异议处理\", \"score\": 85, \"description\": \"处理客户异议还需加强\"\
},\n {\"name\": \"成交技巧\", \"score\": 86, \"description\": \"成交话术运用良好\"\
}\n ],\n \"ability_dimensions\": [\n {\"name\": \"沟通表达\", \"\
score\": 90, \"feedback\": \"语言流畅,表达清晰,语调富有亲和力\"},\n {\"name\": \"\
倾听理解\", \"score\": 92, \"feedback\": \"能够准确理解客户意图,给予恰当回应\"},\n {\"\
name\": \"情绪控制\", \"score\": 88, \"feedback\": \"整体情绪稳定,面对异议时保持专业\"},\n\
\ {\"name\": \"专业知识\", \"score\": 93, \"feedback\": \"对医美项目知识掌握扎实\"\
},\n {\"name\": \"销售技巧\", \"score\": 87, \"feedback\": \"销售流程把控良好\"\
},\n {\"name\": \"应变能力\", \"score\": 85, \"feedback\": \"面对突发问题能够快速反应\"\
}\n ],\n \"dialogue_annotations\": [\n {\"sequence\": 1, \"\
tags\": [\"亮点话术\"], \"comment\": \"开场专业,身份介绍清晰\"},\n {\"sequence\"\
: 3, \"tags\": [\"金牌话术\"], \"comment\": \"巧妙引导,从客户角度出发\"},\n {\"\
sequence\": 5, \"tags\": [\"亮点话术\"], \"comment\": \"类比生动,让客户容易理解\"},\n\
\ {\"sequence\": 7, \"tags\": [\"金牌话术\"], \"comment\": \"专业解答,打消客户疑虑\"\
}\n ],\n \"suggestions\": [\n {\"title\": \"控制语速\", \"content\"\
: \"您的语速偏快,建议适当放慢,给客户更多思考时间\", \"example\": \"说完产品优势后停顿2-3秒观察客户反应\"\
},\n {\"title\": \"多用开放式问题\", \"content\": \"增加开放式问题的使用,更深入了解客户需求\"\
, \"example\": \"您对未来的保障有什么期望?而不是您需要保险吗?\"},\n {\"title\": \"强化成交信号识别\"\
, \"content\": \"客户已经表现出兴趣时,要及时推进成交\", \"example\": \"当客户问费用多少时,这是购买信号,应该立即报价并促成\"\
}\n ]\n }\n}"
- id: 2da57109-d891-46a6-8094-6f6ff63f8e5b
role: user
text: '{{#1759259735113.dialogue_history#}}'
selected: false
title: LLM
type: llm
vision:
enabled: false
height: 88
id: '1759345165645'
position:
x: 587
y: 266
positionAbsolute:
x: 587
y: 266
selected: false
sourcePosition: right
targetPosition: left
type: custom
width: 242
viewport:
x: 49.06021215084729
y: -2.7868017986568248
zoom: 0.5755553326202135
rag_pipeline_variables: []