from json_openai import llm_format_text, EXTRACT_OUNTLINE_SYSTEM_PROMPT

def main():
    # 测试配置
    model = "glm-4.5"
    base_url = "https://open.bigmodel.cn/api/paas/v4/"
    api_key = "ce39bdd4fcf34ec0aec75072bc9ff988.hAp7HZTVUwy7vImn"

    # 测试内容
    test_content = """
    现代城市规划的核心要素
可持续发展设计
城市可持续发展是现代规划的核心原则，旨在平衡经济发展、社会公平和环境保护的关系，构建长期宜居的城市生态系统。
绿色建筑标准
绿色建筑是可持续城市的基本单元，通过优化设计和技术应用减少环境影响。
能源效率要求：新建建筑需满足LEED或BREEAM认证标准
生态材料应用：优先使用本地、可再生和低污染建筑材料
建筑绿化：推广屋顶花园和垂直绿化系统，改善微气候
资源循环利用系统
建立闭环资源管理体系，实现城市资源的高效利用和循环再生。
水循环系统：雨水收集、中水回用和污水处理再利用
废弃物管理：分类收集、资源化利用和能源回收技术
材料循环：建筑废弃物回收率不低于80%，推广模块化建造
交通系统优化
高效的交通系统是城市活力的重要保障，需兼顾机动性、可达性和环境友好性。
公共交通优先
构建以公共交通为主体的出行体系，减少私人汽车依赖。
轨道交通网络：核心城区站点覆盖率达到80%以上
公交系统优化：高峰时段发车间隔不超过3分钟
换乘枢纽设计：实现不同交通方式的无缝衔接
慢行交通网络
打造安全、舒适的步行和自行车出行环境，提升城市宜居性。
自行车专用道：形成连续的城市自行车网络
步行空间改善：扩大人行道宽度，优化过街设施
共享出行系统：完善共享单车和共享汽车服务
公共空间规划
公共空间是城市的"呼吸器官"，为市民提供社交、休闲和文化活动的场所。
城市公园体系
构建多层次公园系统，满足不同人群的休闲需求。
大型综合公园：服务半径3-5公里，面积不小于50公顷
社区公园：服务半径500米，每个社区至少配备1处
口袋公园：在高密度区域每平方公里设置2-3处小型绿地
街道公共空间
将街道从交通通道转变为多功能公共空间。
完整街道理念：兼顾行人、自行车、公共交通和私人汽车需求
街道家具配置：合理设置座椅、照明和公共艺术装置
临时公共空间：利用闲置地块和临时封闭道路举办社区活动
智慧城市技术应用
信息技术的深度应用正在重塑城市管理和服务模式，提升城市运行效率和居民生活质量。
城市管理数字化
通过数字平台实现城市运行状态的实时监控和智能决策。
城市大脑系统：整合交通、安防、环境等多领域数据
智能监测网络：部署传感器监测空气质量、噪声和水资源状况
应急管理系统：建立快速响应的城市安全保障机制
民生服务智能化
利用信息技术优化公共服务供给，提升居民生活便利度。
智慧政务：实现90%以上政务服务线上办理
智慧社区：整合物业服务、邻里互动和便民服务
智慧医疗：远程诊疗和健康监测覆盖所有社区
    """

    # 构建消息
    messages = [
        {"role": "system", "content": EXTRACT_OUNTLINE_SYSTEM_PROMPT},
        {"role": "user", "content": f"请分析以下文章内容并转换为Markdown格式：\n\n{test_content}"}
    ]

    print("=== 第一步：AI处理生成Markdown ===")
    try:
        markdown_result = llm_format_text(model, base_url, api_key, messages, 2000)
        print("AI生成的Markdown:")
        print(markdown_result)
        print("\n" + "="*50 + "\n")
        
        print("=== 第二步：Markdown内容已生成，可以手动复制到markdownToJSON函数 ===")
        print("请将上面的Markdown内容复制到TypeScript的markdownToJSON函数中进行转换")
        print("或者运行: npm test 来测试TypeScript转换功能")
            
    except Exception as e:
        print(f"处理失败: {e}")
        print("可能的原因:")
        print("1. API密钥无效或过期")
        print("2. 网络连接问题")
        print("3. API服务不可用")
        print("4. 模型名称不正确")

if __name__ == "__main__":
    main()
