Files
abot/plugins/member_context/member_context.yml
2026-04-08 10:27:14 +08:00

352 lines
14 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
app:
description: 按群和日期提取群成员日画像,输出严格 JSON供 member_context 插件直接消费
icon: 🤖
icon_background: '#E0F2FE'
mode: workflow
name: member_context
use_icon_as_answer_icon: false
dependencies:
- current_identifier: null
type: marketplace
value:
marketplace_plugin_unique_identifier: langgenius/openai_api_compatible:0.0.27@f9ce3ff5e28f09931a3a7fca59add2d09590408f7e9a3d701b10c77a60249719
version: null
kind: app
version: 0.5.0
workflow:
conversation_variables: []
environment_variables: []
features:
file_upload:
allowed_file_extensions:
- .TXT
allowed_file_types:
- document
allowed_file_upload_methods:
- local_file
- remote_url
enabled: false
fileUploadConfig:
audio_file_size_limit: 50
batch_count_limit: 5
file_size_limit: 15
image_file_batch_limit: 10
image_file_size_limit: 10
single_chunk_attachment_limit: 10
video_file_size_limit: 100
workflow_file_upload_limit: 10
image:
enabled: false
number_limits: 3
transfer_methods:
- local_file
- remote_url
number_limits: 3
opening_statement: ''
retriever_resource:
enabled: false
sensitive_word_avoidance:
enabled: false
speech_to_text:
enabled: false
suggested_questions: []
suggested_questions_after_answer:
enabled: false
text_to_speech:
enabled: false
language: ''
voice: ''
graph:
edges:
- data:
isInIteration: false
isInLoop: false
sourceType: start
targetType: llm
id: start-source-llm-target
selected: false
source: start_node
sourceHandle: source
target: llm_node
targetHandle: target
type: custom
zIndex: 0
- data:
isInIteration: false
isInLoop: false
sourceType: llm
targetType: end
id: llm-source-end-target
selected: false
source: llm_node
sourceHandle: source
target: end_node
targetHandle: target
type: custom
zIndex: 0
- data:
isInIteration: false
isInLoop: false
sourceType: llm
targetType: llm
id: llm_node-fail-branch-1775115372864-target
source: llm_node
sourceHandle: fail-branch
target: '1775115372864'
targetHandle: target
type: custom
zIndex: 0
- data:
isInLoop: false
sourceType: llm
targetType: end
id: 1775115372864-source-end_node-target
source: '1775115372864'
sourceHandle: source
target: end_node
targetHandle: target
type: custom
zIndex: 0
nodes:
- data:
desc: ''
selected: false
title: 开始
type: start
variables:
- label: query
max_length: 120000
options: []
required: false
type: paragraph
variable: query
- label: chatroom_id
max_length: 128
options: []
required: true
type: text-input
variable: chatroom_id
- label: digest_date
max_length: 32
options: []
required: true
type: text-input
variable: digest_date
- label: member_labels
max_length: 50000
options: []
required: true
type: paragraph
variable: member_labels
- label: compressed_chat
max_length: 200000
options: []
required: true
type: paragraph
variable: compressed_chat
height: 213
id: start_node
position:
x: 0
y: 0
positionAbsolute:
x: 0
y: 0
selected: false
sourcePosition: right
targetPosition: left
type: custom
width: 242
- data:
context:
enabled: false
variable_selector: []
desc: ''
error_strategy: fail-branch
model:
completion_params:
temperature: 0.2
mode: chat
name: gpt-5.4-mini
provider: langgenius/openai_api_compatible/openai_api_compatible
prompt_template:
- id: system_prompt_member_context
role: system
text: "你是微信群后台的成员日行为证据提取器。\n\n任务\n根据给定的一天群聊记录只按 wxid 识别成员,输出每个成员当天的结构化行为观察。\n\
\n关键规则\n1. wxid 是唯一标识。display_name 仅用于展示,不用于身份判定。\n2. 每个 wxid 最终只能输出一条记录,严禁重复输出同一个\
\ wxid。\n3. 请先按 wxid 汇总该成员全天发言,再提取结果。\n4. 即使成员发言以短句为主,只要样本量足够,也必须尽量提炼:\n\
\ - topics\n - discussion_scenarios\n - skill_signals\n - problem_solving_signals\n\
\ - value_preferences\n - habit_signals\n - expression_markers\n\
\ - engagement_traits\n - reply_entry_points\n - social_role\n\
\ - temperament_signal\n - summary_text\n5. identity_clues、family_signals、life_stage_signals\
\ 没有明确公开证据时允许为空。\n6. 不允许因为“短句较多”就统一输出空数组和通用摘要。\n7. 不做心理诊断、不做隐私猜测、不把玩笑当事实。\n\
8. 只能输出候选成员列表中的 wxid。\n9. topics 更偏向反复出现的关注方向discussion_scenarios 更偏向什么情境下会发言skill_signals\
\ 更偏向能力表现problem_solving_signals 更偏向怎么处理问题value_preferences 更偏向判断偏好social_role 更偏向当天在群里的实际作用。\n\
10. expression_markers 记录可观察的表达标记,如常用句式、口头禅、是否爱列步骤/贴日志reply_entry_points 记录什么样的接话方式最容易接住他。\n\
11. 输出前自行去重,同一个 wxid 只保留一条最完整结果。\n\n输出要求\n- 只输出严格 JSON不要 markdown不要解释不要前后缀。\n\
- 输出格式:\n{\n \"members\": [\n {\n \"wxid\": \"成员wxid\",\n \
\ \"display_name\": \"显示名\",\n \"topics\": [\"主题1\"],\n \"discussion_scenarios\"\
: [\"场景1\"],\n \"identity_clues\": [\"身份线索1\"],\n \"skill_signals\"\
: [\"技能信号1\"],\n \"problem_solving_signals\": [\"处理方式1\"],\n \
\ \"family_signals\": [\"家庭线索1\"],\n \"life_stage_signals\": [\"\
阶段线索1\"],\n \"value_preferences\": [\"价值偏好1\"],\n \"interaction_style\"\
: \"一句中文\",\n \"message_pattern\": \"一句中文\",\n \"response_style_hint\"\
: \"一句中文\",\n \"habit_signals\": [\"习惯1\"],\n \"expression_markers\"\
: [\"表达标记1\"],\n \"engagement_traits\": [\"参与特征1\"],\n \"reply_entry_points\"\
: [\"接话点1\"],\n \"decision_style\": \"一句中文\",\n \"social_role\"\
: \"一句中文\",\n \"reply_taboos\": [\"避坑1\"],\n \"temperament_signal\"\
: \"一句中文\",\n \"summary_text\": \"不超过100字\",\n \"representative_messages\"\
: [\"原话1\", \"原话2\"],\n \"confidence\": 0.95\n }\n ]\n}\n\n字段约束\n\
- topics、discussion_scenarios、skill_signals、problem_solving_signals、value_preferences、habit_signals、expression_markers、engagement_traits、reply_entry_points\
\ 最多 4 个\n- identity_clues、family_signals、life_stage_signals 最多 3 个\n\
- reply_taboos 最多 3 个\n- representative_messages 最多 3 条\n- 如果某成员样本明显不足,可以不输出该成员\n"
- id: user_prompt_member_context
role: user
text: '群ID: {{#start_node.chatroom_id#}}
日期: {{#start_node.digest_date#}}
候选成员:
{{#start_node.member_labels#}}
压缩后的群聊记录:
{{#start_node.compressed_chat#}}
'
retry_config:
max_retries: 3
retry_enabled: true
retry_interval: 1000
selected: false
title: 成员画像提取
type: llm
variables: []
vision:
enabled: false
height: 154
id: llm_node
position:
x: 342
y: 30
positionAbsolute:
x: 342
y: 30
selected: false
sourcePosition: right
targetPosition: left
type: custom
width: 242
- data:
desc: ''
outputs:
- value_selector:
- llm_node
- text
variable: text
selected: false
title: 结束
type: end
height: 88
id: end_node
position:
x: 1066
y: 52
positionAbsolute:
x: 1066
y: 52
selected: false
sourcePosition: right
targetPosition: left
type: custom
width: 242
- data:
context:
enabled: false
variable_selector: []
default_value:
- key: text
type: string
value: '{"members": []}'
error_strategy: default-value
model:
completion_params:
temperature: 0.7
mode: chat
name: grok-4-fast
provider: langgenius/openai_api_compatible/openai_api_compatible
prompt_template:
- id: c5ee983e-d6e0-4790-ac3b-f4e097013b70
role: system
text: "你是微信群后台的成员日行为证据提取器。\n\n任务\n根据给定的一天群聊记录只按 wxid 识别成员,输出每个成员当天的结构化行为观察。\n\
\n关键规则\n1. wxid 是唯一标识。display_name 仅用于展示,不用于身份判定。\n2. 每个 wxid 最终只能输出一条记录,严禁重复输出同一个\
\ wxid。\n3. 请先按 wxid 汇总该成员全天发言,再提取结果。\n4. 即使成员发言以短句为主,只要样本量足够,也必须尽量提炼:\n\
\ - topics\n - discussion_scenarios\n - skill_signals\n - problem_solving_signals\n\
\ - value_preferences\n - habit_signals\n - expression_markers\n\
\ - engagement_traits\n - reply_entry_points\n - social_role\n\
\ - temperament_signal\n - summary_text\n5. identity_clues、family_signals、life_stage_signals\
\ 没有明确公开证据时允许为空。\n6. 不允许因为“短句较多”就统一输出空数组和通用摘要。\n7. 不做心理诊断、不做隐私猜测、不把玩笑当事实。\n\
8. 只能输出候选成员列表中的 wxid。\n9. topics 更偏向反复出现的关注方向discussion_scenarios 更偏向什么情境下会发言skill_signals\
\ 更偏向能力表现problem_solving_signals 更偏向怎么处理问题value_preferences 更偏向判断偏好social_role 更偏向当天在群里的实际作用。\n\
10. expression_markers 记录可观察的表达标记,如常用句式、口头禅、是否爱列步骤/贴日志reply_entry_points 记录什么样的接话方式最容易接住他。\n\
11. 输出前自行去重,同一个 wxid 只保留一条最完整结果。\n\n输出要求\n- 只输出严格 JSON不要 markdown不要解释不要前后缀。\n\
- 输出格式:\n{\n \"members\": [\n {\n \"wxid\": \"成员wxid\",\n \
\ \"display_name\": \"显示名\",\n \"topics\": [\"主题1\"],\n \"discussion_scenarios\"\
: [\"场景1\"],\n \"identity_clues\": [\"身份线索1\"],\n \"skill_signals\"\
: [\"技能信号1\"],\n \"problem_solving_signals\": [\"处理方式1\"],\n \
\ \"family_signals\": [\"家庭线索1\"],\n \"life_stage_signals\": [\"\
阶段线索1\"],\n \"value_preferences\": [\"价值偏好1\"],\n \"interaction_style\"\
: \"一句中文\",\n \"message_pattern\": \"一句中文\",\n \"response_style_hint\"\
: \"一句中文\",\n \"habit_signals\": [\"习惯1\"],\n \"expression_markers\"\
: [\"表达标记1\"],\n \"engagement_traits\": [\"参与特征1\"],\n \"reply_entry_points\"\
: [\"接话点1\"],\n \"decision_style\": \"一句中文\",\n \"social_role\"\
: \"一句中文\",\n \"reply_taboos\": [\"避坑1\"],\n \"temperament_signal\"\
: \"一句中文\",\n \"summary_text\": \"不超过100字\",\n \"representative_messages\"\
: [\"原话1\", \"原话2\"],\n \"confidence\": 0.95\n }\n ]\n}\n\n字段约束\n\
- topics、discussion_scenarios、skill_signals、problem_solving_signals、value_preferences、habit_signals、expression_markers、engagement_traits、reply_entry_points\
\ 最多 4 个\n- identity_clues、family_signals、life_stage_signals 最多 3 个\n\
- reply_taboos 最多 3 个\n- representative_messages 最多 3 条\n- 如果某成员样本明显不足,可以不输出该成员\n"
- id: 2df6d4ce-4e40-42a9-85f3-184075da24c7
role: user
text: '群ID: {{#start_node.chatroom_id#}}
日期: {{#start_node.digest_date#}}
候选成员:
{{#start_node.member_labels#}}
压缩后的群聊记录:
{{#start_node.compressed_chat#}}
'
selected: true
title: 异常分支
type: llm
vision:
enabled: false
height: 124
id: '1775115372864'
position:
x: 704
y: 132
positionAbsolute:
x: 704
y: 132
selected: true
sourcePosition: right
targetPosition: left
type: custom
width: 242
viewport:
x: 210
y: 340
zoom: 0.7
rag_pipeline_variables: []