LangChain-Ollama 0.3.0版本发布:结构化输出与推理内容解析能力升级
LangChain是一个用于构建基于语言模型应用的开源框架,而LangChain-Ollama则是其与Ollama模型服务集成的专用组件。Ollama是一个本地运行大型语言模型的工具,支持多种开源模型。最新发布的LangChain-Ollama 0.3.0版本带来了两项重要改进:结构化输出方法的优化和Deepseek模型推理内容解析的支持。
结构化输出方法的重大改进
在0.3.0版本中,with_structured_output方法的默认实现方式发生了重要变化。这个功能允许开发者从语言模型获取结构化数据输出,而非传统的非结构化文本。
新版本默认采用了Ollama专门设计的结构化输出特性(对应method="json_schema"参数)。这种方式直接利用Ollama模型内置的结构化输出能力,相比之前版本使用的工具调用(tool-calling)方法,具有更高的效率和可靠性。
对于需要保持旧版行为的用户,可以通过显式指定method="function_calling"来恢复之前的工具调用实现方式:
llm = ChatOllama(model="...").with_structured_output(
schema, method="function_calling"
)
这一改变反映了LangChain团队对Ollama最新特性的快速适配,同时也为开发者提供了更灵活的选择空间。
Deepseek模型推理内容解析支持
0.3.0版本新增了对Deepseek模型推理内容的解析能力。Deepseek模型在生成回答时会产生特殊的推理标记(如<think>...</think>),这些内容包含了模型思考过程的关键信息。
通过设置extract_reasoning=True参数,开发者可以轻松获取这些有价值的中间推理过程:
llm = ChatOllama(model="deepseek-r1:1.5b", extract_reasoning=True)
result = llm.invoke("What is 3^3?")
# 获取常规回答内容
result.content
# 获取模型推理过程
result.additional_kwargs["reasoning_content"]
这一特性对于需要理解模型决策过程、进行教学演示或调试复杂问题的场景特别有用,为开发者提供了更深入的模型行为洞察。
其他改进与优化
除了上述两项主要特性外,0.3.0版本还包含多项改进:
- 字符串值解析优化:修复了工具调用中参数解析的问题,提高了结构化数据处理的准确性。
- 嵌入模型支持keep_alive参数:增强了长时间会话场景下的性能表现。
- 结构化输出的追踪功能改进:提升了开发调试体验。
- 基础消息文本处理优化:增强了消息处理的鲁棒性。
- 构建系统升级:项目内部构建工具迁移到uv,提高了开发效率。
这些改进共同提升了LangChain-Ollama组件的稳定性、性能和开发体验,使其成为构建基于Ollama模型应用更强大的工具。
对于正在使用LangChain框架与Ollama模型服务的开发者,0.3.0版本提供了更高效、更灵活的结构化数据处理方式,以及更深入的模型行为分析能力,值得考虑升级。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0423
源启盛夏_AtomGit暑期开发者成长计划「源启盛夏」暑期校园开发者成长计划旨在激活校园开源力量,通过积分激励、认证扶持、资源倾斜等形式,引导高校组织和开发者完成「入驻 — 建项目 — 做贡献 — 获认证 — 得资源」的完整闭环。无论你是想带领社团入驻平台的组织者,还是希望用代码贡献证明自己的开发者,都能在这里找到属于你的成长路径。Markdown00
jiuwenswarmJiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0741
Hy3Hy3 是由腾讯混元团队研发的快慢思考融合的混合专家模型,总参数量 295B,激活参数 21B,MTP 层参数 3.8B。4 月底发布 Hy3 Preview 后,我们在 50 多个业务中获得了广泛的反馈,修复了各种体验问题,进一步提升了后训练的质量和规模。今天,我们发布 Hy3。它展现出显著强于同尺寸并比肩旗舰(参数规模往往是 Hy3 的 2~5 倍)开源模型的智能水平,显著提升了在各类产品和生产力任务中的实用价值。Python00
AscendNPU-IRAscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优C++0298
PromptXPromptX · 领先的AI 智能体上下文平台 | PromptX · Leading AI Agent Context PlatformJavaScript05