微信扫码
添加专属顾问
我要投稿
在我们日常处理大模型的输出时,经常希望输出的结果为结构化的(例如输出json格式),这样有助于我们进行结果的后处理。但是在模型输出超过限制和流式输出时就会遇到问题了,由于答案没完全输出,转json就存在问题。
效果展示
text = '''{"name":"张三", "age":'''print(parse_json_markdown(text))# {'name': '张三'}
markdown格式
text = '''```json\n{"name":"张三", "age":27'''print(parse_json_markdown(text))# {'name': '张三', 'age': 27}
多维嵌套
text = '''```json\n{"name":"张三", "age": 27, "爱好": ["羽毛球'''print(parse_json_markdown(text))# {'name': '张三', 'age': 27, '爱好': ['羽毛球']}
核心代码介绍
核心处理代码如下:
new_chars = []stack = []is_inside_string = Falseescaped = False# Process each character in the string one at a time.for char in s:if is_inside_string:if char == '"' and not escaped:is_inside_string = Falseelif char == "\n" and not escaped:char = "\\n"# Replace the newline character with the escape sequence.elif char == "\\":escaped = not escapedelse:escaped = Falseelse:if char == '"':is_inside_string = Trueescaped = Falseelif char == "{":stack.append("}")elif char == "[":stack.append("]")elif char == "}" or char == "]":if stack and stack[-1] == char:stack.pop()else:# Mismatched closing character; the input is malformed.return None
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2025-12-01
MCP 网关实战:基于 Higress + Nacos 的零代码工具扩展方案
2025-12-01
详解Palantir AIP的两个利器:LLM和Tool
2025-11-30
大模型在网址安全中的一些落地与思考
2025-11-30
麦肯锡重磅报告:关于未来的生存指南,当57%的工作被自动化,我们如何与AI结成利益共同体
2025-11-30
Token到底是个啥?看完这篇终于懂了
2025-11-29
Claude Opus 4.5 重磅登场:这哪里是小更,分明是重构大模型搞复杂活儿的底层逻辑
2025-11-29
Perplexity 团队深度解析|组织协作、AI原生产品体验与品牌美学
2025-11-29
ChatGPT 全球上线群聊功能
2025-09-19
2025-10-26
2025-10-02
2025-09-16
2025-09-08
2025-09-17
2025-09-29
2025-09-14
2025-10-07
2025-09-30
2025-11-28
2025-11-27
2025-11-27
2025-11-27
2025-11-25
2025-11-25
2025-11-25
2025-11-23