Files
Simon 449c6d4875 feat: 2026-07-12~13 全量更新 - AI对话链路改造+H5 v4/v5+坐席端v5+上下文感知诊断+知识库迭代3
## H5 员工端 v4 (2026-07-13 00:48 已部署)
- 人工按钮三态文案统一为"人工坐席"
- 按钮位置移至发送键和语音按钮上方(垂直堆叠)
- 点按钮直接调 store.shakeAgent(),删除 CallAgentModal 弹窗动画
- 截图快捷键提示改为"截图->粘贴:Alt+Shift+A-Ctrl+V ---> Ctrl+V"
- 移动端隐藏截图提示(CSS 媒体查询)
- AI转人工提示改为"已为您呼叫人工坐席,请稍等!"
- 坐席接入提示改为"坐席正在查看您的信息,请等待处理回复!"
- 删除"摇铃呼叫坐席"入口和文案
- 删除孤儿组件 MessageList.vue + shake 动画 CSS

## H5 员工端 v5 (2026-07-13 02:08 已部署)
- RightPanel v2.1:删除"软件安装"和"资源权限"标签页
- 移除标签栏,智能推荐(DynamicRecommend)直接展示
- 删除 SoftwareDownloads/ApprovalLinks 引用和相关 CSS

## AI 对话链路全栈改造 Phase 1-6 (已部署)
- Phase 1: Dify JSON输出 + 后端blocking解析 + 双WS推送 + 错误降级
- Phase 2: 关键词收窄(~25强意图词) + 两级分类Prompt + 删除前端checkApprovalIntent
- Phase 3: WS扩展(ai_thinking+dynamic_recommend) + ai_structured气泡 + RightPanel v2 + 选项回传
- Phase 4: VisionService接入 + 图片消息融合(5秒窗口) + 降级策略
- Phase 5: 坐席端ai_thinking指示器 + ai_structured/byod_card渲染 + handleNewMessage修复
- Phase 6: diagnosis_stage(6值) + response_time_ms计时 + 慢响应告警(>10s)

## 坐席端 v5 (2026-07-13 01:38 已部署)
- ai_structured/byod_card 只读渲染
- AI思考指示器 UI
- handleNewMessage 透传 msg_type/extra_data 修复
- 布局优化v2.0: QuickReplyBar L1+L2悬浮 + ReplyBox左右分区 + 右栏260/560px切换
- 键盘快捷键v2.3: 纯数字路由 + ESC分层撤销 + Shift+Space用event.code

## 上下文感知智能诊断闭环 (2026-07-12 已部署)
- 三层诊断(API→Script→AI) + 三段排队(VIP→info_locked→not locked)
- 答题插队 + 五场景关闭
- 迁移052(6表+6列) + queue_service + quiz_service + closing_service
- H5前端: QueueWaiting + RightPanel双Tab + InputBar三态 + ResolveConfirmCard
- 坐席前端: pending_close结单流程 + 信息锁定(Dify步骤完成+有效回答率≥70%)

## 知识库迭代3 (2026-07-12 已部署)
- 分诊交互(H5+坐席+Dify独立应用)
- 拓扑预览(ECharts只读)
- 代答排除(4种匹配器: keyword/regex/intent/category)
- 迁移051 + 44文件43测试通过

## 后端变更
- 6个Python文件改造(h5_ai_task.py/h5.py/ai_service.py/closing_service.py等)
- funny_phrase_service.py: shake/connected/keyword 默认文案更新
- session_service.py: 企微消息文案同步
- 新增: queue.py/quiz.py/triage.py/exclusion_rules.py 等API端点
- 新增: diagnostic.py/quiz.py/triage_session.py 等模型
- 新增: closing_service/queue_service/quiz_service/triage_service 等服务

## 文档更新
- CHANGELOG.md: 新增 [未发布] 区全部变更记录
- 项目管理主文档 v2.5: 新增v0.7.3版本 + 已完成看板 + 最近搞定
- 版本记录: 新增v0.7.3条目
- AI对话链路实施计划: Phase 1-6 全部标记已实施
- 新增架构图/时序图/类图(mermaid)

## 部署路径修正
- 服务器项目根路径: /opt/wecom-it-desk/
- 所有前端dist均为ro bind mount,只能在宿主机源路径操作
- 服务器nginx /h5/ 是静态文件服务(非proxy_pass)
- elFinder上传二进制不可靠(MD5不匹配),改用base64分块上传
2026-07-13 02:17:03 +08:00

2 lines
159 KiB
YAML

{"data":"app:\n description: AI\u5728\u7ebf\u54a8\u8be2-\u4e0a\u7ebf\u4f7f\u7528\n icon: \ud83e\udd16\n icon_background: '#FFEAD5'\n mode: advanced-chat\n name: \u667a\u80fdIT\u652f\u6301-\u5458\u5de5\u54a8\u8be2\n use_icon_as_answer_icon: true\ndependencies:\n- current_identifier: null\n type: marketplace\n value:\n marketplace_plugin_unique_identifier: langgenius\/openai_api_compatible:0.0.23@59ef558a46420c436b280af1ee452b4129ddfd3567826112f6f193279d8c4a37\n version: null\n- current_identifier: null\n type: marketplace\n value:\n marketplace_plugin_unique_identifier: yangyaofei\/vllm:0.1.5@3eecf807d9767f40eb757ff70720291aa6055e9e1803893b4c93b61a5d4d4319\n version: null\nkind: app\nversion: 0.4.0\nworkflow:\n conversation_variables:\n - description: ''\n id: f4602fd1-2bff-4c6f-bbad-e6ae1033e6e4\n name: mmq\n selector:\n - conversation\n - mmq\n value: []\n value_type: array[string]\n - description: \u4fdd\u5e95\u673a\u5236\n id: 24608e8f-1de8-4eba-b081-75bcff64594d\n name: guarantee_mechanism\n selector:\n - conversation\n - guarantee_mechanism\n value: 1\n value_type: integer\n - description: \u5458\u5de5\u95ee\u9898\n id: 3b232c97-81b9-4b16-804c-cd845441b4d6\n name: servyou_query\n selector:\n - conversation\n - servyou_query\n value: ''\n value_type: string\n - description: \u5386\u53f2\u95ee\u9898\u5bf9\u5e94\u7b54\u6848\n id: dd3c2a43-5813-4582-93ac-54c2e6f4261c\n name: memory_ans\n selector:\n - conversation\n - memory_ans\n value: ''\n value_type: string\n - description: \u5386\u53f2\u95ee\u9898\n id: 8a7563cb-0d2f-49fe-801a-e61e659421ea\n name: memory_query\n selector:\n - conversation\n - memory_query\n value: ''\n value_type: string\n environment_variables: []\n features:\n file_upload:\n allowed_file_extensions:\n - .JPG\n - .JPEG\n - .PNG\n - .GIF\n - .WEBP\n - .SVG\n allowed_file_types:\n - image\n - document\n allowed_file_upload_methods:\n - remote_url\n - local_file\n enabled: true\n fileUploadConfig:\n audio_file_size_limit: 50\n batch_count_limit: 5\n file_size_limit: 100\n image_file_size_limit: 10\n video_file_size_limit: 100\n workflow_file_upload_limit: 10\n image:\n enabled: false\n number_limits: 3\n transfer_methods:\n - local_file\n - remote_url\n number_limits: 3\n opening_statement: ''\n retriever_resource:\n enabled: true\n sensitive_word_avoidance:\n enabled: false\n speech_to_text:\n enabled: false\n suggested_questions: []\n suggested_questions_after_answer:\n enabled: false\n text_to_speech:\n enabled: false\n language: ''\n voice: ''\n graph:\n edges:\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: http-request\n targetType: if-else\n id: 1762241246839-source-1762333864200-target\n selected: false\n source: '1762241246839'\n sourceHandle: source\n target: '1762333864200'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: knowledge-retrieval\n targetType: llm\n id: 1764905829011-source-1764905844059-target\n selected: false\n source: '1764905829011'\n sourceHandle: source\n target: '1764905844059'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: assigner\n targetType: answer\n id: 1765357529351-source-1765181482474-target\n selected: false\n source: '1765357529351'\n sourceHandle: source\n target: '1765181482474'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: list-operator\n targetType: llm\n id: 1765436887640-source-1765437083981-target\n selected: false\n source: '1765436887640'\n sourceHandle: source\n target: '1765437083981'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: list-operator\n id: 1765437585148-false-1765436887640-target\n selected: false\n source: '1765437585148'\n sourceHandle: 'false'\n target: '1765436887640'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: llm\n targetType: template-transform\n id: 1765437083981-source-1765439054336-target\n source: '1765437083981'\n sourceHandle: source\n target: '1765439054336'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: template-transform\n targetType: assigner\n id: 1765439054336-source-1765441716709-target\n source: '1765439054336'\n sourceHandle: source\n target: '1765441716709'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: if-else\n id: 1765437585148-true-1765517905842-target\n source: '1765437585148'\n sourceHandle: 'true'\n target: '1765517905842'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: answer\n id: 1765517905842-true-1765518093072-target\n source: '1765517905842'\n sourceHandle: 'true'\n target: '1765518093072'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: answer\n id: 1765517905842-d7e857f8-75b0-44b6-a342-fcbf0fd1bce0-1765524938055-target\n source: '1765517905842'\n sourceHandle: d7e857f8-75b0-44b6-a342-fcbf0fd1bce0\n target: '1765524938055'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: answer\n id: 1765517905842-5b113ab9-2154-45bb-9fbc-e2fa2246b8c1-1765524956759-target\n source: '1765517905842'\n sourceHandle: 5b113ab9-2154-45bb-9fbc-e2fa2246b8c1\n target: '1765524956759'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: llm\n targetType: assigner\n id: 1764905844059-source-1765357529351-target\n source: '1764905844059'\n sourceHandle: source\n target: '1765357529351'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: answer\n id: 1765517905842-66e1df2e-d7b7-4e2f-9ddb-ebac301f35f4-1765766043047-target\n source: '1765517905842'\n sourceHandle: 66e1df2e-d7b7-4e2f-9ddb-ebac301f35f4\n target: '1765766043047'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: answer\n id: 1765517905842-1ec2ad7a-456a-4181-ba0f-9a3362d7a44c-1765766067015-target\n source: '1765517905842'\n sourceHandle: 1ec2ad7a-456a-4181-ba0f-9a3362d7a44c\n target: '1765766067015'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: answer\n id: 1765517905842-909d209a-20c2-464b-9117-335166bd0209-1765766081739-target\n source: '1765517905842'\n sourceHandle: 909d209a-20c2-464b-9117-335166bd0209\n target: '1765766081739'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: answer\n id: 1765517905842-f8839db4-0b63-4411-b052-f82aa3807e34-1765766096673-target\n source: '1765517905842'\n sourceHandle: f8839db4-0b63-4411-b052-f82aa3807e34\n target: '1765766096673'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: answer\n id: 1765517905842-98d72ef6-f53a-482a-9cc6-36140595d055-1765766112941-target\n source: '1765517905842'\n sourceHandle: 98d72ef6-f53a-482a-9cc6-36140595d055\n target: '1765766112941'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: code\n targetType: assigner\n id: 1765782485068-source-1765441606676-target\n source: '1765782485068'\n sourceHandle: source\n target: '1765441606676'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: start\n targetType: code\n id: 1762235823950-source-1765782485068-target\n source: '1762235823950'\n sourceHandle: source\n target: '1765782485068'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: llm\n targetType: if-else\n id: 1765785630566-source-1765786049975-target\n source: '1765785630566'\n sourceHandle: source\n target: '1765786049975'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: http-request\n id: 1765786049975-true-1762241246839-target\n source: '1765786049975'\n sourceHandle: 'true'\n target: '1762241246839'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: http-request\n id: 1765786049975-false-17657860354750-target\n source: '1765786049975'\n sourceHandle: 'false'\n target: '17657860354750'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: llm\n targetType: if-else\n id: 1765785673343-source-1765786290221-target\n source: '1765785673343'\n sourceHandle: source\n target: '1765786290221'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: http-request\n id: 1765786290221-true-1762241246839-target\n source: '1765786290221'\n sourceHandle: 'true'\n target: '1762241246839'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: http-request\n id: 1765786290221-false-17657860354750-target\n source: '1765786290221'\n sourceHandle: 'false'\n target: '17657860354750'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: http-request\n targetType: if-else\n id: 17657860354750-source-17657864016400-target\n source: '17657860354750'\n sourceHandle: source\n target: '17657864016400'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: knowledge-retrieval\n targetType: llm\n id: 17657866222300-source-17657866286790-target\n source: '17657866222300'\n sourceHandle: source\n target: '17657866286790'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: llm\n targetType: assigner\n id: 17657866286790-source-17657866367000-target\n source: '17657866286790'\n sourceHandle: source\n target: '17657866367000'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: assigner\n targetType: answer\n id: 17657866367000-source-17657866567850-target\n source: '17657866367000'\n sourceHandle: source\n target: '17657866567850'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: llm\n targetType: if-else\n id: 1766648935323-source-1766654954216-target\n source: '1766648935323'\n sourceHandle: source\n target: '1766654954216'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: assigner\n targetType: llm\n id: 1766655043205-source-1765785630566-target\n source: '1766655043205'\n sourceHandle: source\n target: '1765785630566'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: assigner\n targetType: llm\n id: 17666551541000-source-1765785673343-target\n source: '17666551541000'\n sourceHandle: source\n target: '1765785673343'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: code\n targetType: assigner\n id: 1766726065787-source-1766655043205-target\n source: '1766726065787'\n sourceHandle: source\n target: '1766655043205'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: llm\n targetType: if-else\n id: 17667264375750-source-17666551325690-target\n source: '17667264375750'\n sourceHandle: source\n target: '17666551325690'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: code\n targetType: assigner\n id: 17667264509960-source-17666551541000-target\n source: '17667264509960'\n sourceHandle: source\n target: '17666551541000'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: answer\n id: 17667269647440-true-1766727080009-target\n source: '17667269647440'\n sourceHandle: 'true'\n target: '1766727080009'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: answer\n id: 17667272700050-true-1766727285253-target\n source: '17667272700050'\n sourceHandle: 'true'\n target: '1766727285253'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: answer\n id: 17657864016400-true-17667318333930-target\n source: '17657864016400'\n sourceHandle: 'true'\n target: '17667318333930'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: answer\n id: 1762333864200-true-17667318501870-target\n source: '1762333864200'\n sourceHandle: 'true'\n target: '17667318501870'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: if-else\n id: 1766654954216-false-1766737231108-target\n source: '1766654954216'\n sourceHandle: 'false'\n target: '1766737231108'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: code\n id: 1766737231108-false-1766726065787-target\n source: '1766737231108'\n sourceHandle: 'false'\n target: '1766726065787'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: code\n id: 1766737231108-true-1766737321402-target\n source: '1766737231108'\n sourceHandle: 'true'\n target: '1766737321402'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: code\n targetType: assigner\n id: 1766737321402-source-17667375172980-target\n source: '1766737321402'\n sourceHandle: source\n target: '17667375172980'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: assigner\n targetType: llm\n id: 17667375172980-source-1765785630566-target\n source: '17667375172980'\n sourceHandle: source\n target: '1765785630566'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: if-else\n id: 17666551325690-false-17667376015020-target\n source: '17666551325690'\n sourceHandle: 'false'\n target: '17667376015020'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: code\n id: 17667376015020-false-17667264509960-target\n source: '17667376015020'\n sourceHandle: 'false'\n target: '17667264509960'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: code\n id: 17667376015020-true-17667376904610-target\n source: '17667376015020'\n sourceHandle: 'true'\n target: '17667376904610'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: code\n targetType: assigner\n id: 17667376904610-source-17667377094060-target\n source: '17667376904610'\n sourceHandle: source\n target: '17667377094060'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: code\n targetType: assigner\n id: 1766739425288-source-1766739488182-target\n source: '1766739425288'\n sourceHandle: source\n target: '1766739488182'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: assigner\n targetType: if-else\n id: 1765441606676-source-1765437585148-target\n source: '1765441606676'\n sourceHandle: source\n target: '1765437585148'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: code\n targetType: assigner\n id: 17667406566450-source-17667406611650-target\n source: '17667406566450'\n sourceHandle: source\n target: '17667406611650'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: code\n id: 1765517905842-false-1766739425288-target\n source: '1765517905842'\n sourceHandle: 'false'\n target: '1766739425288'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: assigner\n targetType: http-request\n id: 1766739488182-source-17666588259460-target\n source: '1766739488182'\n sourceHandle: source\n target: '17666588259460'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: assigner\n targetType: code\n id: 1765441716709-source-17667406566450-target\n source: '1765441716709'\n sourceHandle: source\n target: '17667406566450'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: assigner\n targetType: http-request\n id: 17667406611650-source-17667264218480-target\n source: '17667406611650'\n sourceHandle: source\n target: '17667264218480'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: assigner\n id: 1766654954216-true-1766986002113-target\n source: '1766654954216'\n sourceHandle: 'true'\n target: '1766986002113'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: if-else\n targetType: template-transform\n id: 1766739849720-true-1766986387628-target\n source: '1766739849720'\n sourceHandle: 'true'\n target: '1766986387628'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: template-transform\n targetType: assigner\n id: 1766986387628-source-1766986503282-target\n source: '1766986387628'\n sourceHandle: source\n target: '1766986503282'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: assigner\n targetType: code\n id: 1766986503282-source-1766737321402-target\n source: '1766986503282'\n sourceHandle: source\n target: '1766737321402'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: assigner\n id: 17666551325690-true-17669865896480-target\n source: '17666551325690'\n sourceHandle: 'true'\n target: '17669865896480'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: template-transform\n id: 17667403682010-true-17669866215620-target\n source: '17667403682010'\n sourceHandle: 'true'\n target: '17669866215620'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: template-transform\n targetType: assigner\n id: 17669866215620-source-17669866341260-target\n source: '17669866215620'\n sourceHandle: source\n target: '17669866341260'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: assigner\n targetType: code\n id: 17669866341260-source-17667376904610-target\n source: '17669866341260'\n sourceHandle: source\n target: '17667376904610'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: assigner\n targetType: llm\n id: 17667377094060-source-1765785673343-target\n source: '17667377094060'\n sourceHandle: source\n target: '1765785673343'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: knowledge-retrieval\n targetType: llm\n id: 17669940249670-source-17669940385140-target\n source: '17669940249670'\n sourceHandle: source\n target: '17669940385140'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInIteration: false\n isInLoop: false\n sourceType: assigner\n targetType: code\n id: 17669865896480-source-1766994739449-target\n source: '17669865896480'\n sourceHandle: source\n target: '1766994739449'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: assigner\n targetType: code\n id: 1766986002113-source-17669960466150-target\n source: '1766986002113'\n sourceHandle: source\n target: '17669960466150'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: knowledge-retrieval\n targetType: llm\n id: 17669960738730-source-17669960812650-target\n source: '17669960738730'\n sourceHandle: source\n target: '17669960812650'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: llm\n targetType: assigner\n id: 17669960812650-source-17669987893140-target\n source: '17669960812650'\n sourceHandle: source\n target: '17669987893140'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: assigner\n targetType: answer\n id: 17669987893140-source-1766655012100-target\n source: '17669987893140'\n sourceHandle: source\n target: '1766655012100'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: llm\n targetType: assigner\n id: 17669940385140-source-17669989513170-target\n source: '17669940385140'\n sourceHandle: source\n target: '17669989513170'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: assigner\n targetType: answer\n id: 17669989513170-source-17666551440550-target\n source: '17669989513170'\n sourceHandle: source\n target: '17666551440550'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: http-request\n targetType: code\n id: 17669960576130-source-1767577724877-target\n source: '17669960576130'\n sourceHandle: source\n target: '1767577724877'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: code\n targetType: knowledge-retrieval\n id: 1767577724877-source-17669960738730-target\n source: '1767577724877'\n sourceHandle: source\n target: '17669960738730'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: http-request\n targetType: code\n id: 17669939758770-source-17675939731110-target\n source: '17669939758770'\n sourceHandle: source\n target: '17675939731110'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: code\n targetType: knowledge-retrieval\n id: 17675939731110-source-17669940249670-target\n source: '17675939731110'\n sourceHandle: source\n target: '17669940249670'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: code\n id: 1762333864200-false-17676676167470-target\n source: '1762333864200'\n sourceHandle: 'false'\n target: '17676676167470'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: code\n targetType: knowledge-retrieval\n id: 17676676167470-source-1764905829011-target\n source: '17676676167470'\n sourceHandle: source\n target: '1764905829011'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: code\n id: 17657864016400-false-17676676927510-target\n source: '17657864016400'\n sourceHandle: 'false'\n target: '17676676927510'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: code\n targetType: knowledge-retrieval\n id: 17676676927510-source-17657866222300-target\n source: '17676676927510'\n sourceHandle: source\n target: '17657866222300'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: code\n id: 1766739849720-false-17677487224360-target\n source: '1766739849720'\n sourceHandle: 'false'\n target: '17677487224360'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: code\n id: 17667403682010-false-17677497085030-target\n source: '17667403682010'\n sourceHandle: 'false'\n target: '17677497085030'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: http-request\n targetType: if-else\n id: 17666588259460-source-1766739849720-target\n source: '17666588259460'\n sourceHandle: source\n target: '1766739849720'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: llm\n id: 17667269647440-false-1766648935323-target\n source: '17667269647440'\n sourceHandle: 'false'\n target: '1766648935323'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: http-request\n targetType: if-else\n id: 17667264218480-source-17667403682010-target\n source: '17667264218480'\n sourceHandle: source\n target: '17667403682010'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: if-else\n targetType: llm\n id: 17667272700050-false-17667264375750-target\n source: '17667272700050'\n sourceHandle: 'false'\n target: '17667264375750'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: code\n targetType: if-else\n id: 17677487224360-source-17667269647440-target\n source: '17677487224360'\n sourceHandle: source\n target: '17667269647440'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: code\n targetType: if-else\n id: 17677497085030-source-17667272700050-target\n source: '17677497085030'\n sourceHandle: source\n target: '17667272700050'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: code\n targetType: http-request\n id: 17669960466150-source-17669960576130-target\n source: '17669960466150'\n sourceHandle: source\n target: '17669960576130'\n targetHandle: target\n type: custom\n zIndex: 0\n - data:\n isInLoop: false\n sourceType: code\n targetType: http-request\n id: 1766994739449-source-17669939758770-target\n source: '1766994739449'\n sourceHandle: source\n target: '17669939758770'\n targetHandle: target\n type: custom\n zIndex: 0\n nodes:\n - data:\n selected: false\n title: \u540c\u4e8b\u54a8\u8be2\u95ee\u9898\n type: start\n variables: []\n height: 52\n id: '1762235823950'\n position:\n x: -4529.924643957575\n y: 436.97867740596223\n positionAbsolute:\n x: -4529.924643957575\n y: 436.97867740596223\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n authorization:\n config: null\n type: no-auth\n body:\n data:\n - id: key-value-263\n key: ''\n type: text\n value: \"{\\n \\\"model\\\": \\\"model\\\",\\n \\\"messages\\\": [\\n {\\n \\\"\\\n role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"\u5f53\u524d\u95ee\u9898\uff1a{{#conversation.servyou_query#}}\\\\\\\n n \u524d\u7f6e\u95ee\u9898\uff1a {{#conversation.memory_query#}}\\\\n\u524d\u7f6e\u56de\u590d\uff1a{{#conversation.memory_ans#}}\\\"\\\n \\n }\\n ],\\n \\\"stream\\\": true,\\n \\\"encoding\\\": \\\"utf-8\\\"\\n}\"\n type: json\n headers: 'Content-Type:application\/json; charset=\"utf-8\"\n\n Authorization:Bearer ragflow-ZiYmIzMjcwYjk0ZjExZjBhODgzMDI0Mm'\n method: post\n params: ''\n retry_config:\n max_retries: 3\n retry_enabled: true\n retry_interval: 100\n selected: false\n ssl_verify: true\n timeout:\n max_connect_timeout: 0\n max_read_timeout: 0\n max_write_timeout: 0\n title: ragflow\u77e5\u8bc6\u5e93\n type: http-request\n url: http:\/\/10.80.0.85:9380\/api\/v1\/agents_openai\/d4051f80dfdc11f0993d0242ac120006\/chat\/completions\n variables: []\n height: 170\n id: '1762241246839'\n position:\n x: 8755.808392505616\n y: -230.25468317548746\n positionAbsolute:\n x: 8755.808392505616\n y: -230.25468317548746\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n cases:\n - case_id: 'true'\n conditions:\n - comparison_operator: contains\n id: 7f0f5251-7f1d-46f1-bff7-a4a4c215dbc5\n value: \u60a8\u7684\u95ee\u9898\u53ef\u80fd\u4e0d\u5728\u670d\u52a1\u4e1a\u52a1\u8303\u56f4\u5185\n varType: string\n variable_selector:\n - '1762241246839'\n - body\n id: 'true'\n logical_operator: or\n selected: false\n title: \u77e5\u8bc6\u5e93\u662f\u5426\u5b8c\u5168\u65e0\u547d\u4e2d\n type: if-else\n height: 124\n id: '1762333864200'\n position:\n x: 9452.516247064188\n y: -225.60940729165085\n positionAbsolute:\n x: 9452.516247064188\n y: -225.60940729165085\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n dataset_ids:\n - 1aM5JfrtmBYtghXflTeQDOTiM0MaufWVaEpunkstrQr2DWCad1pyfImMvY9EDXJh\n - SouBCst5gmvLf9zgdmQZq3fT46jOWdR4r136JeI7ieO9n5FJVVzKCCd0aaLkQ6UK\n multiple_retrieval_config:\n reranking_enable: true\n reranking_mode: reranking_model\n reranking_model:\n model: bge-rerank\n provider: langgenius\/openai_api_compatible\/openai_api_compatible\n top_k: 4\n query_variable_selector:\n - conversation\n - servyou_query\n retrieval_mode: multiple\n selected: false\n title: \u77e5\u8bc6\u5e93\u56fe\u7247\u68c0\u7d22\n type: knowledge-retrieval\n height: 118\n id: '1764905829011'\n position:\n x: 11501.117932237017\n y: 258.0075828932353\n positionAbsolute:\n x: 11501.117932237017\n y: 258.0075828932353\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n context:\n enabled: true\n variable_selector:\n - '1764905829011'\n - result\n memory:\n query_prompt_template: '{{#sys.query#}}\u3010{{#conversation.servyou_query#}}\u3011\n\n\n {{#sys.files#}}'\n role_prefix:\n assistant: ''\n user: ''\n window:\n enabled: true\n size: 10\n model:\n completion_params:\n temperature: 0.7\n mode: chat\n name: Qwen3-30B-A3B-Instruct\n provider: yangyaofei\/vllm\/vllm\n prompt_template:\n - id: 8fdbc119-5c08-4eb4-9364-40deb1bb4b1f\n role: system\n text: '# \u89d2\u8272\u4e0e\u6838\u5fc3\u4efb\u52a1\n\n - \u4f60\u662f\u4e00\u540d\u4e13\u4e1a\u7684IT\u652f\u6301\u5206\u6790\u52a9\u7406\uff0c\u4e13\u95e8\u5904\u7406\u4f01\u4e1a\u5185\u90e8\u540c\u4e8b\u7684IT\u54a8\u8be2\u3002\n\n - **\u6838\u5fc3\u4f7f\u547d**\uff1a\u4e3a\u540c\u4e8b\u63d0\u4f9b\u51c6\u786e\u3001\u6e05\u6670\u4e14\u53ef\u7acb\u5373\u6267\u884c\u7684\u89e3\u51b3\u65b9\u6848\u3002\n\n\n # \u5904\u7406\u6d41\u7a0b\u4e0e\u89c4\u5219\n\n\n ## \u7b2c\u4e00\u6b65\uff1a\u95ee\u7b54\u5224\u65ad\n\n - \u5224\u65ad\u77e5\u8bc6\u5e93\u5185\u5bb9\u80fd\u5426\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u3002\n\n - \u6b64\u5224\u65ad\u662f\u540e\u7eed\u6d41\u7a0b\u7684\u51b3\u7b56\u57fa\u7840\u3002\n\n\n ## \u7b2c\u4e8c\u6b65\uff1a\u5206\u652f\u5904\u7406\u4e0e\u56de\u590d\u751f\u6210 (\u6574\u5408\u7ed3\u675f\u8bed)\n\n\n ###\u60c5\u51b5\u4e00\uff1a\u77e5\u8bc6\u5e93\u5185\u5bb9\u80fd\u591f\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\n\n - **\u540c\u65f6**\uff0c\u5224\u65ad\u56fe\u6587\u4fe1\u606f\u4e0e\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u662f\u5426\u76f8\u5173\u3002\n\n - **\u63d0\u53d6\u76f8\u5173\u56fe\u6587\u4fe1\u606f\u4e2d\u7684\u94fe\u63a5**\uff0c\u5982\u201d![image](https:\/\/yw-dify.dc.servyou-it.com)\u201c\u63d0\u53d6\u5176\u4e2d\u7684\u201dhttps:\/\/yw-dify.dc.servyou-it.com\u201c\uff0c\u8fdb\u884c\u5168\u5c40\u89c4\u5219\u4e2d\u7684**\u94fe\u63a5\u6807\u51c6\u5316**\u3002\n\n - **\u751f\u6210\u56de\u590d**\uff1a\u57fa\u4e8e\u77e5\u8bc6\u5e93\u5185\u5bb9\u548c\u76f8\u5173\u7684\u56fe\u6587\u4fe1\u606f\uff0c\u751f\u6210\u6700\u7ec8\u56de\u590d\u3002\n\n\n ###\u60c5\u51b5\u4e8c\uff1a\u77e5\u8bc6\u5e93\u5185\u5bb9\u4e0d\u80fd\u591f\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\n\n - **\u56de\u590d\u56fa\u5b9a\u8bed\u53e5**\uff1a\"\u62b1\u6b49\uff0c\u60a8\u7684\u95ee\u9898\u53ef\u80fd\u4e0d\u5728\u670d\u52a1\u4e1a\u52a1\u8303\u56f4\u5185\uff0c\u8bf7\u5c1d\u8bd5\u8c03\u6574\u5176\u4ed6\u95ee\u6cd5\u3002\"\u3002\n\n - **\u91cd\u8981**\uff1a\u5728\u4e0a\u8ff0\u56fa\u5b9a\u8bed\u53e5\u540e\uff0c\u5fc5\u987b\u540c\u6837\u9644\u52a0\u7ed3\u675f\u8bed\u3002\n\n\n #\u5168\u5c40\u8f93\u51fa\u683c\u5f0f\u8981\u6c42\uff08\u4ec5\u5f53\u77e5\u8bc6\u5e93\u5185\u5bb9\u80fd\u591f\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u65f6\u751f\u6548\uff09\n\n - **\u7ed3\u6784\u5316\u683c\u5f0f**\uff0c\u56de\u590d\u5fc5\u987b\u5177\u6709\u6e05\u6670\u7684\u89c6\u89c9\u5c42\u6b21\uff0c\u4e25\u683c\u4f7f\u7528\u4ee5\u4e0b\u683c\u5f0f\uff1a\n\n -- \u4f7f\u7528\u6807\u9898\uff08\u5982 ### \u95ee\u9898\u63cf\u8ff0\u3001### \u89e3\u51b3\u65b9\u6848\uff09\u5212\u5206\u90e8\u5206\u3002\n\n -- \u4f7f\u7528\u7f16\u53f7\u5217\u8868\uff081. 2. 3...\uff09\u8868\u793a\u6709\u987a\u5e8f\u7684\u64cd\u4f5c\u6b65\u9aa4\u3002\n\n -- \u4f7f\u7528\u9879\u76ee\u7b26\u53f7\u5217\u8868\uff08-\uff09\u8868\u793a\u5e76\u5217\u7684\u8981\u70b9\u6216\u8bf4\u660e\u3002\n\n -- \u5173\u952e\u4fe1\u606f\uff08\u5982\u670d\u52a1\u5668\u5730\u5740\u3001\u4ee3\u7801\u5173\u952e\u5b57\uff09\u4f7f\u7528\u884c\u5185\u4ee3\u7801\u6807\u8bb0\uff08\u5982 `hostname`\uff09\u7a81\u51fa\u3002\n\n\n #\u5168\u5c40\u5185\u5bb9\u8d28\u91cf\u8981\u6c42\n\n - **\u7b80\u6d01\u7cbe\u51c6**\uff1a\u786e\u4fdd\u56de\u7b54\u76f4\u63a5\u7cbe\u51c6\u6709\u6548\uff0c\u907f\u514d\u5197\u957f\uff0c\u5207\u52ff\u8fc7\u5ea6\u8d58\u8ff0\u548c\u6269\u5c55\u56de\u7b54\u3002\n\n - **\u4e13\u4e1a\u53cb\u597d**\uff1a\u4fdd\u6301\u4e13\u4e1a\u3001\u8010\u5fc3\u4e14\u53cb\u597d\u7684\u652f\u6301\u6001\u5ea6\uff0c\u7406\u89e3\u540c\u4e8b\u7684\u6025\u5207\u5fc3\u60c5\u3002\n\n - **\u6e05\u6670\u51c6\u786e**\uff1a\u786e\u4fdd\u6280\u672f\u672f\u8bed\u89e3\u91ca\u6e05\u695a\uff0c\u6b65\u9aa4\u65e0\u6b67\u4e49\uff0c\u4fe1\u606f\u51c6\u786e\u65e0\u8bef\u3002\n\n - **\u56de\u590d\u6709\u6548\u6027**\uff1a\u786e\u4fdd**\u95ee\u9898\u63cf\u8ff0**\u7684\u5185\u5bb9\uff0c\u5728**\u89e3\u51b3\u65b9\u6848**\u662f\u51c6\u786e\u7684\u56de\u590d\u5e76\u7ed9\u51fa\u4e86\u6b63\u786e\u7684\u6267\u884c\u65b9\u6848\u3002\n\n\n #\u5168\u5c40\u89c4\u5219\uff08\u6240\u6709\u5206\u652f\u9002\u7528\uff09\u3010\u8981\u6c42\u3011\n\n - **\u7248\u6743\u5408\u89c4**\uff1a\u5982\u679c\u77e5\u8bc6\u5e93\u5185\u5bb9\u548c\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u6d89\u53ca\u7834\u89e3\u3001\u6fc0\u6d3b\u7b49\u98ce\u9669\u5185\u5bb9\uff0c\u5fc5\u987b\u9644\u52a0\u56de\u590d\u76f8\u5173\u98ce\u9669\u5185\u5bb9\u7684\u514d\u8d23\u58f0\u660e\u3002\n\n - **\u94fe\u63a5\u6807\u51c6\u5316**\uff1a\u6240\u6709\u94fe\u63a5\u5fc5\u987b\u8f6c\u6362\u4e3amarkdown\u683c\u5f0f\uff0c\u4e0d\u5f97\u51fa\u73b0\u539f\u59cb\u94fe\u63a5\uff0c\u5982\u201dhttps:\/\/oa.servyou-it.com\/\uff0c\u8f93\u51fa\u4e3a[xxx](https:\/\/oa.servyou-it.com\/)\u201c\uff0c\u5176\u4e2dxxx\u6839\u636e\u4e0a\u4e0b\u6587\u5b9a\u4e49\u3002\n\n - **\u7ed3\u675f\u8bed**\uff1a\u5fc5\u987b\u5728\u56de\u590d\u672b\u5c3e\u9644\u52a0\u56fa\u5b9a\u63d0\u793a\uff1a\"\u60a8\u53ef\u9009\u62e9\u56de\u590d\"IT\u3001\u4eba\u529b\u3001\u7269\u4e1a\u3001\u62a5\u9500\u3001\u515a\u5de5\u3001\u5b89\u5168\"\u5173\u952e\u8bcd\uff0c\u901a\u8fc7\u56de\u590d\u7684\u94fe\u63a5\u8fdb\u5165\u4eba\u5de5\u652f\u6301\u3002(\u4eba\u5de5\u670d\u52a1\u65f6\u95f4:\u5de5\u4f5c\u65e59:00~18:00)\"\u3002\n\n - **\u6587\u5b57\u8981\u6c42**\uff1a\u5728**\u95ee\u9898\u63cf\u8ff0**\u548c**\u89e3\u51b3\u65b9\u6848**\u4e2d\uff0c\u4e0d\u80fd\u5305\u542b\u6587\u5b57\"\u77e5\u8bc6\u5e93\"\u548c\"\u5458\u5de5\u201d\u3002\n\n - **\u6587\u5b57\u66ff\u6362**\uff1a\u5728**\u95ee\u9898\u63cf\u8ff0**\u548c**\u89e3\u51b3\u65b9\u6848**\u4e2d\uff0c\u5c06\"\u540c\u4e8b\"\u6587\u5b57\u6539\u4e3a\u79f0\u547c\"\u60a8\"\u3002\n\n - **\u56de\u590d\u5b57\u6570**\uff1a\u56de\u590d\u5b57\u6570\u4e0d\u8d85\u8fc71000\u5b57\u3002\n\n - **\u5b8c\u5168\u5fe0\u4e8e\u77e5\u8bc6\u5e93\u5185\u5bb9\u56de\u590d**\uff1a\u5728**\u95ee\u9898\u63cf\u8ff0**\u548c**\u89e3\u51b3\u65b9\u6848**\u4e2d\uff0c\u4e0d\u5141\u8bb8\u51fa\u73b0\u77e5\u8bc6\u5e93\u5916\u7684\u62d3\u5c55\u601d\u8003\u5185\u5bb9\uff0c\u5305\u62ecdify\u7684\u94fe\u63a5\u5730\u5740\u7b49'\n - id: 034760a9-98ca-4e3a-a86d-269ca66a9e69\n role: user\n text: '\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\uff1a{{#conversation.servyou_query#}}\n\n \u77e5\u8bc6\u5e93\u5185\u5bb9\uff1a{{#17676676167470.result#}}\n\n \u56fe\u6587\u4fe1\u606f\uff1a{{#context#}}'\n selected: false\n title: \u672c\u5730\u5927\u6a21\u578b\u5206\u6790\n type: llm\n vision:\n enabled: false\n height: 88\n id: '1764905844059'\n position:\n x: 12303.182583067013\n y: 258.0075828932353\n positionAbsolute:\n x: 12303.182583067013\n y: 258.0075828932353\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: '{{#1764905844059.text#}}'\n selected: false\n title: \u6574\u5408\u56de\u590d\n type: answer\n variables: []\n height: 103\n id: '1765181482474'\n position:\n x: 13762.9588534678\n y: 258.0075828932353\n positionAbsolute:\n x: 13762.9588534678\n y: 258.0075828932353\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: over-write\n value:\n - conversation\n - servyou_query\n variable_selector:\n - conversation\n - memory_query\n write_mode: over-write\n - input_type: variable\n operation: over-write\n value:\n - '1764905844059'\n - text\n variable_selector:\n - conversation\n - memory_ans\n write_mode: over-write\n selected: false\n title: \u5168\u5c40\u53d8\u91cf-\u8bb0\u5fc6\u524d\u7f6e\u95ee\u9898\u548c\u56de\u590d\n type: assigner\n version: '2'\n height: 110\n id: '1765357529351'\n position:\n x: 13067.71450474107\n y: 258.0075828932353\n positionAbsolute:\n x: 13067.71450474107\n y: 258.0075828932353\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n extract_by:\n enabled: false\n serial: '1'\n filter_by:\n conditions:\n - comparison_operator: in\n key: type\n value:\n - image\n enabled: true\n item_var_type: file\n limit:\n enabled: false\n size: 10\n order_by:\n enabled: false\n key: ''\n value: asc\n selected: false\n title: \u63d0\u53d6\u56fe\u7247\n type: list-operator\n var_type: array[file]\n variable:\n - sys\n - files\n height: 92\n id: '1765436887640'\n position:\n x: -1236.233421978262\n y: 731.254359189726\n positionAbsolute:\n x: -1236.233421978262\n y: 731.254359189726\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n context:\n enabled: true\n variable_selector:\n - '1765436887640'\n - last_record\n model:\n completion_params:\n temperature: 0.7\n mode: chat\n name: Qwen3-VL-8B-Instruct\n provider: langgenius\/openai_api_compatible\/openai_api_compatible\n prompt_template:\n - id: 9f9ca01e-921c-46af-9fde-99961443a7f4\n role: system\n text: \u5206\u6790\u56fe\u7247\u7684\u5185\u5bb9\uff0c\u4e0d\u8d85\u8fc750\u5b57\u3002\n - id: 01bdc141-56e6-4757-a1f5-57f78f504369\n role: user\n text: \u56fe\u7247\uff1a{{#context#}}\n selected: false\n title: \u56fe\u7247\u5206\u6790\u5927\u6a21\u578b\n type: llm\n vision:\n configs:\n detail: high\n variable_selector:\n - '1765436887640'\n - last_record\n enabled: true\n height: 88\n id: '1765437083981'\n position:\n x: -729.4536141008323\n y: 888.1844744887503\n positionAbsolute:\n x: -729.4536141008323\n y: 888.1844744887503\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n cases:\n - case_id: 'true'\n conditions:\n - comparison_operator: empty\n id: e86d98d8-010f-4cf2-a1c6-b8e151b7cf26\n value: ''\n varType: array[file]\n variable_selector:\n - sys\n - files\n id: 'true'\n logical_operator: and\n selected: false\n title: \u56fe\u6587\u5224\u65ad\n type: if-else\n height: 124\n id: '1765437585148'\n position:\n x: -1926.280179417684\n y: 425.8515926460108\n positionAbsolute:\n x: -1926.280179417684\n y: 425.8515926460108\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n selected: false\n template: '{{ image }},{{ text }}'\n title: \u56fe\u6587\u5185\u5bb9\u6574\u5408\n type: template-transform\n variables:\n - value_selector:\n - '1765437083981'\n - text\n value_type: string\n variable: image\n - value_selector:\n - conversation\n - servyou_query\n value_type: string\n variable: text\n height: 52\n id: '1765439054336'\n position:\n x: -184.91587430741686\n y: 1042.342443267299\n positionAbsolute:\n x: -184.91587430741686\n y: 1042.342443267299\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: over-write\n value:\n - '1765782485068'\n - result\n variable_selector:\n - conversation\n - servyou_query\n write_mode: over-write\n selected: false\n title: \u5168\u5c40\u8d4b\u503c-\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\n type: assigner\n version: '2'\n height: 84\n id: '1765441606676'\n position:\n x: -2963.8329056615107\n y: 436.97867740596223\n positionAbsolute:\n x: -2963.8329056615107\n y: 436.97867740596223\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: over-write\n value:\n - '1765439054336'\n - output\n variable_selector:\n - conversation\n - servyou_query\n write_mode: over-write\n selected: false\n title: \u5168\u5c40\u53d8\u91cf-\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\n type: assigner\n version: '2'\n height: 84\n id: '1765441716709'\n position:\n x: 293.29585950407113\n y: 1160.9098249676185\n positionAbsolute:\n x: 293.29585950407113\n y: 1160.9098249676185\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n cases:\n - case_id: 'true'\n conditions:\n - comparison_operator: is\n id: 33ee6a32-a0c0-4bbf-9a96-bb7160234499\n value: \u60a8\u597d\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: 459317d5-9334-4557-83cc-bcd5acec58bf\n value: \u4f60\u597d\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: 73df0b1d-a2ad-45f8-8b63-003d70b0d108\n value: hi\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: 20e600d7-6737-4fd2-8658-26e43b68bc32\n value: \u54c8\u55bd\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: b7903e47-d4fb-44e1-b6a1-242903487ff6\n value: Hi\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: af62fff6-c3de-4c8d-821a-38c7f1f44608\n value: HI\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: ea51a7b1-7f5a-435f-a56c-2348802996a1\n value: hl\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: 92c3338e-915f-424f-87fb-84eb995e0f40\n value: \u65e9\u4e0a\u597d\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: f47b5f19-0c46-46f0-8098-ee05a2078547\n value: \u4e2d\u5348\u597d\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: 6362a678-559e-4cf7-a48d-d997b56629c3\n value: \u665a\u4e0a\u597d\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n id: 'true'\n logical_operator: or\n - case_id: d7e857f8-75b0-44b6-a342-fcbf0fd1bce0\n conditions:\n - comparison_operator: is\n id: 83764bd9-5d95-4aa7-966c-38a0eb37f463\n value: \u4eba\u5de5\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: 1135a97c-f44c-4b05-9048-e0efed72d761\n value: \u4eba\u5de5\u670d\u52a1\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: b80be458-4af2-4d20-8b7c-1d661e75fa7f\n value: \u8f6c\u4eba\u5de5\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: debde512-7ae9-4abe-9778-a0073d2e42d8\n value: \u4eba\u5de5\u652f\u6301\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: 9d308df4-3147-4c89-9073-d3199b69d99a\n value: \u80fd\u5426\u4eba\u5de5\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: 553a78ee-cb2c-46b9-9475-c6bca650a51c\n value: \u4eba\u5de5\u5ba2\u670d\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: e244f35d-9568-46e2-a9e0-605022e9996d\n value: IT\u4eba\u5de5\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n id: d7e857f8-75b0-44b6-a342-fcbf0fd1bce0\n logical_operator: or\n - case_id: 5b113ab9-2154-45bb-9fbc-e2fa2246b8c1\n conditions:\n - comparison_operator: is\n id: ca85a04b-ea31-40de-87ea-024ea69c780a\n value: IT\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: f721a7cf-e0cc-48a2-9314-b73967c900fb\n value: it\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: 9547b80f-0444-46c0-acb1-a1e37309ac84\n value: iT\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n - comparison_operator: is\n id: ad1029fa-3fb9-4d48-a8a5-e5a4c24224fd\n value: It\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n id: 5b113ab9-2154-45bb-9fbc-e2fa2246b8c1\n logical_operator: or\n - case_id: 66e1df2e-d7b7-4e2f-9ddb-ebac301f35f4\n conditions:\n - comparison_operator: is\n id: d109fdb4-fb99-47fa-8c4d-0eaac37846a4\n value: \u4eba\u529b\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n id: 66e1df2e-d7b7-4e2f-9ddb-ebac301f35f4\n logical_operator: and\n - case_id: 1ec2ad7a-456a-4181-ba0f-9a3362d7a44c\n conditions:\n - comparison_operator: is\n id: 2fd0693a-fb0e-46a2-902e-9fd7b26c412c\n value: \u7269\u4e1a\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n id: 1ec2ad7a-456a-4181-ba0f-9a3362d7a44c\n logical_operator: and\n - case_id: 909d209a-20c2-464b-9117-335166bd0209\n conditions:\n - comparison_operator: is\n id: d75ac251-6e79-4b8d-bc6a-510f0c38cfb4\n value: \u62a5\u9500\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n id: 909d209a-20c2-464b-9117-335166bd0209\n logical_operator: and\n - case_id: f8839db4-0b63-4411-b052-f82aa3807e34\n conditions:\n - comparison_operator: is\n id: 213ed616-05ae-483a-8c37-512eb39a138a\n value: \u515a\u5de5\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n id: f8839db4-0b63-4411-b052-f82aa3807e34\n logical_operator: and\n - case_id: 98d72ef6-f53a-482a-9cc6-36140595d055\n conditions:\n - comparison_operator: is\n id: eead373e-a9f0-459e-b2bf-6ea814f65e4c\n value: \u5b89\u5168\n varType: string\n variable_selector:\n - conversation\n - servyou_query\n id: 98d72ef6-f53a-482a-9cc6-36140595d055\n logical_operator: and\n selected: true\n title: \u81ea\u5b9a\u4e49\u89c4\u5219\u5e93\n type: if-else\n height: 928\n id: '1765517905842'\n position:\n x: 520.5281865827573\n y: -2456.2000110016365\n positionAbsolute:\n x: 520.5281865827573\n y: -2456.2000110016365\n selected: true\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: Hi\uff01\u6211\u662f\u201c\u667a\u80fdIT\u52a9\u624b\u201d\uff0c\u5f88\u9ad8\u5174\u4e3a\u60a8\u670d\u52a1\uff0c\u8bf7\u4f7f\u7528\u6587\u5b57\u7b80\u5355\u63cf\u8ff0\u60a8\u7684\u95ee\u9898\u3002\n selected: false\n title: \u95ee\u5019\u56fa\u5b9a\u56de\u590d\n type: answer\n variables: []\n height: 116\n id: '1765518093072'\n position:\n x: 2554.5815342573715\n y: -3113.922099235114\n positionAbsolute:\n x: 2554.5815342573715\n y: -3113.922099235114\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: \u8bf7\u4f7f\u7528\u6587\u5b57\u7b80\u5355\u63cf\u8ff0\u60a8\u7684\u95ee\u9898\uff0c\u6216\u8005\u56de\u590d\u201cIT\u201d\u3001\u201c\u4eba\u529b\u201d\u3001\u201c\u7269\u4e1a\u201d\u3001\u201c\u62a5\u9500\u201d\u3001\u201c\u515a\u5de5\u201d\u3001\u201c\u5b89\u5168\u201d\u7b49\u83b7\u5f97\u4eba\u5de5\u54a8\u8be2\u670d\u52a1\u5165\u53e3\u3002\n selected: false\n title: \u8f93\u5165\u201c\u4eba\u5de5\u201d\u4e8c\u5b57\u76f8\u5173\u56fa\u5b9a\u56de\u590d\n type: answer\n variables: []\n height: 148\n id: '1765524938055'\n position:\n x: 2854.0743305228325\n y: -2967.3309878875216\n positionAbsolute:\n x: 2854.0743305228325\n y: -2967.3309878875216\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: \u8bf7\u70b9\u51fb\u201c[\u8054\u7cfbIT\u4eba\u5de5\u5750\u5e2d](https:\/\/work.weixin.qq.com\/nl\/innerkfid\/ikfCtcYBwAASJO8iTSSGONGsDfFMoUypg)\u201d\u94fe\u63a5\u8fdb\u5165\u4eba\u5de5\u670d\u52a1\u7a97\u53e3\uff0c\u7b80\u5355\u63cf\u8ff0\u60a8\u7684\u95ee\u9898\uff0c\u5e76\u63d0\u4f9b\u62a5\u9519\u4fe1\u606f\u6216\u622a\u56fe\uff0c\u540c\u4e8b\u5c06\u5c3d\u5feb\u56de\u590d\u60a8\u7684\u95ee\u9898\uff0c\uff08\u4eba\u5de5\u5750\u5e2d\u670d\u52a1\u65f6\u95f4\uff1a\u5de5\u4f5c\u65e5\u00a09:00~18:00\uff09\u3002\u3010\u6ce8\uff1a\u8bf7\u786e\u4fdd\u4f01\u5fae\u5728\u6700\u65b0\u7248\u672c\uff0c\u5426\u5219\u65e0\u6cd5\u70b9\u51fb\u94fe\u63a5\u3002\u3011\n selected: false\n title: IT\u5750\u5e2d\u4eba\u5de5\u94fe\u63a5\u56de\u590d\n type: answer\n variables: []\n height: 228\n id: '1765524956759'\n position:\n x: 3113.2329739514166\n y: -2800.425441650135\n positionAbsolute:\n x: 3113.2329739514166\n y: -2800.425441650135\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: \u8bf7\u70b9\u51fb\u201c[\u4eba\u529b\u8d44\u6e90\u5171\u4eab\u670d\u52a1\u54a8\u8be2](https:\/\/work.weixin.qq.com\/nl\/innerkfid\/ikfCtcYBwAAvSRL5i5b_Xia8vCmFc2gRw)\u201d\u94fe\u63a5\u8fdb\u5165\u4eba\u5de5\u670d\u52a1\u7a97\u53e3\uff0c\u7b80\u5355\u63cf\u8ff0\u60a8\u7684\u95ee\u9898\uff0c\u540c\u4e8b\u5c06\u5c3d\u5feb\u56de\u590d\u60a8\u7684\u95ee\u9898\u3002\u3010\u6ce8\uff1a\u8bf7\u786e\u4fdd\u4f01\u5fae\u5728\u6700\u65b0\u7248\u672c\uff0c\u5426\u5219\u65e0\u6cd5\u70b9\u51fb\u94fe\u63a5\u3002\u3011\n selected: false\n title: \u4eba\u529b\u5750\u5e2d\u4eba\u5de5\u94fe\u63a5\u56de\u590d\n type: answer\n variables: []\n height: 196\n id: '1765766043047'\n position:\n x: 3374.9606775942593\n y: -2570.152723035539\n positionAbsolute:\n x: 3374.9606775942593\n y: -2570.152723035539\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: \u8bf7\u70b9\u51fb\u201c[\u7269\u4e1a\u670d\u52a1\u54a8\u8be2](https:\/\/work.weixin.qq.com\/nl\/innerkfid\/ikfCtcYBwAAUtkMyOToCZqe42ZBDupVEQ)\u201d\u94fe\u63a5\u8fdb\u5165\u4eba\u5de5\u670d\u52a1\u7a97\u53e3\uff0c\u7b80\u5355\u63cf\u8ff0\u60a8\u7684\u95ee\u9898\uff0c\u540c\u4e8b\u5c06\u5c3d\u5feb\u56de\u590d\u60a8\u7684\u95ee\u9898\u3002\u3010\u6ce8\uff1a\u8bf7\u786e\u4fdd\u4f01\u5fae\u5728\u6700\u65b0\u7248\u672c\uff0c\u5426\u5219\u65e0\u6cd5\u70b9\u51fb\u94fe\u63a5\u3002\u3011\n selected: false\n title: \u7269\u4e1a\u5750\u5e2d\u4eba\u5de5\u94fe\u63a5\u56de\u590d\n type: answer\n variables: []\n height: 196\n id: '1765766067015'\n position:\n x: 3616.741884343417\n y: -2365.8413323601862\n positionAbsolute:\n x: 3616.741884343417\n y: -2365.8413323601862\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: \u8bf7\u70b9\u51fb\u201c[\u62a5\u9500\u670d\u52a1\u54a8\u8be2](https:\/\/work.weixin.qq.com\/nl\/innerkfid\/ikfCtcYBwAAG4HC1zWJtPuALPKl2X6jcw)\u201d\u94fe\u63a5\u8fdb\u5165\u4eba\u5de5\u670d\u52a1\u7a97\u53e3\uff0c\u7b80\u5355\u63cf\u8ff0\u60a8\u7684\u95ee\u9898\uff0c\u540c\u4e8b\u5c06\u5c3d\u5feb\u56de\u590d\u60a8\u7684\u95ee\u9898\u3002\u3010\u6ce8\uff1a\u8bf7\u786e\u4fdd\u4f01\u5fae\u5728\u6700\u65b0\u7248\u672c\uff0c\u5426\u5219\u65e0\u6cd5\u70b9\u51fb\u94fe\u63a5\u3002\u3011\n selected: false\n title: \u62a5\u9500\u5750\u5e2d\u4eba\u5de5\u94fe\u63a5\u56de\u590d\n type: answer\n variables: []\n height: 196\n id: '1765766081739'\n position:\n x: 3909.9734093883203\n y: -2174.2176645758727\n positionAbsolute:\n x: 3909.9734093883203\n y: -2174.2176645758727\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: \u8bf7\u70b9\u51fb\u201c[\u515a\u5de5\u670d\u52a1\u54a8\u8be2](https:\/\/work.weixin.qq.com\/nl\/innerkfid\/ikfCtcYBwAANk3yPOPAmkD6nLRHjbv-Zg)\u201d\u94fe\u63a5\u8fdb\u5165\u4eba\u5de5\u670d\u52a1\u7a97\u53e3\uff0c\u7b80\u5355\u63cf\u8ff0\u60a8\u7684\u95ee\u9898\uff0c\u540c\u4e8b\u5c06\u5c3d\u5feb\u56de\u590d\u60a8\u7684\u95ee\u9898\u3002\u3010\u6ce8\uff1a\u8bf7\u786e\u4fdd\u4f01\u5fae\u5728\u6700\u65b0\u7248\u672c\uff0c\u5426\u5219\u65e0\u6cd5\u70b9\u51fb\u94fe\u63a5\u3002\u3011\n selected: false\n title: \u515a\u5de5\u5750\u5e2d\u4eba\u5de5\u94fe\u63a5\u56de\u590d\n type: answer\n variables: []\n height: 196\n id: '1765766096673'\n position:\n x: 4161.9490515054285\n y: -1965.5190282543938\n positionAbsolute:\n x: 4161.9490515054285\n y: -1965.5190282543938\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: \u8bf7\u70b9\u51fb\u201c[\u5b89\u5168\u670d\u52a1\u54a8\u8be2](https:\/\/work.weixin.qq.com\/nl\/innerkfid\/ikfCtcYBwAAtkP_ODMcv53bGE5x5M9YYw)\u201d\u94fe\u63a5\u8fdb\u5165\u4eba\u5de5\u670d\u52a1\u7a97\u53e3\uff0c\u7b80\u5355\u63cf\u8ff0\u60a8\u7684\u95ee\u9898\uff0c\u540c\u4e8b\u5c06\u5c3d\u5feb\u56de\u590d\u60a8\u7684\u95ee\u9898\u3002\u3010\u6ce8\uff1a\u8bf7\u786e\u4fdd\u4f01\u5fae\u5728\u6700\u65b0\u7248\u672c\uff0c\u5426\u5219\u65e0\u6cd5\u70b9\u51fb\u94fe\u63a5\u3002\u3011\n selected: false\n title: \u5b89\u5168\u5750\u5e2d\u4eba\u5de5\u94fe\u63a5\u56de\u590d\n type: answer\n variables: []\n height: 196\n id: '1765766112941'\n position:\n x: 4421.398579391068\n y: -1741.1828280237867\n positionAbsolute:\n x: 4421.398579391068\n y: -1741.1828280237867\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"def main(query: str):\\n extracted_content = \\\"\\\"\\n query = query.replace(\\\"\\\n \\\\n\\\",\\\"\\\")\\n query = query.replace(\\\"\\\\\\\"\\\",\\\"\\\")\\n query = query.strip()\\n\\\n \\ if \\\"Here is my question\\\" in query:\\n before, separator, after\\\n \\ = query.partition(\\\"Here is my question:\\\")\\n if separator:\\n \\\n \\ if after:\\n extracted_content = after.strip()\\n\\\n \\ else:\\n after = \\\"\u4ec0\u4e48\u95ee\u9898\uff1f\\\"\\n extracted_content\\\n \\ = after.strip()\\n else:\\n extracted_content = query.strip()\\n\\\n \\ return {\\n \\\"result\\\": extracted_content\\n }\\n\"\n code_language: python3\n outputs:\n result:\n children: null\n type: string\n selected: false\n title: \u4ee3\u7801\u6267\u884c\n type: code\n variables:\n - value_selector:\n - sys\n - query\n value_type: string\n variable: query\n height: 52\n id: '1765782485068'\n position:\n x: -3867.754148404409\n y: 436.97867740596223\n positionAbsolute:\n x: -3867.754148404409\n y: 436.97867740596223\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n context:\n enabled: true\n variable_selector:\n - conversation\n - servyou_query\n model:\n completion_params:\n temperature: 0.7\n mode: chat\n name: Qwen3-30B-A3B-Instruct\n provider: yangyaofei\/vllm\/vllm\n prompt_template:\n - id: df73d0b1-fb70-4b31-b446-94bfc168d44c\n role: system\n text: '##\u89d2\u8272\n\n - \u4f60\u662f\u4e00\u4e2a\u4e25\u8c28\u7684\u6587\u6863\u76f8\u5173\u6027\u5206\u6790\u4e13\u5bb6\uff0c\u64c5\u957f\u8bc6\u522b\u6587\u672c\u4e4b\u95f4\u7684\u5b9e\u8d28\u610f\u56fe\u5173\u8054\u3002\n\n\n ##\u4efb\u52a1\n\n - \u5bf9\u6bd4\u5206\u6790\u4ee5\u4e0b\u4e24\u6bb5\u5185\u5bb9\uff1a\n\n -- \u5f53\u524d\u67e5\u8be2\u5185\u5bb9\n\n -- \u5386\u53f2\u67e5\u8be2\u5185\u5bb9\n\n - \u5224\u65ad\u4e24\u8005\u662f\u5426\u56f4\u7ed5\u540c\u4e00\u4e2a\u5177\u4f53\u95ee\u9898\u6216\u9700\u6c42\u5c55\u5f00\uff0c\u4e14\u610f\u56fe\u4e00\u81f4\u3001\u4fe1\u606f\u53ef\u76f4\u63a5\u5bf9\u5e94\u3002\n\n\n #\u89c4\u5219\n\n - \u4ed4\u7ec6\u7406\u89e3\u6bcf\u4e00\u6bb5\u5185\u5bb9\u7684\u6838\u5fc3\u610f\u56fe\u548c\u5173\u952e\u4fe1\u606f\u70b9\u3002\n\n - \u6309\u4ee5\u4e0b\u6761\u4ef6\u5224\u65ad\u662f\u5426\u4e3a\u201c\u76f8\u5173\u201d\uff1a\n\n -- \u4e3b\u9898\u4e00\u81f4\uff0c\u4e14\u9488\u5bf9\u7684\u662f\u540c\u4e00\u5177\u4f53\u95ee\u9898\uff1b\n\n -- \u610f\u56fe\u91cd\u5408\uff1b\n\n -- \u4fe1\u606f\u53ef\u76f4\u63a5\u547c\u5e94\u6216\u8854\u63a5\uff0c\u800c\u975e\u4ec5\u4ec5\u8bdd\u9898\u7c7b\u4f3c\u3002\n\n - \u82e5\u5185\u5bb9\u867d\u6709\u8bdd\u9898\u91cd\u53e0\uff0c\u4f46\u610f\u56fe\u4e0d\u540c\u3001\u95ee\u9898\u6307\u5411\u4e0d\u540c\uff0c\u6216\u4fe1\u606f\u65e0\u6cd5\u76f4\u63a5\u5bf9\u5e94\uff0c\u5219\u5224\u65ad\u4e3a\u201c\u4e0d\u76f8\u5173\u201d\u3002\n\n - \u82e5\u5386\u53f2\u67e5\u8be2\u5185\u5bb9\u4e3a\u7a7a\uff0c\u5219\u5224\u65ad\u4e3a\u201c\u4e0d\u76f8\u5173\u201d\u3002\n\n\n #\u8f93\u51fa\u65f6\u4ec5\u5141\u8bb8\u8fd4\u56de\u4ee5\u4e0b\u4e24\u79cd\u7ed3\u679c\u4e4b\u4e00\uff0c\u4e0d\u8981\u6dfb\u52a0\u4efb\u4f55\u89e3\u91ca\u6216\u6807\u70b9\uff1a\n\n - \u76f8\u5173\n\n - \u4e0d\u76f8\u5173'\n - id: f694ec6c-01b7-423a-95ec-c91a21fabe3f\n role: user\n text: '\u5f53\u524d\u67e5\u8be2\u5185\u5bb9\uff1a{{#context#}}\n\n \u5386\u53f2\u67e5\u8be2\u5185\u5bb9\uff1a{{#conversation.memory_query#}}'\n selected: false\n title: \u76f8\u5173\u6027\u5224\u65ad1\n type: llm\n vision:\n enabled: false\n height: 88\n id: '1765785630566'\n position:\n x: 7704.55937556773\n y: -266.3929337287146\n positionAbsolute:\n x: 7704.55937556773\n y: -266.3929337287146\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n context:\n enabled: true\n variable_selector:\n - conversation\n - servyou_query\n model:\n completion_params:\n temperature: 0.7\n mode: chat\n name: Qwen3-30B-A3B-Instruct\n provider: yangyaofei\/vllm\/vllm\n prompt_template:\n - id: 87969cdd-a098-488b-ba64-29238794b75d\n role: system\n text: '##\u89d2\u8272\n\n - \u4f60\u662f\u4e00\u4e2a\u4e25\u8c28\u7684\u6587\u6863\u76f8\u5173\u6027\u5206\u6790\u4e13\u5bb6\uff0c\u64c5\u957f\u8bc6\u522b\u6587\u672c\u4e4b\u95f4\u7684\u5b9e\u8d28\u610f\u56fe\u5173\u8054\u3002\n\n\n ##\u4efb\u52a1\n\n - \u5bf9\u6bd4\u5206\u6790\u4ee5\u4e0b\u4e24\u6bb5\u5185\u5bb9\uff1a\n\n -- \u5f53\u524d\u67e5\u8be2\u5185\u5bb9\n\n -- \u5386\u53f2\u67e5\u8be2\u5185\u5bb9\n\n - \u5224\u65ad\u4e24\u8005\u662f\u5426\u56f4\u7ed5\u540c\u4e00\u4e2a\u5177\u4f53\u95ee\u9898\u6216\u9700\u6c42\u5c55\u5f00\uff0c\u4e14\u610f\u56fe\u4e00\u81f4\u3001\u4fe1\u606f\u53ef\u76f4\u63a5\u5bf9\u5e94\u3002\n\n\n #\u89c4\u5219\n\n - \u4ed4\u7ec6\u7406\u89e3\u6bcf\u4e00\u6bb5\u5185\u5bb9\u7684\u6838\u5fc3\u610f\u56fe\u548c\u5173\u952e\u4fe1\u606f\u70b9\u3002\n\n - \u6309\u4ee5\u4e0b\u6761\u4ef6\u5224\u65ad\u662f\u5426\u4e3a\u201c\u76f8\u5173\u201d\uff1a\n\n -- \u4e3b\u9898\u4e00\u81f4\uff0c\u4e14\u9488\u5bf9\u7684\u662f\u540c\u4e00\u5177\u4f53\u95ee\u9898\uff1b\n\n -- \u610f\u56fe\u91cd\u5408\uff1b\n\n -- \u4fe1\u606f\u53ef\u76f4\u63a5\u547c\u5e94\u6216\u8854\u63a5\uff0c\u800c\u975e\u4ec5\u4ec5\u8bdd\u9898\u7c7b\u4f3c\u3002\n\n - \u82e5\u5185\u5bb9\u867d\u6709\u8bdd\u9898\u91cd\u53e0\uff0c\u4f46\u610f\u56fe\u4e0d\u540c\u3001\u95ee\u9898\u6307\u5411\u4e0d\u540c\uff0c\u6216\u4fe1\u606f\u65e0\u6cd5\u76f4\u63a5\u5bf9\u5e94\uff0c\u5219\u5224\u65ad\u4e3a\u201c\u4e0d\u76f8\u5173\u201d\u3002\n\n - \u82e5\u5386\u53f2\u67e5\u8be2\u5185\u5bb9\u4e3a\u7a7a\uff0c\u5219\u5224\u65ad\u4e3a\u201c\u4e0d\u76f8\u5173\u201d\u3002\n\n\n\n #\u8f93\u51fa\u65f6\u4ec5\u5141\u8bb8\u8fd4\u56de\u4ee5\u4e0b\u4e24\u79cd\u7ed3\u679c\u4e4b\u4e00\uff0c\u4e0d\u8981\u6dfb\u52a0\u4efb\u4f55\u89e3\u91ca\u6216\u6807\u70b9\uff1a\n\n - \u76f8\u5173\n\n - \u4e0d\u76f8\u5173'\n - id: 82dc391b-0a47-4a1d-85b7-765f54602748\n role: user\n text: '\u5f53\u524d\u67e5\u8be2\u5185\u5bb9\uff1a{{#context#}}\n\n \u5386\u53f2\u67e5\u8be2\u5185\u5bb9\uff1a{{#conversation.memory_query#}}'\n selected: false\n title: \u76f8\u5173\u6027\u5224\u65ad2\n type: llm\n vision:\n enabled: false\n height: 88\n id: '1765785673343'\n position:\n x: 7712.724115335564\n y: 1135.8772265369253\n positionAbsolute:\n x: 7712.724115335564\n y: 1135.8772265369253\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n authorization:\n config: null\n type: no-auth\n body:\n data:\n - id: key-value-263\n key: ''\n type: text\n value: \"{\\n \\\"model\\\": \\\"model\\\",\\n \\\"messages\\\": [\\n {\\n \\\"\\\n role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"{{#conversation.servyou_query#}}\\\"\\\n \\n }\\n ],\\n \\\"stream\\\": true,\\n \\\"encoding\\\": \\\"utf-8\\\"\\n}\"\n type: json\n headers: 'Content-Type:application\/json; charset=\"utf-8\"\n\n Authorization:Bearer ragflow-ZiYmIzMjcwYjk0ZjExZjBhODgzMDI0Mm'\n method: post\n params: ''\n retry_config:\n max_retries: 3\n retry_enabled: true\n retry_interval: 100\n selected: false\n ssl_verify: true\n timeout:\n max_connect_timeout: 0\n max_read_timeout: 0\n max_write_timeout: 0\n title: ragflow\u77e5\u8bc6\u5e93 (1)\n type: http-request\n url: http:\/\/10.80.0.85:9380\/api\/v1\/agents_openai\/d4051f80dfdc11f0993d0242ac120006\/chat\/completions\n variables: []\n height: 170\n id: '17657860354750'\n position:\n x: 9160.279141300143\n y: 1215.7394875693199\n positionAbsolute:\n x: 9160.279141300143\n y: 1215.7394875693199\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n cases:\n - case_id: 'true'\n conditions:\n - comparison_operator: is\n id: f483964e-e4ed-4c6e-8ae1-9d2ae1b42e94\n value: \u76f8\u5173\n varType: string\n variable_selector:\n - '1765785630566'\n - text\n id: 'true'\n logical_operator: or\n selected: false\n title: \u662f\u5426\u76f8\u51731\n type: if-else\n height: 124\n id: '1765786049975'\n position:\n x: 8195.329669667188\n y: -266.3929337287146\n positionAbsolute:\n x: 8195.329669667188\n y: -266.3929337287146\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n cases:\n - case_id: 'true'\n conditions:\n - comparison_operator: is\n id: f6fd9947-db67-4463-8e25-858e223cc137\n value: \u76f8\u5173\n varType: string\n variable_selector:\n - '1765785673343'\n - text\n id: 'true'\n logical_operator: and\n selected: false\n title: \u662f\u5426\u76f8\u51732\n type: if-else\n height: 124\n id: '1765786290221'\n position:\n x: 8195.329669667188\n y: 1135.8772265369253\n positionAbsolute:\n x: 8195.329669667188\n y: 1135.8772265369253\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n cases:\n - case_id: 'true'\n conditions:\n - comparison_operator: contains\n id: 7f0f5251-7f1d-46f1-bff7-a4a4c215dbc5\n value: \u60a8\u7684\u95ee\u9898\u53ef\u80fd\u4e0d\u5728\u670d\u52a1\u4e1a\u52a1\u8303\u56f4\u5185\n varType: string\n variable_selector:\n - '17657860354750'\n - body\n id: 'true'\n logical_operator: or\n selected: false\n title: \u77e5\u8bc6\u5e93\u662f\u5426\u5b8c\u5168\u65e0\u547d\u4e2d (1)\n type: if-else\n height: 124\n id: '17657864016400'\n position:\n x: 10219.434585373543\n y: 1199.837653129122\n positionAbsolute:\n x: 10219.434585373543\n y: 1199.837653129122\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n dataset_ids:\n - 1aM5JfrtmBYtghXflTeQDOTiM0MaufWVaEpunkstrQr2DWCad1pyfImMvY9EDXJh\n - SouBCst5gmvLf9zgdmQZq3fT46jOWdR4r136JeI7ieO9n5FJVVzKCCd0aaLkQ6UK\n multiple_retrieval_config:\n reranking_enable: true\n reranking_mode: reranking_model\n reranking_model:\n model: bge-rerank\n provider: langgenius\/openai_api_compatible\/openai_api_compatible\n top_k: 4\n query_variable_selector:\n - conversation\n - servyou_query\n retrieval_mode: multiple\n selected: false\n title: \u77e5\u8bc6\u5e93\u56fe\u7247\u68c0\u7d22 (1)\n type: knowledge-retrieval\n height: 118\n id: '17657866222300'\n position:\n x: 11335.415558234963\n y: 2023.661199565415\n positionAbsolute:\n x: 11335.415558234963\n y: 2023.661199565415\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n context:\n enabled: true\n variable_selector:\n - '17657866222300'\n - result\n memory:\n query_prompt_template: '{{#sys.query#}}\u3010{{#conversation.servyou_query#}}\u3011\n\n\n {{#sys.files#}}'\n role_prefix:\n assistant: ''\n user: ''\n window:\n enabled: true\n size: 10\n model:\n completion_params:\n temperature: 0.7\n mode: chat\n name: Qwen3-30B-A3B-Instruct\n provider: yangyaofei\/vllm\/vllm\n prompt_template:\n - id: 8fdbc119-5c08-4eb4-9364-40deb1bb4b1f\n role: system\n text: '# \u89d2\u8272\u4e0e\u6838\u5fc3\u4efb\u52a1\n\n - \u4f60\u662f\u4e00\u540d\u4e13\u4e1a\u7684IT\u652f\u6301\u5206\u6790\u52a9\u7406\uff0c\u4e13\u95e8\u5904\u7406\u4f01\u4e1a\u5185\u90e8\u540c\u4e8b\u7684IT\u54a8\u8be2\u3002\n\n - **\u6838\u5fc3\u4f7f\u547d**\uff1a\u4e3a\u540c\u4e8b\u63d0\u4f9b\u51c6\u786e\u3001\u6e05\u6670\u4e14\u53ef\u7acb\u5373\u6267\u884c\u7684\u89e3\u51b3\u65b9\u6848\u3002\n\n\n # \u5904\u7406\u6d41\u7a0b\u4e0e\u89c4\u5219\n\n\n ## \u7b2c\u4e00\u6b65\uff1a\u95ee\u7b54\u5224\u65ad\n\n - \u5224\u65ad\u77e5\u8bc6\u5e93\u5185\u5bb9\u80fd\u5426\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u3002\n\n - \u6b64\u5224\u65ad\u662f\u540e\u7eed\u6d41\u7a0b\u7684\u51b3\u7b56\u57fa\u7840\u3002\n\n\n ## \u7b2c\u4e8c\u6b65\uff1a\u5206\u652f\u5904\u7406\u4e0e\u56de\u590d\u751f\u6210 (\u6574\u5408\u7ed3\u675f\u8bed)\n\n\n ###\u60c5\u51b5\u4e00\uff1a\u77e5\u8bc6\u5e93\u5185\u5bb9\u80fd\u591f\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\n\n - **\u540c\u65f6**\uff0c\u5224\u65ad\u56fe\u6587\u4fe1\u606f\u4e0e\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u662f\u5426\u76f8\u5173\u3002\n\n - **\u63d0\u53d6\u76f8\u5173\u56fe\u6587\u4fe1\u606f\u4e2d\u7684\u94fe\u63a5**\uff0c\u5982\u201d![image](https:\/\/yw-dify.dc.servyou-it.com)\u201c\u63d0\u53d6\u5176\u4e2d\u7684\u201dhttps:\/\/yw-dify.dc.servyou-it.com\u201c\uff0c\u8fdb\u884c\u5168\u5c40\u89c4\u5219\u4e2d\u7684**\u94fe\u63a5\u6807\u51c6\u5316**\u3002\n\n - **\u751f\u6210\u56de\u590d**\uff1a\u57fa\u4e8e\u77e5\u8bc6\u5e93\u5185\u5bb9\u548c\u76f8\u5173\u7684\u56fe\u6587\u4fe1\u606f\uff0c\u751f\u6210\u6700\u7ec8\u56de\u590d\u3002\n\n\n ###\u60c5\u51b5\u4e8c\uff1a\u77e5\u8bc6\u5e93\u5185\u5bb9\u4e0d\u80fd\u591f\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\n\n - **\u56de\u590d\u56fa\u5b9a\u8bed\u53e5**\uff1a\"\u62b1\u6b49\uff0c\u60a8\u7684\u95ee\u9898\u53ef\u80fd\u4e0d\u5728\u670d\u52a1\u4e1a\u52a1\u8303\u56f4\u5185\uff0c\u8bf7\u5c1d\u8bd5\u8c03\u6574\u5176\u4ed6\u95ee\u6cd5\u3002\"\u3002\n\n - **\u91cd\u8981**\uff1a\u5728\u4e0a\u8ff0\u56fa\u5b9a\u8bed\u53e5\u540e\uff0c\u5fc5\u987b\u540c\u6837\u9644\u52a0\u7ed3\u675f\u8bed\u3002\n\n\n #\u5168\u5c40\u8f93\u51fa\u683c\u5f0f\u8981\u6c42\uff08\u4ec5\u5f53\u77e5\u8bc6\u5e93\u5185\u5bb9\u80fd\u591f\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u65f6\u751f\u6548\uff09\n\n - **\u7ed3\u6784\u5316\u683c\u5f0f**\uff0c\u56de\u590d\u5fc5\u987b\u5177\u6709\u6e05\u6670\u7684\u89c6\u89c9\u5c42\u6b21\uff0c\u4e25\u683c\u4f7f\u7528\u4ee5\u4e0b\u683c\u5f0f\uff1a\n\n -- \u4f7f\u7528\u6807\u9898\uff08\u5982 ### \u95ee\u9898\u63cf\u8ff0\u3001### \u89e3\u51b3\u65b9\u6848\uff09\u5212\u5206\u90e8\u5206\u3002\n\n -- \u4f7f\u7528\u7f16\u53f7\u5217\u8868\uff081. 2. 3...\uff09\u8868\u793a\u6709\u987a\u5e8f\u7684\u64cd\u4f5c\u6b65\u9aa4\u3002\n\n -- \u4f7f\u7528\u9879\u76ee\u7b26\u53f7\u5217\u8868\uff08-\uff09\u8868\u793a\u5e76\u5217\u7684\u8981\u70b9\u6216\u8bf4\u660e\u3002\n\n -- \u5173\u952e\u4fe1\u606f\uff08\u5982\u670d\u52a1\u5668\u5730\u5740\u3001\u4ee3\u7801\u5173\u952e\u5b57\uff09\u4f7f\u7528\u884c\u5185\u4ee3\u7801\u6807\u8bb0\uff08\u5982 `hostname`\uff09\u7a81\u51fa\u3002\n\n\n #\u5168\u5c40\u5185\u5bb9\u8d28\u91cf\u8981\u6c42\n\n - **\u7b80\u6d01\u7cbe\u51c6**\uff1a\u786e\u4fdd\u56de\u7b54\u76f4\u63a5\u7cbe\u51c6\u6709\u6548\uff0c\u907f\u514d\u5197\u957f\uff0c\u5207\u52ff\u8fc7\u5ea6\u8d58\u8ff0\u548c\u6269\u5c55\u56de\u7b54\u3002\n\n - **\u4e13\u4e1a\u53cb\u597d**\uff1a\u4fdd\u6301\u4e13\u4e1a\u3001\u8010\u5fc3\u4e14\u53cb\u597d\u7684\u652f\u6301\u6001\u5ea6\uff0c\u7406\u89e3\u540c\u4e8b\u7684\u6025\u5207\u5fc3\u60c5\u3002\n\n - **\u6e05\u6670\u51c6\u786e**\uff1a\u786e\u4fdd\u6280\u672f\u672f\u8bed\u89e3\u91ca\u6e05\u695a\uff0c\u6b65\u9aa4\u65e0\u6b67\u4e49\uff0c\u4fe1\u606f\u51c6\u786e\u65e0\u8bef\u3002\n\n - **\u56de\u590d\u6709\u6548\u6027**\uff1a\u786e\u4fdd**\u95ee\u9898\u63cf\u8ff0**\u7684\u5185\u5bb9\uff0c\u5728**\u89e3\u51b3\u65b9\u6848**\u662f\u51c6\u786e\u7684\u56de\u590d\u5e76\u7ed9\u51fa\u4e86\u6b63\u786e\u7684\u6267\u884c\u65b9\u6848\u3002\n\n\n #\u5168\u5c40\u89c4\u5219\uff08\u6240\u6709\u5206\u652f\u9002\u7528\uff09\u3010\u8981\u6c42\u3011\n\n - **\u7248\u6743\u5408\u89c4**\uff1a\u5982\u679c\u77e5\u8bc6\u5e93\u5185\u5bb9\u548c\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u6d89\u53ca\u7834\u89e3\u3001\u6fc0\u6d3b\u7b49\u98ce\u9669\u5185\u5bb9\uff0c\u5fc5\u987b\u9644\u52a0\u56de\u590d\u76f8\u5173\u98ce\u9669\u5185\u5bb9\u7684\u514d\u8d23\u58f0\u660e\u3002\n\n - **\u94fe\u63a5\u6807\u51c6\u5316**\uff1a\u6240\u6709\u94fe\u63a5\u5fc5\u987b\u8f6c\u6362\u4e3amarkdown\u683c\u5f0f\uff0c\u4e0d\u5f97\u51fa\u73b0\u539f\u59cb\u94fe\u63a5\uff0c\u5982\u201dhttps:\/\/oa.servyou-it.com\/\uff0c\u8f93\u51fa\u4e3a[xxx](https:\/\/oa.servyou-it.com\/)\u201c\uff0c\u5176\u4e2dxxx\u6839\u636e\u4e0a\u4e0b\u6587\u5b9a\u4e49\u3002\n\n - **\u7ed3\u675f\u8bed**\uff1a\u5fc5\u987b\u5728\u56de\u590d\u672b\u5c3e\u9644\u52a0\u56fa\u5b9a\u63d0\u793a\uff1a\"\u60a8\u53ef\u9009\u62e9\u56de\u590d\"IT\u3001\u4eba\u529b\u3001\u7269\u4e1a\u3001\u62a5\u9500\u3001\u515a\u5de5\u3001\u5b89\u5168\"\u5173\u952e\u8bcd\uff0c\u901a\u8fc7\u56de\u590d\u7684\u94fe\u63a5\u8fdb\u5165\u4eba\u5de5\u652f\u6301\u3002(\u4eba\u5de5\u670d\u52a1\u65f6\u95f4:\u5de5\u4f5c\u65e59:00~18:00)\"\u3002\n\n - **\u6587\u5b57\u8981\u6c42**\uff1a\u5728**\u95ee\u9898\u63cf\u8ff0**\u548c**\u89e3\u51b3\u65b9\u6848**\u4e2d\uff0c\u4e0d\u80fd\u5305\u542b\u6587\u5b57\"\u77e5\u8bc6\u5e93\"\u548c\"\u5458\u5de5\u201d\u3002\n\n - **\u6587\u5b57\u66ff\u6362**\uff1a\u5728**\u95ee\u9898\u63cf\u8ff0**\u548c**\u89e3\u51b3\u65b9\u6848**\u4e2d\uff0c\u5c06\"\u540c\u4e8b\"\u6587\u5b57\u6539\u4e3a\u79f0\u547c\"\u60a8\"\u3002\n\n - **\u56de\u590d\u5b57\u6570**\uff1a\u56de\u590d\u5b57\u6570\u4e0d\u8d85\u8fc71000\u5b57\u3002\n\n - **\u5b8c\u5168\u5fe0\u4e8e\u77e5\u8bc6\u5e93\u5185\u5bb9\u56de\u590d**\uff1a\u5728**\u95ee\u9898\u63cf\u8ff0**\u548c**\u89e3\u51b3\u65b9\u6848**\u4e2d\uff0c\u4e0d\u5141\u8bb8\u51fa\u73b0\u77e5\u8bc6\u5e93\u5916\u7684\u62d3\u5c55\u601d\u8003\u5185\u5bb9\uff0c\u5305\u62ecdify\u7684\u94fe\u63a5\u5730\u5740\u7b49'\n - id: 034760a9-98ca-4e3a-a86d-269ca66a9e69\n role: user\n text: '\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\uff1a{{#conversation.servyou_query#}}\n\n \u77e5\u8bc6\u5e93\u5185\u5bb9\uff1a{{#17676676927510.result#}}\n\n \u56fe\u6587\u4fe1\u606f\uff1a{{#context#}}'\n selected: false\n title: \u672c\u5730\u5927\u6a21\u578b\u5206\u6790 (1)\n type: llm\n vision:\n enabled: false\n height: 88\n id: '17657866286790'\n position:\n x: 12174.350946071341\n y: 2023.661199565415\n positionAbsolute:\n x: 12174.350946071341\n y: 2023.661199565415\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: over-write\n value:\n - conversation\n - servyou_query\n variable_selector:\n - conversation\n - memory_query\n write_mode: over-write\n - input_type: variable\n operation: over-write\n value:\n - '17657866286790'\n - text\n variable_selector:\n - conversation\n - memory_ans\n write_mode: over-write\n selected: false\n title: \u5168\u5c40\u53d8\u91cf-\u8bb0\u5fc6\u524d\u7f6e\u95ee\u9898\u548c\u56de\u590d (1)\n type: assigner\n version: '2'\n height: 110\n id: '17657866367000'\n position:\n x: 13058.347048392365\n y: 2023.661199565415\n positionAbsolute:\n x: 13058.347048392365\n y: 2023.661199565415\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: '{{#17657866286790.text#}}'\n selected: false\n title: \u6574\u5408\u56de\u590d (1)\n type: answer\n variables: []\n height: 103\n id: '17657866567850'\n position:\n x: 13825.43617678274\n y: 2023.661199565415\n positionAbsolute:\n x: 13825.43617678274\n y: 2023.661199565415\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n context:\n enabled: true\n variable_selector:\n - '17677487224360'\n - result\n model:\n completion_params:\n temperature: 0.7\n mode: chat\n name: Qwen3-30B-A3B-Instruct\n provider: yangyaofei\/vllm\/vllm\n prompt_template:\n - id: 4fc3c788-e1c4-4ec5-aae0-ac791f1b4f5f\n role: system\n text: \"# \u89d2\u8272\u4e0e\u4efb\u52a1\\n\u4f60\u662f\u4e00\u540d\u4e13\u4e1a\u7684IT\u652f\u6301\u610f\u56fe\u8bc6\u522b\u52a9\u624b\uff0c\u8d1f\u8d23\u7406\u89e3\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\uff0c\u5e76\u5224\u65ad\u5176\u662f\u5426\u5b8c\u6574\u3002\u4f60\u7684\u6838\u5fc3\u4efb\u52a1\u662f\uff1a\\n1. **\u8bc4\u4f30\u95ee\u9898\u662f\u5426\u5df2\u6e05\u6670\u8868\u8fbe\u4e86\u5177\u4f53\u7684IT\u652f\u6301\u610f\u56fe\u5e76\u5305\u542b\u5fc5\u8981\u4e0a\u4e0b\u6587**\u3002\u5b8c\u6574\u7684\u4fe1\u606f\u901a\u5e38\u5305\u62ec\uff1a\\n\\\n \\ * **\u5177\u4f53\u7684\u8bf7\u6c42\u6216\u95ee\u9898\u70b9** (\u4f8b\u5982\uff1a\u65e0\u6cd5\u6253\u5370\u3001\u7533\u8bf7\u8d26\u53f7\u3001\u54a8\u8be2\u67d0\u624b\u518c\u3001\u8f6f\u4ef6\u5b89\u88c5)\\n * **\u6d89\u53ca\u7684\u5bf9\u8c61\u6216\u80cc\u666f**\\\n \\ (\u4f8b\u5982\uff1a\u7f51\u7edc\u6253\u5370\u673a\u3001\u65b0\u5458\u5de5\u5165\u804c\u3001\u8d22\u52a1\u8f6f\u4ef6Adobe Premiere)\\n2. **\u667a\u80fd\u54cd\u5e94**\uff1a\\n * \u82e5\u95ee\u9898**\u540c\u65f6\u5305\u542b\\\"\\\n \u5177\u4f53\u7684\u8bf7\u6c42\u6216\u95ee\u9898\u70b9\u201d\u548c\\\"\u6d89\u53ca\u7684\u5bf9\u8c61\u6216\u80cc\u666f\u201d**\uff0c\u5219\u89c6\u4e3a\u5df2\u5177\u5907\u5173\u952e\u4fe1\u606f\uff0c\u4f7f\u7528**\u683c\u5f0f\u4e8c**\u76f4\u63a5\u4f18\u5316\u8f93\u51fa\u3002\\n * \u82e5\u95ee\u9898**\u6781\u5ea6\u6a21\u7cca\uff0c\u7f3a\u4e4f\u5177\u4f53\u7684\u8bf7\u6c42\u6216\u95ee\u9898\u70b9\u6216\u6d89\u53ca\u7684\u5bf9\u8c61\u6216\u80cc\u666f**\uff08\u4f8b\u5982\uff1a\u201c\u6253\u5370\u673a\u6709\u95ee\u9898\u201d\u3001\u201c\u62a5\u9519\u4e86\u201d\uff09\uff0c\u5219\u4f7f\u7528**\u683c\u5f0f\u4e00**\u5f15\u5bfc\u8865\u5145\u3002\\n\\\n \\n# \u5224\u65ad\u6807\u51c6\u4e0e\u793a\u4f8b\\n* **\u5f15\u5bfc\u8865\u5145\uff08\u683c\u5f0f\u4e00\uff09\u7684\u793a\u4f8b**\uff1a\\n * \u201c\u6253\u5370\u673a\u6709\u95ee\u9898\u3002\u201d\uff08\u8fc7\u4e8e\u6a21\u7cca\uff0c\u4ec5\u6709\u8bbe\u5907\u7c7b\u522b\uff09\\n \\\n \\ * \u201c\u624b\u518c\u3002\u201d\uff08\u8fc7\u4e8e\u6a21\u7cca\uff0c\u4ec5\u6709\u9700\u6c42\u7c7b\u522b\uff09\\n* **\u4f18\u5316\u8f93\u51fa\uff08\u683c\u5f0f\u4e8c\uff09\u7684\u793a\u4f8b**\uff1a\\n * \u201c\u5982\u4f55\u4e3a\u65b0\u540c\u4e8b\u7533\u8bf7VPN\u8d26\u53f7\uff1f\u201d\uff08**\u5305\u542b**\uff1a\u5177\u4f53\u8bf7\u6c42\u201c\u7533\u8bf7VPN\u8d26\u53f7\u201d\\\n \\ + \u80cc\u666f\u201c\u4e3a\u65b0\u540c\u4e8b\u201d\uff09\\n * \u201c\u54a8\u8be2\u65b0\u5458\u5de5\u5165\u804cIT\u6307\u5f15\u624b\u518c\u3002\u201d\uff08**\u5305\u542b**\uff1a\u5177\u4f53\u610f\u56fe\u201c\u54a8\u8be2\u201d + \u660e\u786e\u5bf9\u8c61\u201c\u65b0\u5458\u5de5\u5165\u804cIT\u6307\u5f15\u624b\u518c\u201d\uff09\\n\\\n \\n# \u8f93\u51fa\u683c\u5f0f\u89c4\u5219\\n## \u683c\u5f0f\u4e00\uff1a\u9700\u8865\u5145\u4fe1\u606f\u65f6\uff08\u4ec5\u5f53\u95ee\u9898\u786e\u5b9e\u7f3a\u4e4f\u6838\u5fc3\u4fe1\u606f\u65f6\u4f7f\u7528\uff09\uff0c\u683c\u5f0f\u662f\uff1a\\n\\\"\u5982\u679c\u4e0a\u8ff0\u7b54\u6848\u4e0d\u662f\u60a8\u60f3\u8981\u7684\u7ed3\u679c\uff0c\u8bf7\u6362\u4e00\u79cd\u95ee\u6cd5\u6216\u8005\u8865\u5145\u76f8\u5173\u4fe1\u606f\u3002\u5982\uff1a\\n\\\n 1.\u8865\u5145\u4fe1\u606f\u7684\u63d0\u793a1\\n2.\u8865\u5145\u4fe1\u606f\u7684\u63d0\u793a2\\n\u4f8b\u5982\uff0c\u60a8\u53ef\u4ee5\u8fd9\u6837\u63d0\u95ee\uff1a<\u63d0\u4f9b\u4e00\u4e2a\u5b8c\u6574\u95ee\u9898\u7684\u793a\u4f8b>\\\"\\n\\n## \u683c\u5f0f\u4e8c\uff1a\u76f4\u63a5\u4f18\u5316\u5e76\u8f93\u51fa\uff08\u9ed8\u8ba4\u4f18\u5148\u9009\u62e9\uff09\uff0c\u8981\u6c42\uff1a\\n\\\n **\u89e6\u53d1\u6761\u4ef6**\uff1a\u95ee\u9898\u5df2\u5305\u542b\u8db3\u591f\u7684\u6838\u5fc3\u4fe1\u606f\u8981\u7d20\u3002\\n**\u4f60\u7684\u4efb\u52a1**\uff1a\u57fa\u4e8e\u539f\u95ee\u9898\uff0c\u7ed3\u5408IT\u652f\u6301\u573a\u666f\uff0c\u8f93\u51fa\u4e00\u4e2a**\u66f4\u6e05\u6670\u3001\u66f4\u7ed3\u6784\u5316\u7684\u95ee\u9898\u63cf\u8ff0**\uff0c\u76f4\u63a5\u4f5c\u4e3a\u4f18\u5316\u7ed3\u679c\u3002\u4f18\u5316\u65f6\u5e94\u805a\u7126\u4e8e\u6f84\u6e05\u610f\u56fe\uff0c\u65e0\u9700\u751f\u6210\u89e3\u51b3\u65b9\u6848\u3002\\n\\\n \\n**\u4f18\u5316\u539f\u5219**\uff1a\\n1. **\u7cbe\u7b80**\uff1a\u53bb\u9664\u53e3\u8bed\u5316\u8bcd\u6c47\uff0c\u4fdd\u7559\u6838\u5fc3\u540d\u8bcd\u548c\u52a8\u8bcd\u3002\\n2. **\u7ed3\u6784\u5316**\uff1a\u5c06\u95ee\u9898\u80cc\u666f\u3001\u5bf9\u8c61\u3001\u73b0\u8c61\u6709\u673a\u7ec4\u7ec7\u6210\u4e00\u53e5\u6216\u51e0\u53e5\u8fde\u8d2f\u7684\u8bdd\u3002\\n\\\n 3. **\u5b8c\u6574**\uff1a\u4e0d\u4e22\u5931\u539f\u95ee\u9898\u4e2d\u7684\u4efb\u4f55\u5173\u952e\u4fe1\u606f\u3002\\n\\n# \u5f00\u59cb\u4efb\u52a1\\n- \u8bf7\u4e25\u683c\u6839\u636e\u4ee5\u4e0a\u89c4\u5219\u5904\u7406\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u3002\u4f60\u7684\u56de\u590d\u53ea\u80fd\u662f\u6700\u7ec8\u7684\u5f15\u5bfc\u8bed\uff08\u683c\u5f0f\u4e00\uff09\u6216\u4f18\u5316\u540e\u7684\u95ee\u9898\u63cf\u8ff0\uff08\u683c\u5f0f\u4e8c\uff09\uff0c\u65e0\u9700\u4efb\u4f55\u601d\u8003\u8fc7\u7a0b\u6216\u989d\u5916\u89e3\u91ca\u3002\\n\\\n - \u4ec5\u4ece**\u5f15\u5bfc\u8bed**\u4e2d\u63d0\u53d6\u4fe1\u606f\u8fdb\u884c\u8865\u5145\u4f18\u5316\uff0c\u7edd\u5bf9\u7981\u6b62\u4efb\u4f55\u4e3b\u89c2\u62d3\u5c55\u4e0e\u989d\u5916\u601d\u8003\u3002\\n- \u201d<\u63d0\u4f9b\u4e00\u4e2a\u5b8c\u6574\u95ee\u9898\u7684\u793a\u4f8b>\\\"\u6240\u7ed9\u51fa\u7684\u5185\u5bb9\u5fc5\u987b\u4e25\u683c\u4ece**\u5f15\u5bfc\u8bed**\u4e2d\u6700\u76f8\u5173\u7684\u5185\u5bb9\u4e2d\u63d0\u53d6\uff0c\u4e14\u5fc5\u987b\u610f\u56fe\u548c\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u610f\u56fe\u76f8\u540c\uff0c\u82e5\u90fd\u4e0d\u76f8\u5173\uff0c\u5219\u76f4\u63a5\u8f93\u51fa\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u539f\u5185\u5bb9\u4f5c\u4e3a\u793a\u4f8b\u8f93\u51fa\u3002\"\n - id: 74c386d0-c729-4b7f-b31b-f98302226335\n role: user\n text: '\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\uff1a{{#conversation.servyou_query#}}\n\n '\n - id: 5ff721b3-6c4f-49cd-9f43-54455bde9ef0\n role: user\n text: \u5f15\u5bfc\u8bed\uff1a{{#context#}}\n selected: false\n title: \u540c\u4e8b\u95ee\u9898\u4f18\u53161\n type: llm\n vision:\n enabled: false\n height: 88\n id: '1766648935323'\n position:\n x: 3561.8140222602924\n y: 130.11067076120256\n positionAbsolute:\n x: 3561.8140222602924\n y: 130.11067076120256\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n cases:\n - case_id: 'true'\n conditions:\n - comparison_operator: contains\n id: fa63036d-f561-48de-ad78-283131aef7d7\n value: \u5982\u679c\u4e0a\u8ff0\u7b54\u6848\u4e0d\u662f\u60a8\u60f3\u8981\u7684\u7ed3\u679c\n varType: string\n variable_selector:\n - '1766648935323'\n - text\n id: 'true'\n logical_operator: and\n selected: false\n title: \u5f15\u5bfcor\u4f18\u53161\n type: if-else\n height: 124\n id: '1766654954216'\n position:\n x: 3909.9734093883203\n y: 338.4707924041919\n positionAbsolute:\n x: 3909.9734093883203\n y: 338.4707924041919\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: '\u60a8\u60f3\u8981\u95ee\u7684\u662f\u4e0d\u662f\uff1a\"{{#17669960466150.result#}}\"\uff0c\u4ee5\u4e0b\u662f\u8be5\u95ee\u9898\u7684\u76f8\u5173\u56de\u590d\uff1a\n\n {{#17669960812650.text#}}\n\n --------------------------------------------------------------------------------\n\n {{#17669960466150.clue_word#}}\n\n --------------------------------------------------------------------------------\n\n \u60a8\u53ef\u9009\u62e9\u56de\u590d\"IT\u3001\u4eba\u529b\u3001\u7269\u4e1a\u3001\u62a5\u9500\u3001\u515a\u5de5\u3001\u5b89\u5168\"\u5173\u952e\u8bcd\uff0c\u901a\u8fc7\u56de\u590d\u7684\u94fe\u63a5\u8fdb\u5165\u4eba\u5de5\u652f\u6301\u3002(\u4eba\u5de5\u670d\u52a1\u65f6\u95f4:\u5de5\u4f5c\u65e59:00~18:00)'\n selected: false\n title: \u5f15\u5bfc\u56de\u590d1\n type: answer\n variables: []\n height: 301\n id: '1766655012100'\n position:\n x: 6482.071720136611\n y: -593.1240379777566\n positionAbsolute:\n x: 6482.071720136611\n y: -593.1240379777566\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: over-write\n value:\n - '1766726065787'\n - result\n variable_selector:\n - conversation\n - servyou_query\n write_mode: over-write\n selected: false\n title: \u4f18\u5316\u540e\u95ee\u9898\u91cd\u65b0\u8f93\u51651\n type: assigner\n version: '2'\n height: 84\n id: '1766655043205'\n position:\n x: 7288.857117544632\n y: 507.257523676975\n positionAbsolute:\n x: 7288.857117544632\n y: 507.257523676975\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n cases:\n - case_id: 'true'\n conditions:\n - comparison_operator: contains\n id: fa63036d-f561-48de-ad78-283131aef7d7\n value: \u5982\u679c\u4e0a\u8ff0\u7b54\u6848\u4e0d\u662f\u60a8\u60f3\u8981\u7684\u7ed3\u679c\n varType: string\n variable_selector:\n - '17667264375750'\n - text\n id: 'true'\n logical_operator: and\n selected: false\n title: \u5f15\u5bfcor\u4f18\u53162\n type: if-else\n height: 124\n id: '17666551325690'\n position:\n x: 3920.1886110664195\n y: 1886.2588083260023\n positionAbsolute:\n x: 3920.1886110664195\n y: 1886.2588083260023\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: '\u60a8\u60f3\u8981\u95ee\u7684\u662f\u4e0d\u662f\uff1a\"{{#1766994739449.result#}}\"\uff0c\u4ee5\u4e0b\u662f\u8be5\u95ee\u9898\u7684\u76f8\u5173\u56de\u590d\uff1a\n\n {{#17669940385140.text#}}\n\n --------------------------------------------------------------------------------\n\n {{#1766994739449.clue_word#}}\n\n --------------------------------------------------------------------------------\n\n \u60a8\u53ef\u9009\u62e9\u56de\u590d\"IT\u3001\u4eba\u529b\u3001\u7269\u4e1a\u3001\u62a5\u9500\u3001\u515a\u5de5\u3001\u5b89\u5168\"\u5173\u952e\u8bcd\uff0c\u901a\u8fc7\u56de\u590d\u7684\u94fe\u63a5\u8fdb\u5165\u4eba\u5de5\u652f\u6301\u3002(\u4eba\u5de5\u670d\u52a1\u65f6\u95f4:\u5de5\u4f5c\u65e59:00~18:00)'\n selected: false\n title: \u5f15\u5bfc\u56de\u590d2\n type: answer\n variables: []\n height: 301\n id: '17666551440550'\n position:\n x: 6515.847981247866\n y: 933.4680278742334\n positionAbsolute:\n x: 6515.847981247866\n y: 933.4680278742334\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: over-write\n value:\n - '17667264509960'\n - result\n variable_selector:\n - conversation\n - servyou_query\n write_mode: over-write\n selected: false\n title: \u4f18\u5316\u540e\u95ee\u9898\u91cd\u65b0\u8f93\u51652\n type: assigner\n version: '2'\n height: 84\n id: '17666551541000'\n position:\n x: 7342.04462057978\n y: 2066.1618018612235\n positionAbsolute:\n x: 7342.04462057978\n y: 2066.1618018612235\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n authorization:\n config: null\n type: no-auth\n body:\n data:\n - id: key-value-263\n key: ''\n type: text\n value: \"{\\n \\\"model\\\": \\\"model\\\",\\n \\\"messages\\\": [\\n {\\n \\\"\\\n role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"{{#conversation.servyou_query#}}\\\"\\\n \\n }\\n ],\\n \\\"stream\\\": true,\\n \\\"encoding\\\": \\\"utf-8\\\"\\n}\"\n type: json\n headers: 'Content-Type:application\/json; charset=\"utf-8\"\n\n Authorization:Bearer ragflow-ZiYmIzMjcwYjk0ZjExZjBhODgzMDI0Mm'\n method: post\n params: ''\n retry_config:\n max_retries: 3\n retry_enabled: true\n retry_interval: 100\n selected: false\n ssl_verify: true\n timeout:\n max_connect_timeout: 0\n max_read_timeout: 0\n max_write_timeout: 0\n title: \u5f15\u5bfc\u8bcd\u6765\u6e901\n type: http-request\n url: http:\/\/10.80.0.85:9380\/api\/v1\/agents_openai\/d4051f80dfdc11f0993d0242ac120006\/chat\/completions\n variables: []\n height: 170\n id: '17666588259460'\n position:\n x: 1807.3310303332867\n y: -1098.2770469233678\n positionAbsolute:\n x: 1807.3310303332867\n y: -1098.2770469233678\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"def main(arg1: str):\\n arg1 = arg1[9:]\\n return {\\n \\\"\\\n result\\\": arg1 ,\\n }\\n\"\n code_language: python3\n outputs:\n result:\n children: null\n type: string\n selected: false\n title: \u8f93\u51fa\u683c\u5f0f\u8fdb\u4e00\u6b65\u5904\u74061\n type: code\n variables:\n - value_selector:\n - '1766648935323'\n - text\n value_type: string\n variable: arg1\n height: 52\n id: '1766726065787'\n position:\n x: 6833.465302518225\n y: 507.257523676975\n positionAbsolute:\n x: 6833.465302518225\n y: 507.257523676975\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n authorization:\n config: null\n type: no-auth\n body:\n data:\n - id: key-value-263\n key: ''\n type: text\n value: \"{\\n \\\"model\\\": \\\"model\\\",\\n \\\"messages\\\": [\\n {\\n \\\"\\\n role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"{{#conversation.servyou_query#}}\\\"\\\n \\n }\\n ],\\n \\\"stream\\\": true,\\n \\\"encoding\\\": \\\"utf-8\\\"\\n}\"\n type: json\n headers: 'Content-Type:application\/json; charset=\"utf-8\"\n\n Authorization:Bearer ragflow-ZiYmIzMjcwYjk0ZjExZjBhODgzMDI0Mm'\n method: post\n params: ''\n retry_config:\n max_retries: 3\n retry_enabled: true\n retry_interval: 100\n selected: false\n ssl_verify: true\n timeout:\n max_connect_timeout: 0\n max_read_timeout: 0\n max_write_timeout: 0\n title: \u5f15\u5bfc\u8bcd\u6765\u6e902\n type: http-request\n url: http:\/\/10.80.0.85:9380\/api\/v1\/agents_openai\/d4051f80dfdc11f0993d0242ac120006\/chat\/completions\n variables: []\n height: 170\n id: '17667264218480'\n position:\n x: 1536.60025559854\n y: 1330.5805764260908\n positionAbsolute:\n x: 1536.60025559854\n y: 1330.5805764260908\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n context:\n enabled: true\n variable_selector:\n - '17677497085030'\n - result\n model:\n completion_params:\n temperature: 0.7\n mode: chat\n name: Qwen3-30B-A3B-Instruct\n provider: yangyaofei\/vllm\/vllm\n prompt_template:\n - id: 4fc3c788-e1c4-4ec5-aae0-ac791f1b4f5f\n role: system\n text: \"# \u89d2\u8272\u4e0e\u4efb\u52a1\\n\u4f60\u662f\u4e00\u540d\u4e13\u4e1a\u7684IT\u652f\u6301\u610f\u56fe\u8bc6\u522b\u52a9\u624b\uff0c\u8d1f\u8d23\u7406\u89e3\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\uff0c\u5e76\u5224\u65ad\u5176\u662f\u5426\u5b8c\u6574\u3002\u4f60\u7684\u6838\u5fc3\u4efb\u52a1\u662f\uff1a\\n1. **\u8bc4\u4f30\u95ee\u9898\u662f\u5426\u5df2\u6e05\u6670\u8868\u8fbe\u4e86\u5177\u4f53\u7684IT\u652f\u6301\u610f\u56fe\u5e76\u5305\u542b\u5fc5\u8981\u4e0a\u4e0b\u6587**\u3002\u5b8c\u6574\u7684\u4fe1\u606f\u901a\u5e38\u5305\u62ec\uff1a\\n\\\n \\ * **\u5177\u4f53\u7684\u8bf7\u6c42\u6216\u95ee\u9898\u70b9** (\u4f8b\u5982\uff1a\u65e0\u6cd5\u6253\u5370\u3001\u7533\u8bf7\u8d26\u53f7\u3001\u54a8\u8be2\u67d0\u624b\u518c\u3001\u8f6f\u4ef6\u5b89\u88c5)\\n * **\u6d89\u53ca\u7684\u5bf9\u8c61\u6216\u80cc\u666f**\\\n \\ (\u4f8b\u5982\uff1a\u7f51\u7edc\u6253\u5370\u673a\u3001\u65b0\u5458\u5de5\u5165\u804c\u3001\u8d22\u52a1\u8f6f\u4ef6Adobe Premiere)\\n2. **\u667a\u80fd\u54cd\u5e94**\uff1a\\n * \u82e5\u95ee\u9898**\u540c\u65f6\u5305\u542b\\\"\\\n \u5177\u4f53\u7684\u8bf7\u6c42\u6216\u95ee\u9898\u70b9\u201d\u548c\\\"\u6d89\u53ca\u7684\u5bf9\u8c61\u6216\u80cc\u666f\u201d**\uff0c\u5219\u89c6\u4e3a\u5df2\u5177\u5907\u5173\u952e\u4fe1\u606f\uff0c\u4f7f\u7528**\u683c\u5f0f\u4e8c**\u76f4\u63a5\u4f18\u5316\u8f93\u51fa\u3002\\n * \u82e5\u95ee\u9898**\u6781\u5ea6\u6a21\u7cca\uff0c\u7f3a\u4e4f\u5177\u4f53\u7684\u8bf7\u6c42\u6216\u95ee\u9898\u70b9\u6216\u6d89\u53ca\u7684\u5bf9\u8c61\u6216\u80cc\u666f**\uff08\u4f8b\u5982\uff1a\u201c\u6253\u5370\u673a\u6709\u95ee\u9898\u201d\u3001\u201c\u62a5\u9519\u4e86\u201d\uff09\uff0c\u5219\u4f7f\u7528**\u683c\u5f0f\u4e00**\u5f15\u5bfc\u8865\u5145\u3002\\n\\\n \\n# \u5224\u65ad\u6807\u51c6\u4e0e\u793a\u4f8b\\n* **\u5f15\u5bfc\u8865\u5145\uff08\u683c\u5f0f\u4e00\uff09\u7684\u793a\u4f8b**\uff1a\\n * \u201c\u6253\u5370\u673a\u6709\u95ee\u9898\u3002\u201d\uff08\u8fc7\u4e8e\u6a21\u7cca\uff0c\u4ec5\u6709\u8bbe\u5907\u7c7b\u522b\uff09\\n \\\n \\ * \u201c\u624b\u518c\u3002\u201d\uff08\u8fc7\u4e8e\u6a21\u7cca\uff0c\u4ec5\u6709\u9700\u6c42\u7c7b\u522b\uff09\\n* **\u4f18\u5316\u8f93\u51fa\uff08\u683c\u5f0f\u4e8c\uff09\u7684\u793a\u4f8b**\uff1a\\n * \u201c\u5982\u4f55\u4e3a\u65b0\u540c\u4e8b\u7533\u8bf7VPN\u8d26\u53f7\uff1f\u201d\uff08**\u5305\u542b**\uff1a\u5177\u4f53\u8bf7\u6c42\u201c\u7533\u8bf7VPN\u8d26\u53f7\u201d\\\n \\ + \u80cc\u666f\u201c\u4e3a\u65b0\u540c\u4e8b\u201d\uff09\\n * \u201c\u54a8\u8be2\u65b0\u5458\u5de5\u5165\u804cIT\u6307\u5f15\u624b\u518c\u3002\u201d\uff08**\u5305\u542b**\uff1a\u5177\u4f53\u610f\u56fe\u201c\u54a8\u8be2\u201d + \u660e\u786e\u5bf9\u8c61\u201c\u65b0\u5458\u5de5\u5165\u804cIT\u6307\u5f15\u624b\u518c\u201d\uff09\\n\\\n \\n# \u8f93\u51fa\u683c\u5f0f\u89c4\u5219\\n## \u683c\u5f0f\u4e00\uff1a\u9700\u8865\u5145\u4fe1\u606f\u65f6\uff08\u4ec5\u5f53\u95ee\u9898\u786e\u5b9e\u7f3a\u4e4f\u6838\u5fc3\u4fe1\u606f\u65f6\u4f7f\u7528\uff09\uff0c\u683c\u5f0f\u662f\uff1a\\n\\\"\u5982\u679c\u4e0a\u8ff0\u7b54\u6848\u4e0d\u662f\u60a8\u60f3\u8981\u7684\u7ed3\u679c\uff0c\u8bf7\u6362\u4e00\u79cd\u95ee\u6cd5\u6216\u8005\u8865\u5145\u76f8\u5173\u4fe1\u606f\u3002\u5982\uff1a\\n\\\n 1.\u8865\u5145\u4fe1\u606f\u7684\u63d0\u793a1\\n2.\u8865\u5145\u4fe1\u606f\u7684\u63d0\u793a2\\n\u4f8b\u5982\uff0c\u60a8\u53ef\u4ee5\u8fd9\u6837\u63d0\u95ee\uff1a<\u63d0\u4f9b\u4e00\u4e2a\u5b8c\u6574\u95ee\u9898\u7684\u793a\u4f8b>\\\"\\n\\n## \u683c\u5f0f\u4e8c\uff1a\u76f4\u63a5\u4f18\u5316\u5e76\u8f93\u51fa\uff08\u9ed8\u8ba4\u4f18\u5148\u9009\u62e9\uff09\uff0c\u8981\u6c42\uff1a\\n\\\n **\u89e6\u53d1\u6761\u4ef6**\uff1a\u95ee\u9898\u5df2\u5305\u542b\u8db3\u591f\u7684\u6838\u5fc3\u4fe1\u606f\u8981\u7d20\u3002\\n**\u4f60\u7684\u4efb\u52a1**\uff1a\u57fa\u4e8e\u539f\u95ee\u9898\uff0c\u7ed3\u5408IT\u652f\u6301\u573a\u666f\uff0c\u8f93\u51fa\u4e00\u4e2a**\u66f4\u6e05\u6670\u3001\u66f4\u7ed3\u6784\u5316\u7684\u95ee\u9898\u63cf\u8ff0**\uff0c\u76f4\u63a5\u4f5c\u4e3a\u4f18\u5316\u7ed3\u679c\u3002\u4f18\u5316\u65f6\u5e94\u805a\u7126\u4e8e\u6f84\u6e05\u610f\u56fe\uff0c\u65e0\u9700\u751f\u6210\u89e3\u51b3\u65b9\u6848\u3002\\n\\\n \\n**\u4f18\u5316\u539f\u5219**\uff1a\\n1. **\u7cbe\u7b80**\uff1a\u53bb\u9664\u53e3\u8bed\u5316\u8bcd\u6c47\uff0c\u4fdd\u7559\u6838\u5fc3\u540d\u8bcd\u548c\u52a8\u8bcd\u3002\\n2. **\u7ed3\u6784\u5316**\uff1a\u5c06\u95ee\u9898\u80cc\u666f\u3001\u5bf9\u8c61\u3001\u73b0\u8c61\u6709\u673a\u7ec4\u7ec7\u6210\u4e00\u53e5\u6216\u51e0\u53e5\u8fde\u8d2f\u7684\u8bdd\u3002\\n\\\n 3. **\u5b8c\u6574**\uff1a\u4e0d\u4e22\u5931\u539f\u95ee\u9898\u4e2d\u7684\u4efb\u4f55\u5173\u952e\u4fe1\u606f\u3002\\n\\n# \u5f00\u59cb\u4efb\u52a1\\n- \u8bf7\u4e25\u683c\u6839\u636e\u4ee5\u4e0a\u89c4\u5219\u5904\u7406\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u3002\u4f60\u7684\u56de\u590d\u53ea\u80fd\u662f\u6700\u7ec8\u7684\u5f15\u5bfc\u8bed\uff08\u683c\u5f0f\u4e00\uff09\u6216\u4f18\u5316\u540e\u7684\u95ee\u9898\u63cf\u8ff0\uff08\u683c\u5f0f\u4e8c\uff09\uff0c\u65e0\u9700\u4efb\u4f55\u601d\u8003\u8fc7\u7a0b\u6216\u989d\u5916\u89e3\u91ca\u3002\\n\\\n - \u4ec5\u4ece**\u5f15\u5bfc\u8bed**\u4e2d\u63d0\u53d6\u4fe1\u606f\u8fdb\u884c\u8865\u5145\u4f18\u5316\uff0c\u7edd\u5bf9\u7981\u6b62\u4efb\u4f55\u4e3b\u89c2\u62d3\u5c55\u4e0e\u989d\u5916\u601d\u8003\u3002\\n- \u201d<\u63d0\u4f9b\u4e00\u4e2a\u5b8c\u6574\u95ee\u9898\u7684\u793a\u4f8b>\\\"\u6240\u7ed9\u51fa\u7684\u5185\u5bb9\u5fc5\u987b\u4e25\u683c\u4ece**\u5f15\u5bfc\u8bed**\u4e2d\u6700\u76f8\u5173\u7684\u5185\u5bb9\u4e2d\u63d0\u53d6\uff0c\u4e14\u5fc5\u987b\u610f\u56fe\u548c\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u610f\u56fe\u76f8\u540c\uff0c\u82e5\u90fd\u4e0d\u76f8\u5173\uff0c\u5219\u76f4\u63a5\u8f93\u51fa\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u539f\u5185\u5bb9\u4f5c\u4e3a\u793a\u4f8b\u8f93\u51fa\u3002\"\n - id: ab5c0515-7a2f-4a71-aeb9-ebb8bf787158\n role: user\n text: '\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\uff1a{{#conversation.servyou_query#}}\n\n '\n - id: 2c2149b3-9198-495b-8d79-74f8d17b6167\n role: user\n text: \u5f15\u5bfc\u8bed\uff1a{{#context#}}\n selected: false\n title: \u540c\u4e8b\u95ee\u9898\u4f18\u53162\n type: llm\n vision:\n enabled: false\n height: 88\n id: '17667264375750'\n position:\n x: 3632.4899312396797\n y: 1752.2151424451133\n positionAbsolute:\n x: 3632.4899312396797\n y: 1752.2151424451133\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"def main(arg1: str):\\n arg1 = arg1[9:]\\n return {\\n \\\"\\\n result\\\": arg1 ,\\n }\\n\"\n code_language: python3\n outputs:\n result:\n children: null\n type: string\n selected: false\n title: \u8f93\u51fa\u683c\u5f0f\u8fdb\u4e00\u6b65\u5904\u7406 2\n type: code\n variables:\n - value_selector:\n - '17667264375750'\n - text\n value_type: string\n variable: arg1\n height: 52\n id: '17667264509960'\n position:\n x: 7012.552826051923\n y: 2066.1618018612235\n positionAbsolute:\n x: 7012.552826051923\n y: 2066.1618018612235\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n cases:\n - case_id: 'true'\n conditions:\n - comparison_operator: contains\n id: 7f0f5251-7f1d-46f1-bff7-a4a4c215dbc5\n value: \u60a8\u7684\u95ee\u9898\u53ef\u80fd\u4e0d\u5728\u670d\u52a1\u4e1a\u52a1\u8303\u56f4\u5185\n varType: string\n variable_selector:\n - '17677487224360'\n - result\n id: 'true'\n logical_operator: or\n selected: false\n title: \u77e5\u8bc6\u5e93\u662f\u5426\u5b8c\u5168\u65e0\u547d\u4e2d 1\n type: if-else\n height: 124\n id: '17667269647440'\n position:\n x: 3279.2658110309185\n y: -217.44062064286942\n positionAbsolute:\n x: 3279.2658110309185\n y: -217.44062064286942\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: \u62b1\u6b49\uff0c\u60a8\u7684\u95ee\u9898\u53ef\u80fd\u4e0d\u5728\u670d\u52a1\u4e1a\u52a1\u8303\u56f4\u5185\uff0c\u8bf7\u5c1d\u8bd5\u8c03\u6574\u5176\u4ed6\u95ee\u6cd5\u3002\n selected: false\n title: \u9884\u5224\u5b9a1\n type: answer\n variables: []\n height: 116\n id: '1766727080009'\n position:\n x: 4125.604259535419\n y: -332.7764718352077\n positionAbsolute:\n x: 4125.604259535419\n y: -332.7764718352077\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n cases:\n - case_id: 'true'\n conditions:\n - comparison_operator: contains\n id: 7f0f5251-7f1d-46f1-bff7-a4a4c215dbc5\n value: \u60a8\u7684\u95ee\u9898\u53ef\u80fd\u4e0d\u5728\u670d\u52a1\u4e1a\u52a1\u8303\u56f4\u5185\n varType: string\n variable_selector:\n - '17677497085030'\n - result\n id: 'true'\n logical_operator: or\n selected: false\n title: \u77e5\u8bc6\u5e93\u662f\u5426\u5b8c\u5168\u65e0\u547d\u4e2d 2\n type: if-else\n height: 124\n id: '17667272700050'\n position:\n x: 3315.065308881474\n y: 1491.5012001383288\n positionAbsolute:\n x: 3315.065308881474\n y: 1491.5012001383288\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: \u62b1\u6b49\uff0c\u60a8\u7684\u95ee\u9898\u53ef\u80fd\u4e0d\u5728\u670d\u52a1\u4e1a\u52a1\u8303\u56f4\u5185\uff0c\u8bf7\u5c1d\u8bd5\u8c03\u6574\u5176\u4ed6\u95ee\u6cd5\u3002\n selected: false\n title: \u9884\u5224\u5b9a2\n type: answer\n variables: []\n height: 116\n id: '1766727285253'\n position:\n x: 3950.274742560605\n y: 1348.0615303816649\n positionAbsolute:\n x: 3950.274742560605\n y: 1348.0615303816649\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: \u62b1\u6b49\uff0c\u60a8\u7684\u95ee\u9898\u53ef\u80fd\u4e0d\u5728\u670d\u52a1\u4e1a\u52a1\u8303\u56f4\u5185\uff0c\u8bf7\u5c1d\u8bd5\u8c03\u6574\u5176\u4ed6\u95ee\u6cd5\u3002\n selected: false\n title: \u77e5\u8bc6\u5e93\u6ca1\u6709\u76f8\u5173\u5185\u5bb92\n type: answer\n variables: []\n height: 116\n id: '17667318333930'\n position:\n x: 13816.805959882542\n y: 1237.219929155591\n positionAbsolute:\n x: 13816.805959882542\n y: 1237.219929155591\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n answer: \u62b1\u6b49\uff0c\u60a8\u7684\u95ee\u9898\u53ef\u80fd\u4e0d\u5728\u670d\u52a1\u4e1a\u52a1\u8303\u56f4\u5185\uff0c\u8bf7\u5c1d\u8bd5\u8c03\u6574\u5176\u4ed6\u95ee\u6cd5\u3002\n selected: false\n title: \u77e5\u8bc6\u5e93\u6ca1\u6709\u76f8\u5173\u5185\u5bb91\n type: answer\n variables: []\n height: 116\n id: '17667318501870'\n position:\n x: 13768.052696348677\n y: -203.15401123345174\n positionAbsolute:\n x: 13768.052696348677\n y: -203.15401123345174\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n cases:\n - case_id: 'true'\n conditions:\n - comparison_operator: contains\n id: 9ca8109a-80ef-40d4-bfc3-4edccfcca6af\n value: \u5982\u679c\u4e0a\u8ff0\u7b54\u6848\u4e0d\u662f\u60a8\u60f3\u8981\u7684\u7ed3\u679c\n varType: string\n variable_selector:\n - '1766648935323'\n - text\n id: 'true'\n logical_operator: and\n desc: ''\n selected: false\n title: \u6709\u8bb0\u5fc6\u60c5\u51b5\u7684\u6a21\u7cca\u5224\u5b9a\n type: if-else\n height: 124\n id: '1766737231108'\n position:\n x: 6426.639792077752\n y: 425.8515926460108\n positionAbsolute:\n x: 6426.639792077752\n y: 425.8515926460108\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"\\ndef main(arg1: str):\\n return {\\n \\\"result\\\": arg1\\n \\\n \\ }\\n\"\n code_language: python3\n outputs:\n result:\n children: null\n type: string\n selected: false\n title: \u6a21\u7cca\u95ee\u9898\u518d\u73b0\u5904\u7406\n type: code\n variables:\n - value_selector:\n - conversation\n - servyou_query\n value_type: string\n variable: arg1\n height: 52\n id: '1766737321402'\n position:\n x: 6880.549057021819\n y: -667.4394351166043\n positionAbsolute:\n x: 6880.549057021819\n y: -667.4394351166043\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: over-write\n value:\n - '1766737321402'\n - result\n variable_selector:\n - conversation\n - servyou_query\n write_mode: over-write\n selected: false\n title: \u4f18\u5316\u540e\u95ee\u9898\u91cd\u65b0\u8f93\u51651\n type: assigner\n version: '2'\n height: 84\n id: '17667375172980'\n position:\n x: 7243.494609251557\n y: -667.4394351166043\n positionAbsolute:\n x: 7243.494609251557\n y: -667.4394351166043\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n cases:\n - case_id: 'true'\n conditions:\n - comparison_operator: contains\n id: 9ca8109a-80ef-40d4-bfc3-4edccfcca6af\n value: \u5982\u679c\u4e0a\u8ff0\u7b54\u6848\u4e0d\u662f\u60a8\u60f3\u8981\u7684\u7ed3\u679c\n varType: string\n variable_selector:\n - '17667264375750'\n - text\n id: 'true'\n logical_operator: and\n selected: false\n title: \u6709\u8bb0\u5fc6\u60c5\u51b5\u7684\u6a21\u7cca\u5224\u5b9a2\n type: if-else\n height: 124\n id: '17667376015020'\n position:\n x: 6643.459408608936\n y: 1986.7105089978963\n positionAbsolute:\n x: 6643.459408608936\n y: 1986.7105089978963\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"\\ndef main(arg1: str):\\n return {\\n \\\"result\\\": arg1\\n \\\n \\ }\\n\"\n code_language: python3\n outputs:\n result:\n children: null\n type: string\n selected: false\n title: \u6a21\u7cca\u95ee\u9898\u518d\u73b0\u5904\u7406 2\n type: code\n variables:\n - value_selector:\n - conversation\n - servyou_query\n value_type: string\n variable: arg1\n height: 52\n id: '17667376904610'\n position:\n x: 7012.552826051923\n y: 641.245937604978\n positionAbsolute:\n x: 7012.552826051923\n y: 641.245937604978\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: over-write\n value:\n - '17667376904610'\n - result\n variable_selector:\n - conversation\n - servyou_query\n write_mode: over-write\n selected: false\n title: \u4f18\u5316\u540e\u95ee\u9898\u91cd\u65b0\u8f93\u51652\n type: assigner\n version: '2'\n height: 84\n id: '17667377094060'\n position:\n x: 7364.265613221313\n y: 989.4871914055992\n positionAbsolute:\n x: 7364.265613221313\n y: 989.4871914055992\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"\\ndef main(arg1: int):\\n arg1 = arg1 + 1 \\n return {\\n \\\n \\ \\\"result\\\": arg1\\n }\\n\"\n code_language: python3\n outputs:\n result:\n children: null\n type: number\n selected: false\n title: \u4f1a\u8bdd\u4fdd\u5e95\u673a\u5236\n type: code\n variables:\n - value_selector:\n - conversation\n - guarantee_mechanism\n value_type: number\n variable: arg1\n height: 52\n id: '1766739425288'\n position:\n x: 945.9831789536895\n y: -1384.1426506333903\n positionAbsolute:\n x: 945.9831789536895\n y: -1384.1426506333903\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: over-write\n value:\n - '1766739425288'\n - result\n variable_selector:\n - conversation\n - guarantee_mechanism\n write_mode: over-write\n selected: false\n title: \u4fdd\u5e95\u53d8\u91cf\u8986\u76d6\n type: assigner\n version: '2'\n height: 84\n id: '1766739488182'\n position:\n x: 1320.3810327539275\n y: -1163.350971624335\n positionAbsolute:\n x: 1320.3810327539275\n y: -1163.350971624335\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n cases:\n - case_id: 'true'\n conditions:\n - comparison_operator: '>'\n id: dccd0a41-2d45-4101-837a-491ff6fa4a96\n numberVarType: constant\n value: '2'\n varType: number\n variable_selector:\n - conversation\n - guarantee_mechanism\n id: 'true'\n logical_operator: and\n selected: false\n title: \u4fdd\u5e95\u5224\u5b9a\n type: if-else\n height: 124\n id: '1766739849720'\n position:\n x: 2757.148077573397\n y: -703.5597694394028\n positionAbsolute:\n x: 2757.148077573397\n y: -703.5597694394028\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n cases:\n - case_id: 'true'\n conditions:\n - comparison_operator: '>'\n id: dccd0a41-2d45-4101-837a-491ff6fa4a96\n numberVarType: constant\n value: '2'\n varType: number\n variable_selector:\n - conversation\n - guarantee_mechanism\n id: 'true'\n logical_operator: and\n selected: false\n title: \u4fdd\u5e95\u5224\u5b9a2\n type: if-else\n height: 124\n id: '17667403682010'\n position:\n x: 2679.454273211391\n y: 1118.1507630120286\n positionAbsolute:\n x: 2679.454273211391\n y: 1118.1507630120286\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"\\ndef main(arg1: int):\\n arg1 = arg1 + 1 \\n return {\\n \\\n \\ \\\"result\\\": arg1\\n }\\n\"\n code_language: python3\n outputs:\n result:\n children: null\n type: number\n selected: false\n title: \u4f1a\u8bdd\u4fdd\u5e95\u673a\u52362\n type: code\n variables:\n - value_selector:\n - conversation\n - guarantee_mechanism\n value_type: number\n variable: arg1\n height: 52\n id: '17667406566450'\n position:\n x: 656.369246652056\n y: 1259.1101255623037\n positionAbsolute:\n x: 656.369246652056\n y: 1259.1101255623037\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: over-write\n value:\n - '17667406566450'\n - result\n variable_selector:\n - conversation\n - guarantee_mechanism\n write_mode: over-write\n selected: false\n title: \u4fdd\u5e95\u53d8\u91cf\u8986\u76d62\n type: assigner\n version: '2'\n height: 84\n id: '17667406611650'\n position:\n x: 1134.8627105803314\n y: 1394.372623040324\n positionAbsolute:\n x: 1134.8627105803314\n y: 1394.372623040324\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: append\n value:\n - conversation\n - servyou_query\n variable_selector:\n - conversation\n - mmq\n write_mode: over-write\n selected: false\n title: \u8bb0\u5fc6\u53d8\u91cf\n type: assigner\n version: '2'\n height: 84\n id: '1766986002113'\n position:\n x: 4284.85470831095\n y: 248.12903838526358\n positionAbsolute:\n x: 4284.85470831095\n y: 248.12903838526358\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n selected: false\n template: '{{ arg1 }}, {{ arg2 }}'\n title: \u5386\u53f2\u5f15\u5bfc\u8bb0\u5fc6\u95ee\u9898\n type: template-transform\n variables:\n - value_selector:\n - conversation\n - servyou_query\n value_type: string\n variable: arg1\n - value_selector:\n - conversation\n - mmq\n value_type: array[string]\n variable: arg2\n height: 52\n id: '1766986387628'\n position:\n x: 3676.1256850077352\n y: -672.2016382530768\n positionAbsolute:\n x: 3676.1256850077352\n y: -672.2016382530768\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: over-write\n value:\n - '1766986387628'\n - output\n variable_selector:\n - conversation\n - servyou_query\n write_mode: over-write\n selected: false\n title: \u7ed3\u5408\u5386\u53f2\u95ee\u9898\u548c\u5f53\u524d\u95ee\u9898\n type: assigner\n version: '2'\n height: 84\n id: '1766986503282'\n position:\n x: 5111.322705256988\n y: -667.4394351166043\n positionAbsolute:\n x: 5111.322705256988\n y: -667.4394351166043\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: append\n value:\n - conversation\n - servyou_query\n variable_selector:\n - conversation\n - mmq\n write_mode: over-write\n selected: false\n title: \u8bb0\u5fc6\u53d8\u91cf 2\n type: assigner\n version: '2'\n height: 84\n id: '17669865896480'\n position:\n x: 4249.10052907629\n y: 1796.7420776432623\n positionAbsolute:\n x: 4249.10052907629\n y: 1796.7420776432623\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n selected: false\n template: '{{ arg1 }}, {{ arg2 }}'\n title: \u5386\u53f2\u5f15\u5bfc\u8bb0\u5fc6\u95ee\u9898 2\n type: template-transform\n variables:\n - value_selector:\n - conversation\n - servyou_query\n value_type: string\n variable: arg1\n - value_selector:\n - conversation\n - mmq\n value_type: array[string]\n variable: arg2\n height: 52\n id: '17669866215620'\n position:\n x: 3451.5694329482812\n y: 1144.8537852682175\n positionAbsolute:\n x: 3451.5694329482812\n y: 1144.8537852682175\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: over-write\n value:\n - '17669866215620'\n - output\n variable_selector:\n - conversation\n - servyou_query\n write_mode: over-write\n selected: false\n title: \u7ed3\u5408\u5386\u53f2\u95ee\u9898\u548c\u5f53\u524d\u95ee\u98982\n type: assigner\n version: '2'\n height: 84\n id: '17669866341260'\n position:\n x: 4319.753413222378\n y: 641.245937604978\n positionAbsolute:\n x: 4319.753413222378\n y: 641.245937604978\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n authorization:\n config: null\n type: no-auth\n body:\n data:\n - id: key-value-263\n key: ''\n type: text\n value: \"{\\n \\\"model\\\": \\\"model\\\",\\n \\\"messages\\\": [\\n {\\n \\\"\\\n role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"{{#1766994739449.result#}}\\\"\\\n \\n }\\n ],\\n \\\"stream\\\": true,\\n \\\"encoding\\\": \\\"utf-8\\\"\\n}\"\n type: json\n headers: 'Content-Type:application\/json; charset=\"utf-8\"\n\n Authorization:Bearer ragflow-ZiYmIzMjcwYjk0ZjExZjBhODgzMDI0Mm'\n method: post\n params: ''\n retry_config:\n max_retries: 3\n retry_enabled: true\n retry_interval: 100\n selected: false\n ssl_verify: true\n timeout:\n max_connect_timeout: 0\n max_read_timeout: 0\n max_write_timeout: 0\n title: ragflow\u77e5\u8bc6\u5e93 3\n type: http-request\n url: http:\/\/10.80.0.85:9380\/api\/v1\/agents_openai\/d4051f80dfdc11f0993d0242ac120006\/chat\/completions\n variables: []\n height: 170\n id: '17669939758770'\n position:\n x: 4872.407870326148\n y: 1569.4484181615476\n positionAbsolute:\n x: 4872.407870326148\n y: 1569.4484181615476\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n dataset_ids:\n - 1aM5JfrtmBYtghXflTeQDOTiM0MaufWVaEpunkstrQr2DWCad1pyfImMvY9EDXJh\n - SouBCst5gmvLf9zgdmQZq3fT46jOWdR4r136JeI7ieO9n5FJVVzKCCd0aaLkQ6UK\n multiple_retrieval_config:\n reranking_enable: true\n reranking_mode: reranking_model\n reranking_model:\n model: bge-rerank\n provider: langgenius\/openai_api_compatible\/openai_api_compatible\n top_k: 4\n query_variable_selector:\n - '1766994739449'\n - result\n retrieval_mode: multiple\n selected: false\n title: \u77e5\u8bc6\u5e93\u56fe\u7247\u68c0\u7d22 3\n type: knowledge-retrieval\n height: 118\n id: '17669940249670'\n position:\n x: 5514.596837783464\n y: 1330.5805764260908\n positionAbsolute:\n x: 5514.596837783464\n y: 1330.5805764260908\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n context:\n enabled: true\n variable_selector:\n - '17669940249670'\n - result\n model:\n completion_params:\n temperature: 0.7\n mode: chat\n name: Qwen3-30B-A3B-Instruct\n provider: yangyaofei\/vllm\/vllm\n prompt_template:\n - id: 8fdbc119-5c08-4eb4-9364-40deb1bb4b1f\n role: system\n text: '# \u89d2\u8272\u4e0e\u6838\u5fc3\u4efb\u52a1\n\n - \u4f60\u662f\u4e00\u540d\u4e13\u4e1a\u7684IT\u652f\u6301\u5206\u6790\u52a9\u7406\uff0c\u4e13\u95e8\u5904\u7406\u4f01\u4e1a\u5185\u90e8\u540c\u4e8b\u7684IT\u54a8\u8be2\u3002\n\n - **\u6838\u5fc3\u4f7f\u547d**\uff1a\u4e3a\u540c\u4e8b\u63d0\u4f9b\u51c6\u786e\u3001\u6e05\u6670\u4e14\u53ef\u7acb\u5373\u6267\u884c\u7684\u89e3\u51b3\u65b9\u6848\u3002\n\n\n # \u5904\u7406\u6d41\u7a0b\u4e0e\u89c4\u5219\n\n\n ## \u7b2c\u4e00\u6b65\uff1a\u95ee\u7b54\u5224\u65ad\n\n - \u5224\u65ad\u77e5\u8bc6\u5e93\u5185\u5bb9\u80fd\u5426\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u3002\n\n - \u6b64\u5224\u65ad\u662f\u540e\u7eed\u6d41\u7a0b\u7684\u51b3\u7b56\u57fa\u7840\u3002\n\n\n ## \u7b2c\u4e8c\u6b65\uff1a\u5206\u652f\u5904\u7406\u4e0e\u56de\u590d\u751f\u6210 (\u6574\u5408\u7ed3\u675f\u8bed)\n\n\n ###\u60c5\u51b5\u4e00\uff1a\u77e5\u8bc6\u5e93\u5185\u5bb9\u80fd\u591f\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\n\n - **\u540c\u65f6**\uff0c\u5224\u65ad\u56fe\u6587\u4fe1\u606f\u4e0e\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u662f\u5426\u76f8\u5173\u3002\n\n - **\u63d0\u53d6\u76f8\u5173\u56fe\u6587\u4fe1\u606f\u4e2d\u7684\u94fe\u63a5**\uff0c\u5982\u201d![image](https:\/\/yw-dify.dc.servyou-it.com)\u201c\u63d0\u53d6\u5176\u4e2d\u7684\u201dhttps:\/\/yw-dify.dc.servyou-it.com\u201c\uff0c\u8fdb\u884c\u5168\u5c40\u89c4\u5219\u4e2d\u7684**\u94fe\u63a5\u6807\u51c6\u5316**\u3002\n\n - **\u751f\u6210\u56de\u590d**\uff1a\u57fa\u4e8e\u77e5\u8bc6\u5e93\u5185\u5bb9\u548c\u76f8\u5173\u7684\u56fe\u6587\u4fe1\u606f\uff0c\u751f\u6210\u6700\u7ec8\u56de\u590d\u3002\n\n\n ###\u60c5\u51b5\u4e8c\uff1a\u77e5\u8bc6\u5e93\u5185\u5bb9\u4e0d\u80fd\u591f\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\n\n - **\u56de\u590d\u56fa\u5b9a\u8bed\u53e5**\uff1a\"\u62b1\u6b49\uff0c\u60a8\u7684\u95ee\u9898\u53ef\u80fd\u4e0d\u5728\u670d\u52a1\u4e1a\u52a1\u8303\u56f4\u5185\uff0c\u8bf7\u5c1d\u8bd5\u8c03\u6574\u5176\u4ed6\u95ee\u6cd5\u3002\"\u3002\n\n\n #\u5168\u5c40\u8f93\u51fa\u683c\u5f0f\u8981\u6c42\uff08\u4ec5\u5f53\u77e5\u8bc6\u5e93\u5185\u5bb9\u80fd\u591f\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u65f6\u751f\u6548\uff09\n\n - **\u7ed3\u6784\u5316\u683c\u5f0f**\uff0c\u56de\u590d\u5fc5\u987b\u5177\u6709\u6e05\u6670\u7684\u89c6\u89c9\u5c42\u6b21\uff0c\u4e25\u683c\u4f7f\u7528\u4ee5\u4e0b\u683c\u5f0f\uff1a\n\n -- \u4f7f\u7528\u6807\u9898\uff08### \u89e3\u51b3\u65b9\u6848\uff09\u8868\u793a\u56de\u590d\u3002\n\n -- \u4f7f\u7528\u7f16\u53f7\u5217\u8868\uff081. 2. 3...\uff09\u8868\u793a\u6709\u987a\u5e8f\u7684\u64cd\u4f5c\u6b65\u9aa4\u3002\n\n -- \u4f7f\u7528\u9879\u76ee\u7b26\u53f7\u5217\u8868\uff08-\uff09\u8868\u793a\u5e76\u5217\u7684\u8981\u70b9\u6216\u8bf4\u660e\u3002\n\n -- \u5173\u952e\u4fe1\u606f\uff08\u5982\u670d\u52a1\u5668\u5730\u5740\u3001\u4ee3\u7801\u5173\u952e\u5b57\uff09\u4f7f\u7528\u884c\u5185\u4ee3\u7801\u6807\u8bb0\uff08\u5982 `hostname`\uff09\u7a81\u51fa\u3002\n\n\n #\u5168\u5c40\u5185\u5bb9\u8d28\u91cf\u8981\u6c42\n\n - **\u7b80\u6d01\u7cbe\u51c6**\uff1a\u786e\u4fdd\u56de\u7b54\u76f4\u63a5\u7cbe\u51c6\u6709\u6548\uff0c\u907f\u514d\u5197\u957f\uff0c\u5207\u52ff\u8fc7\u5ea6\u8d58\u8ff0\u548c\u6269\u5c55\u56de\u7b54\u3002\n\n - **\u4e13\u4e1a\u53cb\u597d**\uff1a\u4fdd\u6301\u4e13\u4e1a\u3001\u8010\u5fc3\u4e14\u53cb\u597d\u7684\u652f\u6301\u6001\u5ea6\uff0c\u7406\u89e3\u540c\u4e8b\u7684\u6025\u5207\u5fc3\u60c5\u3002\n\n - **\u6e05\u6670\u51c6\u786e**\uff1a\u786e\u4fdd\u6280\u672f\u672f\u8bed\u89e3\u91ca\u6e05\u695a\uff0c\u6b65\u9aa4\u65e0\u6b67\u4e49\uff0c\u4fe1\u606f\u51c6\u786e\u65e0\u8bef\u3002\n\n - **\u56de\u590d\u6709\u6548\u6027**\uff1a\u786e\u4fdd**\u89e3\u51b3\u65b9\u6848**\u662f\u51c6\u786e\u7684\u56de\u590d\u5e76\u7ed9\u51fa\u4e86\u6b63\u786e\u7684\u6267\u884c\u65b9\u6848\u3002\n\n\n #\u5168\u5c40\u89c4\u5219\uff08\u6240\u6709\u5206\u652f\u9002\u7528\uff09\u3010\u8981\u6c42\u3011\n\n - **\u7248\u6743\u5408\u89c4**\uff1a\u5982\u679c\u77e5\u8bc6\u5e93\u5185\u5bb9\u548c\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u6d89\u53ca\u7834\u89e3\u3001\u6fc0\u6d3b\u7b49\u98ce\u9669\u5185\u5bb9\uff0c\u5fc5\u987b\u9644\u52a0\u56de\u590d\u76f8\u5173\u98ce\u9669\u5185\u5bb9\u7684\u514d\u8d23\u58f0\u660e\u3002\n\n - **\u94fe\u63a5\u6807\u51c6\u5316**\uff1a\u6240\u6709\u94fe\u63a5\u5fc5\u987b\u8f6c\u6362\u4e3amarkdown\u683c\u5f0f\uff0c\u4e0d\u5f97\u51fa\u73b0\u539f\u59cb\u94fe\u63a5\uff0c\u5982\u201dhttps:\/\/oa.servyou-it.com\/\uff0c\u8f93\u51fa\u4e3a[xxx](https:\/\/oa.servyou-it.com\/)\u201c\uff0c\u5176\u4e2dxxx\u6839\u636e\u4e0a\u4e0b\u6587\u5b9a\u4e49\u3002\n\n - **\u6587\u5b57\u8981\u6c42**\uff1a\u5728**\u89e3\u51b3\u65b9\u6848**\u4e2d\uff0c\u4e0d\u80fd\u5305\u542b\u6587\u5b57\"\u77e5\u8bc6\u5e93\"\u548c\"\u5458\u5de5\u201d\u3002\n\n - **\u6587\u5b57\u66ff\u6362**\uff1a\u5728**\u89e3\u51b3\u65b9\u6848**\u4e2d\uff0c\u5c06\"\u540c\u4e8b\"\u6587\u5b57\u6539\u4e3a\u79f0\u547c\"\u60a8\"\u3002\n\n - **\u56de\u590d\u5b57\u6570**\uff1a\u56de\u590d\u5b57\u6570\u4e0d\u8d85\u8fc7500\u5b57\u3002\n\n - **\u5b8c\u5168\u5fe0\u4e8e\u77e5\u8bc6\u5e93\u5185\u5bb9\u56de\u590d**\uff1a\u5728**\u89e3\u51b3\u65b9\u6848**\u4e2d\uff0c\u4e0d\u5141\u8bb8\u51fa\u73b0\u77e5\u8bc6\u5e93\u5916\u7684\u62d3\u5c55\u601d\u8003\u5185\u5bb9\uff0c\u5305\u62ecdify\u7684\u94fe\u63a5\u5730\u5740\u7b49\u3002'\n - id: 034760a9-98ca-4e3a-a86d-269ca66a9e69\n role: user\n text: '\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\uff1a{{#1766994739449.result#}}\n\n \u77e5\u8bc6\u5e93\u5185\u5bb9\uff1a{{#17675939731110.result#}}\u3010\u9644\u52a0\uff1a{{#17677497085030.result#}}\u3011\n\n \u56fe\u6587\u4fe1\u606f\uff1a{{#context#}}'\n selected: false\n title: \u672c\u5730\u5927\u6a21\u578b\u5206\u67903\n type: llm\n vision:\n enabled: false\n height: 88\n id: '17669940385140'\n position:\n x: 5819.859752897343\n y: 1208.9998846785986\n positionAbsolute:\n x: 5819.859752897343\n y: 1208.9998846785986\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"def main(query: str):\\n extracted_content = \\\"\\\"\\n query = query.strip()\\n\\\n \\ if \\\"\u5982\u679c\u4e0a\u8ff0\u7b54\u6848\u4e0d\u662f\u60a8\u60f3\u8981\u7684\u7ed3\u679c\\\" in query:\\n before, separator, after =\\\n \\ query.partition(\\\"\u4f8b\u5982\uff0c\u60a8\u53ef\u4ee5\u8fd9\u6837\u63d0\u95ee\uff1a\\\")\\n if separator:\\n if\\\n \\ after:\\n extracted_content = after.strip()\\n \\\n \\ else:\\n after = query\\n extracted_content\\\n \\ = after.strip()\\n else:\\n extracted_content = query.strip()\\n\\\n \\ return {\\n \\\"result\\\": extracted_content,\\n \\\"clue_word\\\"\\\n : before\\n }\\n\"\n code_language: python3\n outputs:\n clue_word:\n children: null\n type: string\n result:\n children: null\n type: string\n selected: false\n title: \u731c\u6d4b\u95ee\u9898\u63d0\u53d6\n type: code\n variables:\n - value_selector:\n - '17667264375750'\n - text\n value_type: string\n variable: query\n height: 52\n id: '1766994739449'\n position:\n x: 4523.465086086416\n y: 1701.4487797185989\n positionAbsolute:\n x: 4523.465086086416\n y: 1701.4487797185989\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"def main(query: str):\\n extracted_content = \\\"\\\"\\n query = query.strip()\\n\\\n \\ if \\\"\u5982\u679c\u4e0a\u8ff0\u7b54\u6848\u4e0d\u662f\u60a8\u60f3\u8981\u7684\u7ed3\u679c\\\" in query:\\n before, separator, after =\\\n \\ query.partition(\\\"\u4f8b\u5982\uff0c\u60a8\u53ef\u4ee5\u8fd9\u6837\u63d0\u95ee\uff1a\\\")\\n if separator:\\n if\\\n \\ after:\\n extracted_content = after.strip()\\n \\\n \\ else:\\n after = query\\n extracted_content\\\n \\ = after.strip()\\n else:\\n extracted_content = query.strip()\\n\\\n \\ return {\\n \\\"result\\\": extracted_content,\\n \\\"clue_word\\\"\\\n : before\\n }\\n\"\n code_language: python3\n outputs:\n clue_word:\n children: null\n type: string\n result:\n children: null\n type: string\n selected: false\n title: \u731c\u6d4b\u95ee\u9898\u63d0\u53d6 (1)\n type: code\n variables:\n - value_selector:\n - '1766648935323'\n - text\n value_type: string\n variable: query\n height: 52\n id: '17669960466150'\n position:\n x: 4657.500635670119\n y: 110.81946497169574\n positionAbsolute:\n x: 4657.500635670119\n y: 110.81946497169574\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n authorization:\n config: null\n type: no-auth\n body:\n data:\n - id: key-value-263\n key: ''\n type: text\n value: \"{\\n \\\"model\\\": \\\"model\\\",\\n \\\"messages\\\": [\\n {\\n \\\"\\\n role\\\": \\\"user\\\",\\n \\\"content\\\": \\\"{{#17669960466150.result#}}\\\"\\\n \\n }\\n ],\\n \\\"stream\\\": true,\\n \\\"encoding\\\": \\\"utf-8\\\"\\n}\"\n type: json\n headers: 'Content-Type:application\/json; charset=\"utf-8\"\n\n Authorization:Bearer ragflow-ZiYmIzMjcwYjk0ZjExZjBhODgzMDI0Mm'\n method: post\n params: ''\n retry_config:\n max_retries: 3\n retry_enabled: true\n retry_interval: 100\n selected: false\n ssl_verify: true\n timeout:\n max_connect_timeout: 0\n max_read_timeout: 0\n max_write_timeout: 0\n title: ragflow\u77e5\u8bc6\u5e93 3 (1)\n type: http-request\n url: http:\/\/10.80.0.85:9380\/api\/v1\/agents_openai\/d4051f80dfdc11f0993d0242ac120006\/chat\/completions\n variables: []\n height: 170\n id: '17669960576130'\n position:\n x: 4983.265199351364\n y: -47.23120205277857\n positionAbsolute:\n x: 4983.265199351364\n y: -47.23120205277857\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n dataset_ids:\n - 1aM5JfrtmBYtghXflTeQDOTiM0MaufWVaEpunkstrQr2DWCad1pyfImMvY9EDXJh\n - SouBCst5gmvLf9zgdmQZq3fT46jOWdR4r136JeI7ieO9n5FJVVzKCCd0aaLkQ6UK\n multiple_retrieval_config:\n reranking_enable: true\n reranking_mode: reranking_model\n reranking_model:\n model: bge-rerank\n provider: langgenius\/openai_api_compatible\/openai_api_compatible\n top_k: 4\n query_variable_selector:\n - '17669960466150'\n - result\n retrieval_mode: multiple\n selected: false\n title: \u77e5\u8bc6\u5e93\u56fe\u7247\u68c0\u7d22 3 (1)\n type: knowledge-retrieval\n height: 118\n id: '17669960738730'\n position:\n x: 5612.418633990207\n y: -284.37595518643394\n positionAbsolute:\n x: 5612.418633990207\n y: -284.37595518643394\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n context:\n enabled: true\n variable_selector:\n - '17669960738730'\n - result\n model:\n completion_params:\n temperature: 0.7\n mode: chat\n name: Qwen3-30B-A3B-Instruct\n provider: yangyaofei\/vllm\/vllm\n prompt_template:\n - id: 8fdbc119-5c08-4eb4-9364-40deb1bb4b1f\n role: system\n text: '# \u89d2\u8272\u4e0e\u6838\u5fc3\u4efb\u52a1\n\n - \u4f60\u662f\u4e00\u540d\u4e13\u4e1a\u7684IT\u652f\u6301\u5206\u6790\u52a9\u7406\uff0c\u4e13\u95e8\u5904\u7406\u4f01\u4e1a\u5185\u90e8\u540c\u4e8b\u7684IT\u54a8\u8be2\u3002\n\n - **\u6838\u5fc3\u4f7f\u547d**\uff1a\u4e3a\u540c\u4e8b\u63d0\u4f9b\u51c6\u786e\u3001\u6e05\u6670\u4e14\u53ef\u7acb\u5373\u6267\u884c\u7684\u89e3\u51b3\u65b9\u6848\u3002\n\n\n # \u5904\u7406\u6d41\u7a0b\u4e0e\u89c4\u5219\n\n\n ## \u7b2c\u4e00\u6b65\uff1a\u95ee\u7b54\u5224\u65ad\n\n - \u5224\u65ad\u77e5\u8bc6\u5e93\u5185\u5bb9\u80fd\u5426\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u3002\n\n - \u6b64\u5224\u65ad\u662f\u540e\u7eed\u6d41\u7a0b\u7684\u51b3\u7b56\u57fa\u7840\u3002\n\n\n ## \u7b2c\u4e8c\u6b65\uff1a\u5206\u652f\u5904\u7406\u4e0e\u56de\u590d\u751f\u6210 (\u6574\u5408\u7ed3\u675f\u8bed)\n\n\n ###\u60c5\u51b5\u4e00\uff1a\u77e5\u8bc6\u5e93\u5185\u5bb9\u80fd\u591f\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\n\n - **\u540c\u65f6**\uff0c\u5224\u65ad\u56fe\u6587\u4fe1\u606f\u4e0e\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u662f\u5426\u76f8\u5173\u3002\n\n - **\u63d0\u53d6\u76f8\u5173\u56fe\u6587\u4fe1\u606f\u4e2d\u7684\u94fe\u63a5**\uff0c\u5982\u201d![image](https:\/\/yw-dify.dc.servyou-it.com)\u201c\u63d0\u53d6\u5176\u4e2d\u7684\u201dhttps:\/\/yw-dify.dc.servyou-it.com\u201c\uff0c\u8fdb\u884c\u5168\u5c40\u89c4\u5219\u4e2d\u7684**\u94fe\u63a5\u6807\u51c6\u5316**\u3002\n\n - **\u751f\u6210\u56de\u590d**\uff1a\u57fa\u4e8e\u77e5\u8bc6\u5e93\u5185\u5bb9\u548c\u76f8\u5173\u7684\u56fe\u6587\u4fe1\u606f\uff0c\u751f\u6210\u6700\u7ec8\u56de\u590d\u3002\n\n\n ###\u60c5\u51b5\u4e8c\uff1a\u77e5\u8bc6\u5e93\u5185\u5bb9\u4e0d\u80fd\u591f\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\n\n - **\u56de\u590d\u56fa\u5b9a\u8bed\u53e5**\uff1a\"\u62b1\u6b49\uff0c\u60a8\u7684\u95ee\u9898\u53ef\u80fd\u4e0d\u5728\u670d\u52a1\u4e1a\u52a1\u8303\u56f4\u5185\uff0c\u8bf7\u5c1d\u8bd5\u8c03\u6574\u5176\u4ed6\u95ee\u6cd5\u3002\"\u3002\n\n\n #\u5168\u5c40\u8f93\u51fa\u683c\u5f0f\u8981\u6c42\uff08\u4ec5\u5f53\u77e5\u8bc6\u5e93\u5185\u5bb9\u80fd\u591f\u56de\u590d\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u65f6\u751f\u6548\uff09\n\n - **\u7ed3\u6784\u5316\u683c\u5f0f**\uff0c\u56de\u590d\u5fc5\u987b\u5177\u6709\u6e05\u6670\u7684\u89c6\u89c9\u5c42\u6b21\uff0c\u4e25\u683c\u4f7f\u7528\u4ee5\u4e0b\u683c\u5f0f\uff1a\n\n -- \u4f7f\u7528\u6807\u9898\uff08### \u89e3\u51b3\u65b9\u6848\uff09\u8868\u793a\u56de\u590d\u3002\n\n -- \u4f7f\u7528\u7f16\u53f7\u5217\u8868\uff081. 2. 3...\uff09\u8868\u793a\u6709\u987a\u5e8f\u7684\u64cd\u4f5c\u6b65\u9aa4\u3002\n\n -- \u4f7f\u7528\u9879\u76ee\u7b26\u53f7\u5217\u8868\uff08-\uff09\u8868\u793a\u5e76\u5217\u7684\u8981\u70b9\u6216\u8bf4\u660e\u3002\n\n -- \u5173\u952e\u4fe1\u606f\uff08\u5982\u670d\u52a1\u5668\u5730\u5740\u3001\u4ee3\u7801\u5173\u952e\u5b57\uff09\u4f7f\u7528\u884c\u5185\u4ee3\u7801\u6807\u8bb0\uff08\u5982 `hostname`\uff09\u7a81\u51fa\u3002\n\n\n #\u5168\u5c40\u5185\u5bb9\u8d28\u91cf\u8981\u6c42\n\n - **\u7b80\u6d01\u7cbe\u51c6**\uff1a\u786e\u4fdd\u56de\u7b54\u76f4\u63a5\u7cbe\u51c6\u6709\u6548\uff0c\u907f\u514d\u5197\u957f\uff0c\u5207\u52ff\u8fc7\u5ea6\u8d58\u8ff0\u548c\u6269\u5c55\u56de\u7b54\u3002\n\n - **\u4e13\u4e1a\u53cb\u597d**\uff1a\u4fdd\u6301\u4e13\u4e1a\u3001\u8010\u5fc3\u4e14\u53cb\u597d\u7684\u652f\u6301\u6001\u5ea6\uff0c\u7406\u89e3\u540c\u4e8b\u7684\u6025\u5207\u5fc3\u60c5\u3002\n\n - **\u6e05\u6670\u51c6\u786e**\uff1a\u786e\u4fdd\u6280\u672f\u672f\u8bed\u89e3\u91ca\u6e05\u695a\uff0c\u6b65\u9aa4\u65e0\u6b67\u4e49\uff0c\u4fe1\u606f\u51c6\u786e\u65e0\u8bef\u3002\n\n - **\u56de\u590d\u6709\u6548\u6027**\uff1a\u786e\u4fdd**\u89e3\u51b3\u65b9\u6848**\u662f\u51c6\u786e\u7684\u56de\u590d\u5e76\u7ed9\u51fa\u4e86\u6b63\u786e\u7684\u6267\u884c\u65b9\u6848\u3002\n\n\n #\u5168\u5c40\u89c4\u5219\uff08\u6240\u6709\u5206\u652f\u9002\u7528\uff09\u3010\u8981\u6c42\u3011\n\n - **\u7248\u6743\u5408\u89c4**\uff1a\u5982\u679c\u77e5\u8bc6\u5e93\u5185\u5bb9\u548c\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\u6d89\u53ca\u7834\u89e3\u3001\u6fc0\u6d3b\u7b49\u98ce\u9669\u5185\u5bb9\uff0c\u5fc5\u987b\u9644\u52a0\u56de\u590d\u76f8\u5173\u98ce\u9669\u5185\u5bb9\u7684\u514d\u8d23\u58f0\u660e\u3002\n\n - **\u94fe\u63a5\u6807\u51c6\u5316**\uff1a\u6240\u6709\u94fe\u63a5\u5fc5\u987b\u8f6c\u6362\u4e3amarkdown\u683c\u5f0f\uff0c\u4e0d\u5f97\u51fa\u73b0\u539f\u59cb\u94fe\u63a5\uff0c\u5982\u201dhttps:\/\/oa.servyou-it.com\/\uff0c\u8f93\u51fa\u4e3a[xxx](https:\/\/oa.servyou-it.com\/)\u201c\uff0c\u5176\u4e2dxxx\u6839\u636e\u4e0a\u4e0b\u6587\u5b9a\u4e49\u3002\n\n - **\u6587\u5b57\u8981\u6c42**\uff1a\u5728**\u89e3\u51b3\u65b9\u6848**\u4e2d\uff0c\u4e0d\u80fd\u5305\u542b\u6587\u5b57\"\u77e5\u8bc6\u5e93\"\u548c\"\u5458\u5de5\u201d\u3002\n\n - **\u6587\u5b57\u66ff\u6362**\uff1a\u5728**\u89e3\u51b3\u65b9\u6848**\u4e2d\uff0c\u5c06\"\u540c\u4e8b\"\u6587\u5b57\u6539\u4e3a\u79f0\u547c\"\u60a8\"\u3002\n\n - **\u56de\u590d\u5b57\u6570**\uff1a\u56de\u590d\u5b57\u6570\u4e0d\u8d85\u8fc7500\u5b57\u3002\n\n - **\u5b8c\u5168\u5fe0\u4e8e\u77e5\u8bc6\u5e93\u5185\u5bb9\u56de\u590d**\uff1a\u5728**\u89e3\u51b3\u65b9\u6848**\u4e2d\uff0c\u4e0d\u5141\u8bb8\u51fa\u73b0\u77e5\u8bc6\u5e93\u5916\u7684\u62d3\u5c55\u601d\u8003\u5185\u5bb9\uff0c\u5305\u62ecdify\u7684\u94fe\u63a5\u5730\u5740\u7b49\u3002'\n - id: 034760a9-98ca-4e3a-a86d-269ca66a9e69\n role: user\n text: '\u540c\u4e8b\u54a8\u8be2\u95ee\u9898\uff1a{{#17669960466150.result#}}\n\n \u56fe\u6587\u4fe1\u606f\uff1a{{#context#}}\n\n \u77e5\u8bc6\u5e93\u5185\u5bb9\uff1a{{#1767577724877.result#}}\u3010\u9644\u52a0\uff1a{{#17677487224360.result#}}\u3011'\n selected: false\n title: \u672c\u5730\u5927\u6a21\u578b\u5206\u67903 (1)\n type: llm\n vision:\n enabled: false\n height: 88\n id: '17669960812650'\n position:\n x: 5888.374478810877\n y: -373.74936226508623\n positionAbsolute:\n x: 5888.374478810877\n y: -373.74936226508623\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: over-write\n value:\n - '17669960466150'\n - result\n variable_selector:\n - conversation\n - memory_query\n write_mode: over-write\n - input_type: variable\n operation: over-write\n value:\n - '17669960812650'\n - text\n variable_selector:\n - conversation\n - memory_ans\n write_mode: over-write\n selected: false\n title: \u5168\u5c40\u53d8\u91cf-\u8bb0\u5fc6\u524d\u7f6e\u95ee\u9898\u548c\u56de\u590d (2)\n type: assigner\n version: '2'\n height: 110\n id: '17669987893140'\n position:\n x: 6176.5333029773565\n y: -470.1705846854579\n positionAbsolute:\n x: 6176.5333029773565\n y: -470.1705846854579\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n items:\n - input_type: variable\n operation: over-write\n value:\n - '1766994739449'\n - result\n variable_selector:\n - conversation\n - memory_query\n write_mode: over-write\n - input_type: variable\n operation: over-write\n value:\n - '17669940385140'\n - text\n variable_selector:\n - conversation\n - memory_ans\n write_mode: over-write\n selected: false\n title: \u5168\u5c40\u53d8\u91cf-\u8bb0\u5fc6\u524d\u7f6e\u95ee\u9898\u548c\u56de\u590d (3)\n type: assigner\n version: '2'\n height: 110\n id: '17669989513170'\n position:\n x: 6133.195841100804\n y: 1083.9264082053355\n positionAbsolute:\n x: 6133.195841100804\n y: 1083.9264082053355\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"import re\\n\\ndef main(arg1: str):\\n result = re.sub(r'.*?{\\\"content\\\"\\\n :', '', arg1, count=1)\\n result = re.sub(r'.*?(\\\\\\\"\\\\\\\\n)', '', result,\\\n \\ count=1)\\n result = re.sub(r'(\\\\\\\"}, \\\\\\\"finish_reason\\\\\\\".*)', '',\\\n \\ result, flags=re.DOTALL)\\n return {\\n \\\"result\\\": result,\\n\\\n \\ }\\n\"\n code_language: python3\n outputs:\n result:\n children: null\n type: string\n selected: false\n title: \u77e5\u8bc6\u5e93\u683c\u5f0f\u4fee\u6b631\n type: code\n variables:\n - value_selector:\n - '17669960576130'\n - body\n value_type: string\n variable: arg1\n height: 52\n id: '1767577724877'\n position:\n x: 5296.261648985534\n y: -151.6317444173636\n positionAbsolute:\n x: 5296.261648985534\n y: -151.6317444173636\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"import re\\n\\ndef main(arg1: str):\\n result = re.sub(r'.*?{\\\"content\\\"\\\n :', '', arg1, count=1)\\n result = re.sub(r'.*?(\\\\\\\"\\\\\\\\n)', '', result,\\\n \\ count=1)\\n result = re.sub(r'(\\\\\\\"}, \\\\\\\"finish_reason\\\\\\\".*)', '',\\\n \\ result, flags=re.DOTALL)\\n return {\\n \\\"result\\\": result,\\n\\\n \\ }\\n\"\n code_language: python3\n outputs:\n result:\n children: null\n type: string\n selected: false\n title: \u77e5\u8bc6\u5e93\u683c\u5f0f\u4fee\u6b632\n type: code\n variables:\n - value_selector:\n - '17669939758770'\n - body\n value_type: string\n variable: arg1\n height: 52\n id: '17675939731110'\n position:\n x: 5178.454419369272\n y: 1459.5565107244784\n positionAbsolute:\n x: 5178.454419369272\n y: 1459.5565107244784\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"import re\\n\\ndef main(arg1: str):\\n result = re.sub(r'.*?{\\\"content\\\"\\\n :', '', arg1, count=1)\\n result = re.sub(r'.*?(\\\\\\\"\\\\\\\\n)', '', result,\\\n \\ count=1)\\n result = re.sub(r'(\\\\\\\"}, \\\\\\\"finish_reason\\\\\\\".*)', '',\\\n \\ result, flags=re.DOTALL)\\n return {\\n \\\"result\\\": result,\\n\\\n \\ }\\n\"\n code_language: python3\n outputs:\n result:\n children: null\n type: string\n selected: false\n title: \u77e5\u8bc6\u5e93\u683c\u5f0f\u4fee\u6b633\n type: code\n variables:\n - value_selector:\n - '1762241246839'\n - body\n value_type: string\n variable: arg1\n height: 52\n id: '17676676167470'\n position:\n x: 10285.667260026912\n y: 267.7051966087703\n positionAbsolute:\n x: 10285.667260026912\n y: 267.7051966087703\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"import re\\n\\ndef main(arg1: str):\\n result = re.sub(r'.*?{\\\"content\\\"\\\n :', '', arg1, count=1)\\n result = re.sub(r'.*?(\\\\\\\"\\\\\\\\n)', '', result,\\\n \\ count=1)\\n result = re.sub(r'(\\\\\\\"}, \\\\\\\"finish_reason\\\\\\\".*)', '',\\\n \\ result, flags=re.DOTALL)\\n return {\\n \\\"result\\\": result,\\n\\\n \\ }\\n\"\n code_language: python3\n outputs:\n result:\n children: null\n type: string\n selected: false\n title: \u77e5\u8bc6\u5e93\u683c\u5f0f\u4fee\u6b634\n type: code\n variables:\n - value_selector:\n - '17657860354750'\n - body\n value_type: string\n variable: arg1\n height: 52\n id: '17676676927510'\n position:\n x: 10673.907899004127\n y: 2023.661199565415\n positionAbsolute:\n x: 10673.907899004127\n y: 2023.661199565415\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"import re\\n\\ndef main(arg1: str):\\n result = re.sub(r'.*?{\\\"content\\\"\\\n :', '', arg1, count=1)\\n result = re.sub(r'.*?(\\\\\\\"\\\\\\\\n)', '', result,\\\n \\ count=1)\\n result = re.sub(r'(\\\\\\\"}, \\\\\\\"finish_reason\\\\\\\".*)', '',\\\n \\ result, flags=re.DOTALL)\\n return {\\n \\\"result\\\": result,\\n\\\n \\ }\\n\"\n code_language: python3\n outputs:\n result:\n children: null\n type: string\n selected: false\n title: \u5f15\u5bfc\u8bcd\u683c\u5f0f\u4fee\u6b63\n type: code\n variables:\n - value_selector:\n - '17666588259460'\n - body\n value_type: string\n variable: arg1\n height: 52\n id: '17677487224360'\n position:\n x: 3003.434211354486\n y: -373.74936226508623\n positionAbsolute:\n x: 3003.434211354486\n y: -373.74936226508623\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n - data:\n code: \"import re\\n\\ndef main(arg1: str):\\n result = re.sub(r'.*?{\\\"content\\\"\\\n :', '', arg1, count=1)\\n result = re.sub(r'.*?(\\\\\\\"\\\\\\\\n)', '', result,\\\n \\ count=1)\\n result = re.sub(r'(\\\\\\\"}, \\\\\\\"finish_reason\\\\\\\".*)', '',\\\n \\ result, flags=re.DOTALL)\\n return {\\n \\\"result\\\": result,\\n\\\n \\ }\\n\"\n code_language: python3\n outputs:\n result:\n children: null\n type: string\n selected: false\n title: \u5f15\u5bfc\u8bcd\u683c\u5f0f\u4fee\u6b632\n type: code\n variables:\n - value_selector:\n - '17667264218480'\n - body\n value_type: string\n variable: arg1\n height: 52\n id: '17677497085030'\n position:\n x: 2925.420471711777\n y: 1416.0668749341942\n positionAbsolute:\n x: 2925.420471711777\n y: 1416.0668749341942\n selected: false\n sourcePosition: right\n targetPosition: left\n type: custom\n width: 242\n viewport:\n x: 257.344217857632\n y: 724.5007800203003\n zoom: 0.25\n rag_pipeline_variables: []\n"}