#!/usr/bin/env python3 # -*- coding: utf-8 -*- """ 稷下学宫 Google ADK 论道系统测试 基于 Google ADK 的八仙论道原型 """ import os import asyncio from google.adk import Agent from google.adk.tools import FunctionTool # 八仙智能体定义 def create_baxian_agents(): """创建八仙智能体""" # 铁拐李 - 逆向思维专家 tie_guai_li = Agent( name="铁拐李", model="gemini-2.0-flash-exp" ) # 汉钟离 - 平衡协调者 han_zhong_li = Agent( name="汉钟离", model="gemini-2.0-flash-exp" ) # 张果老 - 历史智慧者 zhang_guo_lao = Agent( name="张果老", model="gemini-2.0-flash-exp" ) # 蓝采和 - 创新思维者 lan_cai_he = Agent( name="蓝采和", model="gemini-2.0-flash-exp" ) # 何仙姑 - 直觉洞察者 he_xian_gu = Agent( name="何仙姑", model="gemini-2.0-flash-exp" ) # 吕洞宾 - 理性分析者 lu_dong_bin = Agent( name="吕洞宾", model="gemini-2.0-flash-exp" ) # 韩湘子 - 艺术感知者 han_xiang_zi = Agent( name="韩湘子", model="gemini-2.0-flash-exp" ) # 曹国舅 - 实务执行者 cao_guo_jiu = Agent( name="曹国舅", model="gemini-2.0-flash-exp" ) return { "铁拐李": tie_guai_li, "汉钟离": han_zhong_li, "张果老": zhang_guo_lao, "蓝采和": lan_cai_he, "何仙姑": he_xian_gu, "吕洞宾": lu_dong_bin, "韩湘子": han_xiang_zi, "曹国舅": cao_guo_jiu } def test_single_agent(): """测试单个智能体""" print("🧪 测试单个智能体...") # 创建铁拐李智能体 tie_guai_li = Agent( name="铁拐李", model="gemini-2.0-flash-exp" ) print(f"✅ 智能体 '{tie_guai_li.name}' 创建成功") print(f"📱 使用模型: {tie_guai_li.model}") return tie_guai_li def test_baxian_creation(): """测试八仙智能体创建""" print("\n🎭 创建八仙智能体...") baxian = create_baxian_agents() print(f"✅ 成功创建 {len(baxian)} 个智能体:") for name, agent in baxian.items(): print(f" - {name}: {agent.model}") return baxian def main(): """主测试函数""" print("🚀 开始稷下学宫 ADK 论道系统测试...") # 检查API密钥 api_key = os.getenv('GOOGLE_API_KEY') if not api_key: print("❌ 未找到 GOOGLE_API_KEY 环境变量") print("请使用: doppler run -- python src/jixia/debates/adk_debate_test.py") return print(f"✅ API密钥已配置 (长度: {len(api_key)} 字符)") # 测试单个智能体 single_agent = test_single_agent() # 测试八仙智能体创建 baxian = test_baxian_creation() print("\n🎉 ADK 论道系统基础测试完成!") print("\n📝 下一步:") print(" 1. 实现智能体间的对话逻辑") print(" 2. 集成 RapidAPI 数据源") print(" 3. 创建论道主题和流程") print(" 4. 连接 Streamlit 界面") if __name__ == "__main__": main()