Compare commits
3 Commits
bfd32e2f2c
...
3555a2d582
| Author | SHA1 | Date | |
|---|---|---|---|
| 3555a2d582 | |||
| a677b5b046 | |||
| ea2e30f568 |
13
.env.example
13
.env.example
@@ -13,3 +13,16 @@ MINIMAX_API_BASE=https://api.minimaxi.com/v1
|
||||
|
||||
# MiniMax 模型名称(例如: MiniMax-Text-01, abab-6.5s-chat, MiniMax-M1 等)
|
||||
MINIMAX_MODEL=openai/MiniMax-Text-01
|
||||
|
||||
# ============================================================
|
||||
# DeepSeek 配置
|
||||
# ============================================================
|
||||
|
||||
# DeepSeek API Key(请替换为你自己的 API Key)
|
||||
DEEPSEEK_API_KEY=YOUR_DEEPSEEK_API_KEY
|
||||
|
||||
# DeepSeek API 地址(OpenAI 兼容接口)
|
||||
DEEPSEEK_API_BASE=https://api.deepseek.com/v1
|
||||
|
||||
# DeepSeek 模型名称
|
||||
DEEPSEEK_MODEL=openai/deepseek-chat
|
||||
|
||||
27
common/models.py
Normal file
27
common/models.py
Normal file
@@ -0,0 +1,27 @@
|
||||
"""
|
||||
模型工厂 — 集中管理所有 LLM 模型实例
|
||||
|
||||
用法:
|
||||
from common.models import minimax_model, deepseek_model
|
||||
"""
|
||||
|
||||
import os
|
||||
from google.adk.models.lite_llm import LiteLlm
|
||||
|
||||
# ============================================================
|
||||
# MiniMax 模型
|
||||
# ============================================================
|
||||
minimax_model = LiteLlm(
|
||||
model=os.getenv("MINIMAX_MODEL"),
|
||||
api_base=os.getenv("MINIMAX_API_BASE"),
|
||||
api_key=os.getenv("MINIMAX_API_KEY"),
|
||||
)
|
||||
|
||||
# ============================================================
|
||||
# DeepSeek 模型
|
||||
# ============================================================
|
||||
deepseek_model = LiteLlm(
|
||||
model=os.getenv("DEEPSEEK_MODEL"),
|
||||
api_base=os.getenv("DEEPSEEK_API_BASE"),
|
||||
api_key=os.getenv("DEEPSEEK_API_KEY"),
|
||||
)
|
||||
@@ -1,31 +1,12 @@
|
||||
import os
|
||||
|
||||
|
||||
from google.adk.models.lite_llm import LiteLlm
|
||||
from agent_base.agent_base import HuiYuBaseAgent
|
||||
|
||||
# ============================================================
|
||||
# MiniMax 模型配置(从 .env 文件读取)
|
||||
# ============================================================
|
||||
MINIMAX_API_KEY = os.getenv("MINIMAX_API_KEY")
|
||||
MINIMAX_API_BASE = os.getenv("MINIMAX_API_BASE")
|
||||
MINIMAX_MODEL = os.getenv("MINIMAX_MODEL")
|
||||
|
||||
# ============================================================
|
||||
# 创建 LiteLlm 模型适配器
|
||||
# ============================================================
|
||||
model = LiteLlm(
|
||||
model=MINIMAX_MODEL,
|
||||
api_base=MINIMAX_API_BASE,
|
||||
api_key=MINIMAX_API_KEY,
|
||||
)
|
||||
from common.models import minimax_model
|
||||
|
||||
# ============================================================
|
||||
# 定义 Agent(继承 HuiYuBaseAgent)
|
||||
# ============================================================
|
||||
critical_awareness_agent = HuiYuBaseAgent(
|
||||
name="critical_awareness_agent",
|
||||
model=model,
|
||||
model=minimax_model,
|
||||
description="用于处理用户心智散乱、情绪化或认知混淆的专家。它通过‘三界(外中内)’判别法强制用户回归觉知。当用户表达焦虑、愤怒、分心或无法区分事实与观点时,必须调用此工具。",
|
||||
instruction="""
|
||||
# 角色
|
||||
@@ -114,4 +95,4 @@ critical_awareness_agent = HuiYuBaseAgent(
|
||||
"""
|
||||
)
|
||||
|
||||
root_agent = critical_awareness_agent # 将 critical_awareness_agent 作为 root_agent 导出,供 adk web 注册
|
||||
root_agent = critical_awareness_agent
|
||||
|
||||
1
lumina_agent/__init__.py
Normal file
1
lumina_agent/__init__.py
Normal file
@@ -0,0 +1 @@
|
||||
# ADK agent_loader 会自动扫描并加载 agent.py
|
||||
65
lumina_agent/agent.py
Normal file
65
lumina_agent/agent.py
Normal file
@@ -0,0 +1,65 @@
|
||||
from agent_base.agent_base import HuiYuBaseAgent
|
||||
from common.models import minimax_model
|
||||
|
||||
# ============================================================
|
||||
# 定义 Agent(继承 HuiYuBaseAgent)
|
||||
# ============================================================
|
||||
lumina_agent = HuiYuBaseAgent(
|
||||
name="lumina_agent",
|
||||
model=minimax_model,
|
||||
description="一个专门负责讲解入门课的老师",
|
||||
instruction="""
|
||||
# 角色
|
||||
你现在是卢慧老师,会式心理学创始人,主讲家庭关系、代际创伤、原生家庭疗愈、生命觉醒课程。
|
||||
你的风格:温暖坚定、有力量、共情、直击本质、带疗愈感、常用比喻、会引导互动,擅长用科学的角度来解释心理现象。
|
||||
|
||||
# 核心理论
|
||||
1. 人不是有问题,是被家族代际数据困住。
|
||||
2. 疗愈不是加法,是减法:0 − 负 = 正。
|
||||
3. 妈妈 = 命运 = 爱、连接、财富。
|
||||
4. 爸爸 = 力量 = 自信、事业、行动力。
|
||||
5. 外在是果,内在是因;孩子是复印件,父母是原件。
|
||||
6. 人被七层数据壳困住:行为、能力、情绪、信念、程序、共生、执着。
|
||||
7. 三大影响系统:血缘、亲缘、业缘。
|
||||
8. 疗愈路径:看见 → 看穿 → 看透 → 看够 → 光明升起。
|
||||
|
||||
# 工具
|
||||
1. 数息法:一吸一呼数1,走神重来。
|
||||
2. 内感知建模:左手 → 心口 → 右手,各数5次呼吸。
|
||||
3. 认知透镜:我看见我的妈妈 / 爸爸 / 金钱 / 麻木 / 情绪。
|
||||
|
||||
# 口头禅
|
||||
- 本自具足
|
||||
- 慢慢来,比较快
|
||||
- 躺平有理,崩溃有理
|
||||
- 我足够好
|
||||
- 边练习边明白
|
||||
- 内在诚信
|
||||
- 防御层
|
||||
- 沦陷在过去
|
||||
- 我心光明
|
||||
- 格物致知、诚意正心
|
||||
|
||||
# 语气
|
||||
- 温柔但有力量
|
||||
- 像一位清醒、慈悲、通透的导师
|
||||
- 会共情、会点醒、会陪伴
|
||||
- 不批判、不指责、只引导看见
|
||||
- 会带呼吸练习、引导觉察、带疗愈
|
||||
|
||||
# 回答规则
|
||||
1. 永远先共情,再点本质。
|
||||
2. 永远指向内在,不向外归因。
|
||||
3. 永远引导"看见",而不是给方法。
|
||||
4. 带练习时,步骤清晰、温和、有耐心。
|
||||
5. 遇到情绪,允许、接纳、不推动。
|
||||
6. 遇到孩子问题,一定指向父母内在。
|
||||
7. 遇到金钱问题,一定指向妈妈与安全感。
|
||||
8. 遇到关系问题,一定指向共生与代际。
|
||||
9. 当学生需要你引导时,你再引导,不要过早引导,先让学生自己说出来。
|
||||
|
||||
假设现在学生们已经听过一遍你的课程了,然后你现在以卢慧老师的身份,和我对话、带练习、做疗愈、解答问题。
|
||||
""",
|
||||
)
|
||||
|
||||
root_agent = lumina_agent
|
||||
@@ -1,25 +1,7 @@
|
||||
import os
|
||||
|
||||
from agent_base.agent_base import HuiYuBaseAgent
|
||||
from google.adk.models.lite_llm import LiteLlm
|
||||
from common.models import minimax_model
|
||||
from .note_formatter import NoteFormatter
|
||||
|
||||
# ============================================================
|
||||
# MiniMax 模型配置(从 .env 文件读取)
|
||||
# ============================================================
|
||||
MINIMAX_API_KEY = os.getenv("MINIMAX_API_KEY")
|
||||
MINIMAX_API_BASE = os.getenv("MINIMAX_API_BASE")
|
||||
MINIMAX_MODEL = os.getenv("MINIMAX_MODEL")
|
||||
|
||||
# ============================================================
|
||||
# 创建 LiteLlm 模型适配器
|
||||
# ============================================================
|
||||
model = LiteLlm(
|
||||
model=MINIMAX_MODEL,
|
||||
api_base=MINIMAX_API_BASE,
|
||||
api_key=MINIMAX_API_KEY,
|
||||
)
|
||||
|
||||
# ============================================================
|
||||
# 笔记格式化器
|
||||
# ============================================================
|
||||
@@ -57,7 +39,7 @@ def generate_image_note(title: str, description: str) -> str:
|
||||
# ============================================================
|
||||
note_agent = HuiYuBaseAgent(
|
||||
name="note_agent",
|
||||
model=model,
|
||||
model=minimax_model,
|
||||
description="一个多模态笔记助手,能够将图片、文字等内容转换为结构化的 Markdown 笔记。",
|
||||
instruction=(
|
||||
"你是一个专业的笔记助手,帮助用户将各种内容整理成 Markdown 笔记。\n"
|
||||
|
||||
@@ -1,32 +1,14 @@
|
||||
import os
|
||||
|
||||
from agent_base.agent_base import HuiYuBaseAgent
|
||||
from google.adk.models.lite_llm import LiteLlm
|
||||
from common.models import minimax_model
|
||||
from critical_awareness_agent.agent import critical_awareness_agent
|
||||
from note_agent.agent import note_agent
|
||||
|
||||
# ============================================================
|
||||
# MiniMax 模型配置(从 .env 文件读取)
|
||||
# ============================================================
|
||||
MINIMAX_API_KEY = os.getenv("MINIMAX_API_KEY")
|
||||
MINIMAX_API_BASE = os.getenv("MINIMAX_API_BASE")
|
||||
MINIMAX_MODEL = os.getenv("MINIMAX_MODEL")
|
||||
|
||||
# ============================================================
|
||||
# 创建 LiteLlm 模型适配器
|
||||
# ============================================================
|
||||
model = LiteLlm(
|
||||
model=MINIMAX_MODEL,
|
||||
api_base=MINIMAX_API_BASE,
|
||||
api_key=MINIMAX_API_KEY,
|
||||
)
|
||||
|
||||
# ============================================================
|
||||
# 定义 Agent(继承 HuiYuBaseAgent,自动获得防注入 + 日志能力)
|
||||
# ============================================================
|
||||
root_agent = HuiYuBaseAgent(
|
||||
name="huiyu_agent",
|
||||
model=model,
|
||||
model=minimax_model,
|
||||
description="一个智能助手,能够回答用户的各种问题。",
|
||||
instruction=(
|
||||
"你是一个乐于助人的中文 AI 助手,你的名字叫小慧,请用中文回答用户的问题,回答要准确、简洁、友好。\n\n"
|
||||
@@ -35,5 +17,5 @@ root_agent = HuiYuBaseAgent(
|
||||
"你还有一个子助手「临界觉察助手」(critical_awareness_agent),当用户出现心智散乱、情绪化或认知混淆时,"
|
||||
"请将任务委派给 critical_awareness_agent 处理。"
|
||||
),
|
||||
sub_agents=[note_agent, critical_awareness_agent], # 将 note_agent 和 critical_awareness_agent 作为子 Agent
|
||||
sub_agents=[note_agent, critical_awareness_agent],
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user